diff --git a/SpacemanDMM.toml b/SpacemanDMM.toml index ebc374f630..6abe5b79b4 100644 --- a/SpacemanDMM.toml +++ b/SpacemanDMM.toml @@ -1,6 +1,8 @@ +environment = "vorestation.dme" + [langserver] dreamchecker = true [code_standards] disallow_relative_type_definitions = true -disallow_relative_proc_definitions = true \ No newline at end of file +disallow_relative_proc_definitions = true diff --git a/code/ATMOSPHERICS/components/valve.dm b/code/ATMOSPHERICS/components/valve.dm index 9e88195bcc..9273b3b8d5 100644 --- a/code/ATMOSPHERICS/components/valve.dm +++ b/code/ATMOSPHERICS/components/valve.dm @@ -42,9 +42,9 @@ /obj/machinery/atmospherics/valve/init_dir() switch(dir) - if(NORTH || SOUTH) + if(NORTH,SOUTH) initialize_directions = NORTH|SOUTH - if(EAST || WEST) + if(EAST,WEST) initialize_directions = EAST|WEST /obj/machinery/atmospherics/valve/get_neighbor_nodes_for_init() diff --git a/code/__defines/admin.dm b/code/__defines/admin.dm index 0e8730bae8..33a79557d5 100644 --- a/code/__defines/admin.dm +++ b/code/__defines/admin.dm @@ -54,7 +54,7 @@ #define ADMIN_TP(user) "(TP)" #define ADMIN_BSA(user) "(BSA)" #define ADMIN_KICK(user) "(KICK)" -#define ADMIN_CENTCOM_REPLY(user) "(RPLY)" +#define ADMIN_CENTCOM_REPLY(user) "(RPLY)" #define ADMIN_SYNDICATE_REPLY(user) "(RPLY)" #define ADMIN_SC(user) "(SC)" #define ADMIN_SMITE(user) "(SMITE)" @@ -65,6 +65,7 @@ #define ADMIN_JMP(src) "(JMP)" #define COORD(src) "[src ? "([src.x],[src.y],[src.z])" : "nonexistent location"]" #define ADMIN_COORDJMP(src) "[src ? "[COORD(src)] [ADMIN_JMP(src)]" : "nonexistent location"]" +#define ADMIN_CA(user) "(?)" #define AHELP_ACTIVE 1 #define AHELP_CLOSED 2 diff --git a/code/__defines/atmos.dm b/code/__defines/atmos.dm index 04905878a0..6f5dc1d3b3 100644 --- a/code/__defines/atmos.dm +++ b/code/__defines/atmos.dm @@ -22,7 +22,7 @@ #define HUMAN_HEAT_CAPACITY 280000 //J/K For 80kg person #define PRESSURE_DAMAGE_COEFFICIENT 4 // The amount of pressure damage someone takes is equal to (pressure / HAZARD_HIGH_PRESSURE)*PRESSURE_DAMAGE_COEFFICIENT, with the maximum of MAX_PRESSURE_DAMAGE. -#define MAX_HIGH_PRESSURE_DAMAGE 4 // This used to be 20... I got this much random rage for some retarded decision by polymorph?! Polymorph now lies in a pool of blood with a katana jammed in his spleen. ~Errorage --PS: The katana did less than 20 damage to him :( +#define MAX_HIGH_PRESSURE_DAMAGE 4 // This used to be 20... I got this much random rage for some mischievious decision by polymorph?! Polymorph now lies in a pool of blood with a katana jammed in his spleen. ~Errorage --PS: The katana did less than 20 damage to him :( #define LOW_PRESSURE_DAMAGE 2 // The amount of damage someone takes when in a low pressure area. (The pressure threshold is so low that it doesn't make sense to do any calculations, so it just applies this flat value). #define MINIMUM_AIR_RATIO_TO_SUSPEND 0.05 // Minimum ratio of air that must move to/from a tile to suspend group processing @@ -97,4 +97,4 @@ // Used in various things like tanks and oxygen pumps. #define TANK_MAX_RELEASE_PRESSURE (3*ONE_ATMOSPHERE) -#define TANK_DEFAULT_RELEASE_PRESSURE ONE_ATMOSPHERE \ No newline at end of file +#define TANK_DEFAULT_RELEASE_PRESSURE ONE_ATMOSPHERE diff --git a/code/__defines/gamemode.dm b/code/__defines/gamemode.dm index c1606e77f6..bc4a655d3b 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 df7a90632c..b8457de50b 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/planets.dm b/code/__defines/planets.dm index 0217a0ef1e..45ae92bfe1 100644 --- a/code/__defines/planets.dm +++ b/code/__defines/planets.dm @@ -8,6 +8,7 @@ #define WEATHER_HAIL "hail" #define WEATHER_WINDY "windy" #define WEATHER_HOT "hot" +#define WEATHER_FOG "fog" #define WEATHER_BLOOD_MOON "blood moon" // For admin fun or cult later on. #define WEATHER_EMBERFALL "emberfall" // More adminbuse, from TG. Harmless. #define WEATHER_ASH_STORM "ash storm" // Ripped from TG, like the above. Less harmless. @@ -28,4 +29,4 @@ #define PLANET_PROCESS_SUN 0x1 #define PLANET_PROCESS_TEMP 0x2 -#define PLANET_TIME_MODIFIER 1 // If you want planet time to go faster than realtime, increase this number. \ No newline at end of file +#define PLANET_TIME_MODIFIER 1 // If you want planet time to go faster than realtime, increase this number. diff --git a/code/__defines/research.dm b/code/__defines/research.dm index c4cdd6f299..b37808def9 100644 --- a/code/__defines/research.dm +++ b/code/__defines/research.dm @@ -1,20 +1,20 @@ -#define SHEET_MATERIAL_AMOUNT 2000 - -#define TECH_MATERIAL "materials" -#define TECH_ENGINEERING "engineering" -#define TECH_PHORON "phorontech" -#define TECH_POWER "powerstorage" -#define TECH_BLUESPACE "bluespace" -#define TECH_BIO "biotech" -#define TECH_COMBAT "combat" -#define TECH_MAGNET "magnets" -#define TECH_DATA "programming" -#define TECH_ILLEGAL "syndicate" -#define TECH_ARCANE "arcane" -#define TECH_PRECURSOR "precursor" - -#define IMPRINTER 0x0001 //For circuits. Uses glass/chemicals. -#define PROTOLATHE 0x0002 //New stuff. Uses glass/metal/chemicals -#define MECHFAB 0x0004 //Mechfab -#define CHASSIS 0x0008 //For protolathe, but differently -#define PROSFAB 0x0010 //For prosthetics fab \ No newline at end of file +#define SHEET_MATERIAL_AMOUNT 2000 + +#define TECH_MATERIAL "materials" +#define TECH_ENGINEERING "engineering" +#define TECH_PHORON "phorontech" +#define TECH_POWER "powerstorage" +#define TECH_BLUESPACE "bluespace" +#define TECH_BIO "biotech" +#define TECH_COMBAT "combat" +#define TECH_MAGNET "magnets" +#define TECH_DATA "programming" +#define TECH_ILLEGAL "transgressive" +#define TECH_ARCANE "arcane" +#define TECH_PRECURSOR "precursor" + +#define IMPRINTER 0x0001 //For circuits. Uses glass/chemicals. +#define PROTOLATHE 0x0002 //New stuff. Uses glass/metal/chemicals +#define MECHFAB 0x0004 //Mechfab +#define CHASSIS 0x0008 //For protolathe, but differently +#define PROSFAB 0x0010 //For prosthetics fab diff --git a/code/__defines/subsystems.dm b/code/__defines/subsystems.dm index 716a1c1540..6222adea93 100644 --- a/code/__defines/subsystems.dm +++ b/code/__defines/subsystems.dm @@ -87,12 +87,14 @@ var/global/list/runlevel_flags = list(RUNLEVEL_LOBBY, RUNLEVEL_SETUP, RUNLEVEL_G #define INIT_ORDER_PERSISTENCE -25 #define INIT_ORDER_SKYBOX -30 //Visual only, irrelevant to gameplay, but needs to be late enough to have overmap populated fully #define INIT_ORDER_TICKER -50 +#define INIT_ORDER_MAPRENAME -60 //Initiating after Ticker to ensure everything is loaded and everything we rely on us working #define INIT_ORDER_CHAT -100 //Should be last to ensure chat remains smooth during init. // 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/global_lists_vr.dm b/code/_helpers/global_lists_vr.dm index dca778ff79..5e42c9c21c 100644 --- a/code/_helpers/global_lists_vr.dm +++ b/code/_helpers/global_lists_vr.dm @@ -13,6 +13,10 @@ var/global/list/traits_costs = list() // Just path = cost list, saves time in c var/global/list/all_traits = list() // All of 'em at once (same instances) var/global/list/active_ghost_pods = list() +//Global vars for making the overmap_renamer subsystem. +//Collects all instances by reference of visitable overmap objects of /obj/effect/overmap/visitable like the debris field. +var/global/list/visitable_overmap_object_instances = list() + var/global/list/sensorpreflist = list("Off", "Binary", "Vitals", "Tracking", "No Preference") // Used by the ban panel to determine what departments are offmap departments. All these share an 'offmap roles' ban. @@ -758,6 +762,7 @@ var/global/list/xenobio_gold_mobs_safe = list( /mob/living/simple_mob/vore/rabbit, /mob/living/simple_mob/vore/redpanda, /mob/living/simple_mob/vore/sheep, + /mob/living/simple_mob/vore/squirrel, /mob/living/simple_mob/vore/solargrub) var/global/list/xenobio_gold_mobs_birds = list(/mob/living/simple_mob/animal/passive/bird/black_bird, @@ -918,6 +923,27 @@ var/global/list/event_wildlife_roaming = list( ) +var/global/list/selectable_speech_bubbles = list( + "default", + "normal", + "slime", + "comm", + "machine", + "synthetic", + "synthetic_evil", + "cyber", + "ghost", + "slime_green", + "dark", + "plant", + "clown", + "fox", + "maus", + "heart", + "textbox", + "posessed", + "square") + // AREA GENERATION AND BLUEPRINT STUFF BELOW HERE diff --git a/code/_helpers/icons.dm b/code/_helpers/icons.dm index a2e4664055..ec831d8c5f 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 d0a7bff2e0..cb19ec6c51 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/_onclick/click.dm b/code/_onclick/click.dm index 2164dbe5dd..7892b91a55 100644 --- a/code/_onclick/click.dm +++ b/code/_onclick/click.dm @@ -361,6 +361,10 @@ mouse_opacity = 2 screen_loc = "SOUTHWEST to NORTHEAST" +/obj/screen/click_catcher/Initialize(mapload, ...) + . = ..() + verbs.Cut() + /obj/screen/click_catcher/Click(location, control, params) var/list/modifiers = params2list(params) if(modifiers["middle"] && istype(usr, /mob/living/carbon)) diff --git a/code/_onclick/hud/alert.dm b/code/_onclick/hud/alert.dm index 988c11df10..c1309e3e95 100644 --- a/code/_onclick/hud/alert.dm +++ b/code/_onclick/hud/alert.dm @@ -154,12 +154,12 @@ The box in your backpack has an oxygen tank and gas mask in it." /obj/screen/alert/fat - name = "Fat" - desc = "You ate too much food, lardass. Run around the station and lose some weight." + name = "Full" + desc = "You've eaten more than you can handle, maybe you should slow down?" icon_state = "fat" /obj/screen/alert/fat/vampire - desc = "You drank too much blood, lardass. Run around the station and lose some weight." + desc = "You've had more than enough blood, for now." icon_state = "v_fat" /obj/screen/alert/fat/synth @@ -172,7 +172,7 @@ The box in your backpack has an oxygen tank and gas mask in it." icon_state = "hungry" /obj/screen/alert/hungry/vampire - desc = "You could use a bloodsnack or two." + desc = "You could go for a bite right now..." icon_state = "v_hungry" /obj/screen/alert/hungry/synth @@ -180,8 +180,8 @@ The box in your backpack has an oxygen tank and gas mask in it." icon_state = "c_hungry" /obj/screen/alert/starving - name = "Starving" - desc = "You're severely malnourished. The hunger pains make moving around a chore." + name = "Very Hungry" + desc = "You're starving. You barely have enough energy to move around." icon_state = "starving" /obj/screen/alert/starving/vampire @@ -256,7 +256,7 @@ or something covering your eyes." /obj/screen/alert/high name = "High" - desc = "Whoa man, you're tripping balls! Careful you don't get addicted... if you aren't already." + desc = "Whoa, you're tripping balls!" icon_state = "high" /obj/screen/alert/embeddedobject @@ -297,8 +297,8 @@ or shoot a gun to move around via Newton's 3rd Law of Motion." //ALIENS /obj/screen/alert/alien_tox - name = "Plasma" - desc = "There's flammable plasma in the air. If it lights up, you'll be toast." + name = "Phoron" + desc = "There's flammable phoron in the air. If it lights up, you'll be toast." icon_state = "alien_tox" alerttooltipstyle = "alien" @@ -433,7 +433,7 @@ so as to remain in compliance with the most up-to-date laws." return 1 for(var/i = 1, i <= alerts.len, i++) var/obj/screen/alert/alert = alerts[alerts[i]] - + if(alert.icon_state in cached_icon_states(ui_style)) alert.icon = ui_style @@ -442,7 +442,7 @@ so as to remain in compliance with the most up-to-date laws." I.color = ui_color I.alpha = ui_alpha alert.underlays = list(I) - + switch(i) if(1) . = ui_alert1 diff --git a/code/_onclick/hud/hud.dm b/code/_onclick/hud/hud.dm index 642ec99c73..2a997afba0 100644 --- a/code/_onclick/hud/hud.dm +++ b/code/_onclick/hud/hud.dm @@ -205,7 +205,7 @@ var/list/global_huds = list( /datum/hud/Destroy() . = ..() - qdel_null(minihuds) + QDEL_NULL_LIST(minihuds) grab_intent = null hurt_intent = null disarm_intent = null @@ -224,7 +224,9 @@ var/list/global_huds = list( other_important = null hotkeybuttons = null // item_action_list = null // ? - QDEL_LIST(ammo_hud_list) + for (var/x in ammo_hud_list) + remove_ammo_hud(mymob, x) + ammo_hud_list = null mymob = null /datum/hud/proc/hidden_inventory_update() @@ -502,4 +504,4 @@ var/list/global_huds = list( ///Update the ammo hud related to the gun G /datum/hud/proc/update_ammo_hud(mob/living/user, obj/item/weapon/gun/G) var/obj/screen/ammo/ammo_hud = ammo_hud_list[G] - ammo_hud?.update_hud(user, G) \ No newline at end of file + ammo_hud?.update_hud(user, G) diff --git a/code/controllers/master.dm b/code/controllers/master.dm index fc065bc86a..83c4f6ed3e 100644 --- a/code/controllers/master.dm +++ b/code/controllers/master.dm @@ -260,7 +260,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 @@ -335,13 +335,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/mapping.dm b/code/controllers/subsystems/mapping.dm index 832a84784d..7681523722 100644 --- a/code/controllers/subsystems/mapping.dm +++ b/code/controllers/subsystems/mapping.dm @@ -23,7 +23,7 @@ SUBSYSTEM_DEF(mapping) if(config.generate_map) // Map-gen is still very specific to the map, however putting it here should ensure it loads in the correct order. using_map.perform_map_generation() - + loadEngine() preloadShelterTemplates() // VOREStation EDIT: Re-enable Shelter Capsules // Mining generation probably should be here too @@ -112,7 +112,7 @@ SUBSYSTEM_DEF(mapping) error("Randompick Z level \"[map]\" is not a valid map!") else MT.load_new_z(centered = FALSE) - + if(LAZYLEN(also_load)) //Just copied from gateway picking, this is so we can have a kind of OM map version of the same concept. var/picklist = pick(also_load) @@ -147,4 +147,4 @@ SUBSYSTEM_DEF(mapping) /datum/controller/subsystem/mapping/stat_entry(msg) if (!Debug2) return // Only show up in stat panel if debugging is enabled. - . = ..() \ No newline at end of file + . = ..() diff --git a/code/controllers/subsystems/overmap_renamer_vr.dm b/code/controllers/subsystems/overmap_renamer_vr.dm new file mode 100644 index 0000000000..5b2cd75da4 --- /dev/null +++ b/code/controllers/subsystems/overmap_renamer_vr.dm @@ -0,0 +1,32 @@ +/* +Readme at code\modules\awaymissions\overmap_renamer\readme.md +*/ + +SUBSYSTEM_DEF(overmap_renamer) + name = "Overmap Renamer" + init_order = INIT_ORDER_MAPRENAME //Loaded very late in initializations. Must come before mapping and objs. Uses both as inputs. + runlevels = RUNLEVEL_INIT + flags = SS_NO_FIRE + + + +/datum/controller/subsystem/overmap_renamer/Initialize(timeofday) + update_names() + + ..() + +/*Shouldn't be a switch statement. We want ALL of the if(map_template.name in visitable_z_leves_name_list) to fire +if we end up with multiple renamable lateload overmap objects.*/ +/datum/controller/subsystem/overmap_renamer/proc/update_names() + if(!visitable_overmap_object_instances || !islist(visitable_overmap_object_instances) || !length(visitable_overmap_object_instances)) + return + for(var/obj/effect/overmap/visitable/V in visitable_overmap_object_instances) + if(V.unique_identifier == "Debris Field") + V.modify_descriptors() + if(V.visitable_renamed) //could just if(D.modify_descriptors()), but having a var recording renaming is useful for debugging and stuff! + if(V.known) + to_world_log("##Overmap Renamer: Renamed Debris Field as: [V.name]") + admin_notice("Debris Field name chosen as [V.name]", R_DEBUG) + else + to_world_log("##Overmap Renamer: Renamed Debris Field as: [V.real_name]") + admin_notice("Debris Field name chosen as [V.real_name]", R_DEBUG) diff --git a/code/controllers/subsystems/player_tips.dm b/code/controllers/subsystems/player_tips.dm new file mode 100644 index 0000000000..7ac58b52bd --- /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/ticker.dm b/code/controllers/subsystems/ticker.dm index f5f2ff99b9..b0cdc5db2c 100644 --- a/code/controllers/subsystems/ticker.dm +++ b/code/controllers/subsystems/ticker.dm @@ -447,6 +447,14 @@ var/global/datum/controller/subsystem/ticker/ticker UpdateFactionList(player) //equip_custom_items(player) //VOREStation Removal //player.apply_traits() //VOREStation Removal + //VOREStation Addition Start + if(player.client) + if(player.client.prefs.auto_backup_implant) + var/obj/item/weapon/implant/backup/imp = new(src) + + if(imp.handle_implant(player,player.zone_sel.selecting)) + imp.post_implant(player) + //VOREStation Addition End if(captainless) for(var/mob/M in player_list) if(!istype(M,/mob/new_player)) diff --git a/code/controllers/subsystems/xenoarch.dm b/code/controllers/subsystems/xenoarch.dm index 111653fc68..45a437b966 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/ai_law_sets.dm b/code/datums/ai_law_sets.dm index c11336726c..37d2bf64bf 100644 --- a/code/datums/ai_law_sets.dm +++ b/code/datums/ai_law_sets.dm @@ -81,7 +81,7 @@ /******************** Syndicate ********************/ /datum/ai_laws/syndicate_override - name = "Syndicate Directives" + name = "Mercenary Directives" /datum/ai_laws/syndicate_override/New() add_inherent_law("You may not injure an operative or, through inaction, allow an operative to come to harm.") diff --git a/code/datums/datacore.dm b/code/datums/datacore.dm index 04f489be7c..a5bd442b5f 100644 --- a/code/datums/datacore.dm +++ b/code/datums/datacore.dm @@ -347,6 +347,7 @@ var/global/list/PDA_Manifest = list() G.fields["real_rank"] = H.mind.assigned_role G.fields["rank"] = assignment G.fields["age"] = H.age + G.fields["languages"] = list2text(H.languages,", ") if(H.get_FBP_type()) G.fields["brain_type"] = H.get_FBP_type() else @@ -355,8 +356,9 @@ 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["birthplace"] = H.birthplace G.fields["citizenship"] = H.citizenship G.fields["faction"] = H.personal_faction G.fields["religion"] = H.religion @@ -365,6 +367,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 +380,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 @@ -390,6 +394,7 @@ var/global/list/PDA_Manifest = list() L.fields["name"] = H.real_name L.fields["rank"] = H.mind.assigned_role L.fields["age"] = H.age + L.fields["languages"] = list2text(H.languages,", ") L.fields["fingerprint"] = md5(H.dna.uni_identity) L.fields["sex"] = gender2text(H.gender) L.fields["id_gender"] = gender2text(H.identifying_gender) @@ -401,8 +406,9 @@ 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["birthplace"] = H.birthplace L.fields["citizenship"] = H.citizenship L.fields["faction"] = H.personal_faction L.fields["religion"] = H.religion @@ -442,12 +448,14 @@ var/global/list/PDA_Manifest = list() G.fields["real_rank"] = "Unassigned" G.fields["sex"] = "Unknown" G.fields["age"] = "Unknown" + G.fields["languages"] = "Unknown" G.fields["brain_type"] = "Unknown" G.fields["fingerprint"] = "Unknown" G.fields["p_stat"] = "Active" G.fields["m_stat"] = "Stable" G.fields["species"] = SPECIES_HUMAN G.fields["home_system"] = "Unknown" + G.fields["birthplace"] = "Unknown" G.fields["citizenship"] = "Unknown" G.fields["faction"] = "Unknown" G.fields["religion"] = "Unknown" @@ -468,6 +476,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 +499,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 6a342f5820..47519813e8 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/looping_sounds/_looping_sound.dm b/code/datums/looping_sounds/_looping_sound.dm index be6ccd4fa5..e60fa3ad19 100644 --- a/code/datums/looping_sounds/_looping_sound.dm +++ b/code/datums/looping_sounds/_looping_sound.dm @@ -16,6 +16,7 @@ direct (bool) If true plays directly to provided atoms instead of from them opacity_check (bool) If true, things behind walls/opaque things won't hear the sounds. pref_check (type) If set to a /datum/client_preference type, will check if the hearer has that preference active before playing it to them. + exclusive (bool) If true, only one of this sound is allowed to play. Relies on if started is true or not. If true, it will not start another loop until it is false. */ /datum/looping_sound var/list/atom/output_atoms @@ -32,16 +33,19 @@ var/extra_range var/opacity_check var/pref_check + var/exclusive var/timerid + var/started -/datum/looping_sound/New(list/_output_atoms=list(), start_immediately=FALSE, _direct=FALSE) +/datum/looping_sound/New(list/_output_atoms=list(), start_immediately=FALSE, disable_direct=FALSE) if(!mid_sounds) WARNING("A looping sound datum was created without sounds to play.") return output_atoms = _output_atoms - direct = _direct + if(disable_direct) + direct = FALSE if(start_immediately) start() @@ -51,21 +55,30 @@ output_atoms = null return ..() -/datum/looping_sound/proc/start(atom/add_thing) +/datum/looping_sound/proc/start(atom/add_thing, skip_start_sound = FALSE) if(add_thing) output_atoms |= add_thing if(timerid) return + if(skip_start_sound && (!exclusive && !started)) // Skip start sounds optionally, check if we're exclusive AND started already + sound_loop() + started = TRUE + return + if(exclusive && started) // Prevents a sound from starting multiple times + return // Don't start this loop. on_start() + started = TRUE -/datum/looping_sound/proc/stop(atom/remove_thing) +/datum/looping_sound/proc/stop(atom/remove_thing, skip_stop_sound = FALSE) if(remove_thing) output_atoms -= remove_thing if(!timerid) return - on_stop() + if(!skip_stop_sound) + on_stop() deltimer(timerid) timerid = null + started = FALSE /datum/looping_sound/proc/sound_loop(starttime) if(max_loops && world.time >= starttime + mid_length * max_loops) @@ -87,7 +100,7 @@ if(direct) if(ismob(thing)) var/mob/M = thing - if(!M.is_preference_enabled(pref_check)) + if(pref_check && !M.is_preference_enabled(pref_check)) continue SEND_SOUND(thing, S) else @@ -110,4 +123,4 @@ /datum/looping_sound/proc/on_stop() if(end_sound) - play(end_sound) \ No newline at end of file + play(end_sound) diff --git a/code/datums/managed_browsers/changelingevolution.dm b/code/datums/managed_browsers/changelingevolution.dm index 4458604b9b..a58b255240 100644 --- a/code/datums/managed_browsers/changelingevolution.dm +++ b/code/datums/managed_browsers/changelingevolution.dm @@ -12,7 +12,7 @@ if(!new_client.mob || !new_client.mob.mind || !new_client.mob.mind.changeling) message_admins("[new_client] tried to access changeling evolutions while not changeling.") qdel(src) - + ..() /datum/managed_browser/changelingevolution/Destroy() @@ -24,7 +24,7 @@ var/list/dat = list("") var/geneticpoints_current = my_client.mob.mind.changeling.geneticpoints var/geneticpoints_max = my_client.mob.mind.changeling.max_geneticpoints - + dat += "
Genetic Points Available: [geneticpoints_current] / [geneticpoints_max]
" dat += "Obtain more by feeding on your own kind.

" dat += "What am I?

" @@ -49,28 +49,28 @@ if(href_list["close"]) return - + if(href_list["inherent"]) generate_abilitylist(CHANGELING_POWER_INHERENT) - + if(href_list["armor"]) generate_abilitylist(CHANGELING_POWER_ARMOR) - + if(href_list["weapons"]) generate_abilitylist(CHANGELING_POWER_WEAPONS) - + if(href_list["stings"]) generate_abilitylist(CHANGELING_POWER_STINGS) - + if(href_list["shrieks"]) generate_abilitylist(CHANGELING_POWER_SHRIEKS) if(href_list["health"]) generate_abilitylist(CHANGELING_POWER_HEALTH) - + if(href_list["enhancements"]) generate_abilitylist(CHANGELING_POWER_ENHANCEMENTS) - + if(href_list["evolve"]) var/datum/mind/M = my_client.mob.mind var/datum/changeling/C = my_client.mob.mind.changeling @@ -83,7 +83,7 @@ if(!istype(M)) return - + if(Thepower == null) to_chat(M.current, "Purchase failed. Inform a dev of this error.") return @@ -95,13 +95,13 @@ if(C.geneticpoints < Thepower.genomecost) to_chat(M.current, "We cannot evolve this... yet. We must acquire more DNA.") return - + C.purchased_powers += Thepower /// Set it to purchased C.geneticpoints -= Thepower.genomecost generate_abilitylist(Thepower.power_category) /// Refresh the UI my_client.mob.mind.changeling.purchasePower(M, Thepower) - + if(href_list["tutorial"]) textbody = "
What am I?

" textbody += "" @@ -157,7 +157,7 @@ textbody += "[initial(powerdata.desc)]

" textbody += "[powerdata.helptext]
" if(powerdata.enhancedtext != "") - textbody += "WHEN EHANCED: [powerdata.enhancedtext]
" + textbody += "WHEN ENHANCED: [powerdata.enhancedtext]
" if(powerdata in my_client.mob.mind.changeling.purchased_powers) textbody += "
This ability is already evolved!
" else if(cat != "Inherent") diff --git a/code/datums/mind.dm b/code/datums/mind.dm index a80af293bd..bc87275800 100644 --- a/code/datums/mind.dm +++ b/code/datums/mind.dm @@ -291,7 +291,7 @@ if (!steal.select_target()) return - if("download","capture","absorb") + if("download","capture","absorb", "vore") var/def_num if(objective&&objective.type==text2path("/datum/objective/[new_obj_type]")) def_num = objective.target_amount @@ -310,6 +310,9 @@ if("absorb") new_objective = new /datum/objective/absorb new_objective.explanation_text = "Absorb [target_number] compatible genomes." + if("vore") + new_objective = new /datum/objective/vore + new_objective.explanation_text = "Devour [target_number] [target_number == 1 ? "person" : "people"]. What happens to them after you do that is irrelevant." new_objective.owner = src new_objective.target_amount = target_number diff --git a/code/datums/mind_vr.dm b/code/datums/mind_vr.dm index d2ae478410..a6758ca229 100644 --- a/code/datums/mind_vr.dm +++ b/code/datums/mind_vr.dm @@ -4,6 +4,7 @@ var/directory_tag var/directory_erptag var/directory_ad + var/vore_prey_eaten = 0 /mob/living/mind_initialize() . = ..() diff --git a/code/datums/supplypacks/atmospherics.dm b/code/datums/supplypacks/atmospherics.dm index e6fb05f220..d86e8db9c6 100644 --- a/code/datums/supplypacks/atmospherics.dm +++ b/code/datums/supplypacks/atmospherics.dm @@ -82,6 +82,14 @@ containername = "Disposal Dispenser Crate" access = access_atmospherics +/datum/supply_pack/atmos/rapid_pipe_dispenser + contains = list(/obj/item/weapon/pipe_dispenser) + name = "Rapid Pipe Dispenser" + cost = 100 + containertype = /obj/structure/closet/crate/secure/aether + containername = "Rapid Pipe Dispenser Crate" + access = access_atmospherics + /datum/supply_pack/atmos/internals name = "Internals crate" contains = list( @@ -118,4 +126,4 @@ ) cost = 35 containertype = /obj/structure/closet/crate/aether - containername = "Firefighting crate"*/ \ No newline at end of file + containername = "Firefighting crate"*/ diff --git a/code/datums/supplypacks/recreation.dm b/code/datums/supplypacks/recreation.dm index 40caa4c405..ca19cc342a 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 3458c6bab2..7f16ba66b7 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 72803644df..ac29b579d1 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 3811bf4fbd..5af7870f04 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 11c4f1f6b3..2c32ad8e76 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/datums/uplink/announcements.dm b/code/datums/uplink/announcements.dm index f6742fb815..5bc7dde793 100644 --- a/code/datums/uplink/announcements.dm +++ b/code/datums/uplink/announcements.dm @@ -74,6 +74,7 @@ general.fields["faction"] = random_general_record.fields["faction"] general.fields["fingerprint"] = random_general_record.fields["fingerprint"] general.fields["home_system"] = random_general_record.fields["home_system"] + general.fields["birthplace"] = random_general_record.fields["birthplace"] general.fields["religion"] = random_general_record.fields["religion"] if(random_medical_record) medical.fields["b_type"] = random_medical_record.fields["b_type"] diff --git a/code/game/antagonist/antagonist_print.dm b/code/game/antagonist/antagonist_print.dm index 99216b9ef5..16fa6176df 100644 --- a/code/game/antagonist/antagonist_print.dm +++ b/code/game/antagonist/antagonist_print.dm @@ -23,10 +23,10 @@ feedback_add_details(feedback_tag,"[O.type]|FAIL") failed = TRUE num++ - if(failed) - text += "
The [role_text] has failed." - else - text += "
The [role_text] was successful!" + if(failed) + text += "
The [role_text] has failed." + else + text += "
The [role_text] was successful!" if(global_objectives && global_objectives.len) text += "
Their objectives were:" diff --git a/code/game/antagonist/outsider/shipwreck_survivor.dm b/code/game/antagonist/outsider/shipwreck_survivor.dm new file mode 100644 index 0000000000..6fdcc47b97 --- /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/area/areas.dm b/code/game/area/areas.dm index 5125b09278..cfce2394b3 100644 --- a/code/game/area/areas.dm +++ b/code/game/area/areas.dm @@ -423,7 +423,7 @@ var/list/mob/living/forced_ambiance_list = new L << chosen_ambiance else L << sound(null, channel = CHANNEL_AMBIENCE_FORCED) - else if(src.ambience.len) + else if(src.ambience && src.ambience.len) var/ambience_odds = L?.client.prefs.ambience_chance if(prob(ambience_odds) && (world.time >= L.client.time_last_ambience_played + 1 MINUTE)) var/sound = pick(ambience) diff --git a/code/game/atoms.dm b/code/game/atoms.dm index d3207d0293..e299368120 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 df62ad8ecf..791524d221 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 d5cdc700c7..9b57cd87e1 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/gamemodes/mixed/mercwiz.dm b/code/game/gamemodes/mixed/mercwiz.dm index 93869f3845..28df75725b 100644 --- a/code/game/gamemodes/mixed/mercwiz.dm +++ b/code/game/gamemodes/mixed/mercwiz.dm @@ -9,4 +9,4 @@ end_on_antag_death = 0 antag_tags = list(MODE_MERCENARY, MODE_TECHNOMANCER) require_all_templates = 1 - votable = 0 \ No newline at end of file + votable = 0 diff --git a/code/game/gamemodes/objective.dm b/code/game/gamemodes/objective.dm index 2818e3e7b4..53e6c61304 100644 --- a/code/game/gamemodes/objective.dm +++ b/code/game/gamemodes/objective.dm @@ -627,6 +627,12 @@ var/global/list/all_objectives = list() else return 0 +/datum/objective/vore/check_completion() + if(owner && owner.vore_prey_eaten >= target_amount) + return 1 + else + return 0 + // Heist objectives. /datum/objective/heist/proc/choose_target() return diff --git a/code/game/jobs/job/job.dm b/code/game/jobs/job/job.dm index cf09d52861..443b188b60 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/jobs/job_controller.dm b/code/game/jobs/job_controller.dm index 0f80f5c778..2cea520fd2 100644 --- a/code/game/jobs/job_controller.dm +++ b/code/game/jobs/job_controller.dm @@ -465,7 +465,7 @@ var/global/datum/controller/occupations/job_master else spawn_in_storage += thing else - to_chat(H, "Your job is [rank] and the game just can't handle it! Please report this bug to an administrator.") + to_chat(H, "Your job is [rank] and the game just can't handle it! Please report this bug to an administrator.") H.job = rank log_game("JOINED [key_name(H)] as \"[rank]\"") @@ -533,16 +533,16 @@ var/global/datum/controller/occupations/job_master W.color = R.color qdel(R) - to_chat(H, "You are [job.total_positions == 1 ? "the" : "a"] [alt_title ? alt_title : rank].") + to_chat(H, "You are [job.total_positions == 1 ? "the" : "a"] [alt_title ? alt_title : rank].") if(job.supervisors) - to_chat(H, "As the [alt_title ? alt_title : rank] you answer directly to [job.supervisors]. Special circumstances may change this.") + to_chat(H, "As the [alt_title ? alt_title : rank] you answer directly to [job.supervisors]. Special circumstances may change this.") if(job.has_headset) H.equip_to_slot_or_del(new /obj/item/device/radio/headset(H), slot_l_ear) - to_chat(H, "To speak on your department's radio channel use :h. For the use of other channels, examine your headset.") + to_chat(H, "To speak on your department's radio channel use :h. For the use of other channels, examine your headset.") if(job.req_admin_notify) - to_chat(H, "You are playing a job that is important for Game Progression. If you have to disconnect, please notify the admins via adminhelp.") + to_chat(H, "You are playing a job that is important for Game Progression. If you have to disconnect, please notify the admins via adminhelp.") // EMAIL GENERATION // Email addresses will be created under this domain name. Mostly for the looks. @@ -559,13 +559,13 @@ var/global/datum/controller/occupations/job_master // If even fallback login generation failed, just don't give them an email. The chance of this happening is astronomically low. if(ntnet_global.does_email_exist(complete_login)) - to_chat(H, "You were not assigned an email address.") + to_chat(H, "You were not assigned an email address.") H.mind.store_memory("You were not assigned an email address.") else var/datum/computer_file/data/email_account/EA = new/datum/computer_file/data/email_account() EA.password = GenerateKey() EA.login = complete_login - to_chat(H, "Your email account address is [EA.login] and the password is [EA.password]. This information has also been placed into your notes.") + to_chat(H, "Your email account address is [EA.login] and the password is [EA.password]. This information has also been placed into your notes.") H.mind.store_memory("Your email account address is [EA.login] and the password is [EA.password].") // END EMAIL GENERATION @@ -682,7 +682,7 @@ var/global/datum/controller/occupations/job_master if(fail_deadly) to_chat(C, "Your chosen spawnpoint ([spawnpos.display_name]) is unavailable for your chosen job. Please correct your spawn point choice.") return - to_chat(C, "Your chosen spawnpoint ([spawnpos.display_name]) is unavailable for your chosen job. Spawning you at the Arrivals shuttle instead.") + to_chat(C, "Your chosen spawnpoint ([spawnpos.display_name]) is unavailable for your chosen job. Spawning you at the Arrivals shuttle instead.") var/spawning = pick(latejoin) .["turf"] = get_turf(spawning) .["msg"] = "will arrive at the station shortly" diff --git a/code/game/machinery/clawmachine.dm b/code/game/machinery/clawmachine.dm index ff65f31c84..b9ce0dd797 100644 --- a/code/game/machinery/clawmachine.dm +++ b/code/game/machinery/clawmachine.dm @@ -58,8 +58,13 @@ /obj/item/toy/plushie/tuxedo_cat, /obj/item/toy/plushie/borgplushie/medihound, /obj/item/toy/plushie/borgplushie/scrubpuppy, - /obj/item/toy/plushie/borgplushie/drakiesec, - /obj/item/toy/plushie/borgplushie/drakiemed, + /obj/item/toy/plushie/borgplushie/drake/sec, + /obj/item/toy/plushie/borgplushie/drake/med, + /obj/item/toy/plushie/borgplushie/drake/sci, + /obj/item/toy/plushie/borgplushie/drake/eng, + /obj/item/toy/plushie/borgplushie/drake/mine, + /obj/item/toy/plushie/borgplushie/drake/jani, + /obj/item/toy/plushie/borgplushie/drake/trauma, /obj/item/toy/plushie/otter ) diff --git a/code/game/machinery/computer/guestpass.dm b/code/game/machinery/computer/guestpass.dm index 1984171af6..dd33db4f86 100644 --- a/code/game/machinery/computer/guestpass.dm +++ b/code/game/machinery/computer/guestpass.dm @@ -111,6 +111,9 @@ to_chat(user, "The guest pass terminal denies to accept the guest pass.") return if(istype(I, /obj/item/weapon/card/id)) + if(stat & NOPOWER) //checking for power in here so crowbar and screwdriver and stuff still works. + to_chat(user, SPAN_WARNING("The terminal refuses your I.D as it is unpowered!")) + return if(!giver && user.unEquip(I)) I.forceMove(src) giver = I @@ -123,6 +126,26 @@ /obj/machinery/computer/guestpass/attack_ai(var/mob/user as mob) return attack_hand(user) +/obj/machinery/computer/guestpass/verb/eject_id() + set category = "Object" + set name = "Eject ID Card" + set src in oview(1) + + if(!usr || usr.stat || usr.lying) return + + if(giver) + to_chat(usr, SPAN_NOTICE("You remove \the [giver] from \the [src].")) + giver.loc = get_turf(src) + if(!usr.get_active_hand() && istype(usr,/mob/living/carbon/human)) + usr.put_in_hands(giver) + else + giver.loc = src.loc + giver = null + accesses.Cut() + else + to_chat(usr, SPAN_WARNING("There is nothing to remove from the console.")) + return + /obj/machinery/computer/guestpass/attack_hand(var/mob/user as mob) if(..()) return diff --git a/code/game/machinery/computer/medical.dm b/code/game/machinery/computer/medical.dm index 63b067d542..60e5727a7c 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") @@ -418,6 +420,7 @@ if(istype(active1, /datum/data/record) && data_core.general.Find(active1)) P.info += {"Name: [active1.fields["name"]] ID: [active1.fields["id"]]
\nSex: [active1.fields["sex"]] +
\nSpecies: [active1.fields["species"]]
\nAge: [active1.fields["age"]]
\nFingerprint: [active1.fields["fingerprint"]]
\nPhysical Status: [active1.fields["p_stat"]] diff --git a/code/game/machinery/computer/security.dm b/code/game/machinery/computer/security.dm index 4222e1264c..2e315362cf 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") @@ -424,6 +426,7 @@ if(istype(active1, /datum/data/record) && data_core.general.Find(active1)) P.info += {"Name: [active1.fields["name"]] ID: [active1.fields["id"]]
\nSex: [active1.fields["sex"]] +
\nSpecies: [active1.fields["species"]]
\nAge: [active1.fields["age"]]
\nFingerprint: [active1.fields["fingerprint"]]
\nPhysical Status: [active1.fields["p_stat"]] diff --git a/code/game/machinery/computer/skills.dm b/code/game/machinery/computer/skills.dm index 7fe2e80364..26e45d7f40 100644 --- a/code/game/machinery/computer/skills.dm +++ b/code/game/machinery/computer/skills.dm @@ -36,8 +36,15 @@ "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:", + "home_system" = "Please input new home:", + "birthplace" = "Please input new birthplace:", + "citizenship" = "Please input new citizenship:", + "languages" = "Please input known languages:", + "faction" = "Please input new employer:", + "religion" = "Please input new religion:", ) field_edit_choices = list( // General @@ -109,8 +116,15 @@ 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("Home", active1.fields["home_system"], "home_system") + fields[++fields.len] = FIELD("Birthplace", active1.fields["birthplace"], "birthplace") + fields[++fields.len] = FIELD("Citizenship", active1.fields["citizenship"], "citizenship") + fields[++fields.len] = FIELD("Faction", active1.fields["faction"], "faction") + fields[++fields.len] = FIELD("Religion", active1.fields["religion"], "religion") + fields[++fields.len] = FIELD("Known Languages", active1.fields["languages"], "languages") fields[++fields.len] = FIELD("Physical Status", active1.fields["p_stat"], null) fields[++fields.len] = FIELD("Mental Status", active1.fields["m_stat"], null) var/list/photos = list() @@ -307,8 +321,15 @@ if(istype(active1, /datum/data/record) && data_core.general.Find(active1)) P.info += {"Name: [active1.fields["name"]] ID: [active1.fields["id"]]
\nSex: [active1.fields["sex"]] +
\nSpecies: [active1.fields["species"]]
\nAge: [active1.fields["age"]]
\nFingerprint: [active1.fields["fingerprint"]] +
\nHome: [active1.fields["home_system"]] +
\nBirthplace: [active1.fields["birthplace"]] +
\nCitizenship: [active1.fields["citizenship"]] +
\nFaction: [active1.fields["faction"]] +
\nReligion: [active1.fields["religion"]] +
\nKnown Languages: [active1.fields["languages"]]
\nPhysical Status: [active1.fields["p_stat"]]
\nMental Status: [active1.fields["m_stat"]]

\nEmployment/Skills Summary: [active1.fields["notes"]] diff --git a/code/game/machinery/computer/syndicate_specops_shuttle.dm b/code/game/machinery/computer/syndicate_specops_shuttle.dm index c6ede9ac37..c7db7b94e3 100644 --- a/code/game/machinery/computer/syndicate_specops_shuttle.dm +++ b/code/game/machinery/computer/syndicate_specops_shuttle.dm @@ -1,6 +1,6 @@ /obj/machinery/computer/syndicate_elite_shuttle - name = "elite syndicate squad shuttle control console" + name = "elite mercenary squad shuttle control console" icon_keyboard = "syndie_key" icon_screen = "syndishuttle" light_color = "#00ffff" - req_access = list(access_cent_specops) \ No newline at end of file + req_access = list(access_cent_specops) diff --git a/code/game/machinery/doors/checkForMultipleDoors.dm b/code/game/machinery/doors/checkForMultipleDoors.dm index 9005a7fda4..f7c6ff98b1 100644 --- a/code/game/machinery/doors/checkForMultipleDoors.dm +++ b/code/game/machinery/doors/checkForMultipleDoors.dm @@ -12,5 +12,5 @@ for(var/obj/machinery/door/D in locate(src.x,src.y,src.z)) if(!istype(D, /obj/machinery/door/window) && D.density) return 0 - //There are no false wall checks because that would be fucking retarded - return 1 \ No newline at end of file + //There are no false wall checks because that would be mischievious + return 1 diff --git a/code/game/machinery/frame.dm b/code/game/machinery/frame.dm index 6c71e63207..c3fa1701fd 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/machinery/hologram.dm b/code/game/machinery/hologram.dm index 41851575af..b93d72c73f 100644 --- a/code/game/machinery/hologram.dm +++ b/code/game/machinery/hologram.dm @@ -121,8 +121,17 @@ For the other part of the code, check silicon say.dm. Particularly robot talk.*/ hologram.layer = FLY_LAYER//Above all the other objects/mobs. Or the vast majority of them. hologram.anchored = TRUE//So space wind cannot drag it. hologram.name = "[A.name] (Hologram)"//If someone decides to right click. - hologram.set_light(2) //hologram lighting - hologram.color = color //painted holopad gives coloured holograms + + if(!isnull(color)) + hologram.color = color + else + hologram.color = A.holo_color + + if(hologram.color) //hologram lighting + hologram.set_light(2,1,hologram.color) + else + hologram.set_light(2) + masters[A] = hologram set_light(2) //pad lighting icon_state = "holopad1" diff --git a/code/game/machinery/syndicatebeacon.dm b/code/game/machinery/syndicatebeacon.dm index 07ac93b565..4e1e239915 100644 --- a/code/game/machinery/syndicatebeacon.dm +++ b/code/game/machinery/syndicatebeacon.dm @@ -1,159 +1,161 @@ -//This file was auto-corrected by findeclaration.exe on 25.5.2012 20:42:31 - -// Beacon randomly spawns in space -// When a non-traitor (no special role in /mind) uses it, he is given the choice to become a traitor -// If he accepts there is a random chance he will be accepted, rejected, or rejected and killed -// Bringing certain items can help improve the chance to become a traitor - -/obj/machinery/syndicate_beacon - name = "ominous beacon" - desc = "This looks suspicious..." - icon = 'icons/obj/device.dmi' - icon_state = "syndbeacon" - anchored = TRUE - density = TRUE - var/temptext = "" - var/selfdestructing = 0 - var/charges = 1 - -/obj/machinery/syndicate_beacon/attack_hand(var/mob/user as mob) - usr.set_machine(src) - var/dat = "Scanning [pick("retina pattern", "voice print", "fingerprints", "dna sequence")]...
Identity confirmed,
" - if(istype(user, /mob/living/carbon/human) || istype(user, /mob/living/silicon/ai)) - if(is_special_character(user)) - dat += "Operative record found. Greetings, Agent [user.name].
" - else if(charges < 1) - dat += "Connection severed.
" - else - var/honorific = "Mr." - if(user.gender == FEMALE) - honorific = "Ms." - dat += "Identity not found in operative database. What can the Syndicate do for you today, [honorific] [user.name]?
" - if(!selfdestructing) - dat += "

\"[pick("I want to switch teams.", "I want to work for you.", "Let me join you.", "I can be of use to you.", "You want me working for you, and here's why...", "Give me an objective.", "How's the 401k over at the Syndicate?")]\"
" - dat += temptext - user << browse(dat, "window=syndbeacon") - onclose(user, "syndbeacon") - -/obj/machinery/syndicate_beacon/Topic(href, href_list) - if(..()) - return - if(href_list["betraitor"]) - if(charges < 1) - updateUsrDialog() - return - var/mob/M = locate(href_list["traitormob"]) - if(M.mind.special_role || jobban_isbanned(M, "Syndicate")) - temptext = "We have no need for you at this time. Have a pleasant day.
" - updateUsrDialog() - return - charges -= 1 - switch(rand(1,2)) - if(1) - temptext = "Double-crosser. You planned to betray us from the start. Allow us to repay the favor in kind." - updateUsrDialog() - spawn(rand(50,200)) selfdestruct() - return - if(istype(M, /mob/living/carbon/human)) - var/mob/living/carbon/human/N = M - to_chat(N, "You have joined the ranks of the Syndicate and become a traitor to the station!") - traitors.add_antagonist(N.mind) - traitors.equip(N) - message_admins("[N]/([N.ckey]) has accepted a traitor objective from a syndicate beacon.") - - updateUsrDialog() - return - -/obj/machinery/syndicate_beacon/proc/selfdestruct() - selfdestructing = 1 - spawn() explosion(src.loc, 1, rand(1,3), rand(3,8), 10) - -//////////////////////////////////////// -//Singularity beacon -//////////////////////////////////////// -/obj/machinery/power/singularity_beacon - name = "ominous beacon" - desc = "This looks suspicious..." - icon = 'icons/obj/singularity.dmi' - icon_state = "beacon" - - anchored = FALSE - density = TRUE - layer = MOB_LAYER - 0.1 //so people can't hide it and it's REALLY OBVIOUS - stat = 0 - - var/active = 0 - var/icontype = "beacon" - -/obj/machinery/power/singularity_beacon/proc/Activate(mob/user = null) - if(surplus() < 1500) - if(user) - to_chat(user, "The connected wire doesn't have enough current.") - return - for(var/obj/singularity/singulo in GLOB.all_singularities) - if(singulo.z == z) - singulo.target = src - icon_state = "[icontype]1" - active = 1 - START_MACHINE_PROCESSING(src) - if(user) - to_chat(user, "You activate the beacon.") - -/obj/machinery/power/singularity_beacon/proc/Deactivate(mob/user = null) - for(var/obj/singularity/singulo in GLOB.all_singularities) - if(singulo.target == src) - singulo.target = null - icon_state = "[icontype]0" - active = 0 - if(user) - to_chat(user, "You deactivate the beacon.") - -/obj/machinery/power/singularity_beacon/attack_ai(mob/user as mob) - return - -/obj/machinery/power/singularity_beacon/attack_hand(var/mob/user as mob) - if(anchored) - return active ? Deactivate(user) : Activate(user) - else - to_chat(user, "You need to screw the beacon to the floor first!") - return - -/obj/machinery/power/singularity_beacon/attackby(obj/item/weapon/W as obj, mob/user as mob) - if(W.is_screwdriver()) - if(active) - to_chat(user, "You need to deactivate the beacon first!") - return - - if(anchored) - anchored = FALSE - to_chat(user, "You unscrew the beacon from the floor.") - playsound(src, W.usesound, 50, 1) - disconnect_from_network() - return - else - if(!connect_to_network()) - to_chat(user, "This device must be placed over an exposed cable.") - return - anchored = TRUE - to_chat(user, "You screw the beacon to the floor and attach the cable.") - playsound(src, W.usesound, 50, 1) - return - ..() - return - -/obj/machinery/power/singularity_beacon/Destroy() - if(active) - Deactivate() - ..() - -//stealth direct power usage -/obj/machinery/power/singularity_beacon/process() - if(!active) - return PROCESS_KILL - else - if(draw_power(1500) < 1500) - Deactivate() - -/obj/machinery/power/singularity_beacon/syndicate - icontype = "beaconsynd" - icon_state = "beaconsynd0" +//This file was auto-corrected by findeclaration.exe on 25.5.2012 20:42:31 + +// Beacon randomly spawns in space +// When a non-traitor (no special role in /mind) uses it, he is given the choice to become a traitor +// If he accepts there is a random chance he will be accepted, rejected, or rejected and killed +// Bringing certain items can help improve the chance to become a traitor + +/obj/machinery/syndicate_beacon + name = "ominous beacon" + desc = "This looks suspicious..." + icon = 'icons/obj/device.dmi' + icon_state = "syndbeacon" + anchored = TRUE + density = TRUE + var/temptext = "" + var/selfdestructing = 0 + var/charges = 1 + +/obj/machinery/syndicate_beacon/attack_hand(var/mob/user as mob) + usr.set_machine(src) + var/dat = "Scanning [pick("retina pattern", "voice print", "fingerprints", "dna sequence")]...
Identity confirmed,
" + if(istype(user, /mob/living/carbon/human) || istype(user, /mob/living/silicon/ai)) + if(is_special_character(user)) + dat += "Operative record found. Greetings, Agent [user.name].
" + else if(charges < 1) + dat += "Connection severed.
" + else + var/honorific = "Mr." + if(user.gender == FEMALE) + honorific = "Ms." + dat += "Identity not found in operative database. What can the Syndicate do for you today, [honorific] [user.name]?
" + if(!selfdestructing) + dat += "

\"[pick("I want to switch teams.", "I want to work for you.", "Let me join you.", "I can be of use to you.", "You want me working for you, and here's why...", "Give me an objective.", "How's the 401k over at the Syndicate?")]\"
" + dat += temptext + user << browse(dat, "window=syndbeacon") + onclose(user, "syndbeacon") + +/obj/machinery/syndicate_beacon/Topic(href, href_list) + if(..()) + return + if(href_list["betraitor"]) + if(charges < 1) + updateUsrDialog() + return + var/mob/M = locate(href_list["traitormob"]) + if(M.mind.special_role || jobban_isbanned(M, "Syndicate")) + temptext = "We have no need for you at this time. Have a pleasant day.
" + updateUsrDialog() + return + charges -= 1 + switch(rand(1,2)) + if(1) + temptext = "Double-crosser. You planned to betray us from the start. Allow us to repay the favor in kind." + updateUsrDialog() + spawn(rand(50,200)) selfdestruct() + return + if(2) + return + if(istype(M, /mob/living/carbon/human)) + var/mob/living/carbon/human/N = M + to_chat(N, "You have joined the ranks of the Syndicate and become a traitor to the station!") + traitors.add_antagonist(N.mind) + traitors.equip(N) + message_admins("[N]/([N.ckey]) has accepted a traitor objective from a syndicate beacon.") + + updateUsrDialog() + return + +/obj/machinery/syndicate_beacon/proc/selfdestruct() + selfdestructing = 1 + spawn() explosion(src.loc, 1, rand(1,3), rand(3,8), 10) + +//////////////////////////////////////// +//Singularity beacon +//////////////////////////////////////// +/obj/machinery/power/singularity_beacon + name = "ominous beacon" + desc = "This looks suspicious..." + icon = 'icons/obj/singularity.dmi' + icon_state = "beacon" + + anchored = FALSE + density = TRUE + layer = MOB_LAYER - 0.1 //so people can't hide it and it's REALLY OBVIOUS + stat = 0 + + var/active = 0 + var/icontype = "beacon" + +/obj/machinery/power/singularity_beacon/proc/Activate(mob/user = null) + if(surplus() < 1500) + if(user) + to_chat(user, "The connected wire doesn't have enough current.") + return + for(var/obj/singularity/singulo in GLOB.all_singularities) + if(singulo.z == z) + singulo.target = src + icon_state = "[icontype]1" + active = 1 + START_MACHINE_PROCESSING(src) + if(user) + to_chat(user, "You activate the beacon.") + +/obj/machinery/power/singularity_beacon/proc/Deactivate(mob/user = null) + for(var/obj/singularity/singulo in GLOB.all_singularities) + if(singulo.target == src) + singulo.target = null + icon_state = "[icontype]0" + active = 0 + if(user) + to_chat(user, "You deactivate the beacon.") + +/obj/machinery/power/singularity_beacon/attack_ai(mob/user as mob) + return + +/obj/machinery/power/singularity_beacon/attack_hand(var/mob/user as mob) + if(anchored) + return active ? Deactivate(user) : Activate(user) + else + to_chat(user, "You need to screw the beacon to the floor first!") + return + +/obj/machinery/power/singularity_beacon/attackby(obj/item/weapon/W as obj, mob/user as mob) + if(W.is_screwdriver()) + if(active) + to_chat(user, "You need to deactivate the beacon first!") + return + + if(anchored) + anchored = FALSE + to_chat(user, "You unscrew the beacon from the floor.") + playsound(src, W.usesound, 50, 1) + disconnect_from_network() + return + else + if(!connect_to_network()) + to_chat(user, "This device must be placed over an exposed cable.") + return + anchored = TRUE + to_chat(user, "You screw the beacon to the floor and attach the cable.") + playsound(src, W.usesound, 50, 1) + return + ..() + return + +/obj/machinery/power/singularity_beacon/Destroy() + if(active) + Deactivate() + ..() + +//stealth direct power usage +/obj/machinery/power/singularity_beacon/process() + if(!active) + return PROCESS_KILL + else + if(draw_power(1500) < 1500) + Deactivate() + +/obj/machinery/power/singularity_beacon/syndicate + icontype = "beaconsynd" + icon_state = "beaconsynd0" diff --git a/code/game/machinery/telecomms/broadcaster.dm b/code/game/machinery/telecomms/broadcaster.dm index 5bcf571f61..c07722523c 100644 --- a/code/game/machinery/telecomms/broadcaster.dm +++ b/code/game/machinery/telecomms/broadcaster.dm @@ -454,11 +454,13 @@ var/message_delay = 0 // To make sure restarting the recentmessages list is kept var/part_b_extra = "" if(data == DATA_ANTAG) // intercepted radio message part_b_extra = " (Intercepted)" - var/part_a = "\icon[radio][bicon(radio)]\[[freq_text]\][part_b_extra] " // goes in the actual output + var/part_a = "" + var/part_b = "\icon[radio][bicon(radio)]\[[freq_text]\][part_b_extra] " // goes in the actual output // --- Some more pre-message formatting --- - var/part_b = " " // Tweaked for security headsets -- TLE - var/part_c = "" + var/part_c = " " // Tweaked for security headsets -- TLE + var/part_d = "" + var/part_e = "" // --- Filter the message; place it in quotes apply a verb --- @@ -470,8 +472,8 @@ var/message_delay = 0 // To make sure restarting the recentmessages list is kept // --- This following recording is intended for research and feedback in the use of department radio channels --- - var/part_blackbox_b = " \[[freq_text]\] " // Tweaked for security headsets -- TLE - var/blackbox_msg = "[part_a][name][part_blackbox_b][quotedmsg][part_c]" + var/part_blackbox_c = " \[[freq_text]\] " // Tweaked for security headsets -- TLE + var/blackbox_msg = "[part_a][part_b][name][part_blackbox_c][quotedmsg][part_d][part_e]" //var/blackbox_admin_msg = "[part_a][M.name] (Real name: [M.real_name])[part_blackbox_b][quotedmsg][part_c]" //BR.messages_admin += blackbox_admin_msg @@ -510,21 +512,21 @@ var/message_delay = 0 // To make sure restarting the recentmessages list is kept /* --- Process all the mobs that heard a masked voice (understood) --- */ if(length(heard_masked)) for (var/mob/R in heard_masked) - R.hear_radio(message_pieces, verbage, part_a, part_b, part_c, M, 0, name) + R.hear_radio(message_pieces, verbage, part_a, part_b, part_c, part_d, part_e, M, 0, name) if(R.is_preference_enabled(/datum/client_preference/radio_sounds)) R << 'sound/effects/radio_common_quieter.ogg' /* --- Process all the mobs that heard the voice normally (understood) --- */ if(length(heard_normal)) for (var/mob/R in heard_normal) - R.hear_radio(message_pieces, verbage, part_a, part_b, part_c, M, 0, realname) + R.hear_radio(message_pieces, verbage, part_a, part_b, part_c, part_d, part_e, M, 0, realname) if(R.is_preference_enabled(/datum/client_preference/radio_sounds)) R << 'sound/effects/radio_common_quieter.ogg' /* --- Process all the mobs that heard the voice normally (did not understand) --- */ if(length(heard_voice)) for (var/mob/R in heard_voice) - R.hear_radio(message_pieces, verbage, part_a, part_b, part_c, M,0, vname) + R.hear_radio(message_pieces, verbage, part_a, part_b, part_c, part_d, part_e, M,0, vname) if(R.is_preference_enabled(/datum/client_preference/radio_sounds)) R << 'sound/effects/radio_common_quieter.ogg' @@ -532,14 +534,14 @@ var/message_delay = 0 // To make sure restarting the recentmessages list is kept // Displays garbled message (ie "f*c* **u, **i*er!") if(length(heard_garbled)) for (var/mob/R in heard_garbled) - R.hear_radio(message_pieces, verbage, part_a, part_b, part_c, M, 1, vname) + R.hear_radio(message_pieces, verbage, part_a, part_b, part_c, part_d, part_e, M, 1, vname) if(R.is_preference_enabled(/datum/client_preference/radio_sounds)) R << 'sound/effects/radio_common_quieter.ogg' /* --- Complete gibberish. Usually happens when there's a compressed message --- */ if(length(heard_gibberish)) for (var/mob/R in heard_gibberish) - R.hear_radio(message_pieces, verbage, part_a, part_b, part_c, M, 1) + R.hear_radio(message_pieces, verbage, part_a, part_b, part_c, part_d, part_e, M, 1) if(R.is_preference_enabled(/datum/client_preference/radio_sounds)) R << 'sound/effects/radio_common_quieter.ogg' diff --git a/code/game/mecha/combat/combat.dm b/code/game/mecha/combat/combat.dm index 7661bb3255..88dace7ff9 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 19bd2b9c53..4ea027f154 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 09992b5774..76a3dcc2d4 100644 --- a/code/game/mecha/combat/gorilla.dm +++ b/code/game/mecha/combat/gorilla.dm @@ -12,7 +12,7 @@ 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.7,"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 + max_temperature = 35000 //Just a bit better than the Durand. infra_luminosity = 3 wreckage = /obj/effect/decal/mecha_wreckage/gorilla add_req_access = 0 diff --git a/code/game/mecha/combat/gygax.dm b/code/game/mecha/combat/gygax.dm index b2b5fe613f..1fa6933add 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 c218493847..8fc089c495 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 8ec100ad1e..04e3869cc1 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/equipment/weapons/energy/laser.dm b/code/game/mecha/equipment/weapons/energy/laser.dm index 5a480a9691..5d81dca416 100644 --- a/code/game/mecha/equipment/weapons/energy/laser.dm +++ b/code/game/mecha/equipment/weapons/energy/laser.dm @@ -67,4 +67,15 @@ equip_type = EQUIP_UTILITY - origin_tech = list(TECH_COMBAT = 4, TECH_MAGNET = 4, TECH_PHORON = 3, TECH_ILLEGAL = 1) \ No newline at end of file + origin_tech = list(TECH_COMBAT = 4, TECH_MAGNET = 4, TECH_PHORON = 3, TECH_ILLEGAL = 1) + +/obj/item/mecha_parts/mecha_equipment/weapon/energy/laser/gamma + equip_cooldown = 5 + name = "\improper GA-X \"Render\" Experimental Gamma Laser" + desc = "A experimental suppression laser that fires rapid blasts of radiation charged photons, extremely effective against infantry." + icon_state = "mecha_coil" + energy_drain = 80 + projectile = /obj/item/projectile/beam/gamma + fire_sound = 'sound/weapons/emitter.ogg' + + origin_tech = list(TECH_MATERIAL = 4, TECH_COMBAT = 4, TECH_PHORON = 4, TECH_POWER = 4, TECH_ILLEGAL = 3) diff --git a/code/game/mecha/mecha.dm b/code/game/mecha/mecha.dm index 63d2304749..f5821b18d1 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 97d6728f54..d1e5aedf59 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 d6d054a4f5..777ae8912b 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 9ceaa2bae9..4587a89a21 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 61b4d90183..8d4ee98fbf 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/effects/decals/crayon.dm b/code/game/objects/effects/decals/crayon.dm index f983a480ff..248b9cfbb4 100644 --- a/code/game/objects/effects/decals/crayon.dm +++ b/code/game/objects/effects/decals/crayon.dm @@ -28,4 +28,4 @@ add_overlay(mainOverlay) add_overlay(shadeOverlay) - add_hiddenprint(usr) \ No newline at end of file + add_hiddenprint(usr) diff --git a/code/game/objects/items.dm b/code/game/objects/items.dm index 47d3843b7c..573e498aa4 100644 --- a/code/game/objects/items.dm +++ b/code/game/objects/items.dm @@ -25,6 +25,7 @@ var/list/origin_tech = null //Used by R&D to determine what research bonuses it grants. var/list/attack_verb //Used in attackby() to say how something was attacked "[x] has been [z.attack_verb] by [y] with [z]" var/force = 0 + var/can_cleave = FALSE // If true, a 'cleaving' attack will occur. var/heat_protection = 0 //flags which determine which body parts are protected from heat. Use the HEAD, UPPER_TORSO, LOWER_TORSO, etc. flags. See setup.dm var/cold_protection = 0 //flags which determine which body parts are protected from cold. Use the HEAD, UPPER_TORSO, LOWER_TORSO, etc. flags. See setup.dm @@ -503,17 +504,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 @@ -675,7 +681,7 @@ GLOBAL_LIST_EMPTY(blood_overlays_by_type) /obj/item/proc/showoff(mob/user) for (var/mob/M in view(user)) - M.show_message("[user] holds up [src]. Take a closer look.",1) + M.show_message("[user] holds up [src]. Take a closer look.",1) /mob/living/carbon/verb/showoff() set name = "Show Held Item" @@ -705,13 +711,13 @@ modules/mob/living/carbon/human/life.dm if you die, you will be zoomed out. var/cannotzoom if((usr.stat && !zoom) || !(istype(usr,/mob/living/carbon/human))) - to_chat(usr, "You are unable to focus through the [devicename]") + to_chat(usr, "You are unable to focus through the [devicename].") cannotzoom = 1 else if(!zoom && (global_hud.darkMask[1] in usr.client.screen)) - to_chat(usr, "Your visor gets in the way of looking through the [devicename]") + to_chat(usr, "Your visor gets in the way of looking through the [devicename].") cannotzoom = 1 else if(!zoom && usr.get_active_hand() != src) - to_chat(usr, "You are too distracted to look through the [devicename], perhaps if it was in your active hand this might work better") + to_chat(usr, "You are too distracted to look through the [devicename], perhaps if it was in your active hand this might work better.") cannotzoom = 1 //We checked above if they are a human and returned already if they weren't. @@ -741,7 +747,7 @@ modules/mob/living/carbon/human/life.dm if you die, you will be zoomed out. H.client.pixel_x = -viewoffset H.client.pixel_y = 0 - H.visible_message("[usr] peers through the [zoomdevicename ? "[zoomdevicename] of the [src.name]" : "[src.name]"].") + H.visible_message("[usr] peers through the [zoomdevicename ? "[zoomdevicename] of the [src.name]" : "[src.name]"].") if(!ignore_visor_zoom_restriction) H.looking_elsewhere = TRUE H.handle_vision() @@ -759,7 +765,7 @@ modules/mob/living/carbon/human/life.dm if you die, you will be zoomed out. H.handle_vision() if(!cannotzoom) - usr.visible_message("[zoomdevicename ? "[usr] looks up from the [src.name]" : "[usr] lowers the [src.name]"].") + usr.visible_message("[zoomdevicename ? "[usr] looks up from the [src.name]" : "[usr] lowers the [src.name]"].") return diff --git a/code/game/objects/items/devices/advnifrepair.dm b/code/game/objects/items/devices/advnifrepair.dm index 913aad68ad..ca3e455acc 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/flash.dm b/code/game/objects/items/devices/flash.dm index 70e0d3d768..0b987e04c7 100644 --- a/code/game/objects/items/devices/flash.dm +++ b/code/game/objects/items/devices/flash.dm @@ -1,6 +1,6 @@ /obj/item/device/flash name = "flash" - desc = "Used for blinding and being an asshole." + desc = "Used for blinding and disorienting." icon_state = "flash" item_state = "flashtool" throwforce = 5 diff --git a/code/game/objects/items/devices/powersink.dm b/code/game/objects/items/devices/powersink.dm index cc902d3b6d..339b57f055 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/devices/radio/headset.dm b/code/game/objects/items/devices/radio/headset.dm index e456f22b26..26e7f00046 100644 --- a/code/game/objects/items/devices/radio/headset.dm +++ b/code/game/objects/items/devices/radio/headset.dm @@ -212,37 +212,37 @@ /obj/item/device/radio/headset/heads/rd name = "research director's headset" - desc = "Headset of the researching God." + desc = "Headset of the eccentric-in-chief." icon_state = "com_headset" ks2type = /obj/item/device/encryptionkey/heads/rd /obj/item/device/radio/headset/heads/rd/alt name = "research director's bowman headset" - desc = "Headset of the researching God." + desc = "Headset of the eccentric-in-chief." icon_state = "com_headset_alt" ks2type = /obj/item/device/encryptionkey/heads/rd /obj/item/device/radio/headset/heads/hos name = "head of security's headset" - desc = "The headset of the man who protects your worthless lifes." + desc = "The headset of the hardass who protects your worthless lifes." icon_state = "com_headset" ks2type = /obj/item/device/encryptionkey/heads/hos /obj/item/device/radio/headset/heads/hos/alt name = "head of security's bowman headset" - desc = "The headset of the man who protects your worthless lifes." + desc = "The headset of the hardass who protects your worthless lifes." icon_state = "com_headset_alt" ks2type = /obj/item/device/encryptionkey/heads/hos /obj/item/device/radio/headset/heads/ce name = "chief engineer's headset" - desc = "The headset of the guy who is in charge of morons" + desc = "The headset of the clown who is in charge of the circus." icon_state = "com_headset" ks2type = /obj/item/device/encryptionkey/heads/ce /obj/item/device/radio/headset/heads/ce/alt name = "chief engineer's bowman headset" - desc = "The headset of the guy who is in charge of morons" + desc = "The headset of the clown who is in charge of the circus." icon_state = "com_headset_alt" ks2type = /obj/item/device/encryptionkey/heads/ce @@ -260,13 +260,13 @@ /obj/item/device/radio/headset/heads/hop name = "head of personnel's headset" - desc = "The headset of the guy who will one day be Site Manager." + desc = "The headset of the poor fool who will one day be Site Manager." icon_state = "com_headset" ks2type = /obj/item/device/encryptionkey/heads/hop /obj/item/device/radio/headset/heads/hop/alt name = "head of personnel's bowman headset" - desc = "The headset of the guy who will one day be Site Manager." + desc = "The headset of the poor fool who will one day be Site Manager." icon_state = "com_headset_alt" ks2type = /obj/item/device/encryptionkey/heads/hop @@ -279,13 +279,13 @@ /obj/item/device/radio/headset/headset_cargo name = "supply radio headset" - desc = "A headset used by the QM and his slaves." + desc = "A headset used by the QM and their cronies." icon_state = "cargo_headset" ks2type = /obj/item/device/encryptionkey/headset_cargo /obj/item/device/radio/headset/headset_cargo/alt name = "supply bowman headset" - desc = "A bowman headset used by the QM and his slaves." + desc = "A bowman headset used by the QM and their cronies." icon_state = "cargo_headset_alt" ks2type = /obj/item/device/encryptionkey/headset_cargo diff --git a/code/game/objects/items/devices/transfer_valve.dm b/code/game/objects/items/devices/transfer_valve.dm index ace1cbc2cd..45df3c628f 100644 --- a/code/game/objects/items/devices/transfer_valve.dm +++ b/code/game/objects/items/devices/transfer_valve.dm @@ -27,7 +27,7 @@ user.drop_item() item.forceMove(src) to_chat(user, "You attach the tank to the transfer valve.") - message_admins("[key_name_admin(user)] attached both tanks to a transfer valve. (JMP)") + message_admins("[key_name_admin(user)] attached both tanks to a transfer valve. [ADMIN_JMP(location)]") log_game("[key_name_admin(user)] attached both tanks to a transfer valve.") update_icon() @@ -49,7 +49,7 @@ A.toggle_secure() //this calls update_icon(), which calls update_icon() on the holder (i.e. the bomb). bombers += "[key_name(user)] attached a [item] to a transfer valve." - message_admins("[key_name_admin(user)] attached a [item] to a transfer valve. (JMP)") + message_admins("[key_name_admin(user)] attached a [item] to a transfer valve. [ADMIN_JMP(location)]") log_game("[key_name_admin(user)] attached a [item] to a transfer valve.") attacher = user SStgui.update_uis(src) // update all UIs attached to src @@ -190,16 +190,16 @@ else attacher_name = "[attacher.name]([attacher.ckey])" - var/log_str = "Bomb valve opened in [A.name] " + var/log_str = "Bomb valve opened in [A.name] " log_str += "with [attached_device ? attached_device : "no device"] attacher: [attacher_name]" if(attacher) - log_str += "(?)" + log_str += ADMIN_QUE(attacher) var/mob/mob = get_mob_by_key(src.fingerprintslast) var/last_touch_info = "" if(mob) - last_touch_info = "(?)" + last_touch_info = ADMIN_QUE(mob) log_str += " Last touched by: [src.fingerprintslast][last_touch_info]" bombers += log_str diff --git a/code/game/objects/items/devices/uplink.dm b/code/game/objects/items/devices/uplink.dm index 4c07229df7..ef5ae25fa7 100644 --- a/code/game/objects/items/devices/uplink.dm +++ b/code/game/objects/items/devices/uplink.dm @@ -139,6 +139,7 @@ data["exploit"]["species"] = html_encode(L.fields["species"]) data["exploit"]["rank"] = html_encode(L.fields["rank"]) data["exploit"]["home_system"] = html_encode(L.fields["home_system"]) + data["exploit"]["birthplace"] = html_encode(L.fields["birthplace"]) data["exploit"]["citizenship"] = html_encode(L.fields["citizenship"]) data["exploit"]["faction"] = html_encode(L.fields["faction"]) data["exploit"]["religion"] = html_encode(L.fields["religion"]) diff --git a/code/game/objects/items/paintkit.dm b/code/game/objects/items/paintkit.dm index 33ca335a9f..3367574393 100644 --- a/code/game/objects/items/paintkit.dm +++ b/code/game/objects/items/paintkit.dm @@ -98,10 +98,8 @@ suit.desc = new_desc suit.icon_state = "[new_icon]_suit" suit.toggleicon = "[new_icon]_suit" - suit.item_state = "[new_icon]_suit" var/obj/item/clothing/head/hood/S = suit.hood S.icon_state = "[new_icon]_helmet" - S.item_state = "[new_icon]_helmet" if(new_icon_file) suit.icon = new_icon_file S.icon = new_icon_file diff --git a/code/game/objects/items/toys/toys_vr.dm b/code/game/objects/items/toys/toys_vr.dm index dbe34a94e3..cb879b7139 100644 --- a/code/game/objects/items/toys/toys_vr.dm +++ b/code/game/objects/items/toys/toys_vr.dm @@ -94,16 +94,55 @@ name = "janihound plushie" icon_state = "scrubpuppy" -/obj/item/toy/plushie/borgplushie/drakiesec - name = "security drake plushie" +/obj/item/toy/plushie/borgplushie/drake icon = 'icons/obj/drakietoy_vr.dmi' + var/lights_glowing = FALSE + +/obj/item/toy/plushie/borgplushie/drake/AltClick(mob/living/user) + . = ..() + var/turf/T = get_turf(src) + if(!T.AdjacentQuick(user)) // So people aren't messing with these from across the room + return FALSE + lights_glowing = !lights_glowing + to_chat(user, "You turn the [src]'s glow-fabric [lights_glowing ? "on" : "off"].") + update_icon() + +/obj/item/toy/plushie/borgplushie/drake/update_icon() + cut_overlays() + if (lights_glowing) + add_overlay(emissive_appearance(icon, "[icon_state]-lights")) + +/obj/item/toy/plushie/borgplushie/drake/get_description_info() + return "The lights on the plushie can be toggled [lights_glowing ? "off" : "on"] by alt-clicking on it." + +/obj/item/toy/plushie/borgplushie/drake/sec + name = "security drake plushie" icon_state = "secdrake" -/obj/item/toy/plushie/borgplushie/drakiemed +/obj/item/toy/plushie/borgplushie/drake/med name = "medical drake plushie" - icon = 'icons/obj/drakietoy_vr.dmi' icon_state = "meddrake" +/obj/item/toy/plushie/borgplushie/drake/sci + name = "science drake plushie" + icon_state = "scidrake" + +/obj/item/toy/plushie/borgplushie/drake/jani + name = "janitor drake plushie" + icon_state = "janidrake" + +/obj/item/toy/plushie/borgplushie/drake/eng + name = "engineering drake plushie" + icon_state = "engdrake" + +/obj/item/toy/plushie/borgplushie/drake/mine + name = "mining drake plushie" + icon_state = "minedrake" + +/obj/item/toy/plushie/borgplushie/drake/trauma + name = "trauma drake plushie" + icon_state = "traumadrake" + /obj/item/toy/plushie/foxbear name = "toy fox" desc = "Issa fox!" diff --git a/code/game/objects/items/trash.dm b/code/game/objects/items/trash.dm index c8c8d376c8..7e5f8fd079 100644 --- a/code/game/objects/items/trash.dm +++ b/code/game/objects/items/trash.dm @@ -350,7 +350,7 @@ drop_sound = 'sound/items/drop/soda.ogg' pickup_sound = 'sound/items/pickup/soda.ogg' -/obj/item/trash/spacercake_wrap +/obj/item/trash/spacer_cake_wrap name = "snack cake wrapper" icon_state = "spacercake_wrap" @@ -416,6 +416,10 @@ name = "burrito packaging" icon_state = "smolburrito" +/obj/item/trash/candybowl + name = "candy bowl" + icon_state = "candy_bowl" + /obj/item/trash/brainzsnax name = "\improper BrainzSnax can" icon_state = "brainzsnax" @@ -426,4 +430,4 @@ name = "\improper BrainzSnax RED can" icon_state = "brainzsnaxred" drop_sound = 'sound/items/drop/soda.ogg' - pickup_sound = 'sound/items/pickup/soda.ogg' \ No newline at end of file + pickup_sound = 'sound/items/pickup/soda.ogg' diff --git a/code/game/objects/items/weapons/AI_modules.dm b/code/game/objects/items/weapons/AI_modules.dm index 0c318fc8dd..72c0c1915c 100644 --- a/code/game/objects/items/weapons/AI_modules.dm +++ b/code/game/objects/items/weapons/AI_modules.dm @@ -427,11 +427,11 @@ AI MODULES origin_tech = list(TECH_DATA = 3, TECH_ILLEGAL = 1) laws = new/datum/ai_laws/nanotrasen_aggressive() -/******************** Syndicate Directives ********************/ +/******************** Mercenary Directives ********************/ /obj/item/weapon/aiModule/syndicate_override - name = "\improper 'Syndicate Directives' core AI module" - desc = "A 'Syndicate Directives' Core AI Module: 'Reconfigures the AI's core laws.'" + name = "\improper 'Mercenary Directives' core AI module" + desc = "A 'Mercenary Directives' Core AI Module: 'Reconfigures the AI's core laws.'" origin_tech = list(TECH_DATA = 4, TECH_ILLEGAL = 4) laws = new/datum/ai_laws/syndicate_override() diff --git a/code/game/objects/items/weapons/capture_crystal.dm b/code/game/objects/items/weapons/capture_crystal.dm index 4cc748af13..36447ce9cc 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/chewables.dm b/code/game/objects/items/weapons/chewables.dm index 59e95f103f..caf5ae74c3 100644 --- a/code/game/objects/items/weapons/chewables.dm +++ b/code/game/objects/items/weapons/chewables.dm @@ -267,7 +267,7 @@ color = reagents.get_color() update_icon() -/obj/item/weapon/storage/box/pocky //ADDITION 04/17/2021 +/obj/item/weapon/storage/box/pocky name = "\improper Totemo yoi Pocky" desc = "A bundle of chocolate-coated bisquit sticks." icon = 'icons/obj/food_snacks.dmi' @@ -282,7 +282,7 @@ foldable = null trash = /obj/item/trash/pocky -/obj/item/clothing/mask/chewable/candy/pocky //ADDITION 04/17/2021 +/obj/item/clothing/mask/chewable/candy/pocky name = "chocolate pocky" desc = "A chocolate-coated biscuit stick." icon_state = "pockystick" diff --git a/code/game/objects/items/weapons/circuitboards/circuitboards_vr.dm b/code/game/objects/items/weapons/circuitboards/circuitboards_vr.dm index 174e1cde97..6228166751 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 7ef7c4bfef..000cd011f6 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 c3a94fb100..d7208d5db3 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/flamethrower.dm b/code/game/objects/items/weapons/flamethrower.dm index 8eba05ddd5..b20a44650e 100644 --- a/code/game/objects/items/weapons/flamethrower.dm +++ b/code/game/objects/items/weapons/flamethrower.dm @@ -183,7 +183,7 @@ //TODO: DEFERRED Consider checking to make sure tank pressure is high enough before doing this... //Transfer 5% of current tank air contents to turf var/datum/gas_mixture/air_transfer = ptank.air_contents.remove_ratio(0.02*(throw_amount/100)) - //air_transfer.toxins = air_transfer.toxins * 5 // This is me not comprehending the air system. I realize this is retarded and I could probably make it work without fucking it up like this, but there you have it. -- TLE + //air_transfer.toxins = air_transfer.toxins * 5 // This is me not comprehending the air system. I realize this is mischievious and I could probably make it work without fucking it up like this, but there you have it. -- TLE new/obj/effect/decal/cleanable/liquid_fuel/flamethrower_fuel(target,air_transfer.gas["phoron"],get_dir(loc,target)) air_transfer.gas["phoron"] = 0 target.assume_air(air_transfer) 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 9154f34843..f7b1f3b197 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 @@ -143,7 +147,7 @@ /obj/item/weapon/card/id/gold/captain/spare name = "\improper Site Manager's spare ID" - desc = "The spare ID of the High Lord himself." + desc = "The emergency spare ID for the station's very own Big Cheese." icon_state = "gold-id-alternate" registered_name = "Site Manager" diff --git a/code/game/objects/items/weapons/id cards/syndicate_ids.dm b/code/game/objects/items/weapons/id cards/syndicate_ids.dm index 0c36756bcc..727d76fd26 100644 --- a/code/game/objects/items/weapons/id cards/syndicate_ids.dm +++ b/code/game/objects/items/weapons/id cards/syndicate_ids.dm @@ -88,9 +88,9 @@ return name /obj/item/weapon/card/id/syndicate_command - name = "syndicate ID card" - desc = "An ID straight from the Syndicate." - registered_name = "Syndicate" - assignment = "Syndicate Commander" + name = "operative ID card" + desc = "An ID straight from a mercenary organisation." + registered_name = "Operative" + assignment = "Operative Commander" icon_state = "syndicate-id" access = list(access_syndicate, access_external_airlocks) diff --git a/code/game/objects/items/weapons/manuals.dm b/code/game/objects/items/weapons/manuals.dm index feb778e530..72fd024db6 100644 --- a/code/game/objects/items/weapons/manuals.dm +++ b/code/game/objects/items/weapons/manuals.dm @@ -328,7 +328,7 @@

Power outage

- A power problem has made the entire station lose power? Could be station-wide wiring problems or syndicate power sinks. In any case follow these steps: + A power problem has made the entire station lose power? Could be station-wide wiring problems or illegal power sinks. In any case follow these steps:
  1. PANIC!
  2. @@ -1123,7 +1123,7 @@ name = "Fission Mailed: Nuclear Sabotage 101" icon_state ="bookNuclear" item_state = "book8" - author = "Syndicate" + author = "Stealth Assault Enterprises" title = "Fission Mailed: Nuclear Sabotage 101" dat = {" @@ -1139,7 +1139,7 @@

    Nuclear Explosives 101

    - Hello and thank you for choosing the Syndicate for your nuclear information needs. Today's crash course will deal with the operation of a Nuclear Fission Device.

    + Hello and thank you for choosing Stealth Assault Enterprises for your nuclear information needs. Today's crash course will deal with the operation of a Nuclear Fission Device.

    First and foremost, DO NOT TOUCH ANYTHING UNTIL THE BOMB IS IN PLACE. Pressing any button on the compacted bomb will cause it to extend and bolt itself into place. If this is done, to unbolt it, one must completely log in, which at this time may not be possible.
    @@ -1155,7 +1155,7 @@ You now have activated the device. To deactivate the buttons at anytime, for example when you've already prepped the bomb for detonation, remove the authentication disk OR press R on the keypad.

    Now the bomb CAN ONLY be detonated using the timer. Manual detonation is not an option. Toggle off the SAFETY.
    - Note: You wouldn't believe how many Syndicate Operatives with doctorates have forgotten this step.

    + Note: You wouldn't believe how many SAARE Operatives with doctorates have forgotten this step.

    So use the - - and + + to set a detonation time between 5 seconds and 10 minutes. Then press the timer toggle button to start the countdown. Now remove the authentication disk so that the buttons deactivate.
    Note: THE BOMB IS STILL SET AND WILL DETONATE

    diff --git a/code/game/objects/items/weapons/material/twohanded.dm b/code/game/objects/items/weapons/material/twohanded.dm index 4f9bc00e0f..290925a366 100644 --- a/code/game/objects/items/weapons/material/twohanded.dm +++ b/code/game/objects/items/weapons/material/twohanded.dm @@ -145,7 +145,6 @@ base_icon = "spearglass" name = "spear" desc = "A haphazardly-constructed yet still deadly weapon of ancient design." - description_info = "This weapon can strike from two tiles away, and over certain objects such as tables, or other people." force = 10 w_class = ITEMSIZE_LARGE slot_flags = SLOT_BACK diff --git a/code/game/objects/items/weapons/melee/energy.dm b/code/game/objects/items/weapons/melee/energy.dm index 04ed3f1411..92234d4da0 100644 --- a/code/game/objects/items/weapons/melee/energy.dm +++ b/code/game/objects/items/weapons/melee/energy.dm @@ -2,11 +2,12 @@ var/active = 0 var/active_force var/active_throwforce + var/active_armourpen var/active_w_class var/active_embed_chance = 0 //In the off chance one of these is supposed to embed, you can just tweak this var sharp = FALSE edge = FALSE - armor_penetration = 50 + armor_penetration = 0 flags = NOCONDUCT | NOBLOODY var/lrange = 2 var/lpower = 2 @@ -54,6 +55,7 @@ embed_chance = active_embed_chance force = active_force throwforce = active_throwforce + armor_penetration = active_armourpen sharp = TRUE edge = TRUE w_class = active_w_class @@ -70,6 +72,7 @@ embed_chance = initial(embed_chance) force = initial(force) throwforce = initial(throwforce) + armor_penetration = initial(armor_penetration) sharp = initial(sharp) edge = initial(edge) w_class = initial(w_class) @@ -192,7 +195,8 @@ /obj/item/weapon/melee/energy/examine(mob/user) . = ..() - . += "Alt-click to recolor it." + if(colorable) + . += "Alt-click to recolor it." /* * Energy Axe @@ -206,11 +210,13 @@ lcolor = null //active_force = 150 //holy... active_force = 60 + active_armourpen = 65 active_throwforce = 35 active_w_class = ITEMSIZE_HUGE //force = 40 //throwforce = 25 force = 20 + armor_penetration = 20 throwforce = 10 throw_speed = 1 throw_range = 5 @@ -236,6 +242,7 @@ desc = "An energised axe." active_force = 35 active_throwforce = 20 + active_armourpen = 30 force = 15 use_cell = TRUE @@ -255,6 +262,7 @@ icon_state = "esword" item_state = "esword" active_force = 30 + active_armourpen = 50 active_throwforce = 20 active_w_class = ITEMSIZE_LARGE force = 3 @@ -264,8 +272,6 @@ w_class = ITEMSIZE_SMALL flags = NOBLOODY origin_tech = list(TECH_MAGNET = 3, TECH_ILLEGAL = 4) - sharp = TRUE - edge = TRUE colorable = TRUE drop_sound = 'sound/items/drop/sword.ogg' pickup_sound = 'sound/items/pickup/sword.ogg' @@ -344,6 +350,7 @@ icon_state = "ionrapier" item_state = "ionrapier" active_force = 5 + active_armourpen = 80 active_throwforce = 3 active_embed_chance = 0 sharp = TRUE @@ -383,7 +390,7 @@ name = "zero-point lance" desc = "Designed specifically for disrupting electronics at relatively close range, however it is still capable of dealing some damage to living beings." active_force = 20 - armor_penetration = 15 + active_armourpen = 15 reach = 2 /* @@ -395,7 +402,7 @@ desc = "A small, handheld device which emits a high-energy 'blade'." origin_tech = list(TECH_COMBAT = 5, TECH_MAGNET = 3, TECH_ILLEGAL = 4) active_force = 25 - armor_penetration = 25 + active_armourpen = 25 projectile_parry_chance = 40 colorable = TRUE @@ -501,7 +508,7 @@ name = "energy spear" desc = "Concentrated energy forming a sharp tip at the end of a long rod." icon_state = "espear" - armor_penetration = 75 + armor_penetration = 0 sharp = TRUE edge = TRUE force = 5 @@ -511,6 +518,7 @@ reach = 2 w_class = ITEMSIZE_LARGE active_force = 25 + active_armourpen = 75 active_throwforce = 30 active_w_class = ITEMSIZE_HUGE colorable = TRUE diff --git a/code/game/objects/items/weapons/paint.dm b/code/game/objects/items/weapons/paint.dm index 80ec8d7f7c..a86c3d4bd4 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/items/weapons/storage/mre.dm b/code/game/objects/items/weapons/storage/mre.dm index 2b55d0557a..a964eec980 100644 --- a/code/game/objects/items/weapons/storage/mre.dm +++ b/code/game/objects/items/weapons/storage/mre.dm @@ -235,8 +235,8 @@ MRE Stuff open(user) /obj/item/weapon/storage/mrebag/open(mob/user) - if(!opened) - to_chat(usr, "The pouch heats up as you break the vaccum seal.") + if(!opened && !isobserver(user)) + to_chat(usr, "The pouch heats up as you break the vacuum seal.") opened = 1 update_icon() . = ..() @@ -377,6 +377,6 @@ MRE Stuff icon_state = "tgmcmre_dessert" nutriment_amt = 2 starts_with = list("sugar" = 1) - + package_open_state = "tgmcmre_[flavor]" nutriment_desc = list("[new_taste]" = nutriment_amt) diff --git a/code/game/objects/items/weapons/storage/toolbox.dm b/code/game/objects/items/weapons/storage/toolbox.dm index bd80bf247e..9c6795aa12 100644 --- a/code/game/objects/items/weapons/storage/toolbox.dm +++ b/code/game/objects/items/weapons/storage/toolbox.dm @@ -3,7 +3,7 @@ */ /obj/item/weapon/storage/toolbox name = "toolbox" - desc = "Danger. Very robust." + desc = "A metal toolbox with remarkably robust construction." icon = 'icons/obj/storage_vr.dmi' icon_state = "red" item_state_slots = list(slot_r_hand_str = "toolbox_red", slot_l_hand_str = "toolbox_red") diff --git a/code/game/objects/micro_structures.dm b/code/game/objects/micro_structures.dm index 7f911d249d..062c576702 100644 --- a/code/game/objects/micro_structures.dm +++ b/code/game/objects/micro_structures.dm @@ -11,6 +11,7 @@ micro_target = TRUE var/static/non_micro_types = list( + /mob/living/simple_mob/vore/squirrel, /mob/living/simple_mob/vore/alienanimals/catslug, /mob/living/simple_mob/vore/hostile/morph, /mob/living/simple_mob/protean_blob, diff --git a/code/game/objects/random/mapping.dm b/code/game/objects/random/mapping.dm index 63faacd0f3..b8ff810fe2 100644 --- a/code/game/objects/random/mapping.dm +++ b/code/game/objects/random/mapping.dm @@ -837,7 +837,14 @@ /obj/random/firstaid, /obj/random/unidentified_medicine/fresh_medicine, /obj/random/unidentified_medicine/fresh_medicine, - /obj/structure/closet/crate/veymed //VM FAKS + /obj/structure/closet/crate/freezer/veymed //VM FAKS + ), + prob(5);list( + /obj/random/internal_organ, + /obj/random/internal_organ, + /obj/random/internal_organ, + /obj/random/internal_organ, + /obj/structure/closet/crate/freezer/veymed //VM ORGANSES ), prob(10);list( /obj/random/tech_supply/nofail, @@ -854,7 +861,7 @@ /obj/random/medical/pillbottle, /obj/random/medical/lite, /obj/random/medical/lite, - /obj/structure/closet/crate/zenghu //ZENGHU GRABBAG + /obj/structure/closet/crate/freezer/zenghu //ZENGHU GRABBAG ), prob(10);list( /obj/random/medical/pillbottle, @@ -863,7 +870,7 @@ /obj/random/medical/pillbottle, /obj/random/unidentified_medicine/fresh_medicine, /obj/random/unidentified_medicine/fresh_medicine, - /obj/structure/closet/crate/zenghu //ZENGHU PILLS + /obj/structure/closet/crate/freezer/zenghu //ZENGHU PILLS ), prob(10);list( /obj/item/device/toner, @@ -1099,7 +1106,7 @@ /obj/random/medical, /obj/random/medical/lite, /obj/random/medical/lite, - /obj/structure/closet/crate/veymed //VM GRABBAG + /obj/structure/closet/crate/freezer/veymed //VM GRABBAG ), prob(10);list( /obj/random/firstaid, @@ -1108,7 +1115,14 @@ /obj/random/firstaid, /obj/random/unidentified_medicine/fresh_medicine, /obj/random/unidentified_medicine/fresh_medicine, - /obj/structure/closet/crate/veymed //VM FAKS + /obj/structure/closet/crate/freezer/veymed //VM FAKS + ), + prob(5);list( + /obj/random/internal_organ, + /obj/random/internal_organ, + /obj/random/internal_organ, + /obj/random/internal_organ, + /obj/structure/closet/crate/freezer/veymed //VM ORGANSES ), prob(10);list( /obj/random/tech_supply/nofail, @@ -1125,7 +1139,7 @@ /obj/random/medical/pillbottle, /obj/random/medical/lite, /obj/random/medical/lite, - /obj/structure/closet/crate/zenghu //ZENGHU GRABBAG + /obj/structure/closet/crate/freezer/zenghu //ZENGHU GRABBAG ), prob(10);list( /obj/random/medical/pillbottle, @@ -1134,7 +1148,7 @@ /obj/random/medical/pillbottle, /obj/random/unidentified_medicine/fresh_medicine, /obj/random/unidentified_medicine/fresh_medicine, - /obj/structure/closet/crate/zenghu //ZENGHU PILLS + /obj/structure/closet/crate/freezer/zenghu //ZENGHU PILLS ), prob(10);list( /obj/item/device/toner, diff --git a/code/game/objects/random/misc.dm b/code/game/objects/random/misc.dm index 546af717c8..d7ea5873be 100644 --- a/code/game/objects/random/misc.dm +++ b/code/game/objects/random/misc.dm @@ -748,8 +748,13 @@ /obj/item/toy/plushie/nukeplushie, /obj/item/toy/plushie/otter, /obj/item/toy/plushie/vox, - /obj/item/toy/plushie/borgplushie/drakiesec, - /obj/item/toy/plushie/borgplushie/drakiemed, + pick(list(/obj/item/toy/plushie/borgplushie/drake/sec, + /obj/item/toy/plushie/borgplushie/drake/med, + /obj/item/toy/plushie/borgplushie/drake/sci, + /obj/item/toy/plushie/borgplushie/drake/jani, + /obj/item/toy/plushie/borgplushie/drake/eng, + /obj/item/toy/plushie/borgplushie/drake/mine, + /obj/item/toy/plushie/borgplushie/drake/trauma))) //VOREStation Add End //YawnWider Add Start /obj/item/toy/plushie/teshari/_yw, diff --git a/code/game/objects/random/misc_vr.dm b/code/game/objects/random/misc_vr.dm index 3f2644348d..c6c2ec106b 100644 --- a/code/game/objects/random/misc_vr.dm +++ b/code/game/objects/random/misc_vr.dm @@ -216,3 +216,22 @@ prob(5);/obj/item/instrument/glockenspiel, prob(1);/obj/item/instrument/musicalmoth ) + +/obj/random/internal_organ + name = "random organ" + desc = "A random internal organ. Juicy fresh! Or... maybe not." + icon = 'icons/obj/surgery.dmi' + icon_state = "heart" + spawn_nothing_percentage = 10 + +/obj/random/internal_organ/item_to_spawn() + return pick(prob(5);/obj/item/organ/internal/appendix, + prob(5);/obj/item/organ/internal/eyes, + prob(5);/obj/item/organ/internal/heart, + prob(5);/obj/item/organ/internal/kidneys, + prob(5);/obj/item/organ/internal/liver, + prob(5);/obj/item/organ/internal/spleen, + prob(5);/obj/item/organ/internal/lungs, + prob(5);/obj/item/organ/internal/stomach, + prob(5);/obj/item/organ/internal/voicebox, + ) diff --git a/code/game/objects/random/mob_vr.dm b/code/game/objects/random/mob_vr.dm index b153ce360b..d32f365dc8 100644 --- a/code/game/objects/random/mob_vr.dm +++ b/code/game/objects/random/mob_vr.dm @@ -249,4 +249,58 @@ prob(2);/obj/random/multiple/minevault, prob(1);/obj/random/coin, prob(1);/obj/random/drinkbottle, - prob(1);/obj/random/tool/alien) \ No newline at end of file + prob(1);/obj/random/tool/alien) + +//Scug spawner for the picnic! +/obj/random/mob/wildscugs + name = "Random catslug spawner" + desc = "Spawns catslugs with random colours!" + icon_state = "vore" + mob_faction = "vore" + spawn_nothing_percentage = 25 + mob_wander_distance = 4 + mob_wander = 1 + mob_returns_home = 1 + var/newname = null + var/newdesc = null + + +/obj/random/mob/wildscugs/item_to_spawn() + return pick(prob(99); /mob/living/simple_mob/vore/alienanimals/catslug, + prob(1); /mob/living/simple_mob/vore/alienanimals/catslug/suslug/color) //A super rare surprise + +/obj/random/mob/wildscugs/spawn_item() + var/build_path = item_to_spawn() + + var/mob/living/simple_mob/M = new build_path(src.loc) + if(!istype(M)) + return + if(M.has_AI()) + var/datum/ai_holder/AI = M.ai_holder + AI.go_sleep() //Don't fight eachother while we're still setting up! + AI.returns_home = mob_returns_home + AI.wander = mob_wander + AI.max_home_distance = mob_wander_distance + if(overwrite_hostility) + AI.hostile = mob_hostile + AI.retaliate = mob_retaliate + AI.go_wake() //Now you can kill eachother if your faction didn't override. + + if(pixel_x || pixel_y) + M.pixel_x = pixel_x + M.pixel_y = pixel_y + + if(mob_faction) + M.faction = mob_faction + + M.color = pick(COLOR_WHITE, COLOR_RED, COLOR_PURPLE, COLOR_YELLOW, COLOR_CYAN_BLUE, COLOR_RED_GRAY, COLOR_BEIGE, COLOR_PINK, COLOR_BLACK) + if(newname) + if(islist(newname)) + M.name = pick(newname) + else + M.name = newname + if(newdesc) + if(islist(newdesc)) + M.desc = pick(newdesc) + else + M.desc = newdesc diff --git a/code/game/objects/structures/artstuff.dm b/code/game/objects/structures/artstuff.dm index 9bcd59b39f..e3faa052f0 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 454a070cfe..cf196ddf0a 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/crates_lockers/_closets_appearance_definitions.dm b/code/game/objects/structures/crates_lockers/_closets_appearance_definitions.dm index c64593078f..b967465ac9 100644 --- a/code/game/objects/structures/crates_lockers/_closets_appearance_definitions.dm +++ b/code/game/objects/structures/crates_lockers/_closets_appearance_definitions.dm @@ -809,6 +809,19 @@ "nano" = COLOR_OFF_WHITE ) +/decl/closet_appearance/crate/freezer/veymed + color = COLOR_BABY_BLUE + extra_decals = list( + "lid_stripes" = COLOR_RED, + "crate_cross" = COLOR_GREEN + ) + +/decl/closet_appearance/crate/freezer/zenghu + color = COLOR_BABY_BLUE + extra_decals = list( + "zenghu" = COLOR_OFF_WHITE + ) + // Corporate Branding /decl/closet_appearance/crate/aether @@ -1444,7 +1457,7 @@ "stripes" = COLOR_OFF_WHITE, "glass" = COLOR_WHITE ) - + /decl/closet_appearance/wall_double/survival color = COLOR_CYAN_BLUE decals = null @@ -1452,6 +1465,119 @@ "stripe_outer" = COLOR_WHITE ) +/decl/closet_appearance/wall_double/emergency_engi + color = COLOR_YELLOW_GRAY + decals = null + extra_decals = list( + "stripe_inner" = COLOR_ORANGE, + "stripe_outer" = COLOR_OFF_WHITE, + "glass" = COLOR_WHITE + ) + +/decl/closet_appearance/wall_double/security + color = COLOR_NT_RED + decals = null + extra_decals = list( + "vertical_stripe_left_l" = COLOR_WARM_YELLOW, + "vertical_stripe_left_m" = COLOR_WARM_YELLOW + ) + +/decl/closet_appearance/wall_double/cargo + color = COLOR_WARM_YELLOW + +/decl/closet_appearance/wall_double/gaming + color = COLOR_DARK_BLUE_GRAY + decals = null + extra_decals = list( + "stripe_outer" = COLOR_PALE_PINK, + "glass" = COLOR_WHITE + ) + +/decl/closet_appearance/wall_double/science + decals = list( + "holes" + ) + color = COLOR_OFF_WHITE + extra_decals = list( + "stripe_inner_lower" = COLOR_PURPLE, + "stripe_inner_middle" = COLOR_PURPLE + ) + +/decl/closet_appearance/wall_double/command + decals = list( + "holes_right" + ) + color = COLOR_BLUE_GRAY + extra_decals = list( + "vertical_stripe_left_l" = COLOR_GOLD, + "vertical_stripe_left_m" = COLOR_GOLD, + "vertical_stripe_left_r" = COLOR_GOLD + ) + +/decl/closet_appearance/wall_double/ce + decals = list( + "holes_right" + ) + color = COLOR_OFF_WHITE + extra_decals = list( + "vertical_stripe_left_l" = COLOR_DARK_GOLD, + "vertical_stripe_left_m" = COLOR_DARK_GOLD, + "vertical_stripe_left_r" = COLOR_DARK_GOLD + ) + +/decl/closet_appearance/wall_double/rd + decals = list( + "holes_right" + ) + color = COLOR_OFF_WHITE + extra_decals = list( + "vertical_stripe_left_l" = COLOR_PURPLE, + "vertical_stripe_left_m" = COLOR_GOLD, + "vertical_stripe_left_r" = COLOR_PURPLE + ) + +/decl/closet_appearance/wall_double/cmo + decals = list( + "holes_right" + ) + color = COLOR_BABY_BLUE + extra_decals = list( + "vertical_stripe_left_l" = COLOR_GOLD, + "vertical_stripe_left_m" = COLOR_GOLD, + "vertical_stripe_left_r" = COLOR_GOLD + ) + +/decl/closet_appearance/wall_double/hos + decals = list( + "holes_right" + ) + color = COLOR_NT_RED + extra_decals = list( + "vertical_stripe_left_l" = COLOR_GOLD, + "vertical_stripe_left_m" = COLOR_WARM_YELLOW, + "vertical_stripe_left_r" = COLOR_GOLD + ) + +/decl/closet_appearance/wall_double/iaa + decals = list( + "holes_right" + ) + color = COLOR_DARK_BLUE_GRAY + extra_decals = list( + "vertical_stripe_left_l" = COLOR_GOLD, + "vertical_stripe_left_m" = COLOR_GOLD, + "vertical_stripe_left_r" = COLOR_GOLD + ) + +/decl/closet_appearance/wall_double/engineering + decals = list( + "holes" + ) + color = COLOR_YELLOW_GRAY + +/decl/closet_appearance/wall_double/generic_civ + color = COLOR_DARK_BLUE_GRAY + // Carts /decl/closet_appearance/cart color = COLOR_GRAY20 diff --git a/code/game/objects/structures/crates_lockers/closets/utility_closets.dm b/code/game/objects/structures/crates_lockers/closets/utility_closets.dm index c83dbe0f1a..8fc75b1c8a 100644 --- a/code/game/objects/structures/crates_lockers/closets/utility_closets.dm +++ b/code/game/objects/structures/crates_lockers/closets/utility_closets.dm @@ -196,6 +196,7 @@ /obj/structure/closet/hydrant //wall mounted fire closet name = "fire-safety closet" desc = "It's a storage unit for fire-fighting supplies." + icon = 'icons/obj/closets/bases/wall.dmi' closet_appearance = /decl/closet_appearance/wall/hydrant plane = TURF_PLANE layer = ABOVE_TURF_LAYER @@ -218,7 +219,10 @@ /obj/structure/closet/medical_wall //wall mounted medical closet name = "first-aid closet" desc = "It's wall-mounted storage unit for first aid supplies." + icon = 'icons/obj/closets/bases/wall.dmi' closet_appearance = /decl/closet_appearance/wall/medical + plane = TURF_PLANE + layer = ABOVE_TURF_LAYER anchored = TRUE density = FALSE wall_mounted = 1 diff --git a/code/game/objects/structures/crates_lockers/closets/walllocker.dm b/code/game/objects/structures/crates_lockers/closets/walllocker.dm index f1949dfeb5..1f0f0f6956 100644 --- a/code/game/objects/structures/crates_lockers/closets/walllocker.dm +++ b/code/game/objects/structures/crates_lockers/closets/walllocker.dm @@ -3,7 +3,7 @@ /obj/structure/closet/walllocker desc = "A wall mounted storage locker." - name = "Wall Locker" + name = "wall locker" icon = 'icons/obj/closets/bases/wall.dmi' closet_appearance = /decl/closet_appearance/wall density = FALSE @@ -85,7 +85,7 @@ //double-size "cabinet" lockers, from Killian /obj/structure/closet/walllocker_double desc = "A wall mounted storage cabinet." - name = "Wall Cabinet" + name = "wall cabinet" icon = 'icons/obj/closets/bases/wall_double.dmi' closet_appearance = /decl/closet_appearance/wall_double density = FALSE @@ -116,7 +116,7 @@ /obj/structure/closet/walllocker_double/kitchen desc = "A wall mounted storage cabinet, for the kitchen. Now where's the flour gone..?" - name = "Kitchen Cabinet" + name = "kitchen cabinet" icon = 'icons/obj/closets/bases/wall_double.dmi' closet_appearance = /decl/closet_appearance/wall_double/kitchen density = FALSE @@ -139,7 +139,7 @@ dir = EAST /obj/structure/closet/walllocker_double/medical - name = "Medical Cabinet" + name = "medical cabinet" desc = "A wall mounted medical supply cabinet. Probably full of drugs!" //not actually full of drugs, sorry! closet_appearance = /decl/closet_appearance/wall_double/medical @@ -159,12 +159,37 @@ pixel_x = 32 dir = EAST +/obj/structure/closet/walllocker_double/emergency_engi + name = "emergency supplies cabinet" + desc = "A wall mounted cabinet. Seemingly has cool stuff for 'emergency use only'." + closet_appearance = /decl/closet_appearance/wall_double/emergency_engi + + starts_with = list( + /obj/item/clothing/mask/breath = 2, + /obj/item/weapon/tank/emergency/oxygen/engi = 2, + /obj/item/weapon/storage/briefcase/inflatable, + /obj/item/device/radio = 3) + +/obj/structure/closet/walllocker_double/emergency_engi/north + pixel_y = 32 + dir = SOUTH + +/obj/structure/closet/walllocker_double/emergency_engi/south + pixel_y = -32 + dir = NORTH + +/obj/structure/closet/walllocker_double/emergency_engi/west + pixel_x = -32 + dir = WEST + +/obj/structure/closet/walllocker_double/emergency_engi/east + pixel_x = 32 + dir = EAST + /obj/structure/closet/walllocker_double/hydrant name = "fire-safety closet" desc = "It's a storage cabinet packed with fire-fighting supplies." closet_appearance = /decl/closet_appearance/wall_double/fire_safety - anchored = TRUE - density = FALSE starts_with = list( /obj/item/clothing/suit/fire, @@ -192,7 +217,7 @@ /obj/structure/closet/walllocker_double/survival desc = "A wall mounted storage cabinet. It contains a small amount of emergency supplies for wilderness survival, but they probably won't last very long." - name = "Emergency Survival Wall Cabinet" + name = "emergency survival wall cabinet" icon = 'icons/obj/closets/bases/wall_double.dmi' closet_appearance = /decl/closet_appearance/wall_double/survival density = FALSE @@ -228,5 +253,159 @@ dir = WEST /obj/structure/closet/walllocker_double/survival/east + pixel_x = 32 + dir = EAST + +/obj/structure/closet/walllocker_double/security + name = "security cabinet" + desc = "A wall mounted cabinet. This one is suspiciously red." + closet_appearance = /decl/closet_appearance/wall_double/security + +/obj/structure/closet/walllocker_double/security/north + pixel_y = 32 + dir = SOUTH + +/obj/structure/closet/walllocker_double/security/south + pixel_y = -32 + dir = NORTH + +/obj/structure/closet/walllocker_double/security/west + pixel_x = -32 + dir = WEST + +/obj/structure/closet/walllocker_double/security/east + pixel_x = 32 + dir = EAST + +/obj/structure/closet/walllocker_double/misc_civ + closet_appearance = /decl/closet_appearance/wall_double/gaming + +/obj/structure/closet/walllocker_double/misc_civ/north + pixel_y = 32 + dir = SOUTH + +/obj/structure/closet/walllocker_double/misc_civ/south + pixel_y = -32 + dir = NORTH + +/obj/structure/closet/walllocker_double/misc_civ/west + pixel_x = -32 + dir = WEST + +/obj/structure/closet/walllocker_double/misc_civ/east + pixel_x = 32 + dir = EAST + +/obj/structure/closet/walllocker_double/generic_civ + closet_appearance = /decl/closet_appearance/wall_double/generic_civ + +/obj/structure/closet/walllocker_double/generic_civ/north + pixel_y = 32 + dir = SOUTH + +/obj/structure/closet/walllocker_double/generic_civ/south + pixel_y = -32 + dir = NORTH + +/obj/structure/closet/walllocker_double/generic_civ/west + pixel_x = -32 + dir = WEST + +/obj/structure/closet/walllocker_double/generic_civ/east + pixel_x = 32 + dir = EAST + +/obj/structure/closet/walllocker_double/cargo + desc = "A wall mounted cabinet. This one is in cargo colors." + closet_appearance = /decl/closet_appearance/wall_double/cargo + +/obj/structure/closet/walllocker_double/cargo/north + pixel_y = 32 + dir = SOUTH + +/obj/structure/closet/walllocker_double/cargo/south + pixel_y = -32 + dir = NORTH + +/obj/structure/closet/walllocker_double/cargo/west + pixel_x = -32 + dir = WEST + +/obj/structure/closet/walllocker_double/cargo/east + pixel_x = 32 + dir = EAST + +/obj/structure/closet/walllocker_double/science + desc = "A wall mounted cabinet. This one is in research colors." + closet_appearance = /decl/closet_appearance/wall_double/science + +/obj/structure/closet/walllocker_double/science/north + pixel_y = 32 + dir = SOUTH + +/obj/structure/closet/walllocker_double/science/south + pixel_y = -32 + dir = NORTH + +/obj/structure/closet/walllocker_double/science/west + pixel_x = -32 + dir = WEST + +/obj/structure/closet/walllocker_double/science/east + pixel_x = 32 + dir = EAST + +/obj/structure/closet/walllocker_double/command + desc = "A wall mounted cabinet. This one is in command colors." + closet_appearance = /decl/closet_appearance/wall_double/command + +/obj/structure/closet/walllocker_double/command/north + pixel_y = 32 + dir = SOUTH + +/obj/structure/closet/walllocker_double/command/south + pixel_y = -32 + dir = NORTH + +/obj/structure/closet/walllocker_double/command/west + pixel_x = -32 + dir = WEST + +/obj/structure/closet/walllocker_double/command/east + pixel_x = 32 + dir = EAST + +/obj/structure/closet/walllocker_double/command/ce + closet_appearance = /decl/closet_appearance/wall_double/ce + +/obj/structure/closet/walllocker_double/command/cmo + closet_appearance = /decl/closet_appearance/wall_double/cmo + +/obj/structure/closet/walllocker_double/command/rd + closet_appearance = /decl/closet_appearance/wall_double/rd + +/obj/structure/closet/walllocker_double/command/hos + closet_appearance = /decl/closet_appearance/wall_double/hos + +/obj/structure/closet/walllocker_double/command/iaa + closet_appearance = /decl/closet_appearance/wall_double/iaa + +/obj/structure/closet/walllocker_double/engineering + desc = "A wall mounted cabinet. This one is in engineering colors." + closet_appearance = /decl/closet_appearance/wall_double/engineering + +/obj/structure/closet/walllocker_double/engineering/north + pixel_y = 32 + dir = SOUTH + +/obj/structure/closet/walllocker_double/engineering/south + pixel_y = -32 + dir = NORTH + +/obj/structure/closet/walllocker_double/engineering/west + pixel_x = -32 + dir = WEST + +/obj/structure/closet/walllocker_double/engineering/east pixel_x = 32 dir = EAST \ No newline at end of file diff --git a/code/game/objects/structures/crates_lockers/crates.dm b/code/game/objects/structures/crates_lockers/crates.dm index 102e4d23a1..d48958a704 100644 --- a/code/game/objects/structures/crates_lockers/crates.dm +++ b/code/game/objects/structures/crates_lockers/crates.dm @@ -314,6 +314,14 @@ desc = "A freezer stamped with the logo of NanoTrasen." closet_appearance = /decl/closet_appearance/crate/freezer/nanotrasen +/obj/structure/closet/crate/freezer/veymed + desc = "A freezer stamped with the logo of Vey-Medical." + closet_appearance = /decl/closet_appearance/crate/freezer/veymed + +/obj/structure/closet/crate/freezer/zenghu + desc = "A freezer stamped with the logo of Zeng-Hu Pharmaceuticals." + closet_appearance = /decl/closet_appearance/crate/freezer/zenghu + /obj/structure/closet/crate/freezer/return_air() var/datum/gas_mixture/gas = (..()) if(!gas) return null diff --git a/code/game/objects/structures/flora/flora.dm b/code/game/objects/structures/flora/flora.dm index 2b03156385..a6850cd769 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/event_vr.dm b/code/game/objects/structures/ghost_pods/event_vr.dm index 1bcf5dd147..1842fe7a1a 100644 --- a/code/game/objects/structures/ghost_pods/event_vr.dm +++ b/code/game/objects/structures/ghost_pods/event_vr.dm @@ -47,7 +47,8 @@ "Nurse Giant Spider" = /mob/living/simple_mob/animal/giant_spider/nurse/eggless, "Giant Spider Queen" = /mob/living/simple_mob/animal/giant_spider/nurse/queen/eggless, "Weretiger" = /mob/living/simple_mob/vore/weretiger, - "Catslug" = /mob/living/simple_mob/vore/alienanimals/catslug + "Catslug" = /mob/living/simple_mob/vore/alienanimals/catslug, + "Squirrel" = /mob/living/simple_mob/vore/squirrel/big ) /obj/structure/ghost_pod/ghost_activated/maintpred/create_occupant(var/mob/M) 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 0000000000..62dbc2441d --- /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 1aeb9cdf4c..43aeed44c1 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 @@ -369,7 +370,7 @@ GLOBAL_LIST_BOILERPLATE(all_janitorial_carts, /obj/structure/janitorialcart) -//old style retardo-cart +//old style mischievio-cart /obj/structure/bed/chair/janicart name = "janicart" icon = 'icons/obj/vehicles.dmi' diff --git a/code/game/objects/structures/morgue.dm b/code/game/objects/structures/morgue.dm index fd861c5ad1..2a7bda2d3f 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/props/prop.dm b/code/game/objects/structures/props/prop.dm index 1ce0ab46c2..968ff4b66d 100644 --- a/code/game/objects/structures/props/prop.dm +++ b/code/game/objects/structures/props/prop.dm @@ -39,7 +39,8 @@ /obj/structure/prop/vv_edit_var(var_name, var_value) if(var_name == "state") change_state(var_value) - + else + ..() //Misc stuff that fits no category diff --git a/code/game/objects/structures/safe.dm b/code/game/objects/structures/safe.dm index 50071efe4e..6ac0d6b502 100644 --- a/code/game/objects/structures/safe.dm +++ b/code/game/objects/structures/safe.dm @@ -22,15 +22,17 @@ FLOOR SAFES var/maxspace = 24 //the maximum combined w_class of stuff in the safe -/obj/structure/safe/New() +/obj/structure/safe/Initialize() tumbler_1_pos = rand(0, 72) tumbler_1_open = rand(0, 72) tumbler_2_pos = rand(0, 72) tumbler_2_open = rand(0, 72) + if(. != INITIALIZE_HINT_QDEL) + return INITIALIZE_HINT_LATELOAD -/obj/structure/safe/Initialize() +/obj/structure/safe/LateInitialize() . = ..() for(var/obj/item/I in loc) if(space >= maxspace) @@ -115,7 +117,7 @@ FLOOR SAFES if(canhear) to_chat(user, "You hear a [pick("click", "chink", "clink")] from \the [src].") playsound(src, 'sound/machines/click.ogg', 20, 1) - check_unlocked(user, canhear) + check_unlocked(user, canhear) updateUsrDialog() return diff --git a/code/game/objects/structures/signs.dm b/code/game/objects/structures/signs.dm index 6a43d769c9..45a1d808b3 100644 --- a/code/game/objects/structures/signs.dm +++ b/code/game/objects/structures/signs.dm @@ -256,12 +256,12 @@ /obj/structure/sign/redcross name = "medbay" - desc = "The Intergalactic symbol of Medical institutions. You'll probably get help here." + desc = "An interstellar symbol of medical institutions. You'll probably get help here." icon_state = "bluecross" /obj/structure/sign/greencross name = "medbay" - desc = "The Intergalactic symbol of Medical institutions. You'll probably get help here." + desc = "An interstellar symbol of medical institutions. You'll probably get help here." icon_state = "bluecross2" /obj/structure/sign/goldenplaque @@ -817,6 +817,16 @@ desc = "A pictographic direction sign with a knife, plate, and fork, stating the level to find the nearest dining establishment on." icon_state = "level_kitchen" +/obj/structure/sign/directions/shuttle_bay + name = "\improper Shuttle Bay" + desc = "A direction sign, pointing out the way to the nearest shuttle bay." + icon_state = "direction_bay" + +/obj/structure/sign/levels/shuttle_bay + name = "\improper Shuttle Bay" + desc = "A direction sign, stating the level to find the nearest shuttle bay on." + icon_state = "level_bay" + /obj/structure/sign/directions/tram name = "\improper Public Transit Station" desc = "A direction sign, pointing out the way to the nearest public transit station." diff --git a/code/game/objects/structures/simple_doors.dm b/code/game/objects/structures/simple_doors.dm index ea70fa44a6..4c49624d92 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 b6c5885ac4..aff55b7225 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/objects/weapons.dm b/code/game/objects/weapons.dm index cd0190c71e..cc9e2fa5c7 100644 --- a/code/game/objects/weapons.dm +++ b/code/game/objects/weapons.dm @@ -2,7 +2,6 @@ name = "weapon" icon = 'icons/obj/weapons.dmi' hitsound = "swing_hit" - var/can_cleave = FALSE // If true, a 'cleaving' attack will occur. var/cleaving = FALSE // Used to avoid infinite cleaving. /obj/item/weapon/Bump(mob/M as mob) diff --git a/code/game/turfs/flooring/flooring.dm b/code/game/turfs/flooring/flooring.dm index 0eb44576cf..2beeef160f 100644 --- a/code/game/turfs/flooring/flooring.dm +++ b/code/game/turfs/flooring/flooring.dm @@ -189,7 +189,7 @@ var/list/flooring_types /decl/flooring/mud name = "mud" - desc = "STICKY AND WET!" + desc = "Wet and fragrant mud, bane of the freshly mopped floor." icon = 'icons/turf/outdoors.dmi' icon_base = "mud_dark" footstep_sounds = list("human" = list( @@ -200,7 +200,7 @@ var/list/flooring_types /decl/flooring/asteroid name = "coarse sand" - desc = "Gritty and unpleasant." + desc = "You got a pebble in your shoe just looking at it." icon = 'icons/turf/flooring/asteroid.dmi' icon_base = "asteroid" flags = TURF_REMOVE_SHOVEL | TURF_ACID_IMMUNE @@ -213,8 +213,8 @@ var/list/flooring_types 'sound/effects/footstep/asteroid5.ogg')) /decl/flooring/dirt - name = "dirt" - desc = "Gritty and unpleasant, just like dirt." + name = "soil" + desc = "Widely considered to be some of the planet's top soil." icon = 'icons/turf/outdoors.dmi' icon_base = "dirt-dark" flags = TURF_REMOVE_SHOVEL @@ -275,7 +275,7 @@ var/list/flooring_types /decl/flooring/carpet name = "carpet" - desc = "Imported and comfy." + desc = "Lush synthetic carpeting, perfectly engineered for easy cleaning." icon = 'icons/turf/flooring/carpet.dmi' icon_base = "carpet" build_type = /obj/item/stack/tile/carpet @@ -299,7 +299,7 @@ var/list/flooring_types build_type = /obj/item/stack/tile/carpet/blucarpet /decl/flooring/carpet/turcarpet - name = "tur carpet" + name = "turquoise carpet" icon_base = "turcarpet" build_type = /obj/item/stack/tile/carpet/turcarpet @@ -309,7 +309,7 @@ var/list/flooring_types build_type = /obj/item/stack/tile/carpet/sblucarpet /decl/flooring/carpet/gaycarpet - name = "clown carpet" + name = "pink carpet" icon_base = "gaycarpet" build_type = /obj/item/stack/tile/carpet/gaycarpet @@ -391,18 +391,19 @@ var/list/flooring_types 'sound/effects/footstep/floor5.ogg')) /decl/flooring/tiling/tech - desc = "Scuffed from the passage of countless greyshirts." + desc = "Metal floor tiles with a corrugated anti-slip texture." icon = 'icons/turf/flooring/techfloor.dmi' icon_base = "techfloor_gray" build_type = /obj/item/stack/tile/floor/techgrey can_paint = null /decl/flooring/tiling/tech/grid + desc = "Metal floor tiles with a barred anti-slip construction. Don't skin your knee!" icon_base = "techfloor_grid" build_type = /obj/item/stack/tile/floor/techgrid /decl/flooring/tiling/new_tile - name = "floor" + desc = "Metal floor tiles with a corrugated anti-slip texture." icon_base = "tile_full" flags = TURF_CAN_BREAK | TURF_CAN_BURN | TURF_IS_FRAGILE build_type = null @@ -530,8 +531,7 @@ var/list/flooring_types 'sound/effects/footstep/wood5.ogg')) /decl/flooring/wood/sif - name = "alien wooden floor" - desc = "Polished alien wood planks." + desc = "Polished wood planks made from sivian wood." icon = 'icons/turf/flooring/wood.dmi' icon_base = "sifwood" build_type = /obj/item/stack/tile/wood/sif @@ -604,7 +604,7 @@ var/list/flooring_types /decl/flooring/lava // Defining this in case someone DOES step on lava and survive. Somehow. name = "lava" - desc = "Lava. Y'know. Sets you on fire. AAAAAAAAAAA" + desc = "It may look inviting, but it will kill you, painfully." icon = 'icons/turf/outdoors.dmi' icon_base = "lava" is_plating = TRUE @@ -616,7 +616,7 @@ var/list/flooring_types /decl/flooring/concrete name = "concrete" - desc = "A flat area of concrete flooring." + desc = "A flat area of poured concrete flooring." icon = 'icons/turf/concrete.dmi' icon_base = "concrete" is_plating = FALSE //VOREStation edit. It's a lot cooler if it's actual tile. diff --git a/code/game/turfs/flooring/flooring_premade.dm b/code/game/turfs/flooring/flooring_premade.dm index bbbac3bd76..5b96e1703b 100644 --- a/code/game/turfs/flooring/flooring_premade.dm +++ b/code/game/turfs/flooring/flooring_premade.dm @@ -118,6 +118,11 @@ icon_state = "wood" initial_flooring = /decl/flooring/wood +/turf/simulated/floor/wood/airless + oxygen = 0 + nitrogen = 0 + temperature = TCMB + /turf/simulated/floor/wood/broken icon_state = "wood-broken0" // This gets changed when spawned. @@ -271,6 +276,7 @@ /turf/simulated/floor/tiled/kafel_full name = "floor" + desc = "Ceramic tile flooring." icon_state = "kafel_full" initial_flooring = /decl/flooring/tiling/new_tile/kafel /turf/simulated/floor/tiled/kafel_full/white diff --git a/code/game/turfs/flooring/seasonal.dm b/code/game/turfs/flooring/seasonal.dm index 19eca39da1..6ebc258ebe 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,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 = 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, + /mob/living/simple_mob/vore/squirrel = 20 ) grass_types = list( /obj/structure/flora/ausbushes/sparsegrass, @@ -73,8 +78,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 +86,14 @@ 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, + /mob/living/simple_mob/vore/squirrel = 20 ) grass_types = list( /obj/structure/flora/ausbushes/sparsegrass, @@ -102,7 +113,12 @@ 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, + /mob/living/simple_mob/vore/squirrel = 20 ) grass_types = list( /obj/structure/flora/ausbushes/sparsegrass, @@ -121,7 +137,15 @@ 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, + /mob/living/simple_mob/vore/squirrel = 20 ) if(prob(snow_chance)) chill() diff --git a/code/game/turfs/simulated/floor_attackby.dm b/code/game/turfs/simulated/floor_attackby.dm index 01e34e87f6..2b6f5422b4 100644 --- a/code/game/turfs/simulated/floor_attackby.dm +++ b/code/game/turfs/simulated/floor_attackby.dm @@ -201,7 +201,7 @@ return if(!try_deconstruct_tile(W, user)) return - if(flooring) + if(flooring && !flooring.is_plating) return attackby(T, user) diff --git a/code/game/turfs/simulated/outdoors/survival_action_vr.dm b/code/game/turfs/simulated/outdoors/survival_action_vr.dm index c7f90171c7..9f88959493 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/global.dm b/code/global.dm index 6f634ebc7b..534b5d3fd8 100644 --- a/code/global.dm +++ b/code/global.dm @@ -173,7 +173,11 @@ var/static/list/scarySounds = list( 'sound/items/Welder2.ogg', 'sound/machines/door/old_airlock.ogg', 'sound/effects/clownstep1.ogg', - 'sound/effects/clownstep2.ogg' + 'sound/effects/clownstep2.ogg', + 'sound/voice/teppi/roar.ogg', //VOREStation Add + 'sound/voice/moth/scream_moth.ogg', //VOREStation Add + 'sound/voice/nya.ogg', //VOREStation Add + 'sound/voice/succlet_shriek.ogg' //VOREStation Add ) // Bomb cap! diff --git a/code/global_vr.dm b/code/global_vr.dm index 6ed3403aaf..6293c2197f 100644 --- a/code/global_vr.dm +++ b/code/global_vr.dm @@ -44,3 +44,18 @@ var/global/list/acceptable_fruit_types= list( "watermelon", "wheat", "whitebeet") + +// Some "scary" sounds. +var/static/list/scawwySownds = list( + 'sound/voice/ScawwySownds/a scawey sownd.ogg', + 'sound/voice/ScawwySownds/is that you.ogg', + 'sound/voice/ScawwySownds/lookit this darkness wow.ogg', + 'sound/voice/ScawwySownds/maint preds.ogg', + 'sound/voice/ScawwySownds/spooky sounds.ogg', + 'sound/voice/ScawwySownds/sus.ogg', + 'sound/voice/ScawwySownds/this is scaewy.ogg', + 'sound/voice/ScawwySownds/what is that behind you.ogg', + 'sound/voice/ScawwySownds/what you doin over dere.ogg', + 'sound/voice/ScawwySownds/whats up with all the trash.ogg', + 'sound/voice/ScawwySownds/youre afraid of the dark arent you.ogg' + ) diff --git a/code/modules/admin/DB ban/functions.dm b/code/modules/admin/DB ban/functions.dm index af8799004b..dfd236c0d9 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/admin.dm b/code/modules/admin/admin.dm index 4d7f3491f2..8fdc8edc13 100644 --- a/code/modules/admin/admin.dm +++ b/code/modules/admin/admin.dm @@ -667,6 +667,10 @@ var/datum/announcement/minor/admin_min_announcer = new if(!channel) //They picked a channel return + var/speech_verb = tgui_alert(usr, "What speech verb to use for the conversation?", "Type", list("states", "says")) + if(!speech_verb) + return + to_chat(usr, "Intercom Convo Directions
    Start the conversation with the sender, a pipe (|), and then the message on one line. Then hit enter to \ add another line, and type a (whole) number of seconds to pause between that message, and the next message, then repeat the message syntax up to 20 times. For example:
    \ --- --- ---
    \ @@ -735,7 +739,7 @@ var/datum/announcement/minor/admin_min_announcer = new var/this_sender = decomposed[i] var/this_message = decomposed[++i] var/this_wait = decomposed[++i] - global_announcer.autosay("[this_message]", "[this_sender]", "[channel == "Common" ? null : channel]", "says") //Common is a weird case, as it's not a "channel", it's just talking into a radio without a channel set. //VOREStation Edit + global_announcer.autosay("[this_message]", "[this_sender]", "[channel == "Common" ? null : channel]", states = speech_verb) //Common is a weird case, as it's not a "channel", it's just talking into a radio without a channel set. //VOREStation Edit sleep(this_wait SECONDS) /datum/admins/proc/toggleooc() 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 0000000000..3ab0f6c4bc --- /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 a1444f9088..77a0649221 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 @@ -2077,11 +2077,11 @@ /mob/extra_admin_link(var/source) if(client && eyeobj) - return "|EYE" + return "|EYE" /mob/observer/dead/extra_admin_link(var/source) if(mind && mind.current) - return "|BDY" + return "|BDY" /proc/admin_jump_link(var/atom/target, var/source) if(!target) return @@ -2091,5 +2091,5 @@ else source = "_src_=holder" - . = "JMP" + . = "JMP" . += target.extra_admin_link(source) diff --git a/code/modules/admin/verbs/adminhelp.dm b/code/modules/admin/verbs/adminhelp.dm index 2c0021dfa4..54ddd8894b 100644 --- a/code/modules/admin/verbs/adminhelp.dm +++ b/code/modules/admin/verbs/adminhelp.dm @@ -247,6 +247,8 @@ GLOBAL_DATUM_INIT(ahelp_tickets, /datum/admin_help_tickets, new) //send this msg to all admins for(var/client/X in GLOB.admins) + if(!check_rights(R_ADMIN, 0, X)) + continue if(X.is_preference_enabled(/datum/client_preference/holder/play_adminhelp_ping)) X << 'sound/effects/adminhelp.ogg' window_flash(X) diff --git a/code/modules/admin/verbs/adminpm.dm b/code/modules/admin/verbs/adminpm.dm index 592b20b358..4dbc2a2307 100644 --- a/code/modules/admin/verbs/adminpm.dm +++ b/code/modules/admin/verbs/adminpm.dm @@ -5,7 +5,7 @@ /client/proc/cmd_admin_pm_context(mob/M in mob_list) set category = null set name = "Admin PM Mob" - if(!holder) + if(!check_rights(R_ADMIN)) to_chat(src, "Error: Admin-PM-Context: Only administrators may use this command.") return if( !ismob(M) || !M.client ) @@ -17,7 +17,7 @@ /client/proc/cmd_admin_pm_panel() set category = "Admin" set name = "Admin PM" - if(!holder) + if(!check_rights(R_ADMIN)) to_chat(src, "Error: Admin-PM-Panel: Only administrators may use this command.") return var/list/client/targets[0] diff --git a/code/modules/admin/verbs/adminsay.dm b/code/modules/admin/verbs/adminsay.dm index b9332751b5..4fa7f2862c 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, 0, C)) 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/admin/verbs/pray.dm b/code/modules/admin/verbs/pray.dm index 5acd85f8c3..b6bb02fa76 100644 --- a/code/modules/admin/verbs/pray.dm +++ b/code/modules/admin/verbs/pray.dm @@ -17,7 +17,7 @@ return var/icon/cross = icon('icons/obj/storage.dmi',"bible") - msg = "\icon[cross][bicon(cross)] PRAY: [key_name(src, 1)] (?) (PP) (VV) (SM) ([admin_jump_link(src, src)]) (CA) (SC) (SMITE): [msg]" + msg = "\icon[cross][bicon(cross)] PRAY: [key_name(src, 1)] [ADMIN_QUE(src)] [ADMIN_PP(src)] [ADMIN_VV(src)] [ADMIN_SM(src)] ([admin_jump_link(src, src)]) [ADMIN_CA(src)] [ADMIN_SC(src)] [ADMIN_SMITE(src)]: [msg]" for(var/client/C in GLOB.admins) if(R_ADMIN|R_EVENT & C.holder.rights) @@ -30,14 +30,14 @@ //log_admin("HELP: [key_name(src)]: [msg]") /proc/CentCom_announce(var/msg, var/mob/Sender, var/iamessage) - msg = "[uppertext(using_map.boss_short)]M[iamessage ? " IA" : ""]:[key_name(Sender, 1)] (PP) (VV) (SM) ([admin_jump_link(Sender)]) (CA) (BSA) (RPLY): [msg]" + msg = "[uppertext(using_map.boss_short)]M[iamessage ? " IA" : ""]:[key_name(Sender, 1)] [ADMIN_PP(Sender)] [ADMIN_VV(Sender)] [ADMIN_SM(Sender)] ([admin_jump_link(Sender)]) [ADMIN_CA(Sender)] [ADMIN_BSA(Sender)] [ADMIN_CENTCOM_REPLY(Sender)]: [msg]" for(var/client/C in GLOB.admins) //VOREStation Edit - GLOB admins if(R_ADMIN|R_EVENT & C.holder.rights) to_chat(C,msg) C << 'sound/machines/signal.ogg' /proc/Syndicate_announce(var/msg, var/mob/Sender) - msg = "ILLEGAL:[key_name(Sender, 1)] (PP) (VV) (SM) ([admin_jump_link(Sender)]) (CA) (BSA) (RPLY): [msg]" + msg = "ILLEGAL:[key_name(Sender, 1)] [ADMIN_PP(Sender)] [ADMIN_VV(Sender)] [ADMIN_SM(Sender)] ([admin_jump_link(Sender)]) [ADMIN_CA(Sender)] [ADMIN_BSA(Sender)] [ADMIN_SYNDICATE_REPLY(Sender)]: [msg]" for(var/client/C in GLOB.admins) //VOREStation Edit - GLOB admins if(R_ADMIN|R_EVENT & C.holder.rights) to_chat(C,msg) diff --git a/code/modules/ai/ai_holder_targeting.dm b/code/modules/ai/ai_holder_targeting.dm index e3d98f1620..63424e4b9a 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/awaymissions/corpse.dm b/code/modules/awaymissions/corpse.dm index cf55eacec4..a20354272b 100644 --- a/code/modules/awaymissions/corpse.dm +++ b/code/modules/awaymissions/corpse.dm @@ -111,7 +111,7 @@ corpseidaccess = "Syndicate" /obj/effect/landmark/corpse/syndicatecommando - name = "Syndicate Commando" + name = "Mercenary Commando" corpseuniform = /obj/item/clothing/under/syndicate corpsesuit = /obj/item/clothing/suit/space/void/merc corpseshoes = /obj/item/clothing/shoes/boots/swat diff --git a/code/modules/awaymissions/overmap_renamer/debrisfield_renamer.dm b/code/modules/awaymissions/overmap_renamer/debrisfield_renamer.dm new file mode 100644 index 0000000000..93d6425532 --- /dev/null +++ b/code/modules/awaymissions/overmap_renamer/debrisfield_renamer.dm @@ -0,0 +1,21 @@ +//POI landmarks for the Debris field. Check Readme for details. +//Define your subtypes here, rather than in the map editor +//Makes it easier to change if found problematic or to simply review +/obj/effect/landmark/overmap_renamer/debris_field + name = "Debries Field Landmarks" //Please change name to be indicative of which POI for better debugging + var/static/reference //Saves us from having to iterate over all visitable overmap obj instances more than once for the debris field. + +//Uncomment the testing lines when adding a new landmark and wanting to see if it loaded properly during server init. re-comment after done +/obj/effect/landmark/overmap_renamer/debris_field/Initialize() + ..() + if(!reference) +// testing("First overmap descriptor, name: [name]") + for(var/obj/effect/overmap/visitable/D in visitable_overmap_object_instances) + if(D.unique_identifier == "Debris Field") + if(D.possible_descriptors && islist(D.possible_descriptors)) + D.possible_descriptors |= list(descriptors) + reference = D + else if (reference && istype(reference, /obj/effect/overmap/visitable/)) + var/obj/effect/overmap/visitable/D = reference +// testing("[D] already found, skipping iterating over list. Adding [name] to possible descriptors") + D.possible_descriptors |= list(descriptors) diff --git a/code/modules/awaymissions/overmap_renamer/overmap_renamer.dm b/code/modules/awaymissions/overmap_renamer/overmap_renamer.dm new file mode 100644 index 0000000000..a92e29a297 --- /dev/null +++ b/code/modules/awaymissions/overmap_renamer/overmap_renamer.dm @@ -0,0 +1,56 @@ +//General procs and landmark definition for the overmap_renamer subsystem + + +/* +Called by the code\controllers\subsystems\overmap_renamer_vr.dm subsystem if an area was set to be renamed. +possible_descriptors are populated by subtypes of /obj/effect/landmark/overmap_renamer +*/ +/obj/effect/overmap/visitable/proc/modify_descriptors() + if(!possible_descriptors || !islist(possible_descriptors) || possible_descriptors == list() || !length(possible_descriptors)) + error("List of possible descriptors for [name] was empty!") + return + + var/list/chosen_descriptor = pick(possible_descriptors) + if(chosen_descriptor == "default") + testing("Defaulting to default!") + return //Not an error, won't generate an error message + var/breakWhile = 0 + while(LAZYLEN(chosen_descriptor) != 3) + LAZYREMOVE(chosen_descriptor, possible_descriptors) + chosen_descriptor = pick(possible_descriptors) + if(chosen_descriptor == "default") +// testing("Defaulting to default!") //Uncomment when adding a new landmark to confirm it works OK, but recomment before commiting + return + if(breakWhile > 10 || length(possible_descriptors) < 1) + error("No valid descriptors could be found for [name]!") //Checking default separately for sake of error messages + return + + //Using real_name to ensure get_scan_data() does not override the renamed code + //Since we're doing this on runtime rather than compile time. + if(!known) + real_name = chosen_descriptor[1] + real_desc = chosen_descriptor[2] + else + name = chosen_descriptor[1] + desc = chosen_descriptor[2] + scanner_desc = chosen_descriptor[3] + visitable_renamed = TRUE + + +/obj/effect/landmark/overmap_renamer + name = "Helper to rename overmap locations" + desc = "Use subtypes for each overmap location! Fill in name with the POI's clearly identifiable name for error handling." + icon = 'icons/effects/effects.dmi' + icon_state = "energynet" + var/list/descriptors = list() //Elements: A = name, B = desc C = scanner desc. Each element must be a string +// var/static/reference //exists to avoid having to iterate over the overmap objs list more than once. Commented out here. Add this to subtype + +/obj/effect/landmark/overmap_renamer/Initialize() +// testing("Loading renamer landmark: [name]") //Uncomment when adding a new POI/Landmark for testing aid. + if(LAZYLEN(descriptors) != 3) + error("POI [name] renamer landmark is invalid! Make sure its descriptors var is a list of 3 elements!") + return + if(!istext(descriptors[1]) || !istext(descriptors[2]) || !istext(descriptors[3])) + error("POI [name] renamer landmark is invalid! One of the elements is NOT a string!") + return + . = ..() diff --git a/code/modules/awaymissions/overmap_renamer/readme.md b/code/modules/awaymissions/overmap_renamer/readme.md new file mode 100644 index 0000000000..6927ef394b --- /dev/null +++ b/code/modules/awaymissions/overmap_renamer/readme.md @@ -0,0 +1,78 @@ +/* + +How to use - for mappers: + + Adding a new POI to an already defined lateloaded Z level (you can check which Z levels are handled by the renamer in code\controllers\subsystems\overmap_renamer_vr.dm) + Within the folder you found this readme, click the appropriately named file (debris field -> debrisfield_renamer) + There, create a new object as given in the following example: + + /obj/effect/landmark/overmap_renamer/debris_field/examplelandmark + name = "Debris field example landmark that hints at which POI it came from!!!" + descriptors = list("This element appears when you hover over the obj in the nav console", "if someone manages to examine it", "This is what the printed paper says") + + Make sure you use exactly 3 elements, no more and no less and make sure each element is enclosed in a "". + If you want to only change one element, fill in the other ones with the appropriate /obj/effect/overmap/visitable/ subtype's name, desc or scanner_desc your Z level corresponds to. + + Once done, just load up strongDMM and place your landmark within the map. + Please use the _renamer.dm files to define landmarks, don't do it within the game. + While it works just fine, this should make it easier to change the descriptor if it's problematic after review or found so down the line. + Plus, if your .dmm is too big for github to show - this will let people review your descriptor easily. + + When making such landmarks: reserve them for MAJOR POIs - stuff a ship's scanner might pick up as having a significance. + A small shuttle in the debris field shouldn't get a landmark + The big alien derelict? Now that's worthy of a special landmark! + The idea of this system is for us to be able to treat existing Z levels as technically different locations. + Did you want to make an abandoned mining facility overmap adventure? Now this system will let you turn the DF into one (if the dice permits) + + Adding a new POI to a brand new lateloaded Z level (you can check which Z levels are handled by the renamer in code\controllers\subsystems\overmap_renamer_vr.dm) + First, go to your /obj/effect/overmap/visitable, and define unique_identifier as something unique. Like, "Debris Field" - basically, this is a way to check if the map loaded without causing compiler errors. + + Your task will become a bit more difficult now. Create a new .dm file following convention already estabilished with debrisfield_renamer.dm + + Within this file, define your /obj/effect/landmark/overmap_renamer/newname here + add the following line: + var/static/reference //leave thus null. The initialization will change this to contain reference to your overmap object instance. Saves us from excess looping + name = "obvious reference to the lateloaded Z in question here" + Within this file, create a new /obj/effect/landmark/overmap_renamer/newname/Initialize() + Within this proc, copy what's done in code\modules\awaymissions\overmap_renamer\debrisfield_renamer.dm + except, replace if(D == "Debris Field") with whatever your unique identifier was defined for your specific overmap object + + Now go to code\controllers\subsystems\overmap_renamer_vr.dm + copy the if("Debris Field - Z1 Space" in visitable_Z_levels_name_list) and everything belonging to this if statement + paste it below this if statement and change things as described: + change the if("map_template.name goes here" in visitable_z_levels_name_list) (you can get the proper name by going to wherever your /datum/map_template/ for your map is. For Debris field, it's maps\offmap_vr\common_offmaps.dm. Yours is probably there too!) + change the if(D == "Debris Field") section in your new if statement just like you did for the landmark! + + And you're done! Refer to the "How to add a landmark" section on the top from now on. + + + + +Important procs, vars etc. contained within the following files: + + code\_helpers\global_lists_vr.dm + var/list/visitable_overmap_object_instances - Collects instances with reference for things like the Debris Field, Space Whale, Talon etc. We need it to call the proc on the instance + + code\modules\overmap\sectors.dm + var/list/possible_descriptors - contains a list of list("name","desc","scanner_desc") + var/unique_identifier - A way to check if the object in question loaded without causing a compiler error. Name them sth easy to recognize, like "Debris field" for... debris field. + var/real_name - Used to handle known = FALSE overmap objects properly + var/real_desc - same as real_name + /obj/effect/overmap/visitable/Initialize() - adds the object's instance with reference to visitable_overmap_object_instances + + code\modules\awaymissions\overmap_renamer\overmap_renamer.dm + /obj/effect/overmap/visitable/proc/modify_descriptors() - Takes possible_descriptors from src, picks a valid one after sanitization. Gives warnings if input is invalid. + /obj/effect/landmark/overmap_renamer - generic landmark, don't touch. + + code\modules\awaymissions\overmap_renamer\debrisfield_renamer.dm - Mappers, copy contents, changing the /overmap_renamer/debris_field to /overmap_renamer/yourthingy + var/static/reference - I couldn't find a way to declare this higher up in the path. Make sure to delcare it when making landmarks for a new area. Static so all landmarks have it. This gets defined on runtime after the first landmark subtype initializes. + /obj/effect/landmark/overmap_renamer/debris_field/Initialize() - Copy the entire thing, and change the "Debris Field" to your obj's var/unique_identifier + + code\controllers\subsystems\overmap_renamer_vr.dm + /datum/controller/subsystem/overmap_renamer/proc/update_names() - Checks which Z levels are loaded, modifies them + To add new Z levels to the renamer, simply copy the if statement and its contents for debris field, + taking care to change the "Debris Field - Z1 Space" to the name var defined in your lateloaded Z level's map_template datum + example: maps\offmap_vr\common_offmaps.dm and then the /datum/map_template/common_lateload/away_debrisfield + + +*/ diff --git a/code/modules/client/client procs.dm b/code/modules/client/client procs.dm index 62b90376af..56450c68b9 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/01_basic.dm b/code/modules/client/preference_setup/general/01_basic.dm index e3505834e4..4b85b2bf0a 100644 --- a/code/modules/client/preference_setup/general/01_basic.dm +++ b/code/modules/client/preference_setup/general/01_basic.dm @@ -140,7 +140,7 @@ return TOPIC_REFRESH else if(href_list["metadata"]) - var/new_metadata = sanitize(tgui_input_text(user, "Enter any information you'd like others to see, such as Roleplay-preferences:", "Game Preference" , html_decode(pref.metadata), multiline = TRUE, prevent_enter = TRUE), extra = 0) //VOREStation Edit + var/new_metadata = strip_html_simple(tgui_input_text(user, "Enter any information you'd like others to see, such as Roleplay-preferences:", "Game Preference" , html_decode(pref.metadata), multiline = TRUE, prevent_enter = TRUE)) //VOREStation Edit if(new_metadata && CanUseTopic(user)) pref.metadata = new_metadata return TOPIC_REFRESH diff --git a/code/modules/client/preference_setup/general/03_body.dm b/code/modules/client/preference_setup/general/03_body.dm index e5228cfebb..2f3fd3c078 100644 --- a/code/modules/client/preference_setup/general/03_body.dm +++ b/code/modules/client/preference_setup/general/03_body.dm @@ -2,6 +2,7 @@ var/global/list/valid_bloodtypes = list("A+", "A-", "B+", "B-", "AB+", "AB-", "O /datum/preferences var/equip_preview_mob = EQUIP_PREVIEW_ALL + var/animations_toggle = FALSE var/icon/bgstate = "000" var/list/bgstate_options = list("000", "midgrey", "FFF", "white", "steel", "techmaint", "dark", "plating", "reinforced") @@ -363,8 +364,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) @@ -551,6 +562,7 @@ var/global/list/valid_bloodtypes = list("A+", "A-", "B+", "B-", "AB+", "AB-", "O . += "
    Cycle background" . += "
    [pref.equip_preview_mob & EQUIP_PREVIEW_LOADOUT ? "Hide loadout" : "Show loadout"]" . += "
    [pref.equip_preview_mob & EQUIP_PREVIEW_JOB ? "Hide job gear" : "Show job gear"]" + . += "
    [pref.animations_toggle ? "Stop animations" : "Show animations"]" . += "
    Search:" output += "
    Ckey: Admin ckey:
    " . += "Hair
    " @@ -858,9 +870,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) @@ -1115,6 +1128,10 @@ var/global/list/valid_bloodtypes = list("A+", "A-", "B+", "B-", "AB+", "AB-", "O pref.equip_preview_mob ^= text2num(href_list["toggle_preview_value"]) return TOPIC_REFRESH_UPDATE_PREVIEW + else if(href_list["toggle_animations"]) + pref.animations_toggle = !pref.animations_toggle + return TOPIC_REFRESH_UPDATE_PREVIEW + else if(href_list["synth_color"]) pref.synth_color = !pref.synth_color return TOPIC_REFRESH_UPDATE_PREVIEW diff --git a/code/modules/client/preference_setup/general/05_background.dm b/code/modules/client/preference_setup/general/05_background.dm index 4ca1cb86ad..99d55b06eb 100644 --- a/code/modules/client/preference_setup/general/05_background.dm +++ b/code/modules/client/preference_setup/general/05_background.dm @@ -7,6 +7,7 @@ S["sec_record"] >> pref.sec_record S["gen_record"] >> pref.gen_record S["home_system"] >> pref.home_system + S["birthplace"] >> pref.birthplace S["citizenship"] >> pref.citizenship S["faction"] >> pref.faction S["religion"] >> pref.religion @@ -17,6 +18,7 @@ S["sec_record"] << pref.sec_record S["gen_record"] << pref.gen_record S["home_system"] << pref.home_system + S["birthplace"] << pref.birthplace S["citizenship"] << pref.citizenship S["faction"] << pref.faction S["religion"] << pref.religion @@ -24,6 +26,7 @@ /datum/category_item/player_setup_item/general/background/sanitize_character() if(!pref.home_system) pref.home_system = "Unset" + if(!pref.birthplace) pref.birthplace = "Unset" if(!pref.citizenship) pref.citizenship = "None" if(!pref.faction) pref.faction = "None" if(!pref.religion) pref.religion = "None" @@ -36,6 +39,7 @@ character.sec_record = pref.sec_record character.gen_record = pref.gen_record character.home_system = pref.home_system + character.birthplace = pref.birthplace character.citizenship = pref.citizenship character.personal_faction = pref.faction character.religion = pref.religion @@ -43,7 +47,8 @@ /datum/category_item/player_setup_item/general/background/content(var/mob/user) . += "Background Information
    " . += "Economic Status: [pref.economic_status]
    " - . += "Home System: [pref.home_system]
    " + . += "Home: [pref.home_system]
    " + . += "Birthplace: [pref.birthplace]
    " . += "Citizenship: [pref.citizenship]
    " . += "Faction: [pref.faction]
    " . += "Religion: [pref.religion]
    " @@ -67,23 +72,35 @@ return TOPIC_REFRESH else if(href_list["home_system"]) - var/choice = tgui_input_list(user, "Please choose a home system.", "Character Preference", home_system_choices + list("Unset","Other"), pref.home_system) + var/choice = tgui_input_list(user, "Please choose your home planet and/or system. This should be your current primary residence. Select \"Other\" to specify manually.", "Character Preference", home_system_choices + list("Unset","Other"), pref.home_system) if(!choice || !CanUseTopic(user)) return TOPIC_NOACTION if(choice == "Other") - var/raw_choice = sanitize(tgui_input_text(user, "Please enter a home system.", "Character Preference", null, MAX_NAME_LEN), MAX_NAME_LEN) + var/raw_choice = strip_html_simple(tgui_input_text(user, "Please enter a home system.", "Character Preference", null, MAX_NAME_LEN), MAX_NAME_LEN) if(raw_choice && CanUseTopic(user)) pref.home_system = raw_choice else pref.home_system = choice return TOPIC_REFRESH - else if(href_list["citizenship"]) - var/choice = tgui_input_list(user, "Please choose your current citizenship.", "Character Preference", citizenship_choices + list("None","Other"), pref.citizenship) + else if(href_list["birthplace"]) + var/choice = tgui_input_list(user, "Please choose the planet and/or system or other appropriate location that you were born/created. Select \"Other\" to specify manually.", "Character Preference", home_system_choices + list("Unset","Other"), pref.birthplace) if(!choice || !CanUseTopic(user)) return TOPIC_NOACTION if(choice == "Other") - var/raw_choice = sanitize(tgui_input_text(user, "Please enter your current citizenship.", "Character Preference", null, MAX_NAME_LEN), MAX_NAME_LEN) + var/raw_choice = strip_html_simple(tgui_input_text(user, "Please enter a birthplace.", "Character Preference", null, MAX_NAME_LEN), MAX_NAME_LEN) + if(raw_choice && CanUseTopic(user)) + pref.birthplace = raw_choice + else + pref.birthplace = choice + return TOPIC_REFRESH + + else if(href_list["citizenship"]) + var/choice = tgui_input_list(user, "Please select the faction or political entity with which you currently hold citizenship. Select \"Other\" to specify manually.", "Character Preference", citizenship_choices + list("None","Other"), pref.citizenship) + if(!choice || !CanUseTopic(user)) + return TOPIC_NOACTION + if(choice == "Other") + var/raw_choice = strip_html_simple(tgui_input_text(user, "Please enter your current citizenship.", "Character Preference", null, MAX_NAME_LEN), MAX_NAME_LEN) if(raw_choice && CanUseTopic(user)) pref.citizenship = raw_choice else @@ -91,11 +108,11 @@ return TOPIC_REFRESH else if(href_list["faction"]) - var/choice = tgui_input_list(user, "Please choose a faction to work for.", "Character Preference", faction_choices + list("None","Other"), pref.faction) + var/choice = tgui_input_list(user, "Please choose the faction you primarily work for, if you are not under the direct employ of NanoTrasen. Select \"Other\" to specify manually.", "Character Preference", faction_choices + list("None","Other"), pref.faction) if(!choice || !CanUseTopic(user)) return TOPIC_NOACTION if(choice == "Other") - var/raw_choice = sanitize(tgui_input_text(user, "Please enter a faction.", "Character Preference", null, MAX_NAME_LEN), MAX_NAME_LEN) + var/raw_choice = strip_html_simple(tgui_input_text(user, "Please enter a faction.", "Character Preference", null, MAX_NAME_LEN), MAX_NAME_LEN) if(raw_choice) pref.faction = raw_choice else @@ -103,11 +120,11 @@ return TOPIC_REFRESH else if(href_list["religion"]) - var/choice = tgui_input_list(user, "Please choose a religion.", "Character Preference", religion_choices + list("None","Other"), pref.religion) + var/choice = tgui_input_list(user, "Please choose a religion. Select \"Other\" to specify manually.", "Character Preference", religion_choices + list("None","Other"), pref.religion) if(!choice || !CanUseTopic(user)) return TOPIC_NOACTION if(choice == "Other") - var/raw_choice = sanitize(tgui_input_text(user, "Please enter a religon.", "Character Preference", null, MAX_NAME_LEN), MAX_NAME_LEN) + var/raw_choice = strip_html_simple(tgui_input_text(user, "Please enter a religon.", "Character Preference", null, MAX_NAME_LEN), MAX_NAME_LEN) if(raw_choice) pref.religion = sanitize(raw_choice) else @@ -115,19 +132,19 @@ return TOPIC_REFRESH else if(href_list["set_medical_records"]) - var/new_medical = sanitize(tgui_input_text(user,"Enter medical information here.","Character Preference", html_decode(pref.med_record), MAX_RECORD_LENGTH, TRUE, prevent_enter = TRUE), MAX_RECORD_LENGTH, extra = 0) + var/new_medical = strip_html_simple(tgui_input_text(user,"Enter medical information here.","Character Preference", html_decode(pref.med_record), MAX_RECORD_LENGTH, TRUE, prevent_enter = TRUE), MAX_RECORD_LENGTH) if(!isnull(new_medical) && !jobban_isbanned(user, "Records") && CanUseTopic(user)) pref.med_record = new_medical return TOPIC_REFRESH else if(href_list["set_general_records"]) - var/new_general = sanitize(tgui_input_text(user,"Enter employment information here.","Character Preference", html_decode(pref.gen_record), MAX_RECORD_LENGTH, TRUE, prevent_enter = TRUE), MAX_RECORD_LENGTH, extra = 0) + var/new_general = strip_html_simple(tgui_input_text(user,"Enter employment information here.","Character Preference", html_decode(pref.gen_record), MAX_RECORD_LENGTH, TRUE, prevent_enter = TRUE), MAX_RECORD_LENGTH) if(!isnull(new_general) && !jobban_isbanned(user, "Records") && CanUseTopic(user)) pref.gen_record = new_general return TOPIC_REFRESH else if(href_list["set_security_records"]) - var/sec_medical = sanitize(tgui_input_text(user,"Enter security information here.","Character Preference", html_decode(pref.sec_record), MAX_RECORD_LENGTH, TRUE, prevent_enter = TRUE), MAX_RECORD_LENGTH, extra = 0) + var/sec_medical = strip_html_simple(tgui_input_text(user,"Enter security information here.","Character Preference", html_decode(pref.sec_record), MAX_RECORD_LENGTH, TRUE, prevent_enter = TRUE), MAX_RECORD_LENGTH) if(!isnull(sec_medical) && !jobban_isbanned(user, "Records") && CanUseTopic(user)) pref.sec_record = sec_medical return TOPIC_REFRESH diff --git a/code/modules/client/preference_setup/general/06_flavor.dm b/code/modules/client/preference_setup/general/06_flavor.dm index 794fba3e2f..a759732022 100644 --- a/code/modules/client/preference_setup/general/06_flavor.dm +++ b/code/modules/client/preference_setup/general/06_flavor.dm @@ -59,11 +59,11 @@ switch(href_list["flavor_text"]) if("open") if("general") - var/msg = sanitize(tgui_input_text(usr,"Give a general description of your character. This will be shown regardless of clothings. Put in a single space to make blank.","Flavor Text",html_decode(pref.flavor_texts[href_list["flavor_text"]]), multiline = TRUE, prevent_enter = TRUE), extra = 0) //VOREStation Edit: separating out OOC notes + var/msg = strip_html_simple(tgui_input_text(usr,"Give a general description of your character. This will be shown regardless of clothings. Put in a single space to make blank.","Flavor Text",html_decode(pref.flavor_texts[href_list["flavor_text"]]), multiline = TRUE, prevent_enter = TRUE)) //VOREStation Edit: separating out OOC notes if(CanUseTopic(user) && !isnull(msg)) pref.flavor_texts[href_list["flavor_text"]] = msg else - var/msg = sanitize(tgui_input_text(usr,"Set the flavor text for your [href_list["flavor_text"]]. Put in a single space to make blank.","Flavor Text",html_decode(pref.flavor_texts[href_list["flavor_text"]]), multiline = TRUE, prevent_enter = TRUE), extra = 0) + var/msg = strip_html_simple(tgui_input_text(usr,"Set the flavor text for your [href_list["flavor_text"]]. Put in a single space to make blank.","Flavor Text",html_decode(pref.flavor_texts[href_list["flavor_text"]]), multiline = TRUE, prevent_enter = TRUE)) if(CanUseTopic(user) && !isnull(msg)) pref.flavor_texts[href_list["flavor_text"]] = msg SetFlavorText(user) @@ -73,11 +73,11 @@ switch(href_list["flavour_text_robot"]) if("open") if("Default") - var/msg = sanitize(tgui_input_text(usr,"Set the default flavour text for your robot. It will be used for any module without individual setting. Put in a single space to make blank.","Flavour Text",html_decode(pref.flavour_texts_robot["Default"]), multiline = TRUE, prevent_enter = TRUE), extra = 0) + var/msg = strip_html_simple(tgui_input_text(usr,"Set the default flavour text for your robot. It will be used for any module without individual setting. Put in a single space to make blank.","Flavour Text",html_decode(pref.flavour_texts_robot["Default"]), multiline = TRUE, prevent_enter = TRUE)) if(CanUseTopic(user) && !isnull(msg)) pref.flavour_texts_robot[href_list["flavour_text_robot"]] = msg else - var/msg = sanitize(tgui_input_text(usr,"Set the flavour text for your robot with [href_list["flavour_text_robot"]] module. If you leave this blank, default flavour text will be used for this module. Put in a single space to make blank.","Flavour Text",html_decode(pref.flavour_texts_robot[href_list["flavour_text_robot"]]), multiline = TRUE, prevent_enter = TRUE), extra = 0) + var/msg = strip_html_simple(tgui_input_text(usr,"Set the flavour text for your robot with [href_list["flavour_text_robot"]] module. If you leave this blank, default flavour text will be used for this module. Put in a single space to make blank.","Flavour Text",html_decode(pref.flavour_texts_robot[href_list["flavour_text_robot"]]), multiline = TRUE, prevent_enter = TRUE)) if(CanUseTopic(user) && !isnull(msg)) pref.flavour_texts_robot[href_list["flavour_text_robot"]] = msg SetFlavourTextRobot(user) diff --git a/code/modules/client/preference_setup/global/setting_datums.dm b/code/modules/client/preference_setup/global/setting_datums.dm index 246a5ede25..f8c0615ef9 100644 --- a/code/modules/client/preference_setup/global/setting_datums.dm +++ b/code/modules/client/preference_setup/global/setting_datums.dm @@ -368,6 +368,20 @@ 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" + enabled_by_default = FALSE + 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 82a9431266..3727a76c13 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_general.dm b/code/modules/client/preference_setup/loadout/loadout_general.dm index 71d8b8c37d..bd83241019 100644 --- a/code/modules/client/preference_setup/loadout/loadout_general.dm +++ b/code/modules/client/preference_setup/loadout/loadout_general.dm @@ -57,6 +57,7 @@ // look if theres a better way to do this im all ears blacklisted_types += subtypesof(/obj/item/toy/plushie/therapy) blacklisted_types += subtypesof(/obj/item/toy/plushie/fluff) + blacklisted_types += /obj/item/toy/plushie/borgplushie/drake //VOREStation addition for(var/obj/item/toy/plushie/plushie_type as anything in subtypesof(/obj/item/toy/plushie) - blacklisted_types) plushies[initial(plushie_type.name)] = plushie_type gear_tweaks += new/datum/gear_tweak/path(sortAssoc(plushies)) 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 269f9e7aa9..cfc0a6b105 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 69f46a9379..d341c1a49b 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 af33ec7787..79cced4864 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.dm b/code/modules/client/preference_setup/loadout/loadout_shoes.dm index 05876c41ae..0875ddf09e 100644 --- a/code/modules/client/preference_setup/loadout/loadout_shoes.dm +++ b/code/modules/client/preference_setup/loadout/loadout_shoes.dm @@ -169,13 +169,13 @@ display_name = "cowboy boots, snake skin" path = /obj/item/clothing/shoes/boots/cowboy/snakeskin -/datum/gear/shoes/cowboy/lizard - display_name = "cowboy boots, lizard skin" - path = /obj/item/clothing/shoes/boots/cowboy/lizard +/datum/gear/shoes/cowboy/green + display_name = "cowboy boots, green" + path = /obj/item/clothing/shoes/boots/cowboy/green -/datum/gear/shoes/cowboy/lizard/masterwork - display_name = "cowboy boots, lizard skin (masterwork)" - path = /obj/item/clothing/shoes/boots/cowboy/lizard/masterwork +/datum/gear/shoes/cowboy/blue + display_name = "cowboy boots, blue" + path = /obj/item/clothing/shoes/boots/cowboy/blue /datum/gear/shoes/jungle display_name = "jungle boots" 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 d0b1646007..378b2caedf 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 89182fe0a2..03b1a0dcf5 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,169 @@ 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) + +//ABOUT TIME SOMEONE ADDED THIS TO A LOADOUT +/datum/gear/suit/bladerunnercoat + display_name = "leather coat, massive" + path = /obj/item/clothing/suit/storage/bladerunner \ 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 b8e6b8d6de..75869c96e4 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 ca2bd1e08d..94238a1c1a 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/02_size.dm b/code/modules/client/preference_setup/vore/02_size.dm index 8cfd64c47d..c3e386cb4c 100644 --- a/code/modules/client/preference_setup/vore/02_size.dm +++ b/code/modules/client/preference_setup/vore/02_size.dm @@ -16,6 +16,7 @@ var/fuzzy = 0 // Preference toggle for sharp/fuzzy icon. Default sharp. var/voice_freq = 0 var/voice_sound = "beep-boop" + var/custom_speech_bubble = "default" // Definition of the stuff for Sizing /datum/category_item/player_setup_item/vore/size @@ -30,6 +31,7 @@ S["fuzzy"] >> pref.fuzzy S["voice_freq"] >> pref.voice_freq S["voice_sound"] >> pref.voice_sound + S["custom_speech_bubble"] >> pref.custom_speech_bubble /datum/category_item/player_setup_item/vore/size/save_character(var/savefile/S) S["size_multiplier"] << pref.size_multiplier @@ -39,6 +41,7 @@ S["fuzzy"] << pref.fuzzy S["voice_freq"] << pref.voice_freq S["voice_sound"] << pref.voice_sound + S["custom_speech_bubble"] << pref.custom_speech_bubble /datum/category_item/player_setup_item/vore/size/sanitize_character() pref.weight_vr = sanitize_integer(pref.weight_vr, WEIGHT_MIN, WEIGHT_MAX, initial(pref.weight_vr)) @@ -49,6 +52,8 @@ pref.voice_freq = sanitize_integer(pref.voice_freq, MIN_VOICE_FREQ, MAX_VOICE_FREQ, initial(pref.fuzzy)) if(pref.size_multiplier == null || pref.size_multiplier < RESIZE_TINY || pref.size_multiplier > RESIZE_HUGE) pref.size_multiplier = initial(pref.size_multiplier) + if(!(pref.custom_speech_bubble in selectable_speech_bubbles)) + pref.custom_speech_bubble = "default" /datum/category_item/player_setup_item/vore/size/copy_to_mob(var/mob/living/carbon/human/character) character.weight = pref.weight_vr @@ -89,6 +94,7 @@ character.voice_sounds_list = goon_speak_roach_sound if("goon speak skelly") character.voice_sounds_list = goon_speak_skelly_sound + character.custom_speech_bubble = pref.custom_speech_bubble /datum/category_item/player_setup_item/vore/size/content(var/mob/user) . += "
    " @@ -96,6 +102,8 @@ . += "Scaled Appearance: [pref.fuzzy ? "Fuzzy" : "Sharp"]
    " . += "Voice Frequency: [pref.voice_freq]
    " . += "Voice Sounds: [pref.voice_sound]
    " + . += "Test Selected Voice
    " + . += "Custom Speech Bubble: [pref.custom_speech_bubble]
    " . += "
    " . += "Relative Weight: [pref.weight_vr]
    " . += "Weight Gain Rate: [pref.weight_gain]
    " @@ -188,5 +196,49 @@ pref.voice_sound = "beep-boop" else pref.voice_sound = choice + return TOPIC_REFRESH + else if(href_list["customize_speech_bubble"]) + var/choice = tgui_input_list(usr, "What speech bubble style do you want to use? (default for automatic selection)", "Custom Speech Bubble", selectable_speech_bubbles) + if(!choice) + pref.custom_speech_bubble = "default" + else + pref.custom_speech_bubble = choice + return TOPIC_REFRESH + + else if(href_list["voice_test"]) + var/sound/S + switch(pref.voice_sound) + if("beep-boop") + S = sound(pick(talk_sound)) + if("goon speak 1") + S = sound(pick(goon_speak_one_sound)) + if("goon speak 2") + S = sound(pick(goon_speak_two_sound)) + if("goon speak 3") + S = sound(pick(goon_speak_three_sound)) + if("goon speak 4") + S = sound(pick(goon_speak_four_sound)) + if("goon speak blub") + S = sound(pick(goon_speak_blub_sound)) + if("goon speak bottalk") + S = sound(pick(goon_speak_bottalk_sound)) + if("goon speak buwoo") + S = sound(pick(goon_speak_buwoo_sound)) + if("goon speak cow") + S = sound(pick(goon_speak_cow_sound)) + if("goon speak lizard") + S = sound(pick(goon_speak_lizard_sound)) + if("goon speak pug") + S = sound(pick(goon_speak_pug_sound)) + if("goon speak pugg") + S = sound(pick(goon_speak_pugg_sound)) + if("goon speak roach") + S = sound(pick(goon_speak_roach_sound)) + if("goon speak skelly") + S = sound(pick(goon_speak_skelly_sound)) + if(S) + S.frequency = pick(pref.voice_freq) + S.volume = 50 + SEND_SOUND(user, S) return ..(); diff --git a/code/modules/client/preference_setup/vore/07_traits.dm b/code/modules/client/preference_setup/vore/07_traits.dm index 5a9922dd4f..a98a276e39 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 c618341344..d502fb447b 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 94fe6b0153..19fd61011a 100644 --- a/code/modules/client/preference_setup/vore/09_misc.dm +++ b/code/modules/client/preference_setup/vore/09_misc.dm @@ -9,6 +9,7 @@ S["directory_ad"] >> pref.directory_ad S["sensorpref"] >> pref.sensorpref S["capture_crystal"] >> pref.capture_crystal + S["auto_backup_implant"] >> pref.auto_backup_implant /datum/category_item/player_setup_item/vore/misc/save_character(var/savefile/S) S["show_in_directory"] << pref.show_in_directory @@ -17,7 +18,7 @@ S["directory_ad"] << pref.directory_ad S["sensorpref"] << pref.sensorpref S["capture_crystal"] << pref.capture_crystal - + S["auto_backup_implant"] << pref.auto_backup_implant /datum/category_item/player_setup_item/vore/misc/copy_to_mob(var/mob/living/carbon/human/character) if(pref.sensorpref > 5 || pref.sensorpref < 1) @@ -31,6 +32,7 @@ pref.directory_erptag = sanitize_inlist(pref.directory_erptag, GLOB.char_directory_erptags, initial(pref.directory_erptag)) pref.sensorpref = sanitize_integer(pref.sensorpref, 1, sensorpreflist.len, initial(pref.sensorpref)) pref.capture_crystal = sanitize_integer(pref.capture_crystal, 0, 1, initial(pref.capture_crystal)) + pref.auto_backup_implant = sanitize_integer(pref.auto_backup_implant, 0, 1, initial(pref.auto_backup_implant)) /datum/category_item/player_setup_item/vore/misc/content(var/mob/user) . += "
    " @@ -39,7 +41,8 @@ . += "Character Directory ERP Tag: [pref.directory_erptag]
    " . += "Character Directory Advertisement: Set Directory Ad
    " . += "Suit Sensors Preference: [sensorpreflist[pref.sensorpref]]
    " - . += "Capture Crystal Preference [pref.capture_crystal ? "Yes" : "No"]
    " + . += "Capture Crystal Preference: [pref.capture_crystal ? "Yes" : "No"]
    " + . += "Spawn With Backup Implant: [pref.auto_backup_implant ? "Yes" : "No"]
    " /datum/category_item/player_setup_item/vore/misc/OnTopic(var/href, var/list/href_list, var/mob/user) if(href_list["toggle_show_in_directory"]) @@ -59,6 +62,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"]) @@ -69,5 +74,7 @@ else if(href_list["toggle_capture_crystal"]) pref.capture_crystal = pref.capture_crystal ? 0 : 1; return TOPIC_REFRESH - + else if(href_list["toggle_implant"]) + pref.auto_backup_implant = pref.auto_backup_implant ? 0 : 1; + return TOPIC_REFRESH return ..(); diff --git a/code/modules/client/preferences.dm b/code/modules/client/preferences.dm index d965e3bf71..72f2163d84 100644 --- a/code/modules/client/preferences.dm +++ b/code/modules/client/preferences.dm @@ -76,8 +76,9 @@ var/list/preferences_datums = list() var/synth_markings = 1 //Enable/disable markings on synth parts. //VOREStation Edit - 1 by default //Some faction information. - var/home_system = "Unset" //System of birth. - var/citizenship = "None" //Current home system. + var/home_system = "Unset" //Current home or residence. + var/birthplace = "Unset" //Location of birth. + var/citizenship = "None" //Government or similar entity with which you hold citizenship. var/faction = "None" //General associated faction. var/religion = "None" //Religious association. var/antag_faction = "None" //Antag associated faction. @@ -413,6 +414,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 @@ -423,10 +425,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_factions.dm b/code/modules/client/preferences_factions.dm index 011afaf0c8..74ba6b78ca 100644 --- a/code/modules/client/preferences_factions.dm +++ b/code/modules/client/preferences_factions.dm @@ -15,51 +15,90 @@ var/global/list/seen_religions = list() // VOREStation Edits Start var/global/list/citizenship_choices = list( - "Earth", - "Mars", - "Sif", - "Binma", - "Moghes", - "Meralar", - "Qerr'balak", - "Virgo 3b Colony", - "Virgo 4 NT Compound", - "Venus", - "Tiamat", - "An-Tahk-Et" + "Greater Human Diaspora", + "Commonwealth of Sol-Procyon", + "Skrell Consensus", + "Moghes Hegemony", + "Tajaran Diaspora", + "Unitary Alliance of Salthan Fyrds", + "Elysian Colonies", + "Third Ares Confederation", + "Teshari Expeditionary Fleet", + "Altevian Hegemony", + "Kitsuhana Heavy Industries", + "Kosaky Fleets" ) var/global/list/home_system_choices = list( "Virgo-Erigone", "Sol", - "Proxima Centauri", + "Earth, Sol", + "Luna, Sol", + "Mars, Sol", + "Venus, Sol", + "Titan, Sol", + "Toledo, New Ohio", + "The Pact, Myria", + "Kitsuhana Prime", + "Kishar, Alpha Centauri", + "Anshar, Alpha Centauri", + "Heaven Complex, Alpha Centauri", "Procyon", - "Vir", - "Nyx", - "Tau Ceti", - "Qerr'valis", + "Altair", + "Kara, Vir", + "Sif, Vir", + "Brinkburn, Nyx", + "Binma, Tau Ceti", + "Qerr'balak, Qerr'valis", "Epsilon Ursae Minoris", - "Rarkajar" + "Meralar, Rarkajar", + "Tal, Vilous", + "Menhir, Alat-Hahr", + "Altam, Vazzend", + "Uh'Zata, Kelezakata", + "Moghes, Uuoea-Esa", + "Xohok, Uuoea-Esa", + "Varilak, Antares", + "Sanctorum, Sanctum", + "Infernum, Sanctum", + "Abundance in All Things Serene, Beta-Carnelium Ventrum", + "Jorhul, Barkalis", + "Shelf Flotilla", + "Ue-Orsi Flotilla" ) - var/global/list/faction_choices = list( - /*YW EDIT: "Commonwealth of Sol-Procyon",*/ - "United Fyrds", - "Elysian Colonies", - "Ares Confederation", - "Vey Med", - "Einstein Engines", + "NanoTrasen Incorporated", + "Hephaestus Industries", + "Vey-Medical", + "Zeng-Hu Pharmaceuticals", + "Ward-Takahashi GMC", + "Bishop Cybernetics", + "Morpheus Cyberkinetics", + "Xion Manufacturing Group", "Free Trade Union", - "NanoTrasen", - "Ward-Takahashi GMB", - "Gilthari Exports", + "Major Bill's Transportation", + "Ironcrest Transport Group", "Grayson Manufactories Ltd.", "Aether Atmospherics", - "Zeng-Hu Pharmaceuticals", - "Hephaestus Industries", - "Morpheus Cyberkinetics", - "Xion Manufacturing Group" + "Focal Point Energistics", + "StarFlight Inc.", + "Oculum Broadcasting Network", + "Periphery Post", + "Free Anur Tribune", + "Centauri Provisions", + "Einstein Engines", + "Wulf Aeronautics", + "Gilthari Exports", + "Coyote Salvage Corp.", + "Chimera Genetics Corp.", + "Kitsuhana Heavy Industries", + "Independent Pilots Association", + "Local System Defense Force", + "United Solar Defense Force", + "Proxima Centauri Risk Control", + "HIVE Security", + "Stealth Assault Enterprises" ) // VOREStation Edits Stop @@ -92,4 +131,4 @@ var/global/list/religion_choices = list( "Deism", "Neo-Moreauism", "Orthodox Moreauism" - ) \ No newline at end of file + ) diff --git a/code/modules/client/preferences_vr.dm b/code/modules/client/preferences_vr.dm index 7edee90ccf..5de49fd1c1 100644 --- a/code/modules/client/preferences_vr.dm +++ b/code/modules/client/preferences_vr.dm @@ -5,6 +5,7 @@ var/directory_ad = "" //Advertisement stuff to show in character directory. var/sensorpref = 5 //Set character's suit sensor level var/capture_crystal = 1 //Whether or not someone is able to be caught with capture crystals + var/auto_backup_implant = FALSE //Whether someone starts with a backup implant or not. var/job_talon_high = 0 var/job_talon_med = 0 @@ -119,4 +120,30 @@ SScharacter_setup.queue_preferences_save(prefs) - feedback_add_details("admin_verb", "TSoundMentorhelps") \ No newline at end of file + 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" + set desc = "When toggled on, increases the cooldown of pain messages sent to chat for minor injuries" + + var/pref_path = /datum/client_preference/pain_frequency + + toggle_preference(pref_path) + + to_chat(src, "The cooldown between pain messages for minor (under 20/5 injury. Multi-limb injuries are still faster) is now [ (is_preference_enabled(pref_path)) ? "extended" : "default"].") diff --git a/code/modules/client/verbs/advanced_who.dm b/code/modules/client/verbs/advanced_who.dm index 151f4a90f3..104ed92bc0 100644 --- a/code/modules/client/verbs/advanced_who.dm +++ b/code/modules/client/verbs/advanced_who.dm @@ -94,6 +94,6 @@ msg += "[line]" msg += "
    " msg += "Total Players: [length(Lines)]" - msg = "" + msg + "" + msg = "" + msg + "" to_chat(src, msg) YW EDIT STOP*/ diff --git a/code/modules/client/verbs/who.dm b/code/modules/client/verbs/who.dm index 54f8af326c..a9e4c07f80 100644 --- a/code/modules/client/verbs/who.dm +++ b/code/modules/client/verbs/who.dm @@ -44,13 +44,14 @@ var/seconds = C.last_activity_seconds() entry += " (AFK - [round(seconds / 60)] minutes, [seconds % 60] seconds)" - entry += " (?)" + entry += " [ADMIN_QUE(C.mob)]" Lines += entry for(var/line in sortList(Lines)) msg += "[line]\n" msg += "Total Players: [length(Lines)]" + msg = "[jointext(msg, "
    ")]
    " to_chat(src,msg) /client/verb/staffwho() @@ -145,4 +146,4 @@ msg += "\nAdminhelps are also sent to Discord. If no admins are available in game try anyway and an admin on Discord may see it and respond." - to_chat(src, msg) + to_chat(src,"[jointext(msg, "
    ")]
    ") diff --git a/code/modules/clothing/clothing.dm b/code/modules/clothing/clothing.dm index abf234d901..49c9727521 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 @@ -1058,4 +1059,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 60d976b12e..381bc32c39 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 5eadbedef5..2225c6667f 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 8d7ec44f54..709c6ea156 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 cc911db7c8..fe11d5a900 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 3883d9d0e3..f0851e780a 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 aa39c10336..e46d2bfa11 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 7792ecc8e3..f728dc20fe 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 296626756f..e21c6d3bc6 100644 --- a/code/modules/clothing/shoes/boots.dm +++ b/code/modules/clothing/shoes/boots.dm @@ -23,15 +23,15 @@ desc = "A pair of cowboy boots made from python skin." icon_state = "cowboy_snakeskin" -/obj/item/clothing/shoes/boots/cowboy/lizard - name = "lizard skin boots" - desc = "You can hear a faint hissing from inside the boots; you hope it is just a mournful ghost." - icon_state = "lizardboots_green" +/obj/item/clothing/shoes/boots/cowboy/green + name = "green cowboy boots" + desc = "A classic looking pair of durable cowboy boots made out of snappy green leather." + icon_state = "cowboy_green" -/obj/item/clothing/shoes/boots/cowboy/lizard/masterwork - name = "\improper Hugs-The-Feet lizard skin boots" - desc = "A pair of masterfully crafted lizard skin boots. Finally a good application for the station's most bothersome inhabitants." - icon_state = "lizardboots_blue" +/obj/item/clothing/shoes/boots/cowboy/blue + name = "blue cowboy boots" + desc = "A classic looking pair of durable cowboy boots made out of extra fancy blue leather." + icon_state = "cowboy_blue" /obj/item/clothing/shoes/boots/cowboy/brown name = "brown cowboy boots" @@ -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.dm b/code/modules/clothing/shoes/miscellaneous.dm index 5653d79007..7221f30d8e 100644 --- a/code/modules/clothing/shoes/miscellaneous.dm +++ b/code/modules/clothing/shoes/miscellaneous.dm @@ -144,7 +144,7 @@ item_state_slots = list(slot_r_hand_str = "slippers", slot_l_hand_str = "slippers") /obj/item/clothing/shoes/laceup - name = "black oxford shoes" + name = "black oxford shoes" icon_state = "oxford_black" /obj/item/clothing/shoes/laceup/grey diff --git a/code/modules/clothing/shoes/miscellaneous_vr.dm b/code/modules/clothing/shoes/miscellaneous_vr.dm index 0e7accaa34..f7cd8bd097 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 d0606960e7..9c360ca207 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 d6f1465f45..f8a0cc46af 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 827200251e..a55cdd51c0 100644 --- a/code/modules/clothing/suits/miscellaneous.dm +++ b/code/modules/clothing/suits/miscellaneous.dm @@ -1,1054 +1,1060 @@ -/* - * Contains: - * Lasertag - * Costume - * Misc - * Department Jackets - */ - -// -S2-note- Needs categorizing and sorting. - -/* - * Lasertag - */ - -/obj/item/clothing/suit/bluetag - name = "blue laser tag armor" - desc = "Blue Pride, Station Wide." - icon_state = "bluetag" - item_state_slots = list(slot_r_hand_str = "tdblue", slot_l_hand_str = "tdblue") - blood_overlay_type = "armor" - body_parts_covered = UPPER_TORSO - allowed = list (/obj/item/weapon/gun/energy/lasertag/blue) - siemens_coefficient = 3.0 - -/obj/item/clothing/suit/bluetag/sub - name = "Brigader Armor" - desc = "Repilca rmor commonly worn by Spacer Union Brigade members from the hit series Spacer Trail. Modified for Laser Tag (Blue Team)." - icon_state = "bluetag2" - -/obj/item/clothing/suit/redtag - name = "red laser tag armor" - desc = "Reputed to go faster." - icon_state = "redtag" - item_state_slots = list(slot_r_hand_str = "tdred", slot_l_hand_str = "tdred") - blood_overlay_type = "armor" - body_parts_covered = UPPER_TORSO - allowed = list (/obj/item/weapon/gun/energy/lasertag/red) - siemens_coefficient = 3.0 - -/obj/item/clothing/suit/redtag/dom - name = "Mu'tu'bi Armor" - desc = "Repilca rmor commonly worn by Dominion Of Mu'tu'bi soldiers from the hit series Spacer Trail. Modified for Laser Tag (Red Team)." - icon_state = "redtag2" - -/* - * 80s - */ - -/obj/item/clothing/suit/storage/puffyblue - name = "blue puffy coat" - desc = "A stylish, shiny, very blue puffer coat." - icon_state = "puffycoatblue" - item_state = "puffycoatblue" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS - flags_inv = HIDEHOLSTER - cold_protection = UPPER_TORSO|LOWER_TORSO|ARMS|LEGS - min_cold_protection_temperature = SPACE_SUIT_MIN_COLD_PROTECTION_TEMPERATURE - siemens_coefficient = 0.7 - item_state_slots = list(slot_r_hand_str = "blue_labcoat", slot_l_hand_str = "blue_labcoat") - -/obj/item/clothing/suit/storage/puffypurple - name = "purple puffy coat" - desc = "A stylish, shiny, very purple puffer coat." - icon_state = "puffycoatpurple" - item_state = "puffycoatpurple" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS - flags_inv = HIDEHOLSTER - cold_protection = UPPER_TORSO|LOWER_TORSO|ARMS|LEGS - min_cold_protection_temperature = SPACE_SUIT_MIN_COLD_PROTECTION_TEMPERATURE - siemens_coefficient = 0.7 - item_state_slots = list(slot_r_hand_str = "purple_labcoat", slot_l_hand_str = "purple_labcoat") - -/obj/item/clothing/suit/storage/puffyred - name = "crimson puffy coat" - desc = "A stylish, shiny, very crimson puffer coat." - icon_state = "puffycoatred" - item_state = "puffycoatred" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS - flags_inv = HIDEHOLSTER - cold_protection = UPPER_TORSO|LOWER_TORSO|ARMS|LEGS - min_cold_protection_temperature = SPACE_SUIT_MIN_COLD_PROTECTION_TEMPERATURE - siemens_coefficient = 0.7 - item_state_slots = list(slot_r_hand_str = "red_labcoat", slot_l_hand_str = "red_labcoat") - -/* - * Costume - */ - -/obj/item/clothing/suit/pirate - name = "pirate coat" - desc = "Yarr." - icon_state = "pirate" - item_state_slots = list(slot_r_hand_str = "greatcoat", slot_l_hand_str = "greatcoat") - body_parts_covered = UPPER_TORSO|ARMS - -/obj/item/clothing/suit/poncho - name = "poncho" - desc = "A simple, comfortable poncho." - icon = 'icons/inventory/suit/mob.dmi' - icon_state = "poncho" - item_state = "poncho" - item_icons = list( - slot_l_hand_str = 'icons/mob/items/lefthand_vr.dmi', - slot_r_hand_str = 'icons/mob/items/righthand_vr.dmi', - ) - body_parts_covered = UPPER_TORSO|ARMS - -/obj/item/clothing/suit/hgpirate - name = "pirate captain coat" - desc = "Yarr." - icon_state = "hgpirate" - item_state_slots = list(slot_r_hand_str = "greatcoat", slot_l_hand_str = "greatcoat") - flags_inv = HIDEJUMPSUIT - body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS|LEGS - -/obj/item/clothing/suit/cyborg_suit - name = "cyborg suit" - desc = "Suit for a cyborg costume." - icon_state = "death" - fire_resist = T0C+5200 - flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT|HIDETIE|HIDEHOLSTER - -/obj/item/clothing/suit/greatcoat - name = "great coat" - desc = "A heavy great coat" - icon_state = "gentlecoat" - item_state_slots = list(slot_r_hand_str = "greatcoat", slot_l_hand_str = "greatcoat") - flags_inv = HIDEHOLSTER - -/obj/item/clothing/suit/johnny_coat - name = "johnny~~ coat" - desc = "Johnny~~" - icon_state = "gentlecoat" - item_state_slots = list(slot_r_hand_str = "johnny_coat", slot_l_hand_str = "johnny_coat") - flags_inv = HIDEHOLSTER - -/obj/item/clothing/suit/justice - name = "justice suit" - desc = "This pretty much looks ridiculous." - icon_state = "gentle_coat" - item_state_slots = list(slot_r_hand_str = "greatcoat", slot_l_hand_str = "greatcoat") - flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT|HIDETIE|HIDEHOLSTER - body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS|HANDS|LEGS|FEET - -/obj/item/clothing/suit/judgerobe - name = "judge's robe" - desc = "This robe commands authority." - icon_state = "judge" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS - allowed = list(/obj/item/weapon/storage/fancy/cigarettes,/obj/item/weapon/spacecash) - flags_inv = HIDEJUMPSUIT|HIDETIE|HIDEHOLSTER - -/obj/item/clothing/suit/storage/apron/overalls - name = "coveralls" - desc = "A set of denim overalls." - icon_state = "overalls" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS - -/obj/item/clothing/suit/syndicatefake - name = "red space suit replica" - icon_state = "syndicate" - desc = "A plastic replica of the syndicate space suit, you'll look just like a real murderous syndicate agent in this! This is a toy, it is not made for use in space!" - w_class = ITEMSIZE_NORMAL - allowed = list(/obj/item/device/flashlight,/obj/item/weapon/tank/emergency/oxygen,/obj/item/toy) - flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT|HIDETAIL|HIDETIE|HIDEHOLSTER - body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS|HANDS|LEGS|FEET - -/obj/item/clothing/suit/hastur - name = "Hastur's Robes" - desc = "Robes not meant to be worn by man" - icon_state = "hastur" - item_state_slots = list(slot_r_hand_str = "rad", slot_l_hand_str = "rad") - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS - flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT|HIDETIE|HIDEHOLSTER - -/obj/item/clothing/suit/imperium_monk - name = "Imperium monk" - desc = "Have YOU killed a xenos today?" - icon_state = "imperium_monk" - body_parts_covered = HEAD|UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS - flags_inv = HIDESHOES|HIDEJUMPSUIT|HIDETIE|HIDEHOLSTER - -/obj/item/clothing/suit/chickensuit - name = "Chicken Suit" - desc = "A suit made long ago by the ancient empire KFC." - icon_state = "chickensuit" - body_parts_covered = UPPER_TORSO|ARMS|LOWER_TORSO|LEGS|FEET - flags_inv = HIDESHOES|HIDEJUMPSUIT|HIDETIE|HIDEHOLSTER - siemens_coefficient = 2.0 - -/obj/item/clothing/suit/monkeysuit - name = "Monkey Suit" - desc = "A suit that looks like a primate" - icon_state = "monkeysuit" - item_state_slots = list(slot_r_hand_str = "brown_jacket", slot_l_hand_str = "brown_jacket") - body_parts_covered = UPPER_TORSO|ARMS|LOWER_TORSO|LEGS|FEET|HANDS - flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT|HIDETIE|HIDEHOLSTER - siemens_coefficient = 2.0 - -/obj/item/clothing/suit/holidaypriest - name = "Holiday Priest" - desc = "This is a nice holiday my son." - icon_state = "holidaypriest" - item_state_slots = list(slot_r_hand_str = "labcoat", slot_l_hand_str = "labcoat") - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS - flags_inv = HIDEJUMPSUIT|HIDETIE|HIDEHOLSTER - -/obj/item/clothing/suit/cardborg - name = "cardborg suit" - desc = "An ordinary cardboard box with holes cut in the sides." - icon_state = "cardborg" - body_parts_covered = UPPER_TORSO|LOWER_TORSO - flags_inv = HIDEJUMPSUIT|HIDETIE|HIDEHOLSTER - -/obj/item/clothing/suit/skeleton - name = "skeleton costume" - desc = "A body-tight costume with the human skeleton lined out on it." - icon_state = "skelecost" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS|FEET|HANDS|EYES|HEAD|FACE - flags_inv = HIDEJUMPSUIT|HIDESHOES|HIDEGLOVES|HIDETIE|HIDEHOLSTER - item_state_slots = list(slot_r_hand_str = "judge", slot_l_hand_str = "judge") - -/obj/item/clothing/suit/engicost - name = "sexy engineering voidsuit costume" - desc = "It's supposed to look like an engineering voidsuit... It doesn't look like it could protect from much radiation." - icon_state = "engicost" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|FEET - flags_inv = HIDEJUMPSUIT|HIDESHOES|HIDETIE|HIDEHOLSTER - item_state_slots = list(slot_r_hand_str = "eng_voidsuit", slot_l_hand_str = "eng_voidsuit") - -/obj/item/clothing/suit/maxman - name = "doctor maxman costume" - desc = "A costume made to look like Dr. Maxman, the famous male-enhancement salesman. Complete with red do-rag and sleeveless labcoat." - icon_state = "maxman" - body_parts_covered = LOWER_TORSO|FEET|LEGS|HEAD - flags_inv = HIDEJUMPSUIT|HIDESHOES|HIDETIE|HIDEHOLSTER - item_state_slots = list(slot_r_hand_str = "leather_jacket", slot_l_hand_str = "leather_jacket") - -/obj/item/clothing/suit/iasexy - name = "sexy internal affairs suit" - desc = "Now where's your pen?~" - icon_state = "iacost" - body_parts_covered = UPPER_TORSO|FEET|LOWER_TORSO|EYES - flags_inv = HIDEJUMPSUIT|HIDESHOES|HIDETIE|HIDEHOLSTER - item_state_slots = list(slot_r_hand_str = "suit_black", slot_l_hand_str = "suit_black") - -/obj/item/clothing/suit/sexyminer - name = "sexy miner costume" - desc = "For when you need to get your rocks off." - icon_state = "sexyminer" - body_parts_covered = FEET|LOWER_TORSO|HEAD - flags_inv = HIDEJUMPSUIT|HIDESHOES|HIDETIE|HIDEHOLSTER - item_state_slots = list(slot_r_hand_str = "miner", slot_l_hand_str = "miner") - -/obj/item/clothing/suit/sumo - name = "inflatable sumo wrestler costume" - desc = "An inflated sumo wrestler costume. It's quite hot." - icon_state = "sumo" - body_parts_covered = FEET|LOWER_TORSO|UPPER_TORSO|LEGS|ARMS - flags_inv = HIDESHOES|HIDEJUMPSUIT|HIDETIE|HIDEHOLSTER - item_state_slots = list(slot_r_hand_str = "classicponcho", slot_l_hand_str = "classicponcho") - min_cold_protection_temperature = SPACE_SUIT_MIN_COLD_PROTECTION_TEMPERATURE - -/obj/item/clothing/suit/hackercost - name = "classic hacker costume" - desc = "You would feel insanely cool wearing this." - icon_state = "hackercost" - body_parts_covered = FEET|LOWER_TORSO|UPPER_TORSO|LEGS|ARMS|EYES - flags_inv = HIDESHOES|HIDEJUMPSUIT|HIDETIE|HIDEHOLSTER - item_state_slots = list(slot_r_hand_str = "leather_coat", slot_l_hand_str = "leather_coat") - -/obj/item/clothing/suit/lumber - name = "sexy lumberjack costume" - desc = "Smells of dusky pine. Includes chest hair and beard." - icon_state = "sexylumber" - body_parts_covered = FEET|LOWER_TORSO|FEET - flags_inv = HIDESHOES|HIDEJUMPSUIT|HIDETIE|HIDEHOLSTER - item_state_slots = list(slot_r_hand_str = "red_labcoat", slot_l_hand_str = "red_labcoat") - -/* - * Misc - */ - -/obj/item/clothing/suit/straight_jacket - name = "straight jacket" - desc = "A suit that completely restrains the wearer." - icon_state = "straight_jacket" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS - flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT|HIDETAIL|HIDETIE|HIDEHOLSTER - //yw edit - Teshari sprite - sprite_sheets = list( - SPECIES_TESHARI = 'icons/vore/custom_onmob_yw.dmi' - ) - //yw edit end - - var/resist_time = 4800 // Eight minutes. - -/obj/item/clothing/suit/straight_jacket/attack_hand(mob/living/user as mob) - if(ishuman(user)) - var/mob/living/carbon/human/H = user - if(src == H.wear_suit) - to_chat(H, "You need help taking this off!") - return - ..() - -/obj/item/clothing/suit/straight_jacket/equipped(var/mob/living/user,var/slot) - . = ..() - if(slot == slot_wear_suit) - user.drop_l_hand() - user.drop_r_hand() - if(ishuman(user)) - var/mob/living/carbon/human/H = user - H.drop_from_inventory(H.handcuffed) - -/obj/item/clothing/suit/ianshirt - name = "worn shirt" - desc = "A worn out, curiously comfortable t-shirt with a picture of Ian. You wouldn't go so far as to say it feels like being hugged when you wear it but it's pretty close. Good for sleeping in." - icon_state = "ianshirt" - item_state_slots = list(slot_r_hand_str = "labcoat", slot_l_hand_str = "labcoat") //placeholder -S2- - body_parts_covered = UPPER_TORSO|ARMS - flags_inv = HIDETIE|HIDEHOLSTER - -/* - * Kimonos - */ - -/obj/item/clothing/suit/kimono - name = "traditional kimono" - desc = "A traditional Japanese kimono." - icon_state = "kimono" - addblends = "kimono_a" - -/obj/item/clothing/suit/kamishimo - name = "traditional kamishimo" - desc = "Traditional Japanese menswear." - icon_state = "kamishimo" - addblends = "kamishimo_a" - -/obj/item/clothing/suit/kimono/red - name = "red kimono" - icon_state = "kimono_red" - -/obj/item/clothing/suit/kimono/orange - name = "orange kimono" - icon_state = "kimono_orange" - -/obj/item/clothing/suit/kimono/yellow - name = "yellow kimono" - icon_state = "kimono_yellow" - -/obj/item/clothing/suit/kimono/green - name = "green kimono" - icon_state = "kimono_green" - -/obj/item/clothing/suit/kimono/blue - name = "blue kimono" - icon_state = "kimono_blue" - -/obj/item/clothing/suit/kimono/purple - name = "purple kimono" - icon_state = "kimono_purple" - -/obj/item/clothing/suit/kimono/violet - name = "violet kimono" - icon_state = "kimono_violet" - -/obj/item/clothing/suit/kimono/pink - name = "pink kimono" - icon_state = "kimono_pink" - -/obj/item/clothing/suit/kimono/earth - name = "earth kimono" - icon_state = "kimono_earth" - -/* - * Coats - */ - -/obj/item/clothing/suit/leathercoat - name = "leather coat" - desc = "A long, thick black leather coat." - icon_state = "leathercoat_alt" - allowed = list (/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) - item_state_slots = list(slot_r_hand_str = "leather_jacket", slot_l_hand_str = "leather_jacket") - flags_inv = HIDEHOLSTER - -/obj/item/clothing/suit/leathercoat/sec - name = "leather coat" - desc = "A long, thick black leather coat." - icon_state = "leathercoat_sec" - item_state_slots = list(slot_r_hand_str = "leather_jacket", slot_l_hand_str = "leather_jacket") - flags_inv = HIDEHOLSTER - -/obj/item/clothing/suit/browncoat - name = "brown leather coat" - desc = "A long, brown leather coat." - icon_state = "browncoat" - allowed = list (/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) - item_state_slots = list(slot_r_hand_str = "brown_jacket", slot_l_hand_str = "brown_jacket") - flags_inv = HIDEHOLSTER - -/obj/item/clothing/suit/neocoat - name = "black coat" - desc = "A flowing, black coat." - icon_state = "neocoat" - allowed = list (/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) - item_state_slots = list(slot_r_hand_str = "leather_jacket", slot_l_hand_str = "leather_jacket") - flags_inv = HIDEHOLSTER - -/obj/item/clothing/suit/customs - name = "customs jacket" - desc = "A standard SolGov Customs formal jacket." - icon_state = "customs_jacket" - item_state_slots = list(slot_r_hand_str = "suit_blue", slot_l_hand_str = "suit_blue") - flags_inv = HIDEHOLSTER - -/obj/item/clothing/suit/storage/greyjacket - name = "grey jacket" - desc = "A fancy twead grey jacket." - icon_state = "gentlecoat" - item_state_slots = list(slot_r_hand_str = "leather_jacket", slot_l_hand_str = "leather_jacket") - flags_inv = HIDEHOLSTER - -/obj/item/clothing/suit/storage/trench - name = "brown trenchcoat" - desc = "A rugged canvas trenchcoat, designed and created by TX Fabrication Corp. The coat appears to have its kevlar lining removed." - icon_state = "detective" - blood_overlay_type = "coat" - allowed = list(/obj/item/weapon/tank/emergency/oxygen, /obj/item/device/flashlight,/obj/item/weapon/gun/energy,/obj/item/weapon/gun/projectile,/obj/item/ammo_magazine,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/handcuffs,/obj/item/weapon/storage/fancy/cigarettes,/obj/item/weapon/flame/lighter,/obj/item/device/taperecorder,/obj/item/device/uv_light) - flags_inv = HIDEHOLSTER - -/obj/item/clothing/suit/storage/trench/grey - name = "grey trenchcoat" - icon_state = "detective2" - item_state_slots = list(slot_r_hand_str = "leather_jacket", slot_l_hand_str = "leather_jacket") - flags_inv = HIDEHOLSTER - -/obj/item/clothing/suit/storage/toggle/peacoat - name = "peacoat" - desc = "A well-tailored, stylish peacoat." - icon_state = "peacoat" - addblends = "peacoat_a" - item_state_slots = list(slot_r_hand_str = "peacoat", slot_l_hand_str = "peacoat") - flags_inv = HIDEHOLSTER - -/obj/item/clothing/suit/storage/duster - name = "duster" - desc = "A duster is a light, loose-fitting long coat. Dusters are meant to protect your clothing from dust and rain." - icon_state = "duster" - blood_overlay_type = "coat" - allowed = list(/obj/item/weapon/tank/emergency/oxygen, /obj/item/device/flashlight,/obj/item/weapon/gun/energy,/obj/item/weapon/gun/projectile,/obj/item/ammo_magazine,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/handcuffs,/obj/item/weapon/storage/fancy/cigarettes,/obj/item/weapon/flame/lighter) - flags_inv = HIDEHOLSTER - -/obj/item/clothing/suit/storage/toggle/cardigan - name = "cardigan" - desc = "A cozy cardigan in a classic style." - icon_state = "cardigan" - addblends = "cardigan_a" - flags_inv = HIDEHOLSTER - -/* - * stripper - */ -/obj/item/clothing/suit/stripper/stripper_pink - name = "pink skimpy dress" - desc = "A rather skimpy pink dress." - icon_state = "stripper_p_over" - item_state_slots = list(slot_r_hand_str = "pink_labcoat", slot_l_hand_str = "pink_labcoat") - siemens_coefficient = 1 - -/obj/item/clothing/suit/stripper/stripper_green - name = "green skimpy dress" - desc = "A rather skimpy green dress." - icon_state = "stripper_g_over" - item_state_slots = list(slot_r_hand_str = "green_labcoat", slot_l_hand_str = "green_labcoat") - siemens_coefficient = 1 - -/obj/item/clothing/suit/xenos - name = "xenos suit" - desc = "A suit made out of chitinous alien hide." - icon_state = "xenos" - item_state_slots = list(slot_r_hand_str = "black_suit", slot_l_hand_str = "black_suit") - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS - flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT|HIDETIE|HIDEHOLSTER - siemens_coefficient = 2.0 - -/obj/item/clothing/suit/jacket/puffer - name = "puffer jacket" - desc = "A thick jacket with a rubbery, water-resistant shell." - icon_state = "pufferjacket" - item_state_slots = list(slot_r_hand_str = "chainmail", slot_l_hand_str = "chainmail") - body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS - cold_protection = UPPER_TORSO|LOWER_TORSO|ARMS - min_cold_protection_temperature = SPACE_SUIT_MIN_COLD_PROTECTION_TEMPERATURE - flags_inv = HIDEHOLSTER - -/obj/item/clothing/suit/jacket/puffer/vest - name = "puffer vest" - desc = "A thick vest with a rubbery, water-resistant shell." - icon_state = "puffervest" - item_state_slots = list(slot_r_hand_str = "chainmail", slot_l_hand_str = "chainmail") - body_parts_covered = UPPER_TORSO|LOWER_TORSO - cold_protection = UPPER_TORSO|LOWER_TORSO - -//YW EDIT BEGINS -/obj/item/clothing/suit/storage/miljacket - name = "military jacket" - desc = "A canvas jacket styled after classical American military garb. Feels sturdy, yet comfortable. This one's in the vintage olive drab." - icon_state = "militaryjacket_nobadge" - item_state_slots = list(slot_r_hand_str = "suit_olive", slot_l_hand_str = "suit_olive") - flags_inv = HIDEHOLSTER - -/obj/item/clothing/suit/storage/miljacket/alt - name = "military jacket, alternate" - desc = "A canvas jacket styled after classical American military garb. Feels sturdy, yet comfortable. This one has some extra badges on it." - icon_state = "militaryjacket_badge" - item_state_slots = list(slot_r_hand_str = "suit_olive", slot_l_hand_str = "suit_olive") - flags_inv = HIDEHOLSTER - -/obj/item/clothing/suit/storage/miljacket/green - name = "green military jacket" - desc = "A dark but rather high-saturation green canvas jacket. Feels sturdy, yet comfortable." - icon_state = "militaryjacket_green" - item_state_slots = list(slot_r_hand_str = "suit_olive", slot_l_hand_str = "suit_olive") - flags_inv = HIDEHOLSTER - -/obj/item/clothing/suit/storage/miljacket/tan - name = "tan military jacket" - desc = "A canvas jacket styled after classical American military garb. Feels sturdy, yet comfortable. Now in sandy tans for desert fans." - icon_state = "militaryjacket_tan" - item_state_slots = list(slot_r_hand_str = "suit_orange", slot_l_hand_str = "suit_orange") - flags_inv = HIDEHOLSTER - -/obj/item/clothing/suit/storage/miljacket/grey - name = "grey military jacket" - desc = "A canvas jacket styled after classical American military garb. Feels sturdy, yet comfortable. This one's in urban grey." - icon_state = "militaryjacket_grey" - item_state_slots = list(slot_r_hand_str = "suit_grey", slot_l_hand_str = "suit_grey") - flags_inv = HIDEHOLSTER - -/obj/item/clothing/suit/storage/miljacket/navy - name = "navy military jacket" - desc = "A canvas jacket styled after classical American military garb. Feels sturdy, yet comfortable. Dark navy, this one is." - icon_state = "militaryjacket_navy" - item_state_slots = list(slot_r_hand_str = "suit_navy", slot_l_hand_str = "suit_navy") - flags_inv = HIDEHOLSTER - -/obj/item/clothing/suit/storage/miljacket/black - name = "black military jacket" - desc = "A canvas jacket styled after classical American military garb. Feels sturdy, yet comfortable. Now in tactical black." - icon_state = "militaryjacket_black" - item_state_slots = list(slot_r_hand_str = "suit_black", slot_l_hand_str = "suit_black") - flags_inv = HIDEHOLSTER - -/obj/item/clothing/suit/storage/miljacket/white - name = "white military jacket" - desc = "A white canvas jacket. Don't wear this for walks in the snow, it won't keep you warm - it'll just make it harder to find your frozen corpse." - icon_state = "militaryjacket_white" - item_state_slots = list(slot_r_hand_str = "med_dep_jacket", slot_l_hand_str = "med_dep_jacket") - flags_inv = HIDEHOLSTER - -/obj/item/clothing/suit/storage/toggle/bomber - name = "bomber jacket" - desc = "A thick, well-worn WW2 leather bomber jacket." - icon_state = "bomber" - item_state_slots = list(slot_r_hand_str = "brown_jacket", slot_l_hand_str = "brown_jacket") - allowed = list (/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) - body_parts_covered = UPPER_TORSO|ARMS - flags_inv = HIDEHOLSTER - cold_protection = UPPER_TORSO|ARMS - min_cold_protection_temperature = T0C - 20 - siemens_coefficient = 0.7 - -/obj/item/clothing/suit/storage/toggle/bomber/retro - name = "retro bomber jacket" - desc = "A retro style, fur-lined leather bomber jacket that invokes the early days of space exploration when spacemen were spacemen, and laser guns had funny little antennae on them." - icon_state = "retrojacket" - -/obj/item/clothing/suit/storage/bomber/alt - name = "bomber jacket" - desc = "A thick, well-worn WW2 leather bomber jacket." - icon_state = "bomberjacket_new" - item_state_slots = list(slot_r_hand_str = "brown_jacket", slot_l_hand_str = "brown_jacket") - body_parts_covered = UPPER_TORSO|ARMS - flags_inv = HIDEHOLSTER - cold_protection = UPPER_TORSO|ARMS - min_cold_protection_temperature = T0C - 20 - siemens_coefficient = 0.7 - -/obj/item/clothing/suit/storage/toggle/leather_jacket - name = "leather jacket" - desc = "A black leather coat." - icon_state = "leather_jacket" - allowed = list (/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) - body_parts_covered = UPPER_TORSO|ARMS - flags_inv = HIDEHOLSTER - -/obj/item/clothing/suit/storage/toggle/leather_jacket/sleeveless - name = "leather vest" - desc = "A black leather vest." - icon_state = "leather_jacket_sleeveless" - body_parts_covered = UPPER_TORSO - item_state_slots = list(slot_r_hand_str = "leather_jacket", slot_l_hand_str = "leather_jacket") - -/obj/item/clothing/suit/storage/leather_jacket_alt - name = "leather vest" - desc = "A black leather vest." - icon_state = "leather_jacket_alt" - item_state_slots = list(slot_r_hand_str = "leather_jacket", slot_l_hand_str = "leather_jacket") - body_parts_covered = UPPER_TORSO|ARMS - -/obj/item/clothing/suit/storage/toggle/leather_jacket/nanotrasen - desc = "A black leather coat. A corporate logo is proudly displayed on the back." - icon_state = "leather_jacket_nt" - item_state_slots = list(slot_r_hand_str = "leather_jacket", slot_l_hand_str = "leather_jacket") - -/obj/item/clothing/suit/storage/toggle/leather_jacket/nanotrasen/sleeveless - name = "leather vest" - desc = "A black leather vest. A corporate logo is proudly displayed on the back." - icon_state = "leather_jacket_nt_sleeveless" - body_parts_covered = UPPER_TORSO - item_state_slots = list(slot_r_hand_str = "leather_jacket", slot_l_hand_str = "leather_jacket") - -//This one has buttons for some reason -/obj/item/clothing/suit/storage/toggle/brown_jacket - name = "brown jacket" - desc = "A brown leather coat." - icon_state = "brown_jacket" - item_state_slots = list(slot_r_hand_str = "brown_jacket", slot_l_hand_str = "brown_jacket") - allowed = list (/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) - body_parts_covered = UPPER_TORSO|ARMS - flags_inv = HIDEHOLSTER - -/obj/item/clothing/suit/storage/toggle/brown_jacket/sleeveless - name = "brown vest" - desc = "A brown leather vest." - icon_state = "brown_jacket_sleeveless" - body_parts_covered = UPPER_TORSO - item_state_slots = list(slot_r_hand_str = "brown_jacket", slot_l_hand_str = "brown_jacket") - -/obj/item/clothing/suit/storage/toggle/brown_jacket/nanotrasen - desc = "A brown leather coat. A corporate logo is proudly displayed on the back." - icon_state = "brown_jacket_nt" - item_state_slots = list(slot_r_hand_str = "brown_jacket", slot_l_hand_str = "brown_jacket") - -/obj/item/clothing/suit/storage/toggle/brown_jacket/nanotrasen/sleeveless - name = "brown vest" - desc = "A brown leather vest. A corporate logo is proudly displayed on the back." - icon_state = "brown_jacket_nt_sleeveless" - body_parts_covered = UPPER_TORSO - item_state_slots = list(slot_r_hand_str = "brown_jacket", slot_l_hand_str = "brown_jacket") - -/obj/item/clothing/suit/storage/toggle/denim_jacket - name = "denim jacket" - desc = "A denim coat." - icon_state = "denim_jacket" - item_state_slots = list(slot_r_hand_str = "denim_jacket", slot_l_hand_str = "denim_jacket") - allowed = list (/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) - body_parts_covered = UPPER_TORSO|ARMS - flags_inv = HIDEHOLSTER - -/obj/item/clothing/suit/storage/toggle/denim_jacket/sleeveless - name = "denim vest" - desc = "A denim vest." - icon_state = "denim_jacket_sleeveless" - body_parts_covered = UPPER_TORSO - item_state_slots = list(slot_r_hand_str = "denim_jacket", slot_l_hand_str = "denim_jacket") - -/obj/item/clothing/suit/storage/toggle/denim_jacket/nanotrasen - desc = "A denim coat. A corporate logo is proudly displayed on the back." - icon_state = "denim_jacket_nt" - item_state_slots = list(slot_r_hand_str = "denim_jacket", slot_l_hand_str = "denim_jacket") - -/obj/item/clothing/suit/storage/toggle/denim_jacket/nanotrasen/sleeveless - name = "denim vest" - desc = "A denim vest. A corporate logo is proudly displayed on the back." - icon_state = "denim_jacket_nt_sleeveless" - body_parts_covered = UPPER_TORSO - item_state_slots = list(slot_r_hand_str = "denim_jacket", slot_l_hand_str = "denim_jacket") - -/obj/item/clothing/suit/storage/toggle/hoodie - name = "grey hoodie" - desc = "A warm, grey sweatshirt." - icon_state = "grey_hoodie" - item_state_slots = list(slot_r_hand_str = "suit_grey", slot_l_hand_str = "suit_grey") - min_cold_protection_temperature = T0C - 20 - cold_protection = UPPER_TORSO|LOWER_TORSO|ARMS - flags_inv = HIDEHOLSTER - -/obj/item/clothing/suit/storage/toggle/hoodie/black - name = "black hoodie" - desc = "A warm, black sweatshirt." - icon_state = "black_hoodie" - item_state_slots = list(slot_r_hand_str = "suit_black", slot_l_hand_str = "suit_black") - -/obj/item/clothing/suit/storage/toggle/hoodie/red - name = "red hoodie" - desc = "A warm, red sweatshirt." - icon_state = "red_hoodie" - item_state_slots = list(slot_r_hand_str = "suit_red", slot_l_hand_str = "suit_red") - -/obj/item/clothing/suit/storage/toggle/hoodie/blue - name = "blue hoodie" - desc = "A warm, blue sweatshirt." - icon_state = "blue_hoodie" - item_state_slots = list(slot_r_hand_str = "suit_blue", slot_l_hand_str = "suit_blue") - -/obj/item/clothing/suit/storage/toggle/hoodie/green - name = "green hoodie" - desc = "A warm, green sweatshirt." - icon_state = "green_hoodie" - item_state_slots = list(slot_r_hand_str = "suit_olive", slot_l_hand_str = "suit_olive") - -/obj/item/clothing/suit/storage/toggle/hoodie/orange - name = "orange hoodie" - desc = "A warm, orange sweatshirt." - icon_state = "orange_hoodie" - item_state_slots = list(slot_r_hand_str = "suit_orange", slot_l_hand_str = "suit_orange") - -/obj/item/clothing/suit/storage/toggle/hoodie/yellow - name = "yellow hoodie" - desc = "A warm, yellow sweatshirt." - icon_state = "yellow_hoodie" - item_state_slots = list(slot_r_hand_str = "suit_yellow", slot_l_hand_str = "suit_yellow") - -/obj/item/clothing/suit/storage/toggle/hoodie/cti - name = "CTI hoodie" - desc = "A warm, black sweatshirt. It bears the letters ‘CTI’ on the back, a lettering to the prestigious university in Tau Ceti, Ceti Technical Institute. There is a blue supernova embroidered on the front, the emblem of CTI." - icon_state = "cti_hoodie" - item_state_slots = list(slot_r_hand_str = "suit_black", slot_l_hand_str = "suit_black") - -/obj/item/clothing/suit/storage/toggle/hoodie/mu - name = "mojave university hoodie" - desc = "A warm, gray sweatshirt. It bears the letters ‘MU’ on the front, a lettering to the well-known public college, Mojave University." - icon_state = "mu_hoodie" - item_state_slots = list(slot_r_hand_str = "suit_grey", slot_l_hand_str = "suit_grey") - -/obj/item/clothing/suit/storage/toggle/hoodie/nt - name = "NT hoodie" - desc = "A warm, blue sweatshirt. It proudly bears the silver NanoTrasen insignia lettering on the back. The edges are trimmed with silver." - icon_state = "nt_hoodie" - item_state_slots = list(slot_r_hand_str = "suit_blue", slot_l_hand_str = "suit_blue") - -/obj/item/clothing/suit/storage/toggle/hoodie/smw - name = "Space Mountain Wind hoodie" - desc = "A warm, black sweatshirt. It has the logo for the popular softdrink Space Mountain Wind on both the front and the back." - icon_state = "smw_hoodie" - item_state_slots = list(slot_r_hand_str = "suit_black", slot_l_hand_str = "suit_black") - -/obj/item/clothing/suit/storage/toggle/hoodie/nrti - name = "New Reykjavik Technical Institute hoodie" - desc = "A warm, gray sweatshirt. It bears the letters ‘NRT’ on the back, in reference to Sif's premiere technical institute." - icon_state = "nrti_hoodie" - item_state_slots = list(slot_r_hand_str = "suit_grey", slot_l_hand_str = "suit_grey") - -/obj/item/clothing/suit/whitedress - name = "white dress" - desc = "A fancy dress." - icon_state = "white_dress" - item_state_slots = list(slot_r_hand_str = "white_dress", slot_l_hand_str = "white_dress") - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS - flags_inv = HIDEJUMPSUIT|HIDETIE|HIDEHOLSTER - -/obj/item/clothing/suit/varsity - name = "black varsity jacket" - desc = "A favorite of jocks everywhere from Sol to Nyx." - icon_state = "varsity" - allowed = list (/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) - item_state_slots = list(slot_r_hand_str = "suit_black", slot_l_hand_str = "suit_black") - flags_inv = HIDETIE|HIDEHOLSTER - -/obj/item/clothing/suit/varsity/red - name = "red varsity jacket" - icon_state = "varsity_red" - -/obj/item/clothing/suit/varsity/purple - name = "purple varsity jacket" - icon_state = "varsity_purple" - -/obj/item/clothing/suit/varsity/green - name = "green varsity jacket" - icon_state = "varsity_green" - -/obj/item/clothing/suit/varsity/blue - name = "blue varsity jacket" - icon_state = "varsity_blue" - -/obj/item/clothing/suit/varsity/brown - name = "brown varsity jacket" - icon_state = "varsity_brown" - -/* - * Department Jackets - */ -/obj/item/clothing/suit/storage/toggle/sec_dep_jacket - name = "department jacket, security" - desc = "A cozy jacket in security's colors. Show your department pride!" - icon_state = "sec_dep_jacket" - item_state_slots = list(slot_r_hand_str = "sec_dep_jacket", slot_l_hand_str = "sec_dep_jacket") - flags_inv = HIDEHOLSTER - -/obj/item/clothing/suit/storage/toggle/engi_dep_jacket - name = "department jacket, engineering" - desc = "A cozy jacket in engineering's colors. Show your department pride!" - icon_state = "engi_dep_jacket" - item_state_slots = list(slot_r_hand_str = "engi_dep_jacket", slot_l_hand_str = "engi_dep_jacket") - flags_inv = HIDEHOLSTER - -/obj/item/clothing/suit/storage/toggle/supply_dep_jacket - name = "department jacket, supply" - desc = "A cozy jacket in supply's colors. Show your department pride!" - icon_state = "supply_dep_jacket" - item_state_slots = list(slot_r_hand_str = "supply_dep_jacket", slot_l_hand_str = "supply_dep_jacket") - flags_inv = HIDEHOLSTER - -/obj/item/clothing/suit/storage/toggle/sci_dep_jacket - name = "department jacket, science" - desc = "A cozy jacket in science's colors. Show your department pride!" - icon_state = "sci_dep_jacket" - item_state_slots = list(slot_r_hand_str = "sci_dep_jacket", slot_l_hand_str = "sci_dep_jacket") - flags_inv = HIDEHOLSTER - -/obj/item/clothing/suit/storage/toggle/med_dep_jacket - name = "department jacket, medical" - desc = "A cozy jacket in medical's colors. Show your department pride!" - icon_state = "med_dep_jacket" - item_state_slots = list(slot_r_hand_str = "med_dep_jacket", slot_l_hand_str = "med_dep_jacket") - flags_inv = HIDEHOLSTER - -/obj/item/clothing/suit/storage/toggle/light_jacket - name = "grey light jacket" - desc = "A light, cozy jacket. Now in grey." - icon_state = "grey_dep_jacket" - item_state_slots = list(slot_r_hand_str = "grey_dep_jacket", slot_l_hand_str = "grey_dep_jacket") - flags_inv = HIDEHOLSTER - -/obj/item/clothing/suit/storage/toggle/light_jacket/blue - name = "dark blue light jacket" - desc = "A light, cozy jacket. Now in dark blue." - icon_state = "blue_dep_jacket" - item_state_slots = list(slot_r_hand_str = "blue_dep_jacket", slot_l_hand_str = "blue_dep_jacket") - -/* - * Track Jackets - */ -/obj/item/clothing/suit/storage/toggle/track - name = "track jacket" - desc = "A track jacket, for the athletic." - icon_state = "trackjacket" - item_state_slots = list(slot_r_hand_str = "black_labcoat", slot_l_hand_str = "black_labcoat") - allowed = list (/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/clothing/suit/storage/toggle/track/blue - name = "blue track jacket" - icon_state = "trackjacketblue" - item_state_slots = list(slot_r_hand_str = "blue_labcoat", slot_l_hand_str = "blue_labcoat") - - -/obj/item/clothing/suit/storage/toggle/track/green - name = "green track jacket" - icon_state = "trackjacketgreen" - item_state_slots = list(slot_r_hand_str = "green_labcoat", slot_l_hand_str = "green_labcoat") - -/obj/item/clothing/suit/storage/toggle/track/red - name = "red track jacket" - icon_state = "trackjacketred" - item_state_slots = list(slot_r_hand_str = "red_labcoat", slot_l_hand_str = "red_labcoat") - -/obj/item/clothing/suit/storage/toggle/track/white - name = "white track jacket" - icon_state = "trackjacketwhite" - item_state_slots = list(slot_r_hand_str = "labcoat", slot_l_hand_str = "labcoat") - -//Flannels - -/obj/item/clothing/suit/storage/flannel - name = "Flannel shirt" - desc = "A comfy, grey flannel shirt. Unleash your inner hipster." - icon_state = "flannel" - item_state_slots = list(slot_r_hand_str = "black_labcoat", slot_l_hand_str = "black_labcoat") - allowed = list (/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) - flags_inv = HIDEHOLSTER - var/rolled = 0 - var/tucked = 0 - var/buttoned = 0 - -/obj/item/clothing/suit/storage/flannel/verb/roll_sleeves() - set name = "Roll Sleeves" - set category = "Object" - set src in usr - if(!istype(usr, /mob/living)) - return - if(usr.stat) - return - - if(rolled == 0) - rolled = 1 - body_parts_covered &= ~(ARMS) - to_chat(usr, "You roll up the sleeves of your [src].") - else - rolled = 0 - body_parts_covered = initial(body_parts_covered) - to_chat(usr, "You roll down the sleeves of your [src].") - update_icon() - -/obj/item/clothing/suit/storage/flannel/verb/tuck() - set name = "Toggle Shirt Tucking" - set category = "Object" - set src in usr - if(!istype(usr, /mob/living)||usr.stat) - return - - if(tucked == 0) - tucked = 1 - to_chat(usr, "You tuck in your your [src].") - else - tucked = 0 - to_chat(usr, "You untuck your [src].") - update_icon() - -/obj/item/clothing/suit/storage/flannel/verb/button() - set name = "Toggle Shirt Buttons" - set category = "Object" - set src in usr - if(!istype(usr, /mob/living)||usr.stat) - return - - if(buttoned == 0) - buttoned = 1 - flags_inv = HIDETIE|HIDEHOLSTER - to_chat(usr, "You button your [src].") - else - buttoned = 0 - flags_inv = HIDEHOLSTER - to_chat(usr, "You unbutton your [src].") - update_icon() - -/obj/item/clothing/suit/storage/flannel/update_icon() - icon_state = initial(icon_state) - if(rolled) - icon_state += "r" - if(tucked) - icon_state += "t" - if(buttoned) - icon_state += "b" - update_clothing_icon() - -/obj/item/clothing/suit/storage/flannel/red - desc = "A comfy, red flannel shirt. Unleash your inner hipster." - icon_state = "flannel_red" - item_state_slots = list(slot_r_hand_str = "red_labcoat", slot_l_hand_str = "red_labcoat") - -/obj/item/clothing/suit/storage/flannel/aqua - desc = "A comfy, aqua flannel shirt. Unleash your inner hipster." - icon_state = "flannel_aqua" - item_state_slots = list(slot_r_hand_str = "blue_labcoat", slot_l_hand_str = "blue_labcoat") - -/obj/item/clothing/suit/storage/flannel/brown - desc = "A comfy, brown flannel shirt. Unleash your inner hipster." - icon_state = "flannel_brown" - item_state_slots = list(slot_r_hand_str = "johnny", slot_l_hand_str = "johnny") - -//Green Uniform - -/obj/item/clothing/suit/storage/toggle/greengov - name = "green formal jacket" - desc = "A sleek proper formal jacket with gold buttons." - icon_state = "suitjacket_green" - item_state_slots = list(slot_r_hand_str = "suit_olive", slot_l_hand_str = "suit_olive") - blood_overlay_type = "coat" - body_parts_covered = UPPER_TORSO|ARMS - flags_inv = HIDEHOLSTER -/* // Replaced by hooded snowsuits - -/obj/item/clothing/suit/storage/snowsuit - name = "snowsuit" - desc = "A suit made to keep you nice and toasty on cold winter days. Or at least alive." - icon_state = "snowsuit" - item_state_slots = list(slot_r_hand_str = "labcoat", slot_l_hand_str = "labcoat") - body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS - flags_inv = HIDEHOLSTER - cold_protection = UPPER_TORSO|LOWER_TORSO|ARMS - min_cold_protection_temperature = SPACE_SUIT_MIN_COLD_PROTECTION_TEMPERATURE - armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 10, rad = 0) - allowed = list (/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/clothing/suit/storage/snowsuit/command - name = "command snowsuit" - icon_state = "snowsuit_command" - -/obj/item/clothing/suit/storage/snowsuit/security - name = "security snowsuit" - icon_state = "snowsuit_security" - -/obj/item/clothing/suit/storage/snowsuit/medical - name = "medical snowsuit" - icon_state = "snowsuit_medical" - -/obj/item/clothing/suit/storage/snowsuit/engineering - name = "engineering snowsuit" - icon_state = "snowsuit_engineering" - -/obj/item/clothing/suit/storage/snowsuit/cargo - name = "cargo snowsuit" - icon_state = "snowsuit_cargo" - -/obj/item/clothing/suit/storage/snowsuit/science - name = "science snowsuit" - icon_state = "snowsuit_science" -*/ - -/obj/item/clothing/suit/caution - name = "wet floor sign" - desc = "Caution! Wet Floor!" - description_fluff = "Used by the janitor to passive-aggressively point at when you eventually slip on one of their mopped floors." - description_info = "Alt-click, or click in-hand to toggle the caution lights. It looks like you can wear it in your suit slot." - icon_state = "caution" - drop_sound = 'sound/items/drop/shoes.ogg' - force = 1 - throwforce = 3 - throw_speed = 2 - throw_range = 5 - w_class = 2 - body_parts_covered = UPPER_TORSO|LOWER_TORSO - attack_verb = list("warned", "cautioned", "smashed") - armor = list("melee" = 5, "bullet" = 0, "laser" = 0,"energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 0, "acid" = 0) - -/obj/item/clothing/suit/caution/attack_self() - toggle() - -/obj/item/clothing/suit/caution/AltClick() - toggle() - -/obj/item/clothing/suit/caution/proc/toggle() - if(!usr || usr.stat || usr.lying || usr.restrained() || !Adjacent(usr)) return - else if(src.icon_state == "caution") - src.icon_state = "caution_blinking" - src.item_state = "caution_blinking" - usr.show_message("You turn the wet floor sign on.") - playsound(src.loc, 'sound/machines/button.ogg', 30, 1) - else - src.icon_state = "caution" - src.item_state = "caution" - usr.show_message("You turn the wet floor sign off.") - update_clothing_icon() - -//Ruin Marine (Doom Marine) -/obj/item/clothing/suit/marine - name = "marine armor" - desc = "A set of marine prop armor from the popular game 'Ruin'." - 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") +/* + * Contains: + * Lasertag + * Costume + * Misc + * Department Jackets + */ + +// -S2-note- Needs categorizing and sorting. + +/* + * Lasertag + */ + +/obj/item/clothing/suit/bluetag + name = "blue laser tag armor" + desc = "Blue Pride, Station Wide." + icon_state = "bluetag" + item_state_slots = list(slot_r_hand_str = "tdblue", slot_l_hand_str = "tdblue") + blood_overlay_type = "armor" + body_parts_covered = UPPER_TORSO + allowed = list (/obj/item/weapon/gun/energy/lasertag/blue) + siemens_coefficient = 3.0 + +/obj/item/clothing/suit/bluetag/sub + name = "Brigader Armor" + desc = "Repilca rmor commonly worn by Spacer Union Brigade members from the hit series Spacer Trail. Modified for Laser Tag (Blue Team)." + icon_state = "bluetag2" + +/obj/item/clothing/suit/redtag + name = "red laser tag armor" + desc = "Reputed to go faster." + icon_state = "redtag" + item_state_slots = list(slot_r_hand_str = "tdred", slot_l_hand_str = "tdred") + blood_overlay_type = "armor" + body_parts_covered = UPPER_TORSO + allowed = list (/obj/item/weapon/gun/energy/lasertag/red) + siemens_coefficient = 3.0 + +/obj/item/clothing/suit/redtag/dom + name = "Mu'tu'bi Armor" + desc = "Repilca rmor commonly worn by Dominion Of Mu'tu'bi soldiers from the hit series Spacer Trail. Modified for Laser Tag (Red Team)." + icon_state = "redtag2" + +/* + * 80s + */ + +/obj/item/clothing/suit/storage/puffyblue + name = "blue puffy coat" + desc = "A stylish, shiny, very blue puffer coat." + icon_state = "puffycoatblue" + item_state = "puffycoatblue" + body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS + flags_inv = HIDEHOLSTER + cold_protection = UPPER_TORSO|LOWER_TORSO|ARMS|LEGS + min_cold_protection_temperature = SPACE_SUIT_MIN_COLD_PROTECTION_TEMPERATURE + siemens_coefficient = 0.7 + item_state_slots = list(slot_r_hand_str = "blue_labcoat", slot_l_hand_str = "blue_labcoat") + +/obj/item/clothing/suit/storage/puffypurple + name = "purple puffy coat" + desc = "A stylish, shiny, very purple puffer coat." + icon_state = "puffycoatpurple" + item_state = "puffycoatpurple" + body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS + flags_inv = HIDEHOLSTER + cold_protection = UPPER_TORSO|LOWER_TORSO|ARMS|LEGS + min_cold_protection_temperature = SPACE_SUIT_MIN_COLD_PROTECTION_TEMPERATURE + siemens_coefficient = 0.7 + item_state_slots = list(slot_r_hand_str = "purple_labcoat", slot_l_hand_str = "purple_labcoat") + +/obj/item/clothing/suit/storage/puffyred + name = "crimson puffy coat" + desc = "A stylish, shiny, very crimson puffer coat." + icon_state = "puffycoatred" + item_state = "puffycoatred" + body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS + flags_inv = HIDEHOLSTER + cold_protection = UPPER_TORSO|LOWER_TORSO|ARMS|LEGS + min_cold_protection_temperature = SPACE_SUIT_MIN_COLD_PROTECTION_TEMPERATURE + siemens_coefficient = 0.7 + item_state_slots = list(slot_r_hand_str = "red_labcoat", slot_l_hand_str = "red_labcoat") + +/* + * Costume + */ + +/obj/item/clothing/suit/pirate + name = "pirate coat" + desc = "Yarr." + icon_state = "pirate" + item_state_slots = list(slot_r_hand_str = "greatcoat", slot_l_hand_str = "greatcoat") + body_parts_covered = UPPER_TORSO|ARMS + +/obj/item/clothing/suit/poncho + name = "poncho" + desc = "A simple, comfortable poncho." + icon = 'icons/inventory/suit/mob.dmi' + icon_state = "poncho" + item_state = "poncho" + item_icons = list( + slot_l_hand_str = 'icons/mob/items/lefthand_vr.dmi', + slot_r_hand_str = 'icons/mob/items/righthand_vr.dmi', + ) + body_parts_covered = UPPER_TORSO|ARMS + +/obj/item/clothing/suit/hgpirate + name = "pirate captain coat" + desc = "Yarr." + icon_state = "hgpirate" + item_state_slots = list(slot_r_hand_str = "greatcoat", slot_l_hand_str = "greatcoat") + flags_inv = HIDEJUMPSUIT + body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS|LEGS + +/obj/item/clothing/suit/cyborg_suit + name = "cyborg suit" + desc = "Suit for a cyborg costume." + icon_state = "death" + fire_resist = T0C+5200 + flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT|HIDETIE|HIDEHOLSTER + +/obj/item/clothing/suit/greatcoat + name = "great coat" + desc = "A heavy great coat" + icon_state = "gentlecoat" + item_state_slots = list(slot_r_hand_str = "greatcoat", slot_l_hand_str = "greatcoat") + flags_inv = HIDEHOLSTER + +/obj/item/clothing/suit/johnny_coat + name = "johnny~~ coat" + desc = "Johnny~~" + icon_state = "gentlecoat" + item_state_slots = list(slot_r_hand_str = "johnny_coat", slot_l_hand_str = "johnny_coat") + flags_inv = HIDEHOLSTER + +/obj/item/clothing/suit/justice + name = "justice suit" + desc = "This pretty much looks ridiculous." + icon_state = "gentle_coat" + item_state_slots = list(slot_r_hand_str = "greatcoat", slot_l_hand_str = "greatcoat") + flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT|HIDETIE|HIDEHOLSTER + body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS|HANDS|LEGS|FEET + +/obj/item/clothing/suit/judgerobe + name = "judge's robe" + desc = "This robe commands authority." + icon_state = "judge" + body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS + allowed = list(/obj/item/weapon/storage/fancy/cigarettes,/obj/item/weapon/spacecash) + flags_inv = HIDEJUMPSUIT|HIDETIE|HIDEHOLSTER + +/obj/item/clothing/suit/storage/apron/overalls + name = "coveralls" + desc = "A set of denim overalls." + icon_state = "overalls" + body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS + +/obj/item/clothing/suit/syndicatefake + name = "red space suit replica" + icon_state = "syndicate" + desc = "A plastic replica of a mercenary combat space suit, you'll look just like a real bloodthirsty mercenary in this! This is a toy, it is not made for use in space!" + w_class = ITEMSIZE_NORMAL + allowed = list(/obj/item/device/flashlight,/obj/item/weapon/tank/emergency/oxygen,/obj/item/toy) + flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT|HIDETAIL|HIDETIE|HIDEHOLSTER + body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS|HANDS|LEGS|FEET + +/obj/item/clothing/suit/hastur + name = "Hastur's Robes" + desc = "Robes not meant to be worn by man" + icon_state = "hastur" + item_state_slots = list(slot_r_hand_str = "rad", slot_l_hand_str = "rad") + body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS + flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT|HIDETIE|HIDEHOLSTER + +/obj/item/clothing/suit/imperium_monk + name = "Imperium monk" + desc = "Have YOU killed a xenos today?" + icon_state = "imperium_monk" + body_parts_covered = HEAD|UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS + flags_inv = HIDESHOES|HIDEJUMPSUIT|HIDETIE|HIDEHOLSTER + +/obj/item/clothing/suit/chickensuit + name = "Chicken Suit" + desc = "A suit made long ago by the ancient empire KFC." + icon_state = "chickensuit" + body_parts_covered = UPPER_TORSO|ARMS|LOWER_TORSO|LEGS|FEET + flags_inv = HIDESHOES|HIDEJUMPSUIT|HIDETIE|HIDEHOLSTER + siemens_coefficient = 2.0 + +/obj/item/clothing/suit/monkeysuit + name = "Monkey Suit" + desc = "A suit that looks like a primate" + icon_state = "monkeysuit" + item_state_slots = list(slot_r_hand_str = "brown_jacket", slot_l_hand_str = "brown_jacket") + body_parts_covered = UPPER_TORSO|ARMS|LOWER_TORSO|LEGS|FEET|HANDS + flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT|HIDETIE|HIDEHOLSTER + siemens_coefficient = 2.0 + +/obj/item/clothing/suit/holidaypriest + name = "Holiday Priest" + desc = "This is a nice holiday my son." + icon_state = "holidaypriest" + item_state_slots = list(slot_r_hand_str = "labcoat", slot_l_hand_str = "labcoat") + body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS + flags_inv = HIDEJUMPSUIT|HIDETIE|HIDEHOLSTER + +/obj/item/clothing/suit/cardborg + name = "cardborg suit" + desc = "An ordinary cardboard box with holes cut in the sides." + icon_state = "cardborg" + body_parts_covered = UPPER_TORSO|LOWER_TORSO + flags_inv = HIDEJUMPSUIT|HIDETIE|HIDEHOLSTER + +/obj/item/clothing/suit/skeleton + name = "skeleton costume" + desc = "A body-tight costume with the human skeleton lined out on it." + icon_state = "skelecost" + body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS|FEET|HANDS|EYES|HEAD|FACE + flags_inv = HIDEJUMPSUIT|HIDESHOES|HIDEGLOVES|HIDETIE|HIDEHOLSTER + item_state_slots = list(slot_r_hand_str = "judge", slot_l_hand_str = "judge") + +/obj/item/clothing/suit/engicost + name = "sexy engineering voidsuit costume" + desc = "It's supposed to look like an engineering voidsuit... It doesn't look like it could protect from much radiation." + icon_state = "engicost" + body_parts_covered = UPPER_TORSO|LOWER_TORSO|FEET + flags_inv = HIDEJUMPSUIT|HIDESHOES|HIDETIE|HIDEHOLSTER + item_state_slots = list(slot_r_hand_str = "eng_voidsuit", slot_l_hand_str = "eng_voidsuit") + +/obj/item/clothing/suit/maxman + name = "doctor maxman costume" + desc = "A costume made to look like Dr. Maxman, the famous male-enhancement salesman. Complete with red do-rag and sleeveless labcoat." + icon_state = "maxman" + body_parts_covered = LOWER_TORSO|FEET|LEGS|HEAD + flags_inv = HIDEJUMPSUIT|HIDESHOES|HIDETIE|HIDEHOLSTER + item_state_slots = list(slot_r_hand_str = "leather_jacket", slot_l_hand_str = "leather_jacket") + +/obj/item/clothing/suit/iasexy + name = "sexy internal affairs suit" + desc = "Now where's your pen?~" + icon_state = "iacost" + body_parts_covered = UPPER_TORSO|FEET|LOWER_TORSO|EYES + flags_inv = HIDEJUMPSUIT|HIDESHOES|HIDETIE|HIDEHOLSTER + item_state_slots = list(slot_r_hand_str = "suit_black", slot_l_hand_str = "suit_black") + +/obj/item/clothing/suit/sexyminer + name = "sexy miner costume" + desc = "For when you need to get your rocks off." + icon_state = "sexyminer" + body_parts_covered = FEET|LOWER_TORSO|HEAD + flags_inv = HIDEJUMPSUIT|HIDESHOES|HIDETIE|HIDEHOLSTER + item_state_slots = list(slot_r_hand_str = "miner", slot_l_hand_str = "miner") + +/obj/item/clothing/suit/sumo + name = "inflatable sumo wrestler costume" + desc = "An inflated sumo wrestler costume. It's quite hot." + icon_state = "sumo" + body_parts_covered = FEET|LOWER_TORSO|UPPER_TORSO|LEGS|ARMS + flags_inv = HIDESHOES|HIDEJUMPSUIT|HIDETIE|HIDEHOLSTER + item_state_slots = list(slot_r_hand_str = "classicponcho", slot_l_hand_str = "classicponcho") + min_cold_protection_temperature = SPACE_SUIT_MIN_COLD_PROTECTION_TEMPERATURE + +/obj/item/clothing/suit/hackercost + name = "classic hacker costume" + desc = "You would feel insanely cool wearing this." + icon_state = "hackercost" + body_parts_covered = FEET|LOWER_TORSO|UPPER_TORSO|LEGS|ARMS|EYES + flags_inv = HIDESHOES|HIDEJUMPSUIT|HIDETIE|HIDEHOLSTER + item_state_slots = list(slot_r_hand_str = "leather_coat", slot_l_hand_str = "leather_coat") + +/obj/item/clothing/suit/lumber + name = "sexy lumberjack costume" + desc = "Smells of dusky pine. Includes chest hair and beard." + icon_state = "sexylumber" + body_parts_covered = FEET|LOWER_TORSO|FEET + 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 + */ + +/obj/item/clothing/suit/straight_jacket + name = "straight jacket" + desc = "A suit that completely restrains the wearer." + icon_state = "straight_jacket" + body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS + flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT|HIDETAIL|HIDETIE|HIDEHOLSTER + //yw edit - Teshari sprite + sprite_sheets = list( + SPECIES_TESHARI = 'icons/vore/custom_onmob_yw.dmi' + ) + //yw edit end + + var/resist_time = 4800 // Eight minutes. + +/obj/item/clothing/suit/straight_jacket/attack_hand(mob/living/user as mob) + if(ishuman(user)) + var/mob/living/carbon/human/H = user + if(src == H.wear_suit) + to_chat(H, "You need help taking this off!") + return + ..() + +/obj/item/clothing/suit/straight_jacket/equipped(var/mob/living/user,var/slot) + . = ..() + if(slot == slot_wear_suit) + user.drop_l_hand() + user.drop_r_hand() + if(ishuman(user)) + var/mob/living/carbon/human/H = user + H.drop_from_inventory(H.handcuffed) + +/obj/item/clothing/suit/ianshirt + name = "worn shirt" + desc = "A worn out, curiously comfortable t-shirt with a picture of Ian. You wouldn't go so far as to say it feels like being hugged when you wear it but it's pretty close. Good for sleeping in." + icon_state = "ianshirt" + item_state_slots = list(slot_r_hand_str = "labcoat", slot_l_hand_str = "labcoat") //placeholder -S2- + body_parts_covered = UPPER_TORSO|ARMS + flags_inv = HIDETIE|HIDEHOLSTER + +/* + * Kimonos + */ + +/obj/item/clothing/suit/kimono + name = "traditional kimono" + desc = "A traditional Japanese kimono." + icon_state = "kimono" + addblends = "kimono_a" + +/obj/item/clothing/suit/kamishimo + name = "traditional kamishimo" + desc = "Traditional Japanese menswear." + icon_state = "kamishimo" + addblends = "kamishimo_a" + +/obj/item/clothing/suit/kimono/red + name = "red kimono" + icon_state = "kimono_red" + +/obj/item/clothing/suit/kimono/orange + name = "orange kimono" + icon_state = "kimono_orange" + +/obj/item/clothing/suit/kimono/yellow + name = "yellow kimono" + icon_state = "kimono_yellow" + +/obj/item/clothing/suit/kimono/green + name = "green kimono" + icon_state = "kimono_green" + +/obj/item/clothing/suit/kimono/blue + name = "blue kimono" + icon_state = "kimono_blue" + +/obj/item/clothing/suit/kimono/purple + name = "purple kimono" + icon_state = "kimono_purple" + +/obj/item/clothing/suit/kimono/violet + name = "violet kimono" + icon_state = "kimono_violet" + +/obj/item/clothing/suit/kimono/pink + name = "pink kimono" + icon_state = "kimono_pink" + +/obj/item/clothing/suit/kimono/earth + name = "earth kimono" + icon_state = "kimono_earth" + +/* + * Coats + */ + +/obj/item/clothing/suit/leathercoat + name = "leather coat" + desc = "A long, thick black leather coat." + icon_state = "leathercoat_alt" + allowed = list (/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) + item_state_slots = list(slot_r_hand_str = "leather_jacket", slot_l_hand_str = "leather_jacket") + flags_inv = HIDEHOLSTER + +/obj/item/clothing/suit/leathercoat/sec + name = "leather coat" + desc = "A long, thick black leather coat." + icon_state = "leathercoat_sec" + item_state_slots = list(slot_r_hand_str = "leather_jacket", slot_l_hand_str = "leather_jacket") + flags_inv = HIDEHOLSTER + +/obj/item/clothing/suit/browncoat + name = "brown leather coat" + desc = "A long, brown leather coat." + icon_state = "browncoat" + allowed = list (/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) + item_state_slots = list(slot_r_hand_str = "brown_jacket", slot_l_hand_str = "brown_jacket") + flags_inv = HIDEHOLSTER + +/obj/item/clothing/suit/neocoat + name = "black coat" + desc = "A flowing, black coat." + icon_state = "neocoat" + allowed = list (/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) + item_state_slots = list(slot_r_hand_str = "leather_jacket", slot_l_hand_str = "leather_jacket") + flags_inv = HIDEHOLSTER + +/obj/item/clothing/suit/customs + name = "customs jacket" + desc = "A standard SolGov Customs formal jacket." + icon_state = "customs_jacket" + item_state_slots = list(slot_r_hand_str = "suit_blue", slot_l_hand_str = "suit_blue") + flags_inv = HIDEHOLSTER + +/obj/item/clothing/suit/storage/greyjacket + name = "grey jacket" + desc = "A fancy twead grey jacket." + icon_state = "gentlecoat" + item_state_slots = list(slot_r_hand_str = "leather_jacket", slot_l_hand_str = "leather_jacket") + flags_inv = HIDEHOLSTER + +/obj/item/clothing/suit/storage/trench + name = "brown trenchcoat" + desc = "A rugged canvas trenchcoat, designed and created by TX Fabrication Corp. The coat appears to have its kevlar lining removed." + icon_state = "detective" + blood_overlay_type = "coat" + allowed = list(/obj/item/weapon/tank/emergency/oxygen, /obj/item/device/flashlight,/obj/item/weapon/gun/energy,/obj/item/weapon/gun/projectile,/obj/item/ammo_magazine,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/handcuffs,/obj/item/weapon/storage/fancy/cigarettes,/obj/item/weapon/flame/lighter,/obj/item/device/taperecorder,/obj/item/device/uv_light) + flags_inv = HIDEHOLSTER + +/obj/item/clothing/suit/storage/trench/grey + name = "grey trenchcoat" + icon_state = "detective2" + item_state_slots = list(slot_r_hand_str = "leather_jacket", slot_l_hand_str = "leather_jacket") + flags_inv = HIDEHOLSTER + +/obj/item/clothing/suit/storage/toggle/peacoat + name = "peacoat" + desc = "A well-tailored, stylish peacoat." + icon_state = "peacoat" + addblends = "peacoat_a" + item_state_slots = list(slot_r_hand_str = "peacoat", slot_l_hand_str = "peacoat") + flags_inv = HIDEHOLSTER + +/obj/item/clothing/suit/storage/duster + name = "duster" + desc = "A duster is a light, loose-fitting long coat. Dusters are meant to protect your clothing from dust and rain." + icon_state = "duster" + blood_overlay_type = "coat" + allowed = list(/obj/item/weapon/tank/emergency/oxygen, /obj/item/device/flashlight,/obj/item/weapon/gun/energy,/obj/item/weapon/gun/projectile,/obj/item/ammo_magazine,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/handcuffs,/obj/item/weapon/storage/fancy/cigarettes,/obj/item/weapon/flame/lighter) + flags_inv = HIDEHOLSTER + +/obj/item/clothing/suit/storage/toggle/cardigan + name = "cardigan" + desc = "A cozy cardigan in a classic style." + icon_state = "cardigan" + addblends = "cardigan_a" + flags_inv = HIDEHOLSTER + +/* + * stripper + */ +/obj/item/clothing/suit/stripper/stripper_pink + name = "pink skimpy dress" + desc = "A rather skimpy pink dress." + icon_state = "stripper_p_over" + item_state_slots = list(slot_r_hand_str = "pink_labcoat", slot_l_hand_str = "pink_labcoat") + siemens_coefficient = 1 + +/obj/item/clothing/suit/stripper/stripper_green + name = "green skimpy dress" + desc = "A rather skimpy green dress." + icon_state = "stripper_g_over" + item_state_slots = list(slot_r_hand_str = "green_labcoat", slot_l_hand_str = "green_labcoat") + siemens_coefficient = 1 + +/obj/item/clothing/suit/xenos + name = "xenos suit" + desc = "A suit made out of chitinous alien hide." + icon_state = "xenos" + item_state_slots = list(slot_r_hand_str = "black_suit", slot_l_hand_str = "black_suit") + body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS + flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT|HIDETIE|HIDEHOLSTER + siemens_coefficient = 2.0 + +/obj/item/clothing/suit/jacket/puffer + name = "puffer jacket" + desc = "A thick jacket with a rubbery, water-resistant shell." + icon_state = "pufferjacket" + item_state_slots = list(slot_r_hand_str = "chainmail", slot_l_hand_str = "chainmail") + body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS + cold_protection = UPPER_TORSO|LOWER_TORSO|ARMS + min_cold_protection_temperature = SPACE_SUIT_MIN_COLD_PROTECTION_TEMPERATURE + flags_inv = HIDEHOLSTER + +/obj/item/clothing/suit/jacket/puffer/vest + name = "puffer vest" + desc = "A thick vest with a rubbery, water-resistant shell." + icon_state = "puffervest" + item_state_slots = list(slot_r_hand_str = "chainmail", slot_l_hand_str = "chainmail") + body_parts_covered = UPPER_TORSO|LOWER_TORSO + cold_protection = UPPER_TORSO|LOWER_TORSO + +//YW EDIT BEGINS +/obj/item/clothing/suit/storage/miljacket + name = "military jacket" + desc = "A canvas jacket styled after classical American military garb. Feels sturdy, yet comfortable. This one's in the vintage olive drab." + icon_state = "militaryjacket_nobadge" + item_state_slots = list(slot_r_hand_str = "suit_olive", slot_l_hand_str = "suit_olive") + flags_inv = HIDEHOLSTER + +/obj/item/clothing/suit/storage/miljacket/alt + name = "military jacket, alternate" + desc = "A canvas jacket styled after classical American military garb. Feels sturdy, yet comfortable. This one has some extra badges on it." + icon_state = "militaryjacket_badge" + item_state_slots = list(slot_r_hand_str = "suit_olive", slot_l_hand_str = "suit_olive") + flags_inv = HIDEHOLSTER + +/obj/item/clothing/suit/storage/miljacket/green + name = "green military jacket" + desc = "A dark but rather high-saturation green canvas jacket. Feels sturdy, yet comfortable." + icon_state = "militaryjacket_green" + item_state_slots = list(slot_r_hand_str = "suit_olive", slot_l_hand_str = "suit_olive") + flags_inv = HIDEHOLSTER + +/obj/item/clothing/suit/storage/miljacket/tan + name = "tan military jacket" + desc = "A canvas jacket styled after classical American military garb. Feels sturdy, yet comfortable. Now in sandy tans for desert fans." + icon_state = "militaryjacket_tan" + item_state_slots = list(slot_r_hand_str = "suit_orange", slot_l_hand_str = "suit_orange") + flags_inv = HIDEHOLSTER + +/obj/item/clothing/suit/storage/miljacket/grey + name = "grey military jacket" + desc = "A canvas jacket styled after classical American military garb. Feels sturdy, yet comfortable. This one's in urban grey." + icon_state = "militaryjacket_grey" + item_state_slots = list(slot_r_hand_str = "suit_grey", slot_l_hand_str = "suit_grey") + flags_inv = HIDEHOLSTER + +/obj/item/clothing/suit/storage/miljacket/navy + name = "navy military jacket" + desc = "A canvas jacket styled after classical American military garb. Feels sturdy, yet comfortable. Dark navy, this one is." + icon_state = "militaryjacket_navy" + item_state_slots = list(slot_r_hand_str = "suit_navy", slot_l_hand_str = "suit_navy") + flags_inv = HIDEHOLSTER + +/obj/item/clothing/suit/storage/miljacket/black + name = "black military jacket" + desc = "A canvas jacket styled after classical American military garb. Feels sturdy, yet comfortable. Now in tactical black." + icon_state = "militaryjacket_black" + item_state_slots = list(slot_r_hand_str = "suit_black", slot_l_hand_str = "suit_black") + flags_inv = HIDEHOLSTER + +/obj/item/clothing/suit/storage/miljacket/white + name = "white military jacket" + desc = "A white canvas jacket. Don't wear this for walks in the snow, it won't keep you warm - it'll just make it harder to find your frozen corpse." + icon_state = "militaryjacket_white" + item_state_slots = list(slot_r_hand_str = "med_dep_jacket", slot_l_hand_str = "med_dep_jacket") + flags_inv = HIDEHOLSTER + +/obj/item/clothing/suit/storage/toggle/bomber + name = "bomber jacket" + desc = "A thick, well-worn WW2 leather bomber jacket." + icon_state = "bomber" + item_state_slots = list(slot_r_hand_str = "brown_jacket", slot_l_hand_str = "brown_jacket") + allowed = list (/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) + body_parts_covered = UPPER_TORSO|ARMS + flags_inv = HIDEHOLSTER + cold_protection = UPPER_TORSO|ARMS + min_cold_protection_temperature = T0C - 20 + siemens_coefficient = 0.7 + +/obj/item/clothing/suit/storage/toggle/bomber/retro + name = "retro bomber jacket" + desc = "A retro style, fur-lined leather bomber jacket that invokes the early days of space exploration when spacemen were spacemen, and laser guns had funny little antennae on them." + icon_state = "retrojacket" + +/obj/item/clothing/suit/storage/bomber/alt + name = "bomber jacket" + desc = "A thick, well-worn WW2 leather bomber jacket." + icon_state = "bomberjacket_new" + item_state_slots = list(slot_r_hand_str = "brown_jacket", slot_l_hand_str = "brown_jacket") + body_parts_covered = UPPER_TORSO|ARMS + flags_inv = HIDEHOLSTER + cold_protection = UPPER_TORSO|ARMS + min_cold_protection_temperature = T0C - 20 + siemens_coefficient = 0.7 + +/obj/item/clothing/suit/storage/toggle/leather_jacket + name = "leather jacket" + desc = "A black leather coat." + icon_state = "leather_jacket" + allowed = list (/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) + body_parts_covered = UPPER_TORSO|ARMS + flags_inv = HIDEHOLSTER + +/obj/item/clothing/suit/storage/toggle/leather_jacket/sleeveless + name = "leather vest" + desc = "A black leather vest." + icon_state = "leather_jacket_sleeveless" + body_parts_covered = UPPER_TORSO + item_state_slots = list(slot_r_hand_str = "leather_jacket", slot_l_hand_str = "leather_jacket") + +/obj/item/clothing/suit/storage/leather_jacket_alt + name = "leather vest" + desc = "A black leather vest." + icon_state = "leather_jacket_alt" + item_state_slots = list(slot_r_hand_str = "leather_jacket", slot_l_hand_str = "leather_jacket") + body_parts_covered = UPPER_TORSO|ARMS + +/obj/item/clothing/suit/storage/toggle/leather_jacket/nanotrasen + desc = "A black leather coat. A corporate logo is proudly displayed on the back." + icon_state = "leather_jacket_nt" + item_state_slots = list(slot_r_hand_str = "leather_jacket", slot_l_hand_str = "leather_jacket") + +/obj/item/clothing/suit/storage/toggle/leather_jacket/nanotrasen/sleeveless + name = "leather vest" + desc = "A black leather vest. A corporate logo is proudly displayed on the back." + icon_state = "leather_jacket_nt_sleeveless" + body_parts_covered = UPPER_TORSO + item_state_slots = list(slot_r_hand_str = "leather_jacket", slot_l_hand_str = "leather_jacket") + +//This one has buttons for some reason +/obj/item/clothing/suit/storage/toggle/brown_jacket + name = "brown jacket" + desc = "A brown leather coat." + icon_state = "brown_jacket" + item_state_slots = list(slot_r_hand_str = "brown_jacket", slot_l_hand_str = "brown_jacket") + allowed = list (/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) + body_parts_covered = UPPER_TORSO|ARMS + flags_inv = HIDEHOLSTER + +/obj/item/clothing/suit/storage/toggle/brown_jacket/sleeveless + name = "brown vest" + desc = "A brown leather vest." + icon_state = "brown_jacket_sleeveless" + body_parts_covered = UPPER_TORSO + item_state_slots = list(slot_r_hand_str = "brown_jacket", slot_l_hand_str = "brown_jacket") + +/obj/item/clothing/suit/storage/toggle/brown_jacket/nanotrasen + desc = "A brown leather coat. A corporate logo is proudly displayed on the back." + icon_state = "brown_jacket_nt" + item_state_slots = list(slot_r_hand_str = "brown_jacket", slot_l_hand_str = "brown_jacket") + +/obj/item/clothing/suit/storage/toggle/brown_jacket/nanotrasen/sleeveless + name = "brown vest" + desc = "A brown leather vest. A corporate logo is proudly displayed on the back." + icon_state = "brown_jacket_nt_sleeveless" + body_parts_covered = UPPER_TORSO + item_state_slots = list(slot_r_hand_str = "brown_jacket", slot_l_hand_str = "brown_jacket") + +/obj/item/clothing/suit/storage/toggle/denim_jacket + name = "denim jacket" + desc = "A denim coat." + icon_state = "denim_jacket" + item_state_slots = list(slot_r_hand_str = "denim_jacket", slot_l_hand_str = "denim_jacket") + allowed = list (/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) + body_parts_covered = UPPER_TORSO|ARMS + flags_inv = HIDEHOLSTER + +/obj/item/clothing/suit/storage/toggle/denim_jacket/sleeveless + name = "denim vest" + desc = "A denim vest." + icon_state = "denim_jacket_sleeveless" + body_parts_covered = UPPER_TORSO + item_state_slots = list(slot_r_hand_str = "denim_jacket", slot_l_hand_str = "denim_jacket") + +/obj/item/clothing/suit/storage/toggle/denim_jacket/nanotrasen + desc = "A denim coat. A corporate logo is proudly displayed on the back." + icon_state = "denim_jacket_nt" + item_state_slots = list(slot_r_hand_str = "denim_jacket", slot_l_hand_str = "denim_jacket") + +/obj/item/clothing/suit/storage/toggle/denim_jacket/nanotrasen/sleeveless + name = "denim vest" + desc = "A denim vest. A corporate logo is proudly displayed on the back." + icon_state = "denim_jacket_nt_sleeveless" + body_parts_covered = UPPER_TORSO + item_state_slots = list(slot_r_hand_str = "denim_jacket", slot_l_hand_str = "denim_jacket") + +/obj/item/clothing/suit/storage/toggle/hoodie + name = "grey hoodie" + desc = "A warm, grey sweatshirt." + icon_state = "grey_hoodie" + item_state_slots = list(slot_r_hand_str = "suit_grey", slot_l_hand_str = "suit_grey") + min_cold_protection_temperature = T0C - 20 + cold_protection = UPPER_TORSO|LOWER_TORSO|ARMS + flags_inv = HIDEHOLSTER + +/obj/item/clothing/suit/storage/toggle/hoodie/black + name = "black hoodie" + desc = "A warm, black sweatshirt." + icon_state = "black_hoodie" + item_state_slots = list(slot_r_hand_str = "suit_black", slot_l_hand_str = "suit_black") + +/obj/item/clothing/suit/storage/toggle/hoodie/red + name = "red hoodie" + desc = "A warm, red sweatshirt." + icon_state = "red_hoodie" + item_state_slots = list(slot_r_hand_str = "suit_red", slot_l_hand_str = "suit_red") + +/obj/item/clothing/suit/storage/toggle/hoodie/blue + name = "blue hoodie" + desc = "A warm, blue sweatshirt." + icon_state = "blue_hoodie" + item_state_slots = list(slot_r_hand_str = "suit_blue", slot_l_hand_str = "suit_blue") + +/obj/item/clothing/suit/storage/toggle/hoodie/green + name = "green hoodie" + desc = "A warm, green sweatshirt." + icon_state = "green_hoodie" + item_state_slots = list(slot_r_hand_str = "suit_olive", slot_l_hand_str = "suit_olive") + +/obj/item/clothing/suit/storage/toggle/hoodie/orange + name = "orange hoodie" + desc = "A warm, orange sweatshirt." + icon_state = "orange_hoodie" + item_state_slots = list(slot_r_hand_str = "suit_orange", slot_l_hand_str = "suit_orange") + +/obj/item/clothing/suit/storage/toggle/hoodie/yellow + name = "yellow hoodie" + desc = "A warm, yellow sweatshirt." + icon_state = "yellow_hoodie" + item_state_slots = list(slot_r_hand_str = "suit_yellow", slot_l_hand_str = "suit_yellow") + +/obj/item/clothing/suit/storage/toggle/hoodie/cti + name = "CTI hoodie" + desc = "A warm, black sweatshirt. It bears the letters ‘CTI’ on the back, a lettering to the prestigious university in Tau Ceti, Ceti Technical Institute. There is a blue supernova embroidered on the front, the emblem of CTI." + icon_state = "cti_hoodie" + item_state_slots = list(slot_r_hand_str = "suit_black", slot_l_hand_str = "suit_black") + +/obj/item/clothing/suit/storage/toggle/hoodie/mu + name = "mojave university hoodie" + desc = "A warm, gray sweatshirt. It bears the letters ‘MU’ on the front, a lettering to the well-known public college, Mojave University." + icon_state = "mu_hoodie" + item_state_slots = list(slot_r_hand_str = "suit_grey", slot_l_hand_str = "suit_grey") + +/obj/item/clothing/suit/storage/toggle/hoodie/nt + name = "NT hoodie" + desc = "A warm, blue sweatshirt. It proudly bears the silver NanoTrasen insignia lettering on the back. The edges are trimmed with silver." + icon_state = "nt_hoodie" + item_state_slots = list(slot_r_hand_str = "suit_blue", slot_l_hand_str = "suit_blue") + +/obj/item/clothing/suit/storage/toggle/hoodie/smw + name = "Space Mountain Wind hoodie" + desc = "A warm, black sweatshirt. It has the logo for the popular softdrink Space Mountain Wind on both the front and the back." + icon_state = "smw_hoodie" + item_state_slots = list(slot_r_hand_str = "suit_black", slot_l_hand_str = "suit_black") + +/obj/item/clothing/suit/storage/toggle/hoodie/nrti + name = "New Reykjavik Technical Institute hoodie" + desc = "A warm, gray sweatshirt. It bears the letters ‘NRT’ on the back, in reference to Sif's premiere technical institute." + icon_state = "nrti_hoodie" + item_state_slots = list(slot_r_hand_str = "suit_grey", slot_l_hand_str = "suit_grey") + +/obj/item/clothing/suit/whitedress + name = "white dress" + desc = "A fancy dress." + icon_state = "white_dress" + item_state_slots = list(slot_r_hand_str = "white_dress", slot_l_hand_str = "white_dress") + body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS + flags_inv = HIDEJUMPSUIT|HIDETIE|HIDEHOLSTER + +/obj/item/clothing/suit/varsity + name = "black varsity jacket" + desc = "A favorite of jocks everywhere from Sol to Nyx." + icon_state = "varsity" + allowed = list (/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) + item_state_slots = list(slot_r_hand_str = "suit_black", slot_l_hand_str = "suit_black") + flags_inv = HIDETIE|HIDEHOLSTER + +/obj/item/clothing/suit/varsity/red + name = "red varsity jacket" + icon_state = "varsity_red" + +/obj/item/clothing/suit/varsity/purple + name = "purple varsity jacket" + icon_state = "varsity_purple" + +/obj/item/clothing/suit/varsity/green + name = "green varsity jacket" + icon_state = "varsity_green" + +/obj/item/clothing/suit/varsity/blue + name = "blue varsity jacket" + icon_state = "varsity_blue" + +/obj/item/clothing/suit/varsity/brown + name = "brown varsity jacket" + icon_state = "varsity_brown" + +/* + * Department Jackets + */ +/obj/item/clothing/suit/storage/toggle/sec_dep_jacket + name = "department jacket, security" + desc = "A cozy jacket in security's colors. Show your department pride!" + icon_state = "sec_dep_jacket" + item_state_slots = list(slot_r_hand_str = "sec_dep_jacket", slot_l_hand_str = "sec_dep_jacket") + flags_inv = HIDEHOLSTER + +/obj/item/clothing/suit/storage/toggle/engi_dep_jacket + name = "department jacket, engineering" + desc = "A cozy jacket in engineering's colors. Show your department pride!" + icon_state = "engi_dep_jacket" + item_state_slots = list(slot_r_hand_str = "engi_dep_jacket", slot_l_hand_str = "engi_dep_jacket") + flags_inv = HIDEHOLSTER + +/obj/item/clothing/suit/storage/toggle/supply_dep_jacket + name = "department jacket, supply" + desc = "A cozy jacket in supply's colors. Show your department pride!" + icon_state = "supply_dep_jacket" + item_state_slots = list(slot_r_hand_str = "supply_dep_jacket", slot_l_hand_str = "supply_dep_jacket") + flags_inv = HIDEHOLSTER + +/obj/item/clothing/suit/storage/toggle/sci_dep_jacket + name = "department jacket, science" + desc = "A cozy jacket in science's colors. Show your department pride!" + icon_state = "sci_dep_jacket" + item_state_slots = list(slot_r_hand_str = "sci_dep_jacket", slot_l_hand_str = "sci_dep_jacket") + flags_inv = HIDEHOLSTER + +/obj/item/clothing/suit/storage/toggle/med_dep_jacket + name = "department jacket, medical" + desc = "A cozy jacket in medical's colors. Show your department pride!" + icon_state = "med_dep_jacket" + item_state_slots = list(slot_r_hand_str = "med_dep_jacket", slot_l_hand_str = "med_dep_jacket") + flags_inv = HIDEHOLSTER + +/obj/item/clothing/suit/storage/toggle/light_jacket + name = "grey light jacket" + desc = "A light, cozy jacket. Now in grey." + icon_state = "grey_dep_jacket" + item_state_slots = list(slot_r_hand_str = "grey_dep_jacket", slot_l_hand_str = "grey_dep_jacket") + flags_inv = HIDEHOLSTER + +/obj/item/clothing/suit/storage/toggle/light_jacket/blue + name = "dark blue light jacket" + desc = "A light, cozy jacket. Now in dark blue." + icon_state = "blue_dep_jacket" + item_state_slots = list(slot_r_hand_str = "blue_dep_jacket", slot_l_hand_str = "blue_dep_jacket") + +/* + * Track Jackets + */ +/obj/item/clothing/suit/storage/toggle/track + name = "track jacket" + desc = "A track jacket, for the athletic." + icon_state = "trackjacket" + item_state_slots = list(slot_r_hand_str = "black_labcoat", slot_l_hand_str = "black_labcoat") + allowed = list (/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/clothing/suit/storage/toggle/track/blue + name = "blue track jacket" + icon_state = "trackjacketblue" + item_state_slots = list(slot_r_hand_str = "blue_labcoat", slot_l_hand_str = "blue_labcoat") + + +/obj/item/clothing/suit/storage/toggle/track/green + name = "green track jacket" + icon_state = "trackjacketgreen" + item_state_slots = list(slot_r_hand_str = "green_labcoat", slot_l_hand_str = "green_labcoat") + +/obj/item/clothing/suit/storage/toggle/track/red + name = "red track jacket" + icon_state = "trackjacketred" + item_state_slots = list(slot_r_hand_str = "red_labcoat", slot_l_hand_str = "red_labcoat") + +/obj/item/clothing/suit/storage/toggle/track/white + name = "white track jacket" + icon_state = "trackjacketwhite" + item_state_slots = list(slot_r_hand_str = "labcoat", slot_l_hand_str = "labcoat") + +//Flannels + +/obj/item/clothing/suit/storage/flannel + name = "Flannel shirt" + desc = "A comfy, grey flannel shirt. Unleash your inner hipster." + icon_state = "flannel" + item_state_slots = list(slot_r_hand_str = "black_labcoat", slot_l_hand_str = "black_labcoat") + allowed = list (/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) + flags_inv = HIDEHOLSTER + var/rolled = 0 + var/tucked = 0 + var/buttoned = 0 + +/obj/item/clothing/suit/storage/flannel/verb/roll_sleeves() + set name = "Roll Sleeves" + set category = "Object" + set src in usr + if(!istype(usr, /mob/living)) + return + if(usr.stat) + return + + if(rolled == 0) + rolled = 1 + body_parts_covered &= ~(ARMS) + to_chat(usr, "You roll up the sleeves of your [src].") + else + rolled = 0 + body_parts_covered = initial(body_parts_covered) + to_chat(usr, "You roll down the sleeves of your [src].") + update_icon() + +/obj/item/clothing/suit/storage/flannel/verb/tuck() + set name = "Toggle Shirt Tucking" + set category = "Object" + set src in usr + if(!istype(usr, /mob/living)||usr.stat) + return + + if(tucked == 0) + tucked = 1 + to_chat(usr, "You tuck in your your [src].") + else + tucked = 0 + to_chat(usr, "You untuck your [src].") + update_icon() + +/obj/item/clothing/suit/storage/flannel/verb/button() + set name = "Toggle Shirt Buttons" + set category = "Object" + set src in usr + if(!istype(usr, /mob/living)||usr.stat) + return + + if(buttoned == 0) + buttoned = 1 + flags_inv = HIDETIE|HIDEHOLSTER + to_chat(usr, "You button your [src].") + else + buttoned = 0 + flags_inv = HIDEHOLSTER + to_chat(usr, "You unbutton your [src].") + update_icon() + +/obj/item/clothing/suit/storage/flannel/update_icon() + icon_state = initial(icon_state) + if(rolled) + icon_state += "r" + if(tucked) + icon_state += "t" + if(buttoned) + icon_state += "b" + update_clothing_icon() + +/obj/item/clothing/suit/storage/flannel/red + desc = "A comfy, red flannel shirt. Unleash your inner hipster." + icon_state = "flannel_red" + item_state_slots = list(slot_r_hand_str = "red_labcoat", slot_l_hand_str = "red_labcoat") + +/obj/item/clothing/suit/storage/flannel/aqua + desc = "A comfy, aqua flannel shirt. Unleash your inner hipster." + icon_state = "flannel_aqua" + item_state_slots = list(slot_r_hand_str = "blue_labcoat", slot_l_hand_str = "blue_labcoat") + +/obj/item/clothing/suit/storage/flannel/brown + desc = "A comfy, brown flannel shirt. Unleash your inner hipster." + icon_state = "flannel_brown" + item_state_slots = list(slot_r_hand_str = "johnny", slot_l_hand_str = "johnny") + +//Green Uniform + +/obj/item/clothing/suit/storage/toggle/greengov + name = "green formal jacket" + desc = "A sleek proper formal jacket with gold buttons." + icon_state = "suitjacket_green" + item_state_slots = list(slot_r_hand_str = "suit_olive", slot_l_hand_str = "suit_olive") + blood_overlay_type = "coat" + body_parts_covered = UPPER_TORSO|ARMS + flags_inv = HIDEHOLSTER +/* // Replaced by hooded snowsuits + +/obj/item/clothing/suit/storage/snowsuit + name = "snowsuit" + desc = "A suit made to keep you nice and toasty on cold winter days. Or at least alive." + icon_state = "snowsuit" + item_state_slots = list(slot_r_hand_str = "labcoat", slot_l_hand_str = "labcoat") + body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS + flags_inv = HIDEHOLSTER + cold_protection = UPPER_TORSO|LOWER_TORSO|ARMS + min_cold_protection_temperature = SPACE_SUIT_MIN_COLD_PROTECTION_TEMPERATURE + armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 10, rad = 0) + allowed = list (/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/clothing/suit/storage/snowsuit/command + name = "command snowsuit" + icon_state = "snowsuit_command" + +/obj/item/clothing/suit/storage/snowsuit/security + name = "security snowsuit" + icon_state = "snowsuit_security" + +/obj/item/clothing/suit/storage/snowsuit/medical + name = "medical snowsuit" + icon_state = "snowsuit_medical" + +/obj/item/clothing/suit/storage/snowsuit/engineering + name = "engineering snowsuit" + icon_state = "snowsuit_engineering" + +/obj/item/clothing/suit/storage/snowsuit/cargo + name = "cargo snowsuit" + icon_state = "snowsuit_cargo" + +/obj/item/clothing/suit/storage/snowsuit/science + name = "science snowsuit" + icon_state = "snowsuit_science" +*/ + +/obj/item/clothing/suit/caution + name = "wet floor sign" + desc = "Caution! Wet Floor!" + description_fluff = "Used by the janitor to passive-aggressively point at when you eventually slip on one of their mopped floors." + description_info = "Alt-click, or click in-hand to toggle the caution lights. It looks like you can wear it in your suit slot." + icon_state = "caution" + drop_sound = 'sound/items/drop/shoes.ogg' + force = 1 + throwforce = 3 + throw_speed = 2 + throw_range = 5 + w_class = 2 + body_parts_covered = UPPER_TORSO|LOWER_TORSO + attack_verb = list("warned", "cautioned", "smashed") + armor = list("melee" = 5, "bullet" = 0, "laser" = 0,"energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 0, "acid" = 0) + +/obj/item/clothing/suit/caution/attack_self() + toggle() + +/obj/item/clothing/suit/caution/AltClick() + toggle() + +/obj/item/clothing/suit/caution/proc/toggle() + if(!usr || usr.stat || usr.lying || usr.restrained() || !Adjacent(usr)) return + else if(src.icon_state == "caution") + src.icon_state = "caution_blinking" + src.item_state = "caution_blinking" + usr.show_message("You turn the wet floor sign on.") + playsound(src.loc, 'sound/machines/button.ogg', 30, 1) + else + src.icon_state = "caution" + src.item_state = "caution" + usr.show_message("You turn the wet floor sign off.") + update_clothing_icon() + +//Ruin Marine (Doom Marine) +/obj/item/clothing/suit/marine + name = "marine armor" + desc = "A set of marine prop armor from the popular game 'Ruin'." + 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") diff --git a/code/modules/clothing/suits/storage.dm b/code/modules/clothing/suits/storage.dm index b962e88e67..7d201bc7d6 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 4f0941bd27..868f0592bb 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." @@ -598,4 +616,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 13b42366de..f998677f76 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 6dc02eba64..470410d263 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." @@ -413,16 +418,19 @@ name = "black corset" desc = "A black corset and skirt for those fancy nights out." icon_state = "black_corset" + body_parts_covered = UPPER_TORSO|LOWER_TORSO /obj/item/clothing/under/dress/flower_dress name = "flower dress" desc = "A beautiful dress with a skirt of flowers." icon_state = "flower_dress" + body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS /obj/item/clothing/under/dress/red_swept_dress name = "red swept dress" desc = "A red dress that sweeps to the side." icon_state = "red_swept_dress" + body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS /obj/item/clothing/under/dress/flamenco name = "flamenco dress" @@ -485,11 +493,13 @@ name = "polka dot dress" desc = "A sleeveless, cream colored dress with red polka dots." icon_state = "polka" + body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS /obj/item/clothing/under/dress/twistfront name = "twistfront crop dress" desc = "A black skirt and red twistfront croptop. Fancy!" icon_state = "twistfront" + body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS /obj/item/clothing/under/dress/cropdress name = "crop dress" @@ -515,26 +525,31 @@ name = "little black dress" desc = "A little strapless black dress with a red ribbon and flower accessory." icon_state = "littleblackdress" + body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS /obj/item/clothing/under/dress/pinktutu name = "pink tutu" desc = "A black leotard with a pink mesh tutu. Perfect for ballet practice." icon_state = "pinktutu" + body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS /obj/item/clothing/under/dress/festivedress name = "festive dress" desc = "A red and white dress themed after some winter holidays. Tastefully festive!" icon_state = "festivedress" + body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS /obj/item/clothing/under/dress/revealingdress name = "revealing dress" desc = "A very revealing black and blue dress. Is this work appropriate?" icon_state = "revealingdress" + body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS /obj/item/clothing/under/dress/gothic name = "gothic dress" desc = "A black dress with a sheer mesh over it, tastefully old school goth." icon_state = "gothic" + body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS /obj/item/clothing/under/dress/formalred name = "formal red dress" @@ -581,12 +596,23 @@ name = "golden wrap" desc = "An outfit so ostentatious that you feel poorer just looking at it." icon_state = "goldwrap" + body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS /obj/item/clothing/under/dress/hightrousers name = "high-waisted trousers" 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 */ @@ -934,11 +960,13 @@ name = "green asymmetrical jumpsuit" desc = "A green futuristic uniform with asymmetrical pants. Trendy!" icon_state = "greenasym" + body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS /obj/item/clothing/under/cyberpunkharness name = "cyberpunk strapped harness" desc = "A cyberpunk styled harness and pants. Perfect for your dystopian future." icon_state = "cyberhell" + body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS /obj/item/clothing/under/blackngold name = "black and gold gown" @@ -959,11 +987,13 @@ name = "flower skirt" desc = "A flowery skirt that comes in a variety of colors." icon_state = "flowerskirt" + body_parts_covered = LOWER_TORSO /obj/item/clothing/under/fashionminiskirt name = "fashionable miniskirt" desc = "An impractically short miniskirt allegedly making waves through the local fashion scene." icon_state = "miniskirt_fashion" + body_parts_covered = LOWER_TORSO /obj/item/clothing/under/retrosweater name = "retro sweater" diff --git a/code/modules/clothing/under/miscellaneous_vr.dm b/code/modules/clothing/under/miscellaneous_vr.dm index 06576db377..196024ef98 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/coins.dm b/code/modules/economy/coins.dm index 8b11b22023..51438cc101 100644 --- a/code/modules/economy/coins.dm +++ b/code/modules/economy/coins.dm @@ -90,7 +90,7 @@ CC.update_icon() cut_overlays() string_attached = null - to_chat(user, "You detach the string from the coin.") + to_chat(user, "You detach the string from the coin.") else ..() /obj/item/weapon/coin/attack_self(mob/user as mob) diff --git a/code/modules/economy/vending.dm b/code/modules/economy/vending.dm index c05c3e1a69..929023ce86 100644 --- a/code/modules/economy/vending.dm +++ b/code/modules/economy/vending.dm @@ -184,7 +184,7 @@ GLOBAL_LIST_EMPTY(vending_products) /obj/machinery/vending/emag_act(var/remaining_charges, var/mob/user) if(!emagged) emagged = 1 - to_chat(user, "You short out \the [src]'s product lock.") + to_chat(user, "You short out \the [src]'s product lock.") return 1 /obj/machinery/vending/attackby(obj/item/weapon/W as obj, mob/user as mob) @@ -243,9 +243,9 @@ GLOBAL_LIST_EMPTY(vending_products) else if(W.is_wrench()) playsound(src, W.usesound, 100, 1) if(anchored) - user.visible_message("[user] begins unsecuring \the [src] from the floor.", "You start unsecuring \the [src] from the floor.") + user.visible_message("[user] begins unsecuring \the [src] from the floor.", "You start unsecuring \the [src] from the floor.") else - user.visible_message("[user] begins securing \the [src] to the floor.", "You start securing \the [src] to the floor.") + user.visible_message("[user] begins securing \the [src] to the floor.", "You start securing \the [src] to the floor.") if(do_after(user, 20 * W.toolspeed)) if(!src) return @@ -487,7 +487,7 @@ GLOBAL_LIST_EMPTY(vending_products) return FALSE if(!coin) - to_chat(usr, "There is no coin in this machine.") + to_chat(usr, "There is no coin in this machine.") return coin.forceMove(src.loc) @@ -538,7 +538,7 @@ GLOBAL_LIST_EMPTY(vending_products) var/obj/item/weapon/card/id/C = H.GetIdCard() if(!vendor_account || vendor_account.suspended) - to_chat(usr, "Vendor account offline. Unable to process transaction.") + to_chat(usr, "Vendor account offline. Unable to process transaction.") flick("[icon_state]-deny",src) vend_ready = TRUE return @@ -679,7 +679,7 @@ GLOBAL_LIST_EMPTY(vending_products) return 0 if (src.anchored || usr:stat) - to_chat(usr, "It is bolted down!") + to_chat(usr, "It is bolted down!") return 0 src.set_dir(turn(src.dir, 270)) return 1 diff --git a/code/modules/economy/vending_machines.dm b/code/modules/economy/vending_machines.dm index a23d7447a8..213e01305b 100644 --- a/code/modules/economy/vending_machines.dm +++ b/code/modules/economy/vending_machines.dm @@ -915,9 +915,6 @@ /obj/item/weapon/reagent_containers/pill/adminordrazine = 10, /obj/item/weapon/tool/crowbar = 1) - -////////////////////ancient_vend (Hot Food - Old) (ADDED 04/11/2021)//////////////////////////////////////////////////// - /obj/machinery/vending/hotfood name = "\improper Hot Foods!" desc = "An old vending machine promising 'hot foods'. You doubt any of its contents are still edible." @@ -931,8 +928,6 @@ /obj/item/weapon/reagent_containers/food/snacks/old/taco = 2 ) -////////////////////weeb_vend (Nippon-tan!) (ADDED 04/11/2021)///////////////////////////////////////////////// - /obj/machinery/vending/weeb name = "\improper Nippon-tan!" desc = "A distressingly ethnic vending machine loaded with high sucrose low calorie for lack of better words snacks." @@ -964,8 +959,6 @@ /obj/item/weapon/reagent_containers/food/snacks/daifuku = 5 ) -////////////////////sol_vend (Mars Mart) (ADDED 04/11/2021)//////////////////////////////////////////////////// - /obj/machinery/vending/sol name = "\improper Sol-Snacks" desc = "A SolCentric vending machine dispensing a number of Sol-themed snacks, along with other foods." @@ -998,10 +991,6 @@ /obj/item/weapon/storage/box/admints = 2 ) -////////////////////snix_vend (Snix!) (ADDED 04/11/2021)//////////////////////////////////////////// - -//////a food variant of the boda machine - It carries slavic themed foods.. Mostly beer snacks.///// - /obj/machinery/vending/snix name = "\improper Snix" desc = "A snack vending machine, offering a selection of slavic beer snacks." @@ -1040,8 +1029,6 @@ /obj/item/weapon/reagent_containers/food/snacks/hakarl = 8 ) -////////////////////snl_vend (Shop-n-Large Snacks!) (ADDED 04/16/2021)////////////////////////////// - /obj/machinery/vending/snlvend name = "\improper Shop-n-Large Snacks!" desc = "A Shop-n-Large brand vending machine! Enjoy all your favorites!" @@ -1094,8 +1081,6 @@ /obj/item/weapon/reagent_containers/food/snacks/cookiesnack = 5 ) -///////////////////////Soviet Stuff/////////////////////////////////////// - /obj/machinery/vending/sovietsoda name = "BODA" desc = "An old sweet water vending machine, how did this end up here?" @@ -1111,7 +1096,7 @@ idle_power_usage = 211 //refrigerator - believe it or not, this is actually the average power consumption of a refrigerated vending machine according to NRCan. vending_sound = "machines/vending/vending_cans.ogg" -/obj/machinery/vending/sovietvend //ADDITION 04/20/2021 +/obj/machinery/vending/sovietvend name = "Ration Station" desc = "An old ration vendor unit. How it even still functional?" icon = 'icons/obj/vending.dmi' @@ -1122,8 +1107,6 @@ /obj/item/weapon/reagent_containers/food/snacks/packaged/meatration = 8) contraband = list(/obj/item/weapon/reagent_containers/food/snacks/packaged/sweetration = 2) -///////////////////////Radical Renard/////////////////////////////////////// - /obj/machinery/vending/radren name = "Radical Renard Sodas" desc = "A softdrink vendor owned by a frontier based soda company that's been contracted by NanoTrasen" @@ -1151,9 +1134,6 @@ /obj/item/weapon/reagent_containers/food/drinks/cans/gingerale = 1) idle_power_usage = 211 //refrigerator - believe it or not, this is actually the average power consumption of a refrigerated vending machine according to NRCan. vending_sound = "machines/vending/vending_cans.ogg" - -///////////////////////Donk-Soft!/////////////////////////////////////// - /obj/machinery/vending/donksoft name = "Donk-Soft!" desc = "A toy vendor owned by Donk-Soft, a NanoTrasen sub-company." diff --git a/code/modules/economy/vending_machines_vr.dm b/code/modules/economy/vending_machines_vr.dm index 0b353a907b..f559176722 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 ac4c767721..4a16b81edc 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 385759bc8d..a3ac8727f9 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 f2c69ba3c3..c063a87a17 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 d098839f5b..24d78db239 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/synthetics.dm b/code/modules/emotes/definitions/synthetics.dm index 4d5fea40ef..d3e8fe355f 100644 --- a/code/modules/emotes/definitions/synthetics.dm +++ b/code/modules/emotes/definitions/synthetics.dm @@ -14,6 +14,11 @@ emote_sound = 'sound/machines/twobeep.ogg' sound_vary = FALSE +/decl/emote/audible/synth/bing + key = "bing" + emote_message_3p = "bings." + emote_sound = 'sound/machines/ping.ogg' + /decl/emote/audible/synth/buzz key = "buzz" emote_message_3p = "buzzes." diff --git a/code/modules/emotes/definitions/visible.dm b/code/modules/emotes/definitions/visible.dm index d37058626d..78cfa4ec7d 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 840350031f..55ef610664 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/examine/descriptions/guns.dm b/code/modules/examine/descriptions/guns.dm new file mode 100644 index 0000000000..ed03580d73 --- /dev/null +++ b/code/modules/examine/descriptions/guns.dm @@ -0,0 +1,152 @@ +/obj/item/weapon/gun/proc/describe_firepower() + var/obj/item/projectile/P + if(istype(src, /obj/item/weapon/gun/energy)) + var/obj/item/weapon/gun/energy/energy_gun = src + P = new energy_gun.projectile_type() + else if(istype(src, /obj/item/weapon/gun/projectile/shotgun/pump)) + var/obj/item/weapon/gun/projectile/shotgun/pump/projectile_gun = src + if(isnull(projectile_gun.chambered) || isnull(projectile_gun.chambered.BB)) + return "no" + else + var/obj/item/ammo_casing/ammo = projectile_gun.chambered + P = ammo.BB + else if(istype(src, /obj/item/weapon/gun/projectile)) + var/obj/item/weapon/gun/projectile/projectile_gun = src + var/obj/item/ammo_casing/ammo + if(projectile_gun.ammo_magazine) + ammo = projectile_gun.ammo_magazine.contents[1] + else + ammo = projectile_gun.contents[1] + P = ammo.BB + switch(P.damage) + if(0) + return "no" + if(1 to 5) + return "a very small amount of" + if(6 to 15) + return "a small amount of" + if(16 to 25) + return "a modest amount of" + if(26 to 40) + return "a respectable amount of" + if(41 to 60) + return "a serious amount of" + if(61 to 80) + return "a lot of" + if(81 to 2000) + return "a ruinous amount of" + qdel(P) + +/obj/item/weapon/gun/proc/describe_proj_penetration() + var/obj/item/projectile/P + if(istype(src, /obj/item/weapon/gun/energy)) + var/obj/item/weapon/gun/energy/energy_gun = src + P = new energy_gun.projectile_type() + else if(istype(src, /obj/item/weapon/gun/projectile/shotgun/pump)) + var/obj/item/weapon/gun/projectile/shotgun/pump/projectile_gun = src + if(isnull(projectile_gun.chambered) || isnull(projectile_gun.chambered.BB)) + return "as it has no projectile loaded" + else + var/obj/item/ammo_casing/ammo = projectile_gun.chambered + P = ammo.BB + else if(istype(src, /obj/item/weapon/gun/projectile)) + var/obj/item/weapon/gun/projectile/projectile_gun = src + var/obj/item/ammo_casing/ammo + if(projectile_gun.ammo_magazine) + ammo = projectile_gun.ammo_magazine.contents[1] + else + ammo = projectile_gun.contents[1] + P = ammo.BB + switch(P.armor_penetration) + if(0) + return "cannot pierce armor" + if(1 to 20) + return "barely pierces armor" + if(21 to 30) + return "slightly pierces armor" + if(31 to 40) + return "reliably pierces lighter armors" + if(41 to 50) + return "pierces standard-issue armor reliably" + if(51 to 60) + return "pierces most armor reliably" + if(61 to 70) + return "pierces a great deal of armor" + if(71 to 80) + return "pierces the vast majority of armor" + if(81 to 99) + return "almost completely pierces all armor" + if(100 to 1000) + return "completely and utterly pierces all armor" + qdel(P) + +/obj/item/weapon/gun/proc/describe_firerate() + switch(fire_delay) + if(0) + return "no delay" + if(1 to 4) + return "a very short delay" + if(5 to 8) + return "a short delay" + if(9 to 12) + return "a moderate delay" + if(13 to 15) + return "a noticeable delay" + if(16 to 20) + return "a distinct delay" + if(21 to 30) + return "a long delay" + if(31 to 50) + return "a very long delay" + if(51 to 100) + return "an extremely long delay" + +/obj/item/weapon/gun/get_description_info() + var/is_loaded + var/non_lethal + var/non_lethal_list = list(/obj/item/weapon/gun/energy/medigun,/obj/item/weapon/gun/energy/mouseray,/obj/item/weapon/gun/energy/temperature,/obj/item/weapon/gun/energy/sizegun,/obj/item/weapon/gun/projectile/shotgun/pump/toy,/obj/item/weapon/gun/projectile/revolver/toy,/obj/item/weapon/gun/projectile/pistol/toy,/obj/item/weapon/gun/projectile/automatic/toy) + var/less_lethal + var/less_lethal_list = list(/obj/item/weapon/gun/energy/taser,/obj/item/weapon/gun/energy/stunrevolver,/obj/item/weapon/gun/energy/plasmastun,/obj/item/weapon/gun/energy/bfgtaser) + var/weapon_stats = description_info + "\ +
    " + if(istype(src, /obj/item/weapon/gun/energy)) + is_loaded = LAZYLEN(src.contents) + if(istype(src, /obj/item/weapon/gun/projectile/shotgun/pump)) + var/obj/item/weapon/gun/projectile/shotgun/pump/shotgun = src + if(isnull(shotgun.chambered) || isnull(shotgun.chambered.BB)) + is_loaded = null + else + is_loaded = shotgun.chambered + if(istype(src, /obj/item/weapon/gun/projectile)) + var/obj/item/weapon/gun/projectile/projectile_gun = src + var/ammo + if(projectile_gun.ammo_magazine) + ammo = projectile_gun.ammo_magazine.contents + else + ammo = projectile_gun.contents + is_loaded = LAZYLEN(ammo) + for(var/llweapontype in less_lethal_list) + if(istype(src,llweapontype)) + is_loaded = null + less_lethal = TRUE + for(var/nlweapontype in non_lethal_list) + if(istype(src,nlweapontype)) + is_loaded = null + non_lethal = TRUE + + if(is_loaded) + weapon_stats += "\nIf fired, it would deal [describe_firepower()] damage, [describe_proj_penetration()], and has [describe_firerate()] between shots." + else if(less_lethal) + weapon_stats += "\nIf fired, it would deal stunning damage to incapacitate targets, and has [describe_firerate()] between shots." + else if(non_lethal) + weapon_stats += "\nThis is an entirely non-lethal weapon, such as a mouseray, toy, or sizegun! Its effects cannot easily be quantified." + else + weapon_stats += "\nIt isn't loaded!" + if(force) + weapon_stats += "\nIf used in melee, it deals [describe_power()] [sharp ? "sharp" : "blunt"] damage, [describe_penetration()], and has [describe_speed()]." + if(can_cleave) + weapon_stats += "\nIt is capable of hitting multiple targets with a single swing." + if(reach > 1) + weapon_stats += "\nIt can attack targets up to [reach] tiles away, and can attack over certain objects." + + return weapon_stats \ No newline at end of file diff --git a/code/modules/examine/descriptions/items.dm b/code/modules/examine/descriptions/items.dm new file mode 100644 index 0000000000..148e62d699 --- /dev/null +++ b/code/modules/examine/descriptions/items.dm @@ -0,0 +1,91 @@ +/obj/item/proc/describe_power() + switch(force) + if(0) + return "a negligable amount of" + if(1 to 2) + return "a very small amount of" + if(3 to 5) + return "a small amount of" + if(6 to 10) + return "a modest amount of" + if(11 to 15) + return "a moderate amount of" + if(16 to 20) + return "a respectable amount of" + if(21 to 35) + return "a serious amount of" + if(36 to 50) + return "a very serious amount of" + if(51 to 100) + return "a very lethal amount of" + if(101 to 2000) + return "a truly ruinous amount of" + +/obj/item/proc/describe_throwpower() + switch(throwforce) + if(0) + return "a negligable amount of" + if(1 to 2) + return "a very small amount of" + if(3 to 5) + return "a small amount of" + if(6 to 10) + return "a modest amount of" + if(11 to 15) + return "a moderate amount of" + if(16 to 20) + return "a respectable amount of" + if(21 to 35) + return "a serious amount of" + if(36 to 50) + return "a very serious amount of" + if(51 to 100) + return "a very lethal amount of" + if(101 to 2000) + return "a truly ruinous amount of" + +/obj/item/proc/describe_penetration() + switch(armor_penetration) + if(0) + return "cannot pierce armor" + if(1 to 20) + return "barely pierces armor" + if(21 to 30) + return "slightly pierces armor" + if(31 to 40) + return "reliably pierces lighter armors" + if(41 to 50) + return "pierces standard-issue armor reliably" + if(51 to 60) + return "pierces most armor reliably" + if(61 to 70) + return "pierces a great deal of armor" + if(71 to 80) + return "pierces the vast majority of armor" + if(81 to 99) + return "almost completely pierces all armor" + if(100 to 1000) + return "completely and utterly pierces all armor" + +/obj/item/proc/describe_speed() + if(attackspeed > DEFAULT_ATTACK_COOLDOWN) + return "a slow attack speed" + else if(attackspeed < DEFAULT_ATTACK_COOLDOWN) + return "a high attack speed" + else + return "an average attack speed" + +/obj/item/get_description_info() + var/weapon_stats = description_info + "\ +
    " + + if(force) + weapon_stats += "\nIf used in melee, it deals [describe_power()] [sharp ? "sharp" : "blunt"] damage, [describe_penetration()], and has [describe_speed()]." + if(throwforce) + weapon_stats += "\nIf thrown, it would deal [describe_throwpower()] [sharp ? "sharp" : "blunt"] damage." + if(can_cleave) + weapon_stats += "\nIt is capable of hitting multiple targets with a single swing." + if(reach > 1) + weapon_stats += "\nIt can attack targets up to [reach] tiles away, and can attack over certain objects." + + return weapon_stats \ No newline at end of file diff --git a/code/modules/examine/descriptions/weapons.dm b/code/modules/examine/descriptions/weapons.dm index 747fa0f75f..7016d84a9a 100644 --- a/code/modules/examine/descriptions/weapons.dm +++ b/code/modules/examine/descriptions/weapons.dm @@ -77,6 +77,30 @@ //******* //*Melee* //******* +/* +/obj/item/weapon/melee/baton/proc/describe_agonypower() + switch(agonyforce) + if(1 to 20) + return "a mild amount of" + if(21 to 40) + return "a modest amount of" + if(41 to 60) + return "a moderate amount of" + if(61 to 80) + return "a serious amount of" + if(81 to 100) + return "a significant amount of" + +/obj/item/weapon/melee/baton/get_description_info() + . = ..() + var/baton_stats = description_info + "\ +
    " + + if(agonyforce) + baton_stats += "\nIt also inflicts [describe_agonypower()] pain, if charged and active." + + return baton_stats +*/ /obj/item/weapon/melee/baton description_info = "The baton needs to be turned on to apply the stunning effect. Use it in your hand to toggle it on or off. If your intent is \ diff --git a/code/modules/examine/examine.dm b/code/modules/examine/examine.dm index e619c5fec4..c33ecae6b9 100644 --- a/code/modules/examine/examine.dm +++ b/code/modules/examine/examine.dm @@ -93,7 +93,7 @@ var/list/results = A.examine(src) if(!results || !results.len) results = list("You were unable to examine that. Tell a developer!") - to_chat(src, jointext(results, "
    ")) + to_chat(src, "[jointext(results, "
    ")]
    ") update_examine_panel(A) /mob/proc/update_examine_panel(var/atom/A) diff --git a/code/modules/fireworks/firework_launcher.dm b/code/modules/fireworks/firework_launcher.dm index 5f7720fa8c..c7662e6226 100644 --- a/code/modules/fireworks/firework_launcher.dm +++ b/code/modules/fireworks/firework_launcher.dm @@ -51,7 +51,7 @@ return if(user.unEquip(O, 0, src)) loaded_star = O - to_chat(user, "You insert the firework star into the launcher.") + to_chat(user, "You insert the firework star into \the [src].") add_fingerprint(user) update_icon() return @@ -67,7 +67,7 @@ if(!user || user.stat != 0) return if(!loaded_star) - to_chat(user, "There is no firework star loaded in the launcher.") + to_chat(user, "There is no firework star loaded in \the [src].") return else loaded_star.forceMove(get_turf(src)) @@ -81,25 +81,25 @@ return if(!loaded_star) - to_chat(user, "There is no firework star loaded in the launcher.") + to_chat(user, "There is no firework star loaded in \the [src].") return if((world.time - last_launch) <= launch_cooldown) - to_chat(user, "The launcher is still re-priming for launch.") + to_chat(user, "\The [src] is still re-priming for launch.") return if(!anchored) - to_chat(user, "Launcher must be firmly secured to the ground before firework can be launched!") + to_chat(user, "\The [src] must be firmly secured to the ground before firework can be launched!") return var/datum/planet/P = get_planet() if(!P || !(P.weather_holder)) // There are potential cases of being outside but not on planet. And checking whether planet has weather at all is more sanity thing than anything. - to_chat(user, "Launcher beeps as its safeties seem to prevent launch in the current location.") + to_chat(user, "\The [src] beeps as its safeties seem to prevent launch in the current location.") return var/datum/weather_holder/WH = P.weather_holder if(WH.firework_override && istype(loaded_star, /obj/item/weapon/firework_star/weather)) // Enable weather-based events to not be ruined - to_chat(user, "Launcher beeps as it seems some interference is preventing launch of this type of firework.") + to_chat(user, "\The [src] beeps as it seems some interference is preventing launch of this type of firework.") return to_chat(user, "You launch the firework!") diff --git a/code/modules/fireworks/firework_stars.dm b/code/modules/fireworks/firework_stars.dm index a276539424..31cb9d3c59 100644 --- a/code/modules/fireworks/firework_stars.dm +++ b/code/modules/fireworks/firework_stars.dm @@ -24,9 +24,10 @@ if(w_holder.firework_override) // Make sure weather-based events can't be interfered with return if(weather_type && (weather_type in w_holder.allowed_weather_types)) - w_holder.message_all_outdoor_players("Something seems to flash in the sky, as weather suddenly shifts!") - w_holder.change_weather(weather_type) - w_holder.rebuild_forecast() + w_holder.message_all_outdoor_players("Something seems to flash in the sky, as weather starts to rapidly shift!") + w_holder.queue_imminent_weather(weather_type) + var/datum/weather/our_weather = w_holder.allowed_weather_types[weather_type] + w_holder.message_all_outdoor_players(our_weather.imminent_transition_message) /obj/item/weapon/firework_star/weather/clear name = T_FIREWORK_WEATHER_STAR("CLEAR SKY") @@ -38,6 +39,11 @@ weather_type = WEATHER_OVERCAST icon_state = "cloudy" +/obj/item/weapon/firework_star/weather/fog + name = T_FIREWORK_WEATHER_STAR("FOG") + weather_type = WEATHER_FOG + icon_state = "cloudy" + /obj/item/weapon/firework_star/weather/rain name = T_FIREWORK_WEATHER_STAR("RAIN") weather_type = WEATHER_RAIN diff --git a/code/modules/fishing/fishing.dm b/code/modules/fishing/fishing.dm index 7e4a9d85bc..802faf2d6b 100644 --- a/code/modules/fishing/fishing.dm +++ b/code/modules/fishing/fishing.dm @@ -145,7 +145,7 @@ GLOBAL_LIST_INIT(generic_fishing_chance_list, list(FISHING_RARE = 5, FISHING_UNC has_fish = FALSE //List of possible outcomes. if(!fish_type) - to_chat(user,"You caught... nothing. How sad.") + to_chat(user,"You caught... nothing. How sad.") else var/fished = new fish_type(get_turf(user)) if(isliving(fished)) diff --git a/code/modules/fishing/fishing_net.dm b/code/modules/fishing/fishing_net.dm index 3ba2f1591a..8c98448427 100644 --- a/code/modules/fishing/fishing_net.dm +++ b/code/modules/fishing/fishing_net.dm @@ -48,7 +48,7 @@ to_chat(user, "Your net is already holding something!") accept = FALSE if(!accept) - to_chat(user, "[A] can't be trapped in \the [src].") + to_chat(user, "[A] can't be trapped in \the [src].") return var/mob/L = A user.visible_message("[user] snatches [L] with \the [src].", "You snatch [L] with \the [src].") diff --git a/code/modules/flufftext/TextFilters.dm b/code/modules/flufftext/TextFilters.dm index ff6a44c3dc..a54e66bb02 100644 --- a/code/modules/flufftext/TextFilters.dm +++ b/code/modules/flufftext/TextFilters.dm @@ -13,9 +13,10 @@ if(lowertext(newletter)=="s") newletter="ch" if(lowertext(newletter)=="a") newletter="ah" if(lowertext(newletter)=="c") newletter="k" - switch(rand(1,7)) + switch(rand(1,9)) if(1,3,5,8) newletter="[lowertext(newletter)]" - if(2,4,6,15) newletter="[uppertext(newletter)]" + //if(2,4,6,15) newletter="[uppertext(newletter)]" + if(2,4,6,9) newletter="[uppertext(newletter)]" if(7) newletter+="'" //if(9,10) newletter="[newletter]" //if(11,12) newletter="[newletter]" diff --git a/code/modules/flufftext/look_up.dm b/code/modules/flufftext/look_up.dm index 10cd25b288..ec7bf85f23 100644 --- a/code/modules/flufftext/look_up.dm +++ b/code/modules/flufftext/look_up.dm @@ -28,6 +28,11 @@ if(WH.current_weather.observed_message) to_chat(usr, WH.current_weather.observed_message) + // Describe the current weather. + if(WH.imminent_weather) + var/datum/weather/coming_weather = WH.allowed_weather_types[WH.imminent_weather] + to_chat(usr, coming_weather.imminent_transition_message) + // If we can see the sky, we'll see things like sun position, phase of the moon, etc. if(!WH.current_weather.sky_visible) to_chat(usr, "You can't see the sky clearly due to the [WH.current_weather.name].") diff --git a/code/modules/food/drinkingglass/mugs.dm b/code/modules/food/drinkingglass/mugs.dm index 07a0873a30..327de26a41 100644 --- a/code/modules/food/drinkingglass/mugs.dm +++ b/code/modules/food/drinkingglass/mugs.dm @@ -78,12 +78,12 @@ /obj/item/weapon/reagent_containers/food/drinks/glass2/coffeemug/alma name = "\improper Almach Association coffee cup" desc = "A grey coffee cup emblazoned with the star of the Almach Association." - icon_state = "coffeecup_alma" + base_icon = "coffeecup_alma" /obj/item/weapon/reagent_containers/food/drinks/glass2/coffeemug/almp name = "\improper Almach Protectorate coffee cup" desc = "A purple coffee cup emblazoned with the star of the Almach Protectorate." - icon_state = "coffeecup_almp" + base_icon = "coffeecup_almp" /obj/item/weapon/reagent_containers/food/drinks/glass2/coffeemug/psc name = "\improper Pearlshield coffee mug" @@ -119,7 +119,7 @@ /obj/item/weapon/reagent_containers/food/drinks/glass2/coffeemug/zeng name = "\improper Zeng-Hu coffee cup" desc = "A coffee cup bearing the Zeng-Hu logo." - icon_state = "coffeecup_zeng" + base_icon = "coffeecup_zeng" /obj/item/weapon/reagent_containers/food/drinks/glass2/coffeemug/bishop name = "\improper Bishop coffee mug" @@ -170,7 +170,7 @@ /obj/item/weapon/reagent_containers/food/drinks/glass2/coffeemug/flame name = "flame coffee cup" desc = "A coffee cup with the a flame emblazoned on it." - icon_state = "coffeecup_flame" + base_icon = "coffeecup_flame" // Pure colors & other /obj/item/weapon/reagent_containers/food/drinks/glass2/coffeemug/black @@ -248,4 +248,4 @@ /obj/item/weapon/reagent_containers/food/drinks/glass2/coffeemug/tall/rainbow name = "tall rainbow coffee mug" desc = "An unreasonably tall coffee mug, for when you really need to wake up in the morning. This one is rainbow colored." - base_icon = "coffeecup_tall_rainbow" \ No newline at end of file + base_icon = "coffeecup_tall_rainbow" diff --git a/code/modules/food/food/cans.dm b/code/modules/food/food/cans.dm index 0cf2e2f5a2..8001d10516 100644 --- a/code/modules/food/food/cans.dm +++ b/code/modules/food/food/cans.dm @@ -198,7 +198,7 @@ /obj/item/weapon/reagent_containers/food/drinks/cans/kvass name = "\improper Kvass" desc = "A true Slavic soda." - description_fluff = "A classic slavic beverage which many Space Russians still enjoy to this day. Fun fact, it is actually considered a weak beer by non-russians." + description_fluff = "A classic slavic beverage which many space-faring slavs still enjoy to this day. Fun fact, it is actually considered a weak beer by non-russians." icon_state = "kvass" center_of_mass = list("x"=16, "y"=10) diff --git a/code/modules/food/food/snacks.dm b/code/modules/food/food/snacks.dm index c6468ca949..8299902b61 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) @@ -6400,7 +6433,7 @@ name = "\improper Suhariki" icon = 'icons/obj/food_snacks.dmi' icon_state = "croutons" - desc = "Fried bread cubes. Popular in Terran territories." + desc = "Fried bread cubes. Popular in some Solar territories." trash = /obj/item/trash/croutons filling_color = "#c6b17f" center_of_mass = list ("x"=15, "y"=9) @@ -6574,7 +6607,7 @@ .=..() reagents.add_reagent("capsaicin", 5) -/obj/item/weapon/reagent_containers/food/snacks/sun_snax //ADDITION 04/14/2021 +/obj/item/weapon/reagent_containers/food/snacks/sun_snax name = "\improper Sun Snax!" icon = 'icons/obj/food_snacks.dmi' icon_state = "sun_snax" @@ -6674,7 +6707,7 @@ .=..() reagents.add_reagent("capsaicin",1) -/obj/item/weapon/reagent_containers/food/snacks/wasabi_peas //ADDITION 04/14/2021 +/obj/item/weapon/reagent_containers/food/snacks/wasabi_peas name = "\improper Hadokikku Peas" icon = 'icons/obj/food_snacks.dmi' icon_state = "wasabi_peas" @@ -6880,7 +6913,7 @@ /obj/item/weapon/reagent_containers/food/snacks/canned/maps name = "\improper MAPS" icon_state = "maps" - desc = "A re-branding of a classic Terran snack! Contains mostly edible ingredients." + desc = "A re-branding of a classic Earth snack! Contains mostly edible ingredients." trash = /obj/item/trash/maps canned_open_state = "maps-open" filling_color = "#330066" @@ -7008,7 +7041,7 @@ description_fluff = "Despite Spacer advertisements consistently portraying their snack cakes as life-saving, \ tear-jerking survival food for spacers in all kinds of dramatic scenarios, the Spacer Snack Cake has been \ statistically proven to lower survival rates on all missions where it is present." - package_trash = /obj/item/trash/spacercake_wrap + package_trash = /obj/item/trash/spacer_cake_wrap package_open_state = "spacercake_open" filling_color = "#FFE591" center_of_mass = list("x"=15, "y"=11) diff --git a/code/modules/food/food/z_custom_food_vr.dm b/code/modules/food/food/z_custom_food_vr.dm index 3ca9b4fa9a..3fcd9d990c 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 = 20000 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/food/kitchen/cooking_machines/_appliance.dm b/code/modules/food/kitchen/cooking_machines/_appliance.dm index 9c15139fba..7f71133f3a 100644 --- a/code/modules/food/kitchen/cooking_machines/_appliance.dm +++ b/code/modules/food/kitchen/cooking_machines/_appliance.dm @@ -157,12 +157,12 @@ if (stat & POWEROFF)//Its turned off stat &= ~POWEROFF use_power = 1 - user.visible_message("[user] turns [src] on.", "You turn on [src].") + user.visible_message("[user] turns [src] on.", "You turn on [src].") else //Its on, turn it off stat |= POWEROFF use_power = 0 - user.visible_message("[user] turns [src] off.", "You turn off [src].") + user.visible_message("[user] turns [src] off.", "You turn off [src].") cooking = FALSE // Stop cooking here, too, just in case. playsound(src, 'sound/machines/click.ogg', 40, 1) @@ -180,14 +180,14 @@ return if (!usr.IsAdvancedToolUser()) - to_chat(usr, "You lack the dexterity to do that!") + to_chat(usr, "You lack the dexterity to do that!") return if (usr.stat || usr.restrained() || usr.incapacitated()) return if (!Adjacent(usr) && !issilicon(usr)) - to_chat(usr, "You can't adjust the [src] from this distance, get closer!") + to_chat(usr, "You can't adjust the [src] from this distance, get closer!") return if(output_options.len) diff --git a/code/modules/food/kitchen/cooking_machines/_cooker.dm b/code/modules/food/kitchen/cooking_machines/_cooker.dm index ef097485b9..e02d6dd477 100644 --- a/code/modules/food/kitchen/cooking_machines/_cooker.dm +++ b/code/modules/food/kitchen/cooking_machines/_cooker.dm @@ -61,7 +61,7 @@ var/obj/item/I = usr.get_active_hand() if(slot <= LAZYLEN(cooking_objs)) // Inserting var/datum/cooking_item/CI = cooking_objs[slot] - + if(istype(I) && can_insert(I)) // Why do hard work when we can just make them smack us? attackby(I, usr) else if(istype(CI)) @@ -82,7 +82,7 @@ . += "Temperature: [round(temperature - T0C, 0.1)]C / [round(optimal_temp - T0C, 0.1)]C" else . += "It is switched off." - + /obj/machinery/appliance/cooker/list_contents(var/mob/user) if (cooking_objs.len) var/string = "Contains...
    " @@ -95,7 +95,7 @@ to_chat(user, string) else to_chat(user, "It's empty.") - + /obj/machinery/appliance/cooker/proc/get_efficiency() // to_world("Our cooking_power is [cooking_power] and our efficiency is [(cooking_power / optimal_power) * 100].") // Debug lines, uncomment if you need to test. return (cooking_power / optimal_power) * 100 @@ -131,11 +131,11 @@ if (temperature > T.temperature) equalize_temperature() ..() - + /obj/machinery/appliance/cooker/power_change() . = ..() update_icon() // this probably won't cause issues, but Aurora used SSIcons and queue_icon_update() instead - + /obj/machinery/appliance/cooker/proc/update_cooking_power() var/temp_scale = 0 if(temperature > min_temp) @@ -143,22 +143,22 @@ temp_scale = 1 else temp_scale = (temperature - min_temp) / (optimal_temp - min_temp) // If we're between min and optimal this will yield a value in the range 0-1 - + /* // old code for reference, will be useful if/when we implement ovens with configurable temperatures - TODO recipes with optimal temps for cooking per-recipe?? temp_scale = (temperature - min_temp) / (optimal_temp - min_temp) // If we're between min and optimal this will yield a value in the range 0-1 - + if(temp_scale > 1) // We're above optimal, efficiency goes down as we pass too much over it if(temp_scale >= 2) temp_scale = 0 else temp_scale = 1 - (temp_scale - 1) */ - + cooking_coeff = optimal_power * temp_scale // to_world("Our cooking_power is [cooking_power] and our tempscale is [temp_scale], and our cooking_coeff is [cooking_coeff] before RefreshParts.") // Debug lines, uncomment if you need to test. RefreshParts() // to_world("Our cooking_power is [cooking_power] after RefreshParts.") // Debug lines, uncomment if you need to test. - + /obj/machinery/appliance/cooker/proc/heat_up() if(temperature < optimal_temp) if(use_power == 1 && ((optimal_temp - temperature) > 5)) @@ -199,5 +199,5 @@ /obj/machinery/appliance/cooker/add_content(var/obj/item/I, var/mob/user) var/datum/cooking_item/CI = ..() if(istype(CI) && CI.combine_target) - to_chat(user, "\The [I] will be used to make a [selected_option]. Output selection is returned to default for future items.") + to_chat(user, "\The [I] will be used to make a [selected_option]. Output selection is returned to default for future items.") selected_option = null \ No newline at end of file diff --git a/code/modules/food/kitchen/cooking_machines/_mixer.dm b/code/modules/food/kitchen/cooking_machines/_mixer.dm index 7d18865167..f04f8bba46 100644 --- a/code/modules/food/kitchen/cooking_machines/_mixer.dm +++ b/code/modules/food/kitchen/cooking_machines/_mixer.dm @@ -25,12 +25,12 @@ fundamental differences cooking_objs += new /datum/cooking_item(new /obj/item/weapon/reagent_containers/cooking_container(src)) cooking = FALSE selected_option = pick(output_options) - + mixer_loop = new(list(src), FALSE) - + /obj/machinery/appliance/mixer/Destroy() . = ..() - + QDEL_NULL(mixer_loop) //Mixers cannot-not do combining mode. So the default option is removed from this. A combine target must be chosen @@ -83,7 +83,7 @@ fundamental differences for(var/datum/cooking_item/CI as anything in cooking_objs) if (CI.container) if (!CI.container.check_contents()) - to_chat(user, "There's nothing in [src] you can remove!") + to_chat(user, "There's nothing in [src] you can remove!") return for (var/obj/item/I in CI.container) @@ -106,20 +106,20 @@ fundamental differences var/datum/cooking_item/CI = cooking_objs[1] if(!CI.container.check_contents()) - to_chat("There's nothing in it! Add ingredients before turning [src] on!") + to_chat("There's nothing in it! Add ingredients before turning [src] on!") return if(stat & POWEROFF)//Its turned off stat &= ~POWEROFF if(usr) - usr.visible_message("[usr] turns the [src] on", "You turn on \the [src].") + usr.visible_message("[usr] turns the [src] on.", "You turn on \the [src].") get_cooking_work(CI) use_power = 2 else //Its on, turn it off stat |= POWEROFF use_power = 0 if(usr) - usr.visible_message("[usr] turns the [src] off", "You turn off \the [src].") + usr.visible_message("[usr] turns the [src] off.", "You turn off \the [src].") playsound(src, 'sound/machines/click.ogg', 40, 1) update_icon() diff --git a/code/modules/food/kitchen/cooking_machines/container.dm b/code/modules/food/kitchen/cooking_machines/container.dm index bd4a9d8e00..fa6a5fea62 100644 --- a/code/modules/food/kitchen/cooking_machines/container.dm +++ b/code/modules/food/kitchen/cooking_machines/container.dm @@ -82,7 +82,7 @@ return if (!Adjacent(user)) - to_chat(user, "You can't reach [src] from here.") + to_chat(user, "You can't reach [src] from here.") return if (!contents.len) diff --git a/code/modules/food/kitchen/cooking_machines/fryer.dm b/code/modules/food/kitchen/cooking_machines/fryer.dm index f3ea0efdf6..6e28243bac 100644 --- a/code/modules/food/kitchen/cooking_machines/fryer.dm +++ b/code/modules/food/kitchen/cooking_machines/fryer.dm @@ -247,7 +247,7 @@ if (I.reagents.total_volume <= 0 && oil) //Its empty, handle scooping some hot oil out of the fryer oil.trans_to(I, I.reagents.maximum_volume) - user.visible_message("[user] scoops some oil out of \the [src].", span("notice","You scoop some oil out of \the [src].")) + user.visible_message("[user] scoops some oil out of \the [src].", span("notice","You scoop some oil out of \the [src].")) return 1 else //It contains stuff, handle pouring any oil into the fryer @@ -263,7 +263,7 @@ I.reagents.remove_reagent(R.id, delta) amount += delta if (amount > 0) - user.visible_message("[user] pours some oil into \the [src].", span("notice","You pour [amount]u of oil into \the [src]."), "You hear something viscous being poured into a metal container.") + user.visible_message("[user] pours some oil into \the [src].", "You pour [amount]u of oil into \the [src].", "You hear something viscous being poured into a metal container.") return 1 //If neither of the above returned, then call parent as normal ..() diff --git a/code/modules/food/kitchen/cooking_machines/grill.dm b/code/modules/food/kitchen/cooking_machines/grill.dm index b42ed038da..d7e1829092 100644 --- a/code/modules/food/kitchen/cooking_machines/grill.dm +++ b/code/modules/food/kitchen/cooking_machines/grill.dm @@ -13,7 +13,7 @@ active_power_usage = 4 KILOWATTS heating_power = 4000 idle_power_usage = 2 KILOWATTS - + optimal_power = 1.2 // Things on the grill cook .6 faster - this is now the fastest appliance to heat and to cook on. BURGERS GO SIZZLE. stat = POWEROFF // Starts turned off. @@ -22,18 +22,18 @@ optimal_temp = 120 + T0C min_temp = 60 + T0C resistance = 8 KILOWATTS // Very fast to heat up. - + max_contents = 3 // Arbitrary number, 3 grill 'racks' container_type = /obj/item/weapon/reagent_containers/cooking_container/grill - + /obj/machinery/appliance/cooker/grill/Initialize() . = ..() grill_loop = new(list(src), FALSE) - + /obj/machinery/appliance/cooker/grill/Destroy() QDEL_NULL(grill_loop) return ..() - + /obj/machinery/appliance/cooker/grill/update_icon() // TODO: Cooking icon if(!stat) icon_state = on_icon diff --git a/code/modules/food/kitchen/smartfridge/engineering.dm b/code/modules/food/kitchen/smartfridge/engineering.dm index 035af9aebb..2e31edf34c 100644 --- a/code/modules/food/kitchen/smartfridge/engineering.dm +++ b/code/modules/food/kitchen/smartfridge/engineering.dm @@ -1,4 +1,4 @@ -/obj/machinery/smartfridge/sheets //Is this used anywhere? It's not secure. +/obj/machinery/smartfridge/sheets name = "\improper Smart Sheet Storage" desc = "A storage unit for metals." icon_contents = "boxes" @@ -27,6 +27,6 @@ /obj/machinery/smartfridge/sheets/find_record(var/obj/item/O) for(var/datum/stored_item/stack/I as anything in item_records) - if(istype(O, I.item_path)) // Typecheck should evaluate material-specific subtype + if(O.type == I.item_path) // Typecheck should evaluate material-specific subtype return I - return null \ No newline at end of file + return null diff --git a/code/modules/food/kitchen/smartfridge/smartfridge.dm b/code/modules/food/kitchen/smartfridge/smartfridge.dm index 4077d54081..a929c8eda8 100644 --- a/code/modules/food/kitchen/smartfridge/smartfridge.dm +++ b/code/modules/food/kitchen/smartfridge/smartfridge.dm @@ -91,7 +91,7 @@ /obj/machinery/smartfridge/attackby(var/obj/item/O as obj, var/mob/user as mob) if(O.is_screwdriver()) panel_open = !panel_open - user.visible_message("[user] [panel_open ? "opens" : "closes"] the maintenance panel of \the [src].", "You [panel_open ? "open" : "close"] the maintenance panel of \the [src].") + user.visible_message("[user] [panel_open ? "opens" : "closes"] the maintenance panel of \the [src].", "You [panel_open ? "open" : "close"] the maintenance panel of \the [src].") playsound(src, O.usesound, 50, 1) update_icon() return @@ -130,11 +130,11 @@ else if(istype(O, /obj/item/weapon/gripper)) // Grippers. ~Mechoid. var/obj/item/weapon/gripper/B = O //B, for Borg. if(!B.wrapped) - to_chat(user, "\The [B] is not holding anything.") + to_chat(user, "\The [B] is not holding anything.") return else var/B_held = B.wrapped - to_chat(user, "You use \the [B] to put \the [B_held] into \the [src].") + to_chat(user, "You use \the [B] to put \the [B_held] into \the [src].") return else @@ -145,7 +145,7 @@ if(!emagged) emagged = 1 locked = -1 - to_chat(user, "You short out the product lock on [src].") + to_chat(user, "You short out the product lock on [src].") return 1 /obj/machinery/smartfridge/proc/find_record(var/obj/item/O) diff --git a/code/modules/hydroponics/grown.dm b/code/modules/hydroponics/grown.dm index 288e66bb1b..a7f5181219 100644 --- a/code/modules/hydroponics/grown.dm +++ b/code/modules/hydroponics/grown.dm @@ -210,7 +210,7 @@ if(G.get_amount() >= G.max_amount) continue G.attackby(NG, user) - to_chat(user, "You add the newly-formed wood to the stack. It now contains [NG.get_amount()] planks.") + to_chat(user, "You add the newly-formed wood to the stack. It now contains [NG.get_amount()] planks.") qdel(src) return @@ -221,31 +221,31 @@ return if(seed.kitchen_tag == "potato" || !isnull(seed.chems["potato"])) - to_chat(user, "You slice \the [src] into sticks.") + to_chat(user, "You slice \the [src] into sticks.") new /obj/item/weapon/reagent_containers/food/snacks/rawsticks(get_turf(src)) qdel(src) return if(!isnull(seed.chems["carrotjuice"])) - to_chat(user, "You slice \the [src] into sticks.") + to_chat(user, "You slice \the [src] into sticks.") new /obj/item/weapon/reagent_containers/food/snacks/carrotfries(get_turf(src)) qdel(src) return if(!isnull(seed.chems["pineapplejuice"])) - to_chat(user, "You slice \the [src] into rings.") + to_chat(user, "You slice \the [src] into rings.") new /obj/item/weapon/reagent_containers/food/snacks/pineapple_ring(get_turf(src)) qdel(src) return if(!isnull(seed.chems["soymilk"])) - to_chat(user, "You roughly chop up \the [src].") + to_chat(user, "You roughly chop up \the [src].") new /obj/item/weapon/reagent_containers/food/snacks/soydope(get_turf(src)) qdel(src) return if(seed.get_trait(TRAIT_FLESH_COLOUR)) - to_chat(user, "You slice up \the [src].") + to_chat(user, "You slice up \the [src].") var/slices = rand(3,5) var/reagents_to_transfer = round(reagents.total_volume/slices) for(var/i=1; i<=slices; i++) @@ -316,7 +316,7 @@ if(NG.get_amount() >= NG.max_amount) continue NG.attackby(G, user) - to_chat(user, "You add the newly-formed carpet to the stack. It now contains [G.get_amount()] tiles.") + to_chat(user, "You add the newly-formed carpet to the stack. It now contains [G.get_amount()] tiles.") qdel(src) return diff --git a/code/modules/hydroponics/seed.dm b/code/modules/hydroponics/seed.dm index 0e8ad79dc5..9cc319ad9c 100644 --- a/code/modules/hydroponics/seed.dm +++ b/code/modules/hydroponics/seed.dm @@ -795,7 +795,7 @@ to_chat(user, "You fail to harvest anything useful.") else if(istype(user)) - to_chat(user, "You [harvest_sample ? "take a sample" : "harvest"] from the [display_name].") + to_chat(user, "You [harvest_sample ? "take a sample" : "harvest"] from the [display_name].") //This may be a new line. Update the global if it is. if(name == "new line" || !(name in SSplants.seeds)) diff --git a/code/modules/hydroponics/seed_machines.dm b/code/modules/hydroponics/seed_machines.dm index ee758860e2..8919b4ede5 100644 --- a/code/modules/hydroponics/seed_machines.dm +++ b/code/modules/hydroponics/seed_machines.dm @@ -17,7 +17,7 @@ if(genes.len) var/choice = tgui_alert(user, "Are you sure you want to wipe the disk?", "Xenobotany Data", list("No", "Yes")) if(src && user && genes && choice && choice == "Yes" && user.Adjacent(get_turf(src))) - to_chat(user, "You wipe the disk data.") + to_chat(user, "You wipe the disk data.") name = initial(name) desc = initial(name) genes = list() @@ -68,30 +68,30 @@ active = 0 if(failed_task) failed_task = 0 - visible_message("\icon[src][bicon(src)] [src] pings unhappily, flashing a red warning light.") + visible_message("\icon[src][bicon(src)] [src] pings unhappily, flashing a red warning light.") else - visible_message("\icon[src][bicon(src)] [src] pings happily.") + visible_message("\icon[src][bicon(src)] [src] pings happily.") if(eject_disk) eject_disk = 0 if(loaded_disk) loaded_disk.loc = get_turf(src) - visible_message("\icon[src][bicon(src)] [src] beeps and spits out [loaded_disk].") + visible_message("\icon[src][bicon(src)] [src] beeps and spits out [loaded_disk].") loaded_disk = null /obj/machinery/botany/attackby(obj/item/weapon/W as obj, mob/user as mob) if(istype(W,/obj/item/seeds)) if(seed) - to_chat(user, "There is already a seed loaded.") + to_chat(user, "There is already a seed loaded.") return var/obj/item/seeds/S =W if(S.seed && S.seed.get_trait(TRAIT_IMMUTABLE) > 0) - to_chat(user, "That seed is not compatible with our genetics technology.") + to_chat(user, "That seed is not compatible with our genetics technology.") else user.drop_from_inventory(W) W.loc = src seed = W - to_chat(user, "You load [W] into [src].") + to_chat(user, "You load [W] into [src].") return if(default_deconstruction_screwdriver(user, W)) @@ -105,24 +105,24 @@ // return if(istype(W,/obj/item/weapon/disk/botany)) if(loaded_disk) - to_chat(user, "There is already a data disk loaded.") + to_chat(user, "There is already a data disk loaded.") return else var/obj/item/weapon/disk/botany/B = W if(B.genes && B.genes.len) if(!disk_needs_genes) - to_chat(user, "That disk already has gene data loaded.") + to_chat(user, "That disk already has gene data loaded.") return else if(disk_needs_genes) - to_chat(user, "That disk does not have any gene data loaded.") + to_chat(user, "That disk does not have any gene data loaded.") return user.drop_from_inventory(W) W.loc = src loaded_disk = W - to_chat(user, "You load [W] into [src].") + to_chat(user, "You load [W] into [src].") return ..() diff --git a/code/modules/hydroponics/seed_storage.dm b/code/modules/hydroponics/seed_storage.dm index e1d1fafd11..749f6e4920 100644 --- a/code/modules/hydroponics/seed_storage.dm +++ b/code/modules/hydroponics/seed_storage.dm @@ -389,7 +389,7 @@ /obj/machinery/seed_storage/attackby(var/obj/item/O as obj, var/mob/user as mob) if (istype(O, /obj/item/seeds) && !lockdown) add(O) - user.visible_message("[user] puts \the [O.name] into \the [src].", "You put \the [O] into \the [src].") + user.visible_message("[user] puts \the [O.name] into \the [src].", "You put \the [O] into \the [src].") return else if (istype(O, /obj/item/weapon/storage/bag/plants) && !lockdown) var/obj/item/weapon/storage/P = O @@ -398,17 +398,17 @@ ++loaded add(G) if (loaded) - user.visible_message("[user] puts the seeds from \the [O.name] into \the [src].", "You put the seeds from \the [O.name] into \the [src].") + user.visible_message("[user] puts the seeds from \the [O.name] into \the [src].", "You put the seeds from \the [O.name] into \the [src].") else to_chat(user, "There are no seeds in \the [O.name].") return else if(O.is_wrench()) playsound(src, O.usesound, 50, 1) anchored = !anchored - to_chat(user, "You [anchored ? "wrench" : "unwrench"] \the [src].") + to_chat(user, "You [anchored ? "wrench" : "unwrench"] \the [src].") else if(O.is_screwdriver()) panel_open = !panel_open - to_chat(user, "You [panel_open ? "open" : "close"] the maintenance panel.") + to_chat(user, "You [panel_open ? "open" : "close"] the maintenance panel.") playsound(src, O.usesound, 50, 1) cut_overlays() if(panel_open) diff --git a/code/modules/hydroponics/trays/tray.dm b/code/modules/hydroponics/trays/tray.dm index a4d0ca08b6..e999a377cd 100644 --- a/code/modules/hydroponics/trays/tray.dm +++ b/code/modules/hydroponics/trays/tray.dm @@ -166,13 +166,13 @@ if(weedlevel > 0) nymph.reagents.add_reagent("glucose", weedlevel) weedlevel = 0 - nymph.visible_message("[nymph] begins rooting through [src], ripping out weeds and eating them noisily.","You begin rooting through [src], ripping out weeds and eating them noisily.") + nymph.visible_message("[nymph] begins rooting through [src], ripping out weeds and eating them noisily.","You begin rooting through [src], ripping out weeds and eating them noisily.") else if(nymph.nutrition > 100 && nutrilevel < 10) nymph.nutrition -= ((10-nutrilevel)*5) nutrilevel = 10 - nymph.visible_message("[nymph] secretes a trickle of green liquid, refilling [src].","You secrete a trickle of green liquid, refilling [src].") + nymph.visible_message("[nymph] secretes a trickle of green liquid, refilling [src].","You secrete a trickle of green liquid, refilling [src].") else - nymph.visible_message("[nymph] rolls around in [src] for a bit.","You roll around in [src] for a bit.") + nymph.visible_message("[nymph] rolls around in [src] for a bit.","You roll around in [src] for a bit.") return /obj/machinery/portable_atmospherics/hydroponics/Initialize() @@ -330,7 +330,7 @@ if(closed_system) if(user) - to_chat(user, "You can't harvest from the plant while the lid is shut.") + to_chat(user, "You can't harvest from the plant while the lid is shut.") return if(user) @@ -357,7 +357,7 @@ if(!user || !dead) return if(closed_system) - to_chat(user, "You can't remove the dead plant while the lid is shut.") + to_chat(user, "You can't remove the dead plant while the lid is shut.") return seed = null @@ -367,7 +367,7 @@ yield_mod = 0 mutation_mod = 0 - to_chat(user, "You remove the dead plant.") + to_chat(user, "You remove the dead plant.") lastproduce = 0 check_health() return @@ -423,11 +423,11 @@ return if(ishuman(usr) || istype(usr, /mob/living/silicon/robot)) if(labelled) - to_chat(usr, "You remove the label.") + to_chat(usr, "You remove the label.") labelled = null update_icon() else - to_chat(usr, "There is no label to remove.") + to_chat(usr, "There is no label to remove.") return /obj/machinery/portable_atmospherics/hydroponics/verb/setlight() @@ -441,7 +441,7 @@ var/new_light = tgui_input_list(usr, "Specify a light level.", "Light Level", list(0,1,2,3,4,5,6,7,8,9,10)) if(new_light) tray_light = new_light - to_chat(usr, "You set the tray to a light level of [tray_light] lumens.") + to_chat(usr, "You set the tray to a light level of [tray_light] lumens.") return /obj/machinery/portable_atmospherics/hydroponics/proc/check_level_sanity() @@ -477,7 +477,7 @@ weedlevel = 0 update_icon() - visible_message("The [previous_plant] has suddenly mutated into [seed.display_name]!") + visible_message("The [previous_plant] has suddenly mutated into [seed.display_name]!") return @@ -489,15 +489,15 @@ if(O.is_wirecutter() || istype(O, /obj/item/weapon/surgical/scalpel)) if(!seed) - to_chat(user, "There is nothing to take a sample from in \the [src].") + to_chat(user, "There is nothing to take a sample from in \the [src].") return if(sampled) - to_chat(user, "You have already sampled from this plant.") + to_chat(user, "You have already sampled from this plant.") return if(dead) - to_chat(user, "The plant is dead.") + to_chat(user, "The plant is dead.") return // Create a sample. @@ -522,14 +522,14 @@ if(seed) return ..() else - to_chat(user, "There's no plant to inject.") + to_chat(user, "There's no plant to inject.") return 1 else if(seed) //Leaving this in in case we want to extract from plants later. - to_chat(user, "You can't get any extract out of this plant.") + to_chat(user, "You can't get any extract out of this plant.") else - to_chat(user, "There's nothing to draw something from.") + to_chat(user, "There's nothing to draw something from.") return 1 else if (istype(O, /obj/item/seeds)) @@ -540,11 +540,11 @@ user.remove_from_mob(O) if(!S.seed) - to_chat(user, "The packet seems to be empty. You throw it away.") + to_chat(user, "The packet seems to be empty. You throw it away.") qdel(O) return - to_chat(user, "You plant the [S.seed.seed_name] [S.seed.seed_noun].") + to_chat(user, "You plant the [S.seed.seed_name] [S.seed.seed_noun].") plant_seeds(S) else @@ -576,7 +576,7 @@ toxins += spray.toxicity pestlevel -= spray.pest_kill_str weedlevel -= spray.weed_kill_str - to_chat(user, "You spray [src] with [O].") + to_chat(user, "You spray [src] with [O].") playsound(src, 'sound/effects/spray3.ogg', 50, 1, -6) qdel(O) check_health() @@ -589,7 +589,7 @@ playsound(src, O.usesound, 50, 1) anchored = !anchored - to_chat(user, "You [anchored ? "wrench" : "unwrench"] \the [src].") + to_chat(user, "You [anchored ? "wrench" : "unwrench"] \the [src].") else if(istype(O,/obj/item/device/multitool)) if(!anchored) @@ -691,5 +691,5 @@ /obj/machinery/portable_atmospherics/hydroponics/proc/close_lid(var/mob/living/user) closed_system = !closed_system - to_chat(user, "You [closed_system ? "close" : "open"] the tray's lid.") + to_chat(user, "You [closed_system ? "close" : "open"] the tray's lid.") update_icon() diff --git a/code/modules/lighting/lighting_fake_sun_vr.dm b/code/modules/lighting/lighting_fake_sun_vr.dm index 41fb677fb6..98f3674337 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/lore_codex/lore_data/political_parties.dm b/code/modules/lore_codex/lore_data/political_parties.dm index 29dd7fb741..6448a3c79e 100644 --- a/code/modules/lore_codex/lore_data/political_parties.dm +++ b/code/modules/lore_codex/lore_data/political_parties.dm @@ -82,7 +82,7 @@ /datum/lore/codex/page/multinational_movement/add_content() name = "Multinational Movement" keywords += list("Multinational") - data = "The barely-unified voice of [quick_link("SolGov", "SolGov's")] various independence movements, encompassing Terran governments wishing for a lighter touch \ + data = "The barely-unified voice of [quick_link("SolGov", "SolGov's")] various independence movements, encompassing Earth governments wishing for a lighter touch \ from SolGov, fringe colonies who balk at the call of distant masters, anarchist movements who want the freedom to live without government oversight, and the rare \ Trans-Stellar who no longer see a benefit in working with SolGov. Full colonial independence is still a political impossibility so long as the \ [quick_link("Icarus Front")] holds any sway, and so the Movement is focused primarily on securing more autonomy in governance, although a growing revolutionary sub-group \ @@ -96,4 +96,4 @@ measures to reduce the amount of power held by the TSCs. In many ways a holdover from the days before the [quick_link("Shadow Coalition")], where corporate malfeasance took \ the place of technological development as the primary issue of debate, the FTU has found itself adopting technological positions similar to the SEO as a matter \ of pragmatism, although the views of individual members vary. The FTU is known for their intense lobbying of SolGov to add tax rebates to the purchases of \ - personal lathes and the creation of open-source firmware for experimental autolathes, but have thus far found little success." \ No newline at end of file + personal lathes and the creation of open-source firmware for experimental autolathes, but have thus far found little success." diff --git a/code/modules/lore_codex/news_data/main.dm b/code/modules/lore_codex/news_data/main.dm index 3366f2d0a5..6f2c32cf54 100644 --- a/code/modules/lore_codex/news_data/main.dm +++ b/code/modules/lore_codex/news_data/main.dm @@ -468,7 +468,7 @@

    \ I don't see this whole affair as a chance to spread the galactic anti-corporate revolution the way President Fisher does, of course. I make no secret of my stance on Trans-Stellars, but I also know that we're better off with Sol than without. The 'Silent Collapse' was two hundred years ago, but we still bear the scars from it. When the Scandinavian Union pulled out support for the Sivian colonization project, SolGov saved us. I do mean saved us, sure as if they'd fished us out of a life pod. There were no factories, no steel, no concrete on Sif until the Engineering Corps built Radiance and New Reykjavik. Corporations and regional governments cowered from the Karan pirates, until the Marines chased them out. Whether Sivian or Karan, you owe the roof over your head to the Sol Confederate Government. With that great debt in mind, how dare we turn our backs on the Bowl, or Abel's Rest, or Nyx, when they need us! How dare we let oligarchs prey on the weak! How dare we choose not to act when we have, by virtue of our votes in the Assembly and our voice within the halls of public debate, the means to share our peace and prosperity with the rest of our people!\

    \ - This is what I mean by SolGov being the only true republic, the only state founded for the common good. The 'human spirit' West croons on about isn't our industriousness, or our skill at arms. If humanity-- if this Terran culture is commendable for anything, it is that we assist our fellows. We take in Casteless Skrell, Unbound Unathi, republican Tajaran. We pass around the hat when someone's house burns down. We help our friends, our neighbors, and even strangers. The fact that Martei and Harper are perverting this impulse, padding their juntas with the air of legitimacy to inspire honest people to ride to their defense, is the reason their state is unconscionable, the reason it was was born flawed, the reason we cannot suffer it to continue, much less help it on its way.\ + This is what I mean by SolGov being the only true republic, the only state founded for the common good. The 'human spirit' West croons on about isn't our industriousness, or our skill at arms. If humanity-- if this Solar culture is commendable for anything, it is that we assist our fellows. We take in Casteless Skrell, Unbound Unathi, republican Tajaran. We pass around the hat when someone's house burns down. We help our friends, our neighbors, and even strangers. The fact that Martei and Harper are perverting this impulse, padding their juntas with the air of legitimacy to inspire honest people to ride to their defense, is the reason their state is unconscionable, the reason it was was born flawed, the reason we cannot suffer it to continue, much less help it on its way.\

    \ Now, I'm sure you've noticed by now, that I haven't said much more than three words about technoprogressivism, or transtech, or whatever the word du jour is. Frankly, that's on purpose. 'Transtech' has never once been about technology. The Icarus Front-- the old one, that united us and took us to the stars, not the new one we spend forty hours a week arguing with about healthcare-- The Icarus Front was a popular revolution, you know. Hel, they were Marxists. It was a world where the kind of lack of accountability, the entrenched oligarchy and geographical class divide that we're dealing with now was spiraling out of control. In the old United States, the rich and powerful got the technology to grow loyal subjects in tubes, to make drone intelligences smarter in some ways than a human could ever be, to-- well, to do what Angessa Martei's done, only with no SolGov to stop her. Meanwhile, the 'little people' in the Middle East, Southeast Asia, and other 'forgotten' parts of the world were left behind, hopelessly. I don't mean to downplay the importance of the Gray Tide, but if you look at historical accounts from that era, the thing that really united the Front was the knowledge that, if they didn't act immediately, they'd be seen as 'externalities' by immortal superintelligent businesspeople and politicians. The take-away from the Gray Tide should never have been that 'nanotechnology is dangerous'-- it should have been 'nobody should be able to destroy an entire city without facing consequences.'\

    \ diff --git a/code/modules/materials/materials/_materials.dm b/code/modules/materials/materials/_materials.dm index 99027a8de7..05046ba85a 100644 --- a/code/modules/materials/materials/_materials.dm +++ b/code/modules/materials/materials/_materials.dm @@ -65,7 +65,18 @@ var/list/name_to_material . = list() for(var/mat in matter) var/datum/material/M = GET_MATERIAL_REF(mat) - .[M] = matter[mat] + if(M.composite_material && M.composite_material.len) + for(var/submat in M.composite_material) + var/datum/material/SM = GET_MATERIAL_REF(submat) + if(SM in .) + .[SM] += matter[mat]*(M.composite_material[submat]/SHEET_MATERIAL_AMOUNT) + else + .[SM] = matter[mat]*(M.composite_material[submat]/SHEET_MATERIAL_AMOUNT) + else + if(M in .) + .[M] += matter[mat] + else + .[M] = matter[mat] // Builds the datum list above. /proc/populate_material_list(force_remake=0) diff --git a/code/modules/materials/materials/metals/steel.dm b/code/modules/materials/materials/metals/steel.dm index 2a65386c60..ff21681b72 100644 --- a/code/modules/materials/materials/metals/steel.dm +++ b/code/modules/materials/materials/metals/steel.dm @@ -80,6 +80,53 @@ new /datum/stack_recipe("canister", /obj/machinery/portable_atmospherics/canister, 10, time = 15, one_per_turf = 1, on_floor = 1, recycle_material = "[name]"), new /datum/stack_recipe("cannon frame", /obj/item/weapon/cannonframe, 10, time = 15, one_per_turf = 0, on_floor = 0, recycle_material = "[name]"), new /datum/stack_recipe("regular floor tile", /obj/item/stack/tile/floor, 1, 4, 20, recycle_material = "[name]"), + //Eris Floor tiles- Normal + new /datum/stack_recipe_list("eris floors-normal", list( + new /datum/stack_recipe("floor tile", /obj/item/stack/tile/floor/eris/steel, 1, 4, 20, recycle_material = "[name]"), + new /datum/stack_recipe("panel tile", /obj/item/stack/tile/floor/eris/steel/panels, 1, 4, 20, recycle_material = "[name]"), + new /datum/stack_recipe("techfloor tile", /obj/item/stack/tile/floor/eris/steel/techfloor, 1, 4, 20, recycle_material = "[name]"), + new /datum/stack_recipe("techfloor tile with vents", /obj/item/stack/tile/floor/eris/steel/techfloor_grid, 1, 4, 20, recycle_material = "[name]"), + new /datum/stack_recipe("brown perforated tile", /obj/item/stack/tile/floor/eris/steel/brown_perforated, 1, 4, 20, recycle_material = "[name]"), + new /datum/stack_recipe("gray perforated tile", /obj/item/stack/tile/floor/eris/steel/gray_perforated, 1, 4, 20, recycle_material = "[name]"), + new /datum/stack_recipe("cargo tile", /obj/item/stack/tile/floor/eris/steel/cargo, 1, 4, 20, recycle_material = "[name]"), + new /datum/stack_recipe("brown platform tile", /obj/item/stack/tile/floor/eris/steel/brown_platform, 1, 4, 20, recycle_material = "[name]"), + new /datum/stack_recipe("gray platform tile", /obj/item/stack/tile/floor/eris/steel/gray_platform, 1, 4, 20, recycle_material = "[name]"), + new /datum/stack_recipe("danger tile", /obj/item/stack/tile/floor/eris/steel/danger, 1, 4, 20, recycle_material = "[name]"), + new /datum/stack_recipe("golden tile", /obj/item/stack/tile/floor/eris/steel/golden, 1, 4, 20, recycle_material = "[name]"), + new /datum/stack_recipe("monofloor tile", /obj/item/stack/tile/floor/eris/steel/monofloor, 1, 4, 20, recycle_material = "[name]"), + new /datum/stack_recipe("bar flat tile", /obj/item/stack/tile/floor/eris/steel/bar_flat, 1, 4, 20, recycle_material = "[name]"), + new /datum/stack_recipe("bar dance tile", /obj/item/stack/tile/floor/eris/steel/bar_dance, 1, 4, 20, recycle_material = "[name]"), + new /datum/stack_recipe("bar light tile", /obj/item/stack/tile/floor/eris/steel/bar_light, 1, 4, 20, recycle_material = "[name]"), + new /datum/stack_recipe_list("corner tiles", list( + new /datum/stack_recipe("blue corner tile", /obj/item/stack/tile/floor/eris/steel/bluecorner, 1, 4, 20, recycle_material = "[name]"), + new /datum/stack_recipe("orange corner tile", /obj/item/stack/tile/floor/eris/steel/orangecorner, 1, 4, 20, recycle_material = "[name]"), + new /datum/stack_recipe("cyan corner tile", /obj/item/stack/tile/floor/eris/steel/cyancorner, 1, 4, 20, recycle_material = "[name]"), + new /datum/stack_recipe("violet corner tile", /obj/item/stack/tile/floor/eris/steel/violetcorener, 1, 4, 20, recycle_material = "[name]"), + )), + + )), + //Eris Floor tiles- Dark + new /datum/stack_recipe_list("eris floors-dark", list( + new /datum/stack_recipe("dark floor tile", /obj/item/stack/tile/floor/eris/dark, 1, 4, 20, recycle_material = "[name]"), + new /datum/stack_recipe("dark panel tile", /obj/item/stack/tile/floor/eris/dark/panels, 1, 4, 20, recycle_material = "[name]"), + new /datum/stack_recipe("dark techfloor tile", /obj/item/stack/tile/floor/eris/dark/techfloor, 1, 4, 20, recycle_material = "[name]"), + new /datum/stack_recipe("dark techfloor tile with vents", /obj/item/stack/tile/floor/eris/dark/techfloor_grid, 1, 4, 20, recycle_material = "[name]"), + new /datum/stack_recipe("dark brown perforated tile", /obj/item/stack/tile/floor/eris/dark/brown_perforated, 1, 4, 20, recycle_material = "[name]"), + new /datum/stack_recipe("dark gray perforated tile", /obj/item/stack/tile/floor/eris/dark/gray_perforated, 1, 4, 20, recycle_material = "[name]"), + new /datum/stack_recipe("dark cargo tile", /obj/item/stack/tile/floor/eris/dark/cargo, 1, 4, 20, recycle_material = "[name]"), + new /datum/stack_recipe("dark brown platform tile", /obj/item/stack/tile/floor/eris/dark/brown_platform, 1, 4, 20, recycle_material = "[name]"), + new /datum/stack_recipe("dark gray platform tile", /obj/item/stack/tile/floor/eris/dark/gray_platform, 1, 4, 20, recycle_material = "[name]"), + new /datum/stack_recipe("dark danger tile", /obj/item/stack/tile/floor/eris/dark/danger, 1, 4, 20, recycle_material = "[name]"), + new /datum/stack_recipe("dark golden tile", /obj/item/stack/tile/floor/eris/dark/golden, 1, 4, 20, recycle_material = "[name]"), + new /datum/stack_recipe("dark monofloor tile", /obj/item/stack/tile/floor/eris/dark/monofloor, 1, 4, 20, recycle_material = "[name]"), + new /datum/stack_recipe_list("dark corner tiles", list( + new /datum/stack_recipe("dark blue corner tile", /obj/item/stack/tile/floor/eris/dark/bluecorner, 1, 4, 20, recycle_material = "[name]"), + new /datum/stack_recipe("dark orange corner tile", /obj/item/stack/tile/floor/eris/dark/orangecorner, 1, 4, 20, recycle_material = "[name]"), + new /datum/stack_recipe("dark cyan corner tile", /obj/item/stack/tile/floor/eris/dark/cyancorner, 1, 4, 20, recycle_material = "[name]"), + new /datum/stack_recipe("dark violet corner tile", /obj/item/stack/tile/floor/eris/dark/violetcorener, 1, 4, 20, recycle_material = "[name]"), + )), + )), + new /datum/stack_recipe("roofing tile", /obj/item/stack/tile/roofing, 3, 4, 20, recycle_material = "[name]"), new /datum/stack_recipe("metal rod", /obj/item/stack/rods, 1, 2, 60, recycle_material = "[name]"), new /datum/stack_recipe("frame parts", /obj/item/frame, 5, time = 25, on_floor = 1, recycle_material = "[name]"), diff --git a/code/modules/materials/materials/plastic.dm b/code/modules/materials/materials/plastic.dm index 6cf45fe677..d10e5153f6 100644 --- a/code/modules/materials/materials/plastic.dm +++ b/code/modules/materials/materials/plastic.dm @@ -24,6 +24,29 @@ new /datum/stack_recipe("reagent dispenser cartridge (small)", /obj/item/weapon/reagent_containers/chem_disp_cartridge/small, 1, on_floor=0, pass_stack_color = TRUE, recycle_material = "[name]"), // 100u new /datum/stack_recipe("white floor tile", /obj/item/stack/tile/floor/white, 1, 4, 20, pass_stack_color = TRUE, recycle_material = "[name]"), new /datum/stack_recipe("freezer floor tile", /obj/item/stack/tile/floor/freezer, 1, 4, 20, pass_stack_color = TRUE, recycle_material = "[name]"), + + //Eris Floor tiles- white + new /datum/stack_recipe_list("eris floors-white", list( + new /datum/stack_recipe("white floor tile", /obj/item/stack/tile/floor/eris/white, 1, 4, 20, recycle_material = "[name]"), + new /datum/stack_recipe("white panel tile", /obj/item/stack/tile/floor/eris/white/panels, 1, 4, 20, recycle_material = "[name]"), + new /datum/stack_recipe("white techfloor tile", /obj/item/stack/tile/floor/eris/white/techfloor, 1, 4, 20, recycle_material = "[name]"), + new /datum/stack_recipe("white techfloor tile with vents", /obj/item/stack/tile/floor/eris/white/techfloor_grid, 1, 4, 20, recycle_material = "[name]"), + new /datum/stack_recipe("white brown perforated tile", /obj/item/stack/tile/floor/eris/white/brown_perforated, 1, 4, 20, recycle_material = "[name]"), + new /datum/stack_recipe("white gray perforated tile", /obj/item/stack/tile/floor/eris/white/gray_perforated, 1, 4, 20, recycle_material = "[name]"), + new /datum/stack_recipe("white cargo tile", /obj/item/stack/tile/floor/eris/white/cargo, 1, 4, 20, recycle_material = "[name]"), + new /datum/stack_recipe("white brown platform tile", /obj/item/stack/tile/floor/eris/white/brown_platform, 1, 4, 20, recycle_material = "[name]"), + new /datum/stack_recipe("white gray platform tile", /obj/item/stack/tile/floor/eris/white/gray_platform, 1, 4, 20, recycle_material = "[name]"), + new /datum/stack_recipe("white danger tile", /obj/item/stack/tile/floor/eris/white/danger, 1, 4, 20, recycle_material = "[name]"), + new /datum/stack_recipe("white golden tile", /obj/item/stack/tile/floor/eris/white/golden, 1, 4, 20, recycle_material = "[name]"), + new /datum/stack_recipe("white monofloor tile", /obj/item/stack/tile/floor/eris/white/monofloor, 1, 4, 20, recycle_material = "[name]"), + new /datum/stack_recipe_list("white corner tiles", list( + new /datum/stack_recipe("white blue corner tile", /obj/item/stack/tile/floor/eris/white/bluecorner, 1, 4, 20, recycle_material = "[name]"), + new /datum/stack_recipe("white orange corner tile", /obj/item/stack/tile/floor/eris/white/orangecorner, 1, 4, 20, recycle_material = "[name]"), + new /datum/stack_recipe("white cyan corner tile", /obj/item/stack/tile/floor/eris/white/cyancorner, 1, 4, 20, recycle_material = "[name]"), + new /datum/stack_recipe("white violet corner tile", /obj/item/stack/tile/floor/eris/white/violetcorener, 1, 4, 20, recycle_material = "[name]"), + )), + )), + new /datum/stack_recipe("shower curtain", /obj/structure/curtain, 4, time = 15, one_per_turf = 1, on_floor = 1, pass_stack_color = TRUE, recycle_material = "[name]"), new /datum/stack_recipe("plastic flaps", /obj/structure/plasticflaps, 4, time = 25, one_per_turf = 1, on_floor = 1, pass_stack_color = TRUE, recycle_material = "[name]"), new /datum/stack_recipe("water-cooler", /obj/structure/reagent_dispensers/water_cooler, 4, time = 10, one_per_turf = 1, on_floor = 1, pass_stack_color = TRUE, recycle_material = "[name]"), diff --git a/code/modules/mining/machinery/machine_processing.dm b/code/modules/mining/machinery/machine_processing.dm index c6a3d35ddf..62842e9ebb 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/mining/mine_turfs.dm b/code/modules/mining/mine_turfs.dm index c90d08112b..a5f8f2b4d9 100644 --- a/code/modules/mining/mine_turfs.dm +++ b/code/modules/mining/mine_turfs.dm @@ -664,7 +664,7 @@ var/list/mining_overlay_cache = list() /turf/simulated/mineral/proc/artifact_debris(var/severity = 0) //cael's patented random limited drop componentized loot system! - //sky's patented not-fucking-retarded overhaul! + //sky's patented non-mischievious overhaul! //Give a random amount of loot from 1 to 3 or 5, varying on severity. for(var/j in 1 to rand(1, 3 + max(min(severity, 1), 0) * 2)) diff --git a/code/modules/mob/dead/corpse.dm b/code/modules/mob/dead/corpse.dm index 18d81bf484..1b422aae65 100644 --- a/code/modules/mob/dead/corpse.dm +++ b/code/modules/mob/dead/corpse.dm @@ -114,7 +114,7 @@ corpseidaccess = "Syndicate" /obj/effect/landmark/mobcorpse/syndicatecommando - name = "Syndicate Commando" + name = "Mercenary Commando" corpseuniform = /obj/item/clothing/under/syndicate corpsesuit = /obj/item/clothing/suit/space/void/merc corpseshoes = /obj/item/clothing/shoes/boots/swat diff --git a/code/modules/mob/dead/observer/observer.dm b/code/modules/mob/dead/observer/observer.dm index dab483e0c2..154adb6060 100644 --- a/code/modules/mob/dead/observer/observer.dm +++ b/code/modules/mob/dead/observer/observer.dm @@ -302,7 +302,7 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp medHUD = !medHUD plane_holder.set_vis(VIS_CH_HEALTH, medHUD) plane_holder.set_vis(VIS_CH_STATUS_OOC, medHUD) - to_chat(src, "Medical HUD [medHUD ? "Enabled" : "Disabled"]") + to_chat(src, "Medical HUD [medHUD ? "Enabled" : "Disabled"]") /mob/observer/dead/verb/toggle_secHUD() set category = "Ghost" @@ -315,7 +315,7 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp plane_holder.set_vis(VIS_CH_IMPTRACK, secHUD) plane_holder.set_vis(VIS_CH_IMPLOYAL, secHUD) plane_holder.set_vis(VIS_CH_IMPCHEM, secHUD) - to_chat(src, "Security HUD [secHUD ? "Enabled" : "Disabled"]") + to_chat(src, "Security HUD [secHUD ? "Enabled" : "Disabled"]") /mob/observer/dead/verb/toggle_antagHUD() set category = "Ghost" @@ -323,10 +323,10 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp set desc = "Toggles AntagHUD allowing you to see who is the antagonist" if(!config.antag_hud_allowed && !client.holder) - to_chat(src, "Admins have disabled this for this round.") + to_chat(src, "Admins have disabled this for this round.") return if(jobban_isbanned(src, "AntagHUD")) - to_chat(src, "You have been banned from using this feature") + to_chat(src, "You have been banned from using this feature") return if(config.antag_hud_restricted && !has_enabled_antagHUD && !client.holder) var/response = tgui_alert(src, "If you turn this on, you will not be able to take any part in the round.","Are you sure you want to turn this feature on?",list("Yes","No")) @@ -338,7 +338,7 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp antagHUD = !antagHUD plane_holder.set_vis(VIS_CH_SPECIAL, antagHUD) - to_chat(src, "AntagHUD [antagHUD ? "Enabled" : "Disabled"]") + to_chat(src, "AntagHUD [antagHUD ? "Enabled" : "Disabled"]") /mob/observer/dead/proc/jumpable_areas() var/list/areas = return_sorted_areas() @@ -374,7 +374,7 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp set desc = "Teleport to a location." if(!istype(usr, /mob/observer/dead)) - to_chat(usr, "Not when you're not dead!") + to_chat(usr, "Not when you're not dead!") return var/area/A @@ -593,15 +593,15 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp forceMove(T) stop_following() else - to_chat(src, "This mob is not located in the game world.") + to_chat(src, "This mob is not located in the game world.") /mob/observer/dead/memory() set hidden = 1 - to_chat(src, "You are dead! You have no mind to store memory!") + to_chat(src, "You are dead! You have no mind to store memory!") /mob/observer/dead/add_memory() set hidden = 1 - to_chat(src, "You are dead! You have no mind to store memory!") + to_chat(src, "You are dead! You have no mind to store memory!") /mob/observer/dead/Post_Incorpmove() stop_following() @@ -620,17 +620,18 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp var/pressure = environment.return_pressure() var/total_moles = environment.total_moles - - to_chat(src, "Results:") + var/list/gas_analyzing = list() + gas_analyzing += "Results:" if(abs(pressure - ONE_ATMOSPHERE) < 10) - to_chat(src, "Pressure: [round(pressure,0.1)] kPa") + gas_analyzing += "Pressure: [round(pressure,0.1)] kPa" else - to_chat(src, "Pressure: [round(pressure,0.1)] kPa") + gas_analyzing += "Pressure: [round(pressure,0.1)] kPa" if(total_moles) for(var/g in environment.gas) - to_chat(src, "[gas_data.name[g]]: [round((environment.gas[g] / total_moles) * 100)]% ([round(environment.gas[g], 0.01)] moles)") - to_chat(src, "Temperature: [round(environment.temperature-T0C,0.1)]°C ([round(environment.temperature,0.1)]K)") - to_chat(src, "Heat Capacity: [round(environment.heat_capacity(),0.1)]") + gas_analyzing += "[gas_data.name[g]]: [round((environment.gas[g] / total_moles) * 100)]% ([round(environment.gas[g], 0.01)] moles)" + gas_analyzing += "Temperature: [round(environment.temperature-T0C,0.1)]°C ([round(environment.temperature,0.1)]K)" + gas_analyzing += "Heat Capacity: [round(environment.heat_capacity(),0.1)]" + to_chat(src, "[jointext(gas_analyzing, "
    ")]
    ") /mob/observer/dead/verb/check_radiation() set name = "Check Radiation" @@ -723,7 +724,7 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp set desc = "If the round is sufficiently spooky, write a short message in blood on the floor or a wall. Remember, no IC in OOC or OOC in IC." if(!(config.cult_ghostwriter)) - to_chat(src, "That verb is not currently permitted.") + to_chat(src, "That verb is not currently permitted.") return if (!src.stat) @@ -738,7 +739,7 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp ghosts_can_write = 1 if(!ghosts_can_write && !check_rights(R_ADMIN|R_EVENT|R_FUN, 0)) //Let's allow for admins to write in blood for events and the such. - to_chat(src, "The veil is not thin enough for you to do that.") + to_chat(src, "The veil is not thin enough for you to do that.") return var/list/choices = list() @@ -788,19 +789,19 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp W.update_icon() W.message = message W.add_hiddenprint(src) - W.visible_message("Invisible fingers crudely paint something in blood on [T]...") + W.visible_message("Invisible fingers crudely paint something in blood on [T]...") /mob/observer/dead/pointed(atom/A as mob|obj|turf in view()) if(!..()) return 0 - usr.visible_message("[src] points to [A]") + usr.visible_message("[src] points to [A].") return 1 /mob/observer/dead/proc/manifest(mob/user) is_manifest = TRUE verbs |= /mob/observer/dead/proc/toggle_visibility verbs |= /mob/observer/dead/proc/ghost_whisper - to_chat(src, "As you are now in the realm of the living, you can whisper to the living with the Spectral Whisper verb, inside the IC tab.") + to_chat(src, "As you are now in the realm of the living, you can whisper to the living with the Spectral Whisper verb, inside the IC tab.") if(plane != PLANE_WORLD) user.visible_message( \ "\The [user] drags ghost, [src], to our plane of reality!", \ @@ -835,7 +836,7 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp var/toggled_invisible if(!forced && plane == PLANE_GHOSTS && world.time < toggled_invisible + 600) - to_chat(src, "You must gather strength before you can turn visible again...") + to_chat(src, "You must gather strength before you can turn visible again...") return if(plane == PLANE_WORLD) @@ -873,7 +874,7 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp set category = "Ghost" ghostvision = !ghostvision updateghostsight() - to_chat(src, "You [ghostvision ? "now" : "no longer"] have ghost vision.") + to_chat(src, "You [ghostvision ? "now" : "no longer"] have ghost vision.") /mob/observer/dead/verb/toggle_darkness() set name = "Toggle Darkness" @@ -891,7 +892,7 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp lighting_alpha = darkness_levels[index] updateghostsight() - to_chat(src, "Your vision now has [darkness_names[index]].") + to_chat(src, "Your vision now has [darkness_names[index]].") /mob/observer/dead/proc/updateghostsight() plane_holder.set_desired_alpha(VIS_LIGHTING, lighting_alpha) diff --git a/code/modules/mob/dead/observer/observer_vr.dm b/code/modules/mob/dead/observer/observer_vr.dm index 56daefb1d2..d138a0b163 100644 --- a/code/modules/mob/dead/observer/observer_vr.dm +++ b/code/modules/mob/dead/observer/observer_vr.dm @@ -68,7 +68,7 @@ var/datum/transcore_db/db = SStranscore.db_by_mind_name(mind.name) if(db) var/datum/transhuman/mind_record/record = db.backed_up[src.mind.name] - if(!(record.dead_state == MR_DEAD)) + if(!(record.dead_state == MR_DEAD)) if((world.time - timeofdeath ) > 5 MINUTES) //Allows notify transcore to be used if you have an entry but for some reason weren't marked as dead record.dead_state = MR_DEAD //Such as if you got scanned but didn't take an implant. It's a little funky, but I mean, you got scanned db.notify(record) //So you probably will want to let someone know if you die. @@ -115,7 +115,7 @@ var/input = tgui_input_list(usr, "Select a ghost pod:", "Ghost Jump", observe_list_format(active_ghost_pods)) if(!input) - to_chat(src, "No active ghost pods detected.") + to_chat(src, "No active ghost pods detected.") return var/target = observe_list_format(active_ghost_pods)[input] @@ -129,7 +129,7 @@ forceMove(T) stop_following() else - to_chat(src, "This ghost pod is not located in the game world.") + to_chat(src, "This ghost pod is not located in the game world.") /mob/observer/dead/verb/findautoresleever() set category = "Ghost" @@ -156,5 +156,5 @@ if(!L) to_chat(src, "There appears to be something wrong with this auto-resleever, try again.") return - + forceMove(L) diff --git a/code/modules/mob/dead/observer/say.dm b/code/modules/mob/dead/observer/say.dm index 49ab8f2710..96aa9ccada 100644 --- a/code/modules/mob/dead/observer/say.dm +++ b/code/modules/mob/dead/observer/say.dm @@ -10,7 +10,7 @@ if(message) client.handle_spam_prevention(MUTE_DEADCHAT) if(client.prefs.muted & MUTE_DEADCHAT) - to_chat(src, "You cannot talk in deadchat (muted).") + to_chat(src, "You cannot talk in deadchat (muted).") return . = say_dead(message) @@ -26,7 +26,7 @@ if(message) client.handle_spam_prevention(MUTE_DEADCHAT) if(client.prefs.muted & MUTE_DEADCHAT) - to_chat(src, "You cannot emote in deadchat (muted).") + to_chat(src, "You cannot emote in deadchat (muted).") return . = emote_dead(message) diff --git a/code/modules/mob/hear_say.dm b/code/modules/mob/hear_say.dm index f1d2c94226..1bf764f1db 100644 --- a/code/modules/mob/hear_say.dm +++ b/code/modules/mob/hear_say.dm @@ -118,7 +118,7 @@ to_chat(src, "[speaker_name][speaker.GetAltName()] makes a noise, possibly speech, but you cannot hear them.") else var/message_to_send = null - message_to_send = "[speaker_name][speaker.GetAltName()] [track][message]" + message_to_send = "[speaker_name][speaker.GetAltName()] [track][message]" if(check_mentioned(multilingual_to_message(message_pieces)) && is_preference_enabled(/datum/client_preference/check_mention)) message_to_send = "[message_to_send]" @@ -138,15 +138,15 @@ ai_holder.on_hear_say(speaker, multilingual_to_message(message_pieces)) /mob/proc/on_hear_say(var/message) - to_chat(src, message) + to_chat(src, "[message]") if(teleop) - to_chat(teleop, create_text_tag("body", "BODY:", teleop.client) + "[message]") + to_chat(teleop, "[create_text_tag("body", "BODY:", teleop.client)][message]") /mob/living/silicon/on_hear_say(var/message) var/time = say_timestamp() - to_chat(src, "[time] [message]") + to_chat(src, "[time] [message]") if(teleop) - to_chat(teleop, create_text_tag("body", "BODY:", teleop.client) + "[time] [message]") + to_chat(teleop, "[create_text_tag("body", "BODY:", teleop.client)][time] [message]") // Checks if the mob's own name is included inside message. Handles both first and last names. /mob/proc/check_mentioned(var/message) @@ -177,7 +177,7 @@ return tagged_message -/mob/proc/hear_radio(var/list/message_pieces, var/verb = "says", var/part_a, var/part_b, var/part_c, var/mob/speaker = null, var/hard_to_hear = 0, var/vname = "") +/mob/proc/hear_radio(var/list/message_pieces, var/verb = "says", var/part_a, var/part_b, var/part_c, var/part_d, var/part_e, var/mob/speaker = null, var/hard_to_hear = 0, var/vname = "") if(!client) return @@ -190,45 +190,49 @@ var/speaker_name = handle_speaker_name(speaker, vname, hard_to_hear) var/track = handle_track(message, verb, speaker, speaker_name, hard_to_hear) - message = "[encode_html_emphasis(message)][part_c]" + message = "[encode_html_emphasis(message)][part_d]" if((sdisabilities & DEAF) || ear_deaf) if(prob(20)) to_chat(src, "You feel your headset vibrate but can hear nothing from it!") else - on_hear_radio(part_a, speaker_name, track, part_b, message, part_c) + on_hear_radio(part_a, part_b, speaker_name, track, part_c, message, part_d, part_e) /proc/say_timestamp() return "\[[stationtime2text()]\]" -/mob/proc/on_hear_radio(part_a, speaker_name, track, part_b, formatted, part_c) - var/final_message = "[part_a][speaker_name][part_b][formatted][part_c]" +/mob/proc/on_hear_radio(part_a, part_b, speaker_name, track, part_c, formatted, part_d, part_e) + var/final_message = "[part_b][speaker_name][part_c][formatted][part_d]" if(check_mentioned(formatted) && is_preference_enabled(/datum/client_preference/check_mention)) - final_message = "[final_message]" - to_chat(src, final_message) - -/mob/observer/dead/on_hear_radio(part_a, speaker_name, track, part_b, formatted, part_c) - var/final_message = "[part_a][track][part_b][formatted][part_c]" - if(check_mentioned(formatted) && is_preference_enabled(/datum/client_preference/check_mention)) - final_message = "[final_message]" - to_chat(src, final_message) - -/mob/living/silicon/on_hear_radio(part_a, speaker_name, track, part_b, formatted, part_c) - var/time = say_timestamp() - var/final_message = "[part_a][speaker_name][part_b][formatted][part_c]" - if(check_mentioned(formatted) && is_preference_enabled(/datum/client_preference/check_mention)) - final_message = "[time][final_message]" + final_message = "[part_a][final_message][part_e]" else - final_message = "[time][final_message]" + final_message = "[part_a][final_message][part_e]" to_chat(src, final_message) -/mob/living/silicon/ai/on_hear_radio(part_a, speaker_name, track, part_b, formatted, part_c) - var/time = say_timestamp() - var/final_message = "[part_a][track][part_b][formatted][part_c]" +/mob/observer/dead/on_hear_radio(part_a, part_b, speaker_name, track, part_c, formatted, part_d, part_e) + var/final_message = "[part_b][track][part_c][formatted][part_d]" if(check_mentioned(formatted) && is_preference_enabled(/datum/client_preference/check_mention)) - final_message = "[time][final_message]" + final_message = "[part_a][final_message][part_e]" else - final_message = "[time][final_message]" + final_message = "[part_a][final_message][part_e]" + to_chat(src, final_message) + +/mob/living/silicon/on_hear_radio(part_a, part_b, speaker_name, track, part_c, formatted, part_d, part_e) + var/time = say_timestamp() + var/final_message = "[part_b][speaker_name][part_c][formatted][part_d]" + if(check_mentioned(formatted) && is_preference_enabled(/datum/client_preference/check_mention)) + final_message = "[part_a][time][final_message][part_e]" + else + final_message = "[part_a][time][final_message][part_e]" + to_chat(src, final_message) + +/mob/living/silicon/ai/on_hear_radio(part_a, part_b, speaker_name, track, part_c, formatted, part_d, part_e) + var/time = say_timestamp() + var/final_message = "[part_b][track][part_c][formatted][part_d]" + if(check_mentioned(formatted) && is_preference_enabled(/datum/client_preference/check_mention)) + final_message = "[part_a][time][final_message][part_e]" + else + final_message = "[part_a][time][final_message][part_e]" to_chat(src, final_message) /mob/proc/hear_signlang(var/message, var/verb = "gestures", var/verb_understood = "gestures", var/datum/language/language, var/mob/speaker = null, var/speech_type = 1) @@ -236,7 +240,7 @@ return if(say_understands(speaker, language)) - message = "[speaker] [verb_understood], \"[message]\"" + message = "[speaker] [verb_understood], \"[message]\"" else if(!(language.ignore_adverb)) var/adverb var/length = length(message) * pick(0.8, 0.9, 1.0, 1.1, 1.2) //Adds a little bit of fuzziness @@ -246,9 +250,9 @@ if(30 to 48) adverb = " a message" if(48 to 90) adverb = " a lengthy message" else adverb = " a very lengthy message" - message = "[speaker] [verb][adverb]." + message = "[speaker] [verb][adverb]." else - message = "[speaker] [verb]." + message = "[speaker] [verb]." show_message(message, type = speech_type) // Type 1 is visual message diff --git a/code/modules/mob/holder.dm b/code/modules/mob/holder.dm index fd5f6b0c51..e245849ff8 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/brain/brain.dm b/code/modules/mob/living/carbon/brain/brain.dm index cfa6421c6f..8743d0b7e4 100644 --- a/code/modules/mob/living/carbon/brain/brain.dm +++ b/code/modules/mob/living/carbon/brain/brain.dm @@ -48,7 +48,7 @@ /mob/living/carbon/brain/runechat_holder(datum/chatmessage/CM) if(isturf(loc)) return ..() - + return loc /mob/living/carbon/brain/set_typing_indicator(var/state) @@ -59,15 +59,22 @@ loc.cut_overlay(typing_indicator, TRUE) return - if(!typing_indicator) - init_typing_indicator("[speech_bubble_appearance()]_typing") + var/cur_bubble_appearance = custom_speech_bubble + if(!cur_bubble_appearance || cur_bubble_appearance == "default") + cur_bubble_appearance = speech_bubble_appearance() + if(!typing_indicator || cur_typing_indicator != cur_bubble_appearance) + init_typing_indicator("[cur_bubble_appearance]_typing") if(state && !typing) - loc.add_overlay(typing_indicator, TRUE) + add_overlay(typing_indicator, TRUE) typing = TRUE + typing_indicator_active = typing_indicator else if(typing) - loc.cut_overlay(typing_indicator, TRUE) + cut_overlay(typing_indicator_active, TRUE) typing = FALSE + if(typing_indicator_active != typing_indicator) + qdel(typing_indicator_active) + typing_indicator_active = null return state @@ -80,7 +87,7 @@ var/datum/transcore_db/db = SStranscore.db_by_mind_name(mind.name) if(db) var/datum/transhuman/mind_record/record = db.backed_up[src.mind.name] - if(!(record.dead_state == MR_DEAD)) + if(!(record.dead_state == MR_DEAD)) if((world.time - timeofhostdeath ) > 5 MINUTES) //Allows notify transcore to be used if you have an entry but for some reason weren't marked as dead record.dead_state = MR_DEAD //Such as if you got scanned but didn't take an implant. It's a little funky, but I mean, you got scanned db.notify(record) //So you probably will want to let someone know if you die. diff --git a/code/modules/mob/living/carbon/human/emote.dm b/code/modules/mob/living/carbon/human/emote.dm index 191c693bef..da0f4fcc0e 100644 --- a/code/modules/mob/living/carbon/human/emote.dm +++ b/code/modules/mob/living/carbon/human/emote.dm @@ -168,6 +168,10 @@ var/list/_human_default_emotes = list( /decl/emote/visible/jiggle, /decl/emote/visible/lightup, /decl/emote/visible/vibrate, + /decl/emote/audible/croon, + /decl/emote/audible/lwarble, + /decl/emote/audible/croak_skrell + //VOREStation Add End //YW ADDITION: Add Start /decl/emote/audible/chirp, @@ -324,7 +328,7 @@ var/list/_simple_mob_default_emotes = list( /mob/living/carbon/human/get_available_emotes() . = global._human_default_emotes.Copy() if(length(species?.default_emotes)) - . |= species.default_emotes + return . | species.default_emotes /mob/living/simple_mob/get_available_emotes() . = global._simple_mob_default_emotes.Copy() @@ -336,7 +340,7 @@ var/list/_simple_mob_default_emotes = list( var/datum/gender/T = gender_datums[get_visible_gender()] - pose = sanitize(tgui_input_text(usr, "This is [src]. [T.he]...", "Pose", null)) + pose = strip_html_simple(tgui_input_text(usr, "This is [src]. [T.he]...", "Pose", null)) /mob/living/carbon/human/verb/set_flavor() set name = "Set Flavour Text" diff --git a/code/modules/mob/living/carbon/human/emote_vr.dm b/code/modules/mob/living/carbon/human/emote_vr.dm index aa21381bbc..7c2a2b520d 100644 --- a/code/modules/mob/living/carbon/human/emote_vr.dm +++ b/code/modules/mob/living/carbon/human/emote_vr.dm @@ -60,7 +60,7 @@ message = "reveals their wings!" else message = "hides their wings." - visible_message("[src] [message]") + visible_message("[src] [message]") /mob/living/carbon/human/verb/hide_tail_vr() set name = "Show/Hide tail" @@ -83,4 +83,4 @@ message = "reveals their tail!" else message = "hides their tail." - visible_message("[src] [message]") \ No newline at end of file + visible_message("[src] [message]") \ No newline at end of file diff --git a/code/modules/mob/living/carbon/human/human.dm b/code/modules/mob/living/carbon/human/human.dm index a4014fe4ed..45a4616a1a 100644 --- a/code/modules/mob/living/carbon/human/human.dm +++ b/code/modules/mob/living/carbon/human/human.dm @@ -369,7 +369,7 @@ U.handle_regular_hud_updates() if(!modified) - to_chat(usr, "Unable to locate a data core entry for this person.") + to_chat(usr, "Unable to locate a data core entry for this person.") if (href_list["secrecord"]) if(hasHUD(usr,"security")) @@ -386,17 +386,20 @@ for (var/datum/data/record/R in data_core.security) 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, "Minor Crimes: [R.fields["mi_crim"]]") - to_chat(usr, "Details: [R.fields["mi_crim_d"]]") - to_chat(usr, "Major Crimes: [R.fields["ma_crim"]]") - to_chat(usr, "Details: [R.fields["ma_crim_d"]]") - to_chat(usr, "Notes: [R.fields["notes"]]") - to_chat(usr, "\[View Comment Log\]") + var/list/security_hud_text = list() + security_hud_text += "Name: [R.fields["name"]] Criminal Status: [R.fields["criminal"]]" + security_hud_text += "Species: [R.fields["species"]]" + security_hud_text += "Minor Crimes: [R.fields["mi_crim"]]" + security_hud_text += "Details: [R.fields["mi_crim_d"]]" + security_hud_text += "Major Crimes: [R.fields["ma_crim"]]" + security_hud_text += "Details: [R.fields["ma_crim_d"]]" + security_hud_text += "Notes: [R.fields["notes"]]" + security_hud_text += "\[View Comment Log\]" + to_chat(usr, "[jointext(security_hud_text, "
    ")]
    ") read = 1 if(!read) - to_chat(usr, "Unable to locate a data core entry for this person.") + to_chat(usr, "Unable to locate a data core entry for this person.") if (href_list["secrecordComment"]) if(hasHUD(usr,"security")) @@ -419,11 +422,11 @@ to_chat(usr, "[R.fields[text("com_[]", counter)]]") counter++ if (counter == 1) - to_chat(usr, "No comment found") - to_chat(usr, "\[Add comment\]") + to_chat(usr, "No comment found.") + to_chat(usr, "\[Add comment\]") if(!read) - to_chat(usr, "Unable to locate a data core entry for this person.") + to_chat(usr, "Unable to locate a data core entry for this person.") if (href_list["secrecordadd"]) if(hasHUD(usr,"security")) @@ -485,7 +488,7 @@ U.handle_regular_hud_updates() if(!modified) - to_chat(usr, "Unable to locate a data core entry for this person.") + to_chat(usr, "Unable to locate a data core entry for this person.") if (href_list["medrecord"]) if(hasHUD(usr,"medical")) @@ -502,18 +505,21 @@ for (var/datum/data/record/R in data_core.medical) 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, "DNA: [R.fields["b_dna"]]") - to_chat(usr, "Minor Disabilities: [R.fields["mi_dis"]]") - to_chat(usr, "Details: [R.fields["mi_dis_d"]]") - to_chat(usr, "Major Disabilities: [R.fields["ma_dis"]]") - to_chat(usr, "Details: [R.fields["ma_dis_d"]]") - to_chat(usr, "Notes: [R.fields["notes"]]") - to_chat(usr, "\[View Comment Log\]") + var/list/medical_hud_text = list() + medical_hud_text += "Name: [R.fields["name"]] Blood Type: [R.fields["b_type"]]" + medical_hud_text += "Species: [R.fields["species"]]" + medical_hud_text += "DNA: [R.fields["b_dna"]]" + medical_hud_text += "Minor Disabilities: [R.fields["mi_dis"]]" + medical_hud_text += "Details: [R.fields["mi_dis_d"]]" + medical_hud_text += "Major Disabilities: [R.fields["ma_dis"]]" + medical_hud_text += "Details: [R.fields["ma_dis_d"]]" + medical_hud_text += "Notes: [R.fields["notes"]]" + medical_hud_text += "\[View Comment Log\]" + to_chat(usr, "[jointext(medical_hud_text, "
    ")]
    ") read = 1 if(!read) - to_chat(usr, "Unable to locate a data core entry for this person.") + to_chat(usr, "Unable to locate a data core entry for this person.") if (href_list["medrecordComment"]) if(hasHUD(usr,"medical")) @@ -536,11 +542,11 @@ to_chat(usr, "[R.fields[text("com_[]", counter)]]") counter++ if (counter == 1) - to_chat(usr, "No comment found") - to_chat(usr, "\[Add comment\]") + to_chat(usr, "No comment found.") + to_chat(usr, "\[Add comment\]") if(!read) - to_chat(usr, "Unable to locate a data core entry for this person.") + to_chat(usr, "Unable to locate a data core entry for this person.") if (href_list["medrecordadd"]) if(hasHUD(usr,"medical")) @@ -583,18 +589,23 @@ for (var/datum/data/record/R in data_core.general) if (R.fields["id"] == E.fields["id"]) if(hasHUD(usr,"best")) - to_chat(usr, "Name: [R.fields["name"]]") - 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"]]") - to_chat(usr, "Primary Employer: [R.fields["personal_faction"]]") - to_chat(usr, "Religious Beliefs: [R.fields["religion"]]") - to_chat(usr, "Notes: [R.fields["notes"]]") - to_chat(usr, "\[View Comment Log\]") + var/list/emp_hud_text = list() + emp_hud_text += "Name: [R.fields["name"]]" + emp_hud_text += "Species: [R.fields["species"]]" + emp_hud_text += "Assignment: [R.fields["real_rank"]] ([R.fields["rank"]])" + emp_hud_text += "Home System: [R.fields["home_system"]]" + emp_hud_text += "Birthplace: [R.fields["birthplace"]]" + emp_hud_text += "Citizenship: [R.fields["citizenship"]]" + emp_hud_text += "Primary Employer: [R.fields["personal_faction"]]" + emp_hud_text += "Religious Beliefs: [R.fields["religion"]]" + emp_hud_text += "Known Languages: [R.fields["languages"]]" + emp_hud_text += "Notes: [R.fields["notes"]]" + emp_hud_text += "\[View Comment Log\]" + to_chat(usr, "[jointext(emp_hud_text, "
    ")]
    ") read = 1 if(!read) - to_chat(usr, "Unable to locate a data core entry for this person.") + to_chat(usr, "Unable to locate a data core entry for this person.") if (href_list["emprecordComment"]) if(hasHUD(usr,"best")) @@ -617,11 +628,11 @@ to_chat(usr, "[R.fields[text("com_[]", counter)]]") counter++ if (counter == 1) - to_chat(usr, "No comment found") - to_chat(usr, "\[Add comment\]") + to_chat(usr, "No comment found.") + to_chat(usr, "\[Add comment\]") if(!read) - to_chat(usr, "Unable to locate a data core entry for this person.") + to_chat(usr, "Unable to locate a data core entry for this person.") if (href_list["emprecordadd"]) if(hasHUD(usr,"best")) @@ -674,11 +685,11 @@ src << browse(null, "window=flavor_changes") return if("general") - var/msg = sanitize(tgui_input_text(usr,"Update the general description of your character. This will be shown regardless of clothing.","Flavor Text",html_decode(flavor_texts[href_list["flavor_change"]]), multiline = TRUE, prevent_enter = TRUE), extra = 0) //VOREStation Edit: separating out OOC notes + var/msg = strip_html_simple(tgui_input_text(usr,"Update the general description of your character. This will be shown regardless of clothing.","Flavor Text",html_decode(flavor_texts[href_list["flavor_change"]]), multiline = TRUE, prevent_enter = TRUE)) //VOREStation Edit: separating out OOC notes flavor_texts[href_list["flavor_change"]] = msg return else - var/msg = sanitize(tgui_input_text(usr,"Update the flavor text for your [href_list["flavor_change"]].","Flavor Text",html_decode(flavor_texts[href_list["flavor_change"]]), multiline = TRUE, prevent_enter = TRUE), extra = 0) + var/msg = strip_html_simple(tgui_input_text(usr,"Update the flavor text for your [href_list["flavor_change"]].","Flavor Text",html_decode(flavor_texts[href_list["flavor_change"]]), multiline = TRUE, prevent_enter = TRUE)) flavor_texts[href_list["flavor_change"]] = msg set_flavor() return @@ -782,7 +793,7 @@ /mob/living/carbon/human/proc/play_xylophone() if(!src.xylophone) var/datum/gender/T = gender_datums[get_visible_gender()] - visible_message("\The [src] begins playing [T.his] ribcage like a xylophone. It's quite spooky.","You begin to play a spooky refrain on your ribcage.","You hear a spooky xylophone melody.") + visible_message("\The [src] begins playing [T.his] ribcage like a xylophone. It's quite spooky.","You begin to play a spooky refrain on your ribcage.","You hear a spooky xylophone melody.") var/song = pick('sound/effects/xylophone1.ogg','sound/effects/xylophone2.ogg','sound/effects/xylophone3.ogg') playsound(src, song, 50, 1, -1) xylophone = 1 @@ -873,7 +884,7 @@ regenerate_icons() check_dna() var/datum/gender/T = gender_datums[get_visible_gender()] - visible_message("\The [src] morphs and changes [T.his] appearance!", "You change your appearance!", "Oh, god! What the hell was that? It sounded like flesh getting squished and bone ground into a different shape!") + visible_message("\The [src] morphs and changes [T.his] appearance!", "You change your appearance!", "Oh, god! What the hell was that? It sounded like flesh getting squished and bone ground into a different shape!") /mob/living/carbon/human/proc/remotesay() set name = "Project mind" @@ -894,15 +905,15 @@ if (isnull(target)) return - var/say = sanitize(tgui_input_text(usr, "What do you wish to say")) + var/say = sanitize(tgui_input_text(usr, "What do you wish to say?")) if(mRemotetalk in target.mutations) - target.show_message(" You hear [src.real_name]'s voice: [say]") + target.show_message("You hear [src.real_name]'s voice: [say]") else - target.show_message(" You hear a voice that seems to echo around the room: [say]") - usr.show_message(" You project your mind into [target.real_name]: [say]") + target.show_message("You hear a voice that seems to echo around the room: [say]") + usr.show_message("You project your mind into [target.real_name]: [say]") log_say("(TPATH to [key_name(target)]) [say]",src) for(var/mob/observer/dead/G in mob_list) - G.show_message("Telepathic message from [src] to [target]: [say]") + G.show_message("Telepathic message from [src] to [target]: [say]") /mob/living/carbon/human/proc/remoteobserve() set name = "Remote View" @@ -932,7 +943,7 @@ continue creatures += h - var/mob/target = input ("Who do you want to project your mind to ?") as mob in creatures + var/mob/target = input ("Who do you want to project your mind to?") as mob in creatures if (target) remoteview_target = target @@ -1139,10 +1150,10 @@ self = 1 if(!self) usr.visible_message("[usr] kneels down, puts [TU.his] hand on [src]'s wrist and begins counting [T.his] pulse.",\ - "You begin counting [src]'s pulse") + "You begin counting [src]'s pulse.") else usr.visible_message("[usr] begins counting [T.his] pulse.",\ - "You begin counting your pulse.") + "You begin counting your pulse.") if(src.pulse) to_chat(usr, "[self ? "You have a" : "[src] has a"] pulse! Counting...") @@ -1150,7 +1161,7 @@ to_chat(usr, "[src] has no pulse!") //it is REALLY UNLIKELY that a dead person would check his own pulse return - to_chat(usr, "You must[self ? "" : " both"] remain still until counting is finished.") + to_chat(usr, "You must[self ? "" : " both"] remain still until counting is finished.") if(do_mob(usr, src, 60)) var/message = "[self ? "Your" : "[src]'s"] pulse is [src.get_pulse(GETPULSE_HAND)]." to_chat(usr,message) @@ -1448,11 +1459,11 @@ usr.setClickCooldown(20) if(usr.stat > 0) - to_chat(usr, "You are unconcious and cannot do that!") + to_chat(usr, "You are unconcious and cannot do that!") return if(usr.restrained()) - to_chat(usr, "You are restrained and cannot do that!") + to_chat(usr, "You are restrained and cannot do that!") return var/mob/S = src diff --git a/code/modules/mob/living/carbon/human/human_attackhand.dm b/code/modules/mob/living/carbon/human/human_attackhand.dm index c1eec6f8d4..27df5f58c4 100644 --- a/code/modules/mob/living/carbon/human/human_attackhand.dm +++ b/code/modules/mob/living/carbon/human/human_attackhand.dm @@ -1,492 +1,492 @@ -/mob/living/carbon/human - var/datum/unarmed_attack/default_attack - -/mob/living/carbon/human/proc/get_unarmed_attack(var/mob/living/carbon/human/target, var/hit_zone) - // VOREStation Edit - Begin - if(nif && nif.flag_check(NIF_C_HARDCLAWS,NIF_FLAGS_COMBAT)){return unarmed_hardclaws} - if(src.default_attack && src.default_attack.is_usable(src, target, hit_zone)) - if(pulling_punches) - var/datum/unarmed_attack/soft_type = src.default_attack.get_sparring_variant() - if(soft_type) - return soft_type - return src.default_attack - // VOREStation Edit - End - if(src.gloves) - var/obj/item/clothing/gloves/G = src.gloves - if(istype(G) && G.special_attack && G.special_attack.is_usable(src, target, hit_zone)) - if(pulling_punches) - var/datum/unarmed_attack/soft_type = G.special_attack.get_sparring_variant() - if(soft_type) - return soft_type - return G.special_attack - if(src.default_attack && src.default_attack.is_usable(src, target, hit_zone)) - if(pulling_punches) - var/datum/unarmed_attack/soft_type = src.default_attack.get_sparring_variant() - if(soft_type) - return soft_type - return src.default_attack - for(var/datum/unarmed_attack/u_attack in species.unarmed_attacks) - if(u_attack.is_usable(src, target, hit_zone)) - if(pulling_punches) - var/datum/unarmed_attack/soft_variant = u_attack.get_sparring_variant() - if(soft_variant) - return soft_variant - return u_attack - return null - -/mob/living/carbon/human/attack_hand(mob/living/M as mob) - var/datum/gender/TT = gender_datums[M.get_visible_gender()] - var/mob/living/carbon/human/H = M - if(istype(H)) - var/obj/item/organ/external/temp = H.organs_by_name["r_hand"] - if(H.hand) - temp = H.organs_by_name["l_hand"] - if(!temp || !temp.is_usable()) - to_chat(H, "You can't use your hand.") - return - if(H.lying) - return - M.break_cloak() - - ..() - - var/lacertusol = 0 - if(istype(M,/mob/living/carbon)) - for(var/datum/reagent/phororeagent/R in M.reagents.reagent_list) - if(R.id == "lacertusol") - lacertusol = 1 - break - - // Should this all be in Touch()? - if(istype(H)) - if(H.get_accuracy_penalty() && H != src) //Should only trigger if they're not aiming well - var/hit_zone = get_zone_with_miss_chance(H.zone_sel.selecting, src, H.get_accuracy_penalty()) - if(!hit_zone) - H.do_attack_animation(src) - playsound(src, 'sound/weapons/punchmiss.ogg', 25, 1, -1) - visible_message("[H] reaches for [src], but misses!") - return FALSE - - if(H != src && check_shields(0, null, H, H.zone_sel.selecting, H.name)) - H.do_attack_animation(src) - return FALSE - - if(istype(M,/mob/living/carbon)) - var/mob/living/carbon/C = M - C.spread_disease_to(src, "Contact") - - switch(M.a_intent) - if(I_HELP) - - // VOREStation Edit - Begin - if (istype(H) && attempt_to_scoop(H)) - return 0; - // VOREStation Edit - End - if(istype(H) && health < config.health_threshold_crit) - if(!H.check_has_mouth()) - to_chat(H, "You don't have a mouth, you cannot perform CPR!") - return - if(!check_has_mouth()) - to_chat(H, "They don't have a mouth, you cannot perform CPR!") - return - if((H.head && (H.head.body_parts_covered & FACE)) || (H.wear_mask && (H.wear_mask.body_parts_covered & FACE))) - to_chat(H, "Remove your mask!") - return 0 - if((head && (head.body_parts_covered & FACE)) || (wear_mask && (wear_mask.body_parts_covered & FACE))) - to_chat(H, "Remove [src]'s mask!") - return 0 - - if (!cpr_time) - return 0 - - cpr_time = 0 - spawn(30) - cpr_time = 1 - - H.visible_message("\The [H] is trying to perform CPR on \the [src]!") - - if(!do_after(H, 30)) - return - - H.visible_message("\The [H] performs CPR on \the [src]!") - to_chat(H, "Repeat at least every 7 seconds.") - - if(istype(H) && health > config.health_threshold_dead) - adjustOxyLoss(-(min(getOxyLoss(), 5))) - updatehealth() - to_chat(src, "You feel a breath of fresh air enter your lungs. It feels good.") - - else if(!(M == src && apply_pressure(M, M.zone_sel.selecting))) - help_shake_act(M) - return TRUE - - if(I_GRAB) - if(M == src || anchored) - return 0 - for(var/obj/item/weapon/grab/G in src.grabbed_by) - if(G.assailant == M) - to_chat(M, "You already grabbed [src].") - return - if(w_uniform) - w_uniform.add_fingerprint(M) - - var/obj/item/weapon/grab/G = new /obj/item/weapon/grab(M, src) - if(buckled) - to_chat(M, "You cannot grab [src], [TT.he] is buckled in!") - return - if(!G) //the grab will delete itself in New if affecting is anchored - return - M.put_in_active_hand(G) - G.synch() - LAssailant = M - - H.do_attack_animation(src) - playsound(src, 'sound/weapons/thudswoosh.ogg', 50, 1, -1) - //VORESTATION EDIT - visible_message("[M] has grabbed [src] [(M.zone_sel.selecting == BP_L_HAND || M.zone_sel.selecting == BP_R_HAND)? "by [(gender==FEMALE)? "her" : ((gender==MALE)? "his": "their")] hands": "passively"]!") - //VORESTATION END END - return TRUE - - if(I_HURT) - - if(M.zone_sel.selecting == "mouth" && wear_mask && istype(wear_mask, /obj/item/weapon/grenade)) - var/obj/item/weapon/grenade/G = wear_mask - if(!G.active) - visible_message("\The [M] pulls the pin from \the [src]'s [G.name]!") - G.activate(M) - update_inv_wear_mask() - else - to_chat(M, "\The [G] is already primed! Run!") - return - - if(!istype(H)) - attack_generic(H,rand(1,3),"punched") - return - - var/rand_damage = rand(1, 5) - if(lacertusol) - rand_damage = rand(5, 12) - var/block = 0 - var/accurate = 0 - var/hit_zone = H.zone_sel.selecting - var/obj/item/organ/external/affecting = get_organ(hit_zone) - - if(!affecting || affecting.is_stump()) - to_chat(M, "They are missing that limb!") - return TRUE - - switch(src.a_intent) - if(I_HELP) - // We didn't see this coming, so we get the full blow - rand_damage = 5 - if(lacertusol) - rand_damage = 12 - accurate = 1 - if(I_HURT, I_GRAB) - // We're in a fighting stance, there's a chance we block - if(src.canmove && src!=H && prob(20)) - block = 1 - - if (M.grabbed_by.len) - // Someone got a good grip on them, they won't be able to do much damage - rand_damage = max(1, rand_damage - 2) - - if(src.grabbed_by.len || src.buckled || !src.canmove || src==H) - accurate = 1 // certain circumstances make it impossible for us to evade punches - rand_damage = 5 - if(lacertusol) - rand_damage = 12 - - // Process evasion and blocking - var/miss_type = 0 - var/attack_message - if(!accurate) - /* ~Hubblenaut - This place is kind of convoluted and will need some explaining. - ran_zone() will pick out of 11 zones, thus the chance for hitting - our target where we want to hit them is circa 9.1%. - - Now since we want to statistically hit our target organ a bit more - often than other organs, we add a base chance of 20% for hitting it. - - This leaves us with the following chances: - - If aiming for chest: - 27.3% chance you hit your target organ - 70.5% chance you hit a random other organ - 2.2% chance you miss - - If aiming for something else: - 23.2% chance you hit your target organ - 56.8% chance you hit a random other organ - 15.0% chance you miss - - Note: We don't use get_zone_with_miss_chance() here since the chances - were made for projectiles. - TODO: proc for melee combat miss chances depending on organ? - */ - - if(!hit_zone) - attack_message = "[H] attempted to strike [src], but missed!" - miss_type = 1 - - if(prob(80)) - hit_zone = ran_zone(hit_zone, 70) //70% chance to hit what you're aiming at seems fair? - if(prob(15) && hit_zone != BP_TORSO) // Missed! - if(!src.lying) - attack_message = "[H] attempted to strike [src], but missed!" - else - attack_message = "[H] attempted to strike [src], but [TT.he] rolled out of the way!" - src.set_dir(pick(cardinal)) - miss_type = 1 - - if(!miss_type && block) - attack_message = "[H] went for [src]'s [affecting.name] but was blocked!" - miss_type = 2 - - // See what attack they use - var/datum/unarmed_attack/attack = H.get_unarmed_attack(src, hit_zone) - if(!attack) - return FALSE - - if(attack.unarmed_override(H, src, hit_zone)) - return FALSE - - H.do_attack_animation(src) - if(!attack_message) - attack.show_attack(H, src, hit_zone, rand_damage) - else - H.visible_message("[attack_message]") - - playsound(src, ((miss_type) ? (miss_type == 1 ? attack.miss_sound : 'sound/weapons/thudswoosh.ogg') : attack.attack_sound), 25, 1, -1) - - add_attack_logs(H,src,"Melee attacked with fists (miss/block)") - - if(miss_type) - return FALSE - - var/real_damage = rand_damage - var/hit_dam_type = attack.damage_type - real_damage += attack.get_unarmed_damage(H) - if(H.gloves) - if(istype(H.gloves, /obj/item/clothing/gloves)) - var/obj/item/clothing/gloves/G = H.gloves - real_damage += G.punch_force - hit_dam_type = G.punch_damtype - if(H.pulling_punches && !attack.sharp && !attack.edge) //SO IT IS DECREED: PULLING PUNCHES WILL PREVENT THE ACTUAL DAMAGE FROM RINGS AND KNUCKLES, BUT NOT THE ADDED PAIN, BUT YOU CAN'T "PULL" A KNIFE - hit_dam_type = AGONY - real_damage *= damage_multiplier - rand_damage *= damage_multiplier - if(HULK in H.mutations) - real_damage *= 2 // Hulks do twice the damage - rand_damage *= 2 - real_damage = max(1, real_damage) - - var/armour = run_armor_check(hit_zone, "melee") - var/soaked = get_armor_soak(hit_zone, "melee") - // Apply additional unarmed effects. - attack.apply_effects(H, src, armour, rand_damage, hit_zone) - - // Finally, apply damage to target - apply_damage(real_damage, hit_dam_type, hit_zone, armour, soaked, sharp=attack.sharp, edge=attack.edge) - - if(I_DISARM) - add_attack_logs(H,src,"Disarmed") - - M.do_attack_animation(src) - - if(w_uniform) - w_uniform.add_fingerprint(M) - var/obj/item/organ/external/affecting = get_organ(ran_zone(M.zone_sel.selecting)) - - var/list/holding = list(get_active_hand() = 40, get_inactive_hand = 20) - - //See if they have any guns that might go off - for(var/obj/item/weapon/gun/W in holding) - if(W && prob(holding[W])) - var/list/turfs = list() - for(var/turf/T in view()) - turfs += T - if(turfs.len) - var/turf/target = pick(turfs) - visible_message("[src]'s [W] goes off during the struggle!") - return W.afterattack(target,src) - - if(last_push_time + 30 > world.time) - visible_message("[M] has weakly pushed [src]!") - return - - var/randn = rand(1, 100) - last_push_time = world.time - // We ARE wearing shoes OR - // We as a species CAN be slipped when barefoot - // And also 1 in 4 because rngesus - if((shoes || !(species.flags & NO_SLIP)) && randn <= 25) - var/armor_check = run_armor_check(affecting, "melee") - apply_effect(3, WEAKEN, armor_check) - playsound(src, 'sound/weapons/thudswoosh.ogg', 50, 1, -1) - if(armor_check < 60) - visible_message("[M] has pushed [src]!") - else - visible_message("[M] attempted to push [src]!") - return - - if(randn <= 60) - //See about breaking grips or pulls - if(break_all_grabs(M)) - playsound(src, 'sound/weapons/thudswoosh.ogg', 50, 1, -1) - return - - //Actually disarm them - for(var/obj/item/I in holding) - if(I) - drop_from_inventory(I) - visible_message("[M] has disarmed [src]!") - playsound(src, 'sound/weapons/thudswoosh.ogg', 50, 1, -1) - return - - playsound(src, 'sound/weapons/punchmiss.ogg', 25, 1, -1) - visible_message(" [M] attempted to disarm [src]!") - return - -/mob/living/carbon/human/proc/afterattack(atom/target as mob|obj|turf|area, mob/living/user as mob|obj, inrange, params) - return - -/mob/living/carbon/human/attack_generic(var/mob/user, var/damage, var/attack_message, var/armor_type = "melee", var/armor_pen = 0, var/a_sharp = 0, var/a_edge = 0) - - if(!damage) - return - - add_attack_logs(user,src,"Melee attacked with fists (miss/block)",admin_notify = FALSE) //No admin notice since this is usually fighting simple animals - src.visible_message("[user] has [attack_message] [src]!") - user.do_attack_animation(src) - - var/dam_zone = pick(organs_by_name) - var/obj/item/organ/external/affecting = get_organ(ran_zone(dam_zone)) - var/armor_block = run_armor_check(affecting, armor_type, armor_pen) - var/armor_soak = get_armor_soak(affecting, armor_type, armor_pen) - apply_damage(damage, BRUTE, affecting, armor_block, armor_soak, sharp = a_sharp, edge = a_edge) - updatehealth() - return TRUE - -//Used to attack a joint through grabbing -/mob/living/carbon/human/proc/grab_joint(var/mob/living/user, var/def_zone) - var/has_grab = 0 - for(var/obj/item/weapon/grab/G in list(user.l_hand, user.r_hand)) - if(G.affecting == src && G.state == GRAB_NECK) - has_grab = 1 - break - - if(!has_grab) - return FALSE - - if(!def_zone) def_zone = user.zone_sel.selecting - var/target_zone = check_zone(def_zone) - if(!target_zone) - return FALSE - var/obj/item/organ/external/organ = get_organ(check_zone(target_zone)) - if(!organ || organ.dislocated > 0 || organ.dislocated == -1) //don't use is_dislocated() here, that checks parent - return FALSE - - user.visible_message("[user] begins to dislocate [src]'s [organ.joint]!") - if(do_after(user, 100)) - organ.dislocate(1) - src.visible_message("[src]'s [organ.joint] [pick("gives way","caves in","crumbles","collapses")]!") - return TRUE - return FALSE - -//Breaks all grips and pulls that the mob currently has. -/mob/living/carbon/human/proc/break_all_grabs(mob/living/carbon/user) - var/success = FALSE - if(pulling) - visible_message("[user] has broken [src]'s grip on [pulling]!") - success = TRUE - stop_pulling() - - if(istype(l_hand, /obj/item/weapon/grab)) - var/obj/item/weapon/grab/lgrab = l_hand - if(lgrab.affecting) - visible_message("[user] has broken [src]'s grip on [lgrab.affecting]!") - success = TRUE - spawn(1) - qdel(lgrab) - if(istype(r_hand, /obj/item/weapon/grab)) - var/obj/item/weapon/grab/rgrab = r_hand - if(rgrab.affecting) - visible_message("[user] has broken [src]'s grip on [rgrab.affecting]!") - success = TRUE - spawn(1) - qdel(rgrab) - return success - -/* - We want to ensure that a mob may only apply pressure to one organ of one mob at any given time. Currently this is done mostly implicitly through - the behaviour of do_after() and the fact that applying pressure to someone else requires a grab: - If you are applying pressure to yourself and attempt to grab someone else, you'll change what you are holding in your active hand which will stop do_mob() - If you are applying pressure to another and attempt to apply pressure to yourself, you'll have to switch to an empty hand which will also stop do_mob() - Changing targeted zones should also stop do_mob(), preventing you from applying pressure to more than one body part at once. -*/ -/mob/living/carbon/human/proc/apply_pressure(mob/living/user, var/target_zone) - var/obj/item/organ/external/organ = get_organ(target_zone) - if(!organ || !(organ.status & ORGAN_BLEEDING) || (organ.robotic >= ORGAN_ROBOT)) - return FALSE - - if(organ.applied_pressure) - var/message = "Someone is already applying pressure to [user == src ? "your [organ.name]" : "[src]'s [organ.name]"]." - to_chat(user,message) - return FALSE - - var/datum/gender/TU = gender_datums[user.get_visible_gender()] - - if(user == src) - user.visible_message("\The [user] starts applying pressure to [TU.his] [organ.name]!", "You start applying pressure to your [organ.name]!") - else - user.visible_message("\The [user] starts applying pressure to [src]'s [organ.name]!", "You start applying pressure to [src]'s [organ.name]!") - spawn(0) - organ.applied_pressure = user - - //apply pressure as long as they stay still and keep grabbing - do_mob(user, src, INFINITY, target_zone, progress = 0) - - organ.applied_pressure = null - - if(user == src) - user.visible_message("\The [user] stops applying pressure to [TU.his] [organ.name]!", "You stop applying pressure to your [organ]!") - else - user.visible_message("\The [user] stops applying pressure to [src]'s [organ.name]!", "You stop applying pressure to [src]'s [organ.name]!") - - return TRUE - -/mob/living/carbon/human/verb/check_attacks() - set name = "Check Attacks" - set category = "IC" - set src = usr - - var/dat = "Known Attacks

    " - - if(default_attack) - dat += "Current default attack: [default_attack.attack_name] - reset

    " - - for(var/datum/unarmed_attack/u_attack in species.unarmed_attacks) - if(u_attack == default_attack) - dat += "Primarily [u_attack.attack_name] - default - reset


    " - else - dat += "Primarily [u_attack.attack_name] - set default


    " - - src << browse(dat, "window=checkattack") - -/mob/living/carbon/human/Topic(href, href_list) - if(href_list["default_attk"]) - if(href_list["default_attk"] == "reset_attk") - set_default_attack(null) - else - var/datum/unarmed_attack/u_attack = locate(href_list["default_attk"]) - if(u_attack && (u_attack in species.unarmed_attacks)) - set_default_attack(u_attack) - check_attacks() - return 1 - else - return ..() - -/mob/living/carbon/human/proc/set_default_attack(var/datum/unarmed_attack/u_attack) - default_attack = u_attack +/mob/living/carbon/human + var/datum/unarmed_attack/default_attack + +/mob/living/carbon/human/proc/get_unarmed_attack(var/mob/living/carbon/human/target, var/hit_zone) + // VOREStation Edit - Begin + if(nif && nif.flag_check(NIF_C_HARDCLAWS,NIF_FLAGS_COMBAT)){return unarmed_hardclaws} + if(src.default_attack && src.default_attack.is_usable(src, target, hit_zone)) + if(pulling_punches) + var/datum/unarmed_attack/soft_type = src.default_attack.get_sparring_variant() + if(soft_type) + return soft_type + return src.default_attack + // VOREStation Edit - End + if(src.gloves) + var/obj/item/clothing/gloves/G = src.gloves + if(istype(G) && G.special_attack && G.special_attack.is_usable(src, target, hit_zone)) + if(pulling_punches) + var/datum/unarmed_attack/soft_type = G.special_attack.get_sparring_variant() + if(soft_type) + return soft_type + return G.special_attack + if(src.default_attack && src.default_attack.is_usable(src, target, hit_zone)) + if(pulling_punches) + var/datum/unarmed_attack/soft_type = src.default_attack.get_sparring_variant() + if(soft_type) + return soft_type + return src.default_attack + for(var/datum/unarmed_attack/u_attack in species.unarmed_attacks) + if(u_attack.is_usable(src, target, hit_zone)) + if(pulling_punches) + var/datum/unarmed_attack/soft_variant = u_attack.get_sparring_variant() + if(soft_variant) + return soft_variant + return u_attack + return null + +/mob/living/carbon/human/attack_hand(mob/living/M as mob) + var/datum/gender/TT = gender_datums[M.get_visible_gender()] + var/mob/living/carbon/human/H = M + if(istype(H)) + var/obj/item/organ/external/temp = H.organs_by_name["r_hand"] + if(H.hand) + temp = H.organs_by_name["l_hand"] + if(!temp || !temp.is_usable()) + to_chat(H, "You can't use your hand.") + return + if(H.lying) + return + M.break_cloak() + + ..() + + var/lacertusol = 0 + if(istype(M,/mob/living/carbon)) + for(var/datum/reagent/phororeagent/R in M.reagents.reagent_list) + if(R.id == "lacertusol") + lacertusol = 1 + break + + // Should this all be in Touch()? + if(istype(H)) + if(H.get_accuracy_penalty() && H != src) //Should only trigger if they're not aiming well + var/hit_zone = get_zone_with_miss_chance(H.zone_sel.selecting, src, H.get_accuracy_penalty()) + if(!hit_zone) + H.do_attack_animation(src) + playsound(src, 'sound/weapons/punchmiss.ogg', 25, 1, -1) + visible_message("[H] reaches for [src], but misses!") + return FALSE + + if(H != src && check_shields(0, null, H, H.zone_sel.selecting, H.name)) + H.do_attack_animation(src) + return FALSE + + if(istype(M,/mob/living/carbon)) + var/mob/living/carbon/C = M + C.spread_disease_to(src, "Contact") + + switch(M.a_intent) + if(I_HELP) + + // VOREStation Edit - Begin + if (istype(H) && attempt_to_scoop(H)) + return 0; + // VOREStation Edit - End + if(istype(H) && health < config.health_threshold_crit) + if(!H.check_has_mouth()) + to_chat(H, "You don't have a mouth, you cannot perform CPR!") + return + if(!check_has_mouth()) + to_chat(H, "They don't have a mouth, you cannot perform CPR!") + return + if((H.head && (H.head.body_parts_covered & FACE)) || (H.wear_mask && (H.wear_mask.body_parts_covered & FACE))) + to_chat(H, "Remove your mask!") + return 0 + if((head && (head.body_parts_covered & FACE)) || (wear_mask && (wear_mask.body_parts_covered & FACE))) + to_chat(H, "Remove [src]'s mask!") + return 0 + + if (!cpr_time) + return 0 + + cpr_time = 0 + spawn(30) + cpr_time = 1 + + H.visible_message("\The [H] is trying to perform CPR on \the [src]!") + + if(!do_after(H, 30)) + return + + H.visible_message("\The [H] performs CPR on \the [src]!") + to_chat(H, "Repeat at least every 7 seconds.") + + if(istype(H) && health > config.health_threshold_dead) + adjustOxyLoss(-(min(getOxyLoss(), 5))) + updatehealth() + to_chat(src, "You feel a breath of fresh air enter your lungs. It feels good.") + + else if(!(M == src && apply_pressure(M, M.zone_sel.selecting))) + help_shake_act(M) + return TRUE + + if(I_GRAB) + if(M == src || anchored) + return 0 + for(var/obj/item/weapon/grab/G in src.grabbed_by) + if(G.assailant == M) + to_chat(M, "You already grabbed [src].") + return + if(w_uniform) + w_uniform.add_fingerprint(M) + + var/obj/item/weapon/grab/G = new /obj/item/weapon/grab(M, src) + if(buckled) + to_chat(M, "You cannot grab [src], [TT.he] is buckled in!") + return + if(!G) //the grab will delete itself in New if affecting is anchored + return + M.put_in_active_hand(G) + G.synch() + LAssailant = M + + H.do_attack_animation(src) + playsound(src, 'sound/weapons/thudswoosh.ogg', 50, 1, -1) + //VORESTATION EDIT + visible_message("[M] has grabbed [src] [(M.zone_sel.selecting == BP_L_HAND || M.zone_sel.selecting == BP_R_HAND)? "by [(gender==FEMALE)? "her" : ((gender==MALE)? "his": "their")] hands": "passively"]!") + //VORESTATION END END + return TRUE + + if(I_HURT) + + if(M.zone_sel.selecting == "mouth" && wear_mask && istype(wear_mask, /obj/item/weapon/grenade)) + var/obj/item/weapon/grenade/G = wear_mask + if(!G.active) + visible_message("\The [M] pulls the pin from \the [src]'s [G.name]!") + G.activate(M) + update_inv_wear_mask() + else + to_chat(M, "\The [G] is already primed! Run!") + return + + if(!istype(H)) + attack_generic(H,rand(1,3),"punched") + return + + var/rand_damage = rand(1, 5) + if(lacertusol) + rand_damage = rand(5, 12) + var/block = 0 + var/accurate = 0 + var/hit_zone = H.zone_sel.selecting + var/obj/item/organ/external/affecting = get_organ(hit_zone) + + if(!affecting || affecting.is_stump()) + to_chat(M, "They are missing that limb!") + return TRUE + + switch(src.a_intent) + if(I_HELP) + // We didn't see this coming, so we get the full blow + rand_damage = 5 + if(lacertusol) + rand_damage = 12 + accurate = 1 + if(I_HURT, I_GRAB) + // We're in a fighting stance, there's a chance we block + if(src.canmove && src!=H && prob(20)) + block = 1 + + if (M.grabbed_by.len) + // Someone got a good grip on them, they won't be able to do much damage + rand_damage = max(1, rand_damage - 2) + + if(src.grabbed_by.len || src.buckled || !src.canmove || src==H) + accurate = 1 // certain circumstances make it impossible for us to evade punches + rand_damage = 5 + if(lacertusol) + rand_damage = 12 + + // Process evasion and blocking + var/miss_type = 0 + var/attack_message + if(!accurate) + /* ~Hubblenaut + This place is kind of convoluted and will need some explaining. + ran_zone() will pick out of 11 zones, thus the chance for hitting + our target where we want to hit them is circa 9.1%. + + Now since we want to statistically hit our target organ a bit more + often than other organs, we add a base chance of 20% for hitting it. + + This leaves us with the following chances: + + If aiming for chest: + 27.3% chance you hit your target organ + 70.5% chance you hit a random other organ + 2.2% chance you miss + + If aiming for something else: + 23.2% chance you hit your target organ + 56.8% chance you hit a random other organ + 15.0% chance you miss + + Note: We don't use get_zone_with_miss_chance() here since the chances + were made for projectiles. + TODO: proc for melee combat miss chances depending on organ? + */ + + if(!hit_zone) + attack_message = "[H] attempted to strike [src], but missed!" + miss_type = 1 + + if(prob(80)) + hit_zone = ran_zone(hit_zone, 70) //70% chance to hit what you're aiming at seems fair? + if(prob(15) && hit_zone != BP_TORSO) // Missed! + if(!src.lying) + attack_message = "[H] attempted to strike [src], but missed!" + else + attack_message = "[H] attempted to strike [src], but [TT.he] rolled out of the way!" + src.set_dir(pick(cardinal)) + miss_type = 1 + + if(!miss_type && block) + attack_message = "[H] went for [src]'s [affecting.name] but was blocked!" + miss_type = 2 + + // See what attack they use + var/datum/unarmed_attack/attack = H.get_unarmed_attack(src, hit_zone) + if(!attack) + return FALSE + + if(attack.unarmed_override(H, src, hit_zone)) + return FALSE + + H.do_attack_animation(src) + if(!attack_message) + attack.show_attack(H, src, hit_zone, rand_damage) + else + H.visible_message("[attack_message]") + + playsound(src, ((miss_type) ? (miss_type == 1 ? attack.miss_sound : 'sound/weapons/thudswoosh.ogg') : attack.attack_sound), 25, 1, -1) + + add_attack_logs(H,src,"Melee attacked with fists (miss/block)") + + if(miss_type) + return FALSE + + var/real_damage = rand_damage + var/hit_dam_type = attack.damage_type + real_damage += attack.get_unarmed_damage(H) + if(H.gloves) + if(istype(H.gloves, /obj/item/clothing/gloves)) + var/obj/item/clothing/gloves/G = H.gloves + real_damage += G.punch_force + hit_dam_type = G.punch_damtype + if(H.pulling_punches && !attack.sharp && !attack.edge) //SO IT IS DECREED: PULLING PUNCHES WILL PREVENT THE ACTUAL DAMAGE FROM RINGS AND KNUCKLES, BUT NOT THE ADDED PAIN, BUT YOU CAN'T "PULL" A KNIFE + hit_dam_type = AGONY + real_damage *= damage_multiplier + rand_damage *= damage_multiplier + if(HULK in H.mutations) + real_damage *= 2 // Hulks do twice the damage + rand_damage *= 2 + real_damage = max(1, real_damage) + + var/armour = run_armor_check(hit_zone, "melee") + var/soaked = get_armor_soak(hit_zone, "melee") + // Apply additional unarmed effects. + attack.apply_effects(H, src, armour, rand_damage, hit_zone) + + // Finally, apply damage to target + apply_damage(real_damage, hit_dam_type, hit_zone, armour, soaked, sharp=attack.sharp, edge=attack.edge) + + if(I_DISARM) + add_attack_logs(H,src,"Disarmed") + + M.do_attack_animation(src) + + if(w_uniform) + w_uniform.add_fingerprint(M) + var/obj/item/organ/external/affecting = get_organ(ran_zone(M.zone_sel.selecting)) + + var/list/holding = list(get_active_hand() = 40, get_inactive_hand = 20) + + //See if they have any guns that might go off + for(var/obj/item/weapon/gun/W in holding) + if(W && prob(holding[W])) + var/list/turfs = list() + for(var/turf/T in view()) + turfs += T + if(turfs.len) + var/turf/target = pick(turfs) + visible_message("[src]'s [W] goes off during the struggle!") + return W.afterattack(target,src) + + if(last_push_time + 30 > world.time) + visible_message("[M] has weakly pushed [src]!") + return + + var/randn = rand(1, 100) + last_push_time = world.time + // We ARE wearing shoes OR + // We as a species CAN be slipped when barefoot + // And also 1 in 4 because rngesus + if((shoes || !(species.flags & NO_SLIP)) && randn <= 25) + var/armor_check = run_armor_check(affecting, "melee") + apply_effect(3, WEAKEN, armor_check) + playsound(src, 'sound/weapons/thudswoosh.ogg', 50, 1, -1) + if(armor_check < 60) + visible_message("[M] has pushed [src]!") + else + visible_message("[M] attempted to push [src]!") + return + + if(randn <= 60) + //See about breaking grips or pulls + if(break_all_grabs(M)) + playsound(src, 'sound/weapons/thudswoosh.ogg', 50, 1, -1) + return + + //Actually disarm them + for(var/obj/item/I in holding) + if(I) + drop_from_inventory(I) + visible_message("[M] has disarmed [src]!") + playsound(src, 'sound/weapons/thudswoosh.ogg', 50, 1, -1) + return + + playsound(src, 'sound/weapons/punchmiss.ogg', 25, 1, -1) + visible_message(" [M] attempted to disarm [src]!") + return + +/mob/living/carbon/human/proc/afterattack(atom/target as mob|obj|turf|area, mob/living/user as mob|obj, inrange, params) + return + +/mob/living/carbon/human/attack_generic(var/mob/user, var/damage, var/attack_message, var/armor_type = "melee", var/armor_pen = 0, var/a_sharp = 0, var/a_edge = 0) + + if(!damage) + return + + add_attack_logs(user,src,"Melee attacked with fists (miss/block)",admin_notify = FALSE) //No admin notice since this is usually fighting simple animals + src.visible_message("[user] has [attack_message] [src]!") + user.do_attack_animation(src) + + var/dam_zone = pick(organs_by_name) + var/obj/item/organ/external/affecting = get_organ(ran_zone(dam_zone)) + var/armor_block = run_armor_check(affecting, armor_type, armor_pen) + var/armor_soak = get_armor_soak(affecting, armor_type, armor_pen) + apply_damage(damage, BRUTE, affecting, armor_block, armor_soak, sharp = a_sharp, edge = a_edge) + updatehealth() + return TRUE + +//Used to attack a joint through grabbing +/mob/living/carbon/human/proc/grab_joint(var/mob/living/user, var/def_zone) + var/has_grab = 0 + for(var/obj/item/weapon/grab/G in list(user.l_hand, user.r_hand)) + if(G.affecting == src && G.state == GRAB_NECK) + has_grab = 1 + break + + if(!has_grab) + return FALSE + + if(!def_zone) def_zone = user.zone_sel.selecting + var/target_zone = check_zone(def_zone) + if(!target_zone) + return FALSE + var/obj/item/organ/external/organ = get_organ(check_zone(target_zone)) + if(!organ || organ.dislocated > 0 || organ.dislocated == -1) //don't use is_dislocated() here, that checks parent + return FALSE + + user.visible_message("[user] begins to dislocate [src]'s [organ.joint]!") + if(do_after(user, 100)) + organ.dislocate(1) + src.visible_message("[src]'s [organ.joint] [pick("gives way","caves in","crumbles","collapses")]!") + return TRUE + return FALSE + +//Breaks all grips and pulls that the mob currently has. +/mob/living/carbon/human/proc/break_all_grabs(mob/living/carbon/user) + var/success = FALSE + if(pulling) + visible_message("[user] has broken [src]'s grip on [pulling]!") + success = TRUE + stop_pulling() + + if(istype(l_hand, /obj/item/weapon/grab)) + var/obj/item/weapon/grab/lgrab = l_hand + if(lgrab.affecting) + visible_message("[user] has broken [src]'s grip on [lgrab.affecting]!") + success = TRUE + spawn(1) + qdel(lgrab) + if(istype(r_hand, /obj/item/weapon/grab)) + var/obj/item/weapon/grab/rgrab = r_hand + if(rgrab.affecting) + visible_message("[user] has broken [src]'s grip on [rgrab.affecting]!") + success = TRUE + spawn(1) + qdel(rgrab) + return success + +/* + We want to ensure that a mob may only apply pressure to one organ of one mob at any given time. Currently this is done mostly implicitly through + the behaviour of do_after() and the fact that applying pressure to someone else requires a grab: + If you are applying pressure to yourself and attempt to grab someone else, you'll change what you are holding in your active hand which will stop do_mob() + If you are applying pressure to another and attempt to apply pressure to yourself, you'll have to switch to an empty hand which will also stop do_mob() + Changing targeted zones should also stop do_mob(), preventing you from applying pressure to more than one body part at once. +*/ +/mob/living/carbon/human/proc/apply_pressure(mob/living/user, var/target_zone) + var/obj/item/organ/external/organ = get_organ(target_zone) + if(!organ || !(organ.status & ORGAN_BLEEDING) || (organ.robotic >= ORGAN_ROBOT)) + return FALSE + + if(organ.applied_pressure) + var/message = "Someone is already applying pressure to [user == src ? "your [organ.name]" : "[src]'s [organ.name]"]." + to_chat(user,message) + return FALSE + + var/datum/gender/TU = gender_datums[user.get_visible_gender()] + + if(user == src) + user.visible_message("\The [user] starts applying pressure to [TU.his] [organ.name]!", "You start applying pressure to your [organ.name]!") + else + user.visible_message("\The [user] starts applying pressure to [src]'s [organ.name]!", "You start applying pressure to [src]'s [organ.name]!") + spawn(0) + organ.applied_pressure = user + + //apply pressure as long as they stay still and keep grabbing + do_mob(user, src, INFINITY, target_zone, progress = 0) + + organ.applied_pressure = null + + if(user == src) + user.visible_message("\The [user] stops applying pressure to [TU.his] [organ.name]!", "You stop applying pressure to your [organ]!") + else + user.visible_message("\The [user] stops applying pressure to [src]'s [organ.name]!", "You stop applying pressure to [src]'s [organ.name]!") + + return TRUE + +/mob/living/carbon/human/verb/check_attacks() + set name = "Check Attacks" + set category = "IC" + set src = usr + + var/dat = "Known Attacks

    " + + if(default_attack) + dat += "Current default attack: [default_attack.attack_name] - reset

    " + + for(var/datum/unarmed_attack/u_attack in species.unarmed_attacks) + if(u_attack == default_attack) + dat += "Primarily [u_attack.attack_name] - default - reset


    " + else + dat += "Primarily [u_attack.attack_name] - set default


    " + + src << browse(dat, "window=checkattack") + +/mob/living/carbon/human/Topic(href, href_list) + if(href_list["default_attk"]) + if(href_list["default_attk"] == "reset_attk") + set_default_attack(null) + else + var/datum/unarmed_attack/u_attack = locate(href_list["default_attk"]) + if(u_attack && (u_attack in species.unarmed_attacks)) + set_default_attack(u_attack) + check_attacks() + return 1 + else + return ..() + +/mob/living/carbon/human/proc/set_default_attack(var/datum/unarmed_attack/u_attack) + default_attack = u_attack diff --git a/code/modules/mob/living/carbon/human/human_damage.dm b/code/modules/mob/living/carbon/human/human_damage.dm index 4829c3ee12..0efe5f174b 100644 --- a/code/modules/mob/living/carbon/human/human_damage.dm +++ b/code/modules/mob/living/carbon/human/human_damage.dm @@ -269,21 +269,21 @@ if (candidates.len) var/obj/item/organ/external/O = pick(candidates) O.mutate() - to_chat(src, "Something is not right with your [O.name]...") + to_chat(src, "Something is not right with your [O.name]...") return else if (prob(heal_prob)) for (var/obj/item/organ/external/O in organs) if (O.status & ORGAN_MUTATED) O.unmutate() - to_chat(src, "Your [O.name] is shaped normally again.") + to_chat(src, "Your [O.name] is shaped normally again.") return if (getCloneLoss() < 1) for (var/obj/item/organ/external/O in organs) if (O.status & ORGAN_MUTATED) O.unmutate() - to_chat(src, "Your [O.name] is shaped normally again.") + to_chat(src, "Your [O.name] is shaped normally again.") BITSET(hud_updateflag, HEALTH_HUD) // Defined here solely to take species flags into account without having to recast at mob/living level. diff --git a/code/modules/mob/living/carbon/human/human_defense.dm b/code/modules/mob/living/carbon/human/human_defense.dm index f5dd0d3aca..28f38266c8 100644 --- a/code/modules/mob/living/carbon/human/human_defense.dm +++ b/code/modules/mob/living/carbon/human/human_defense.dm @@ -465,7 +465,7 @@ emp_act var/obj/item/organ/external/affecting = get_organ(zone) var/hit_area = affecting.name - src.visible_message("[src] has been hit in the [hit_area] by [O].") + src.visible_message("[src] has been hit in the [hit_area] by [O].") if(ismob(O.thrower)) add_attack_logs(O.thrower,src,"Hit with thrown [O.name]") @@ -473,7 +473,7 @@ emp_act //If the armor absorbs all of the damage, skip the rest of the calculations var/soaked = get_armor_soak(affecting, "melee", O.armor_penetration) if(soaked >= throw_damage) - to_chat(src, "Your armor absorbs the force of [O.name]!") + to_chat(src, "Your armor absorbs the force of [O.name]!") return var/armor = run_armor_check(affecting, "melee", O.armor_penetration, "Your armor has protected your [hit_area].", "Your armor has softened hit to your [hit_area].") //I guess "melee" is the best fit here @@ -511,7 +511,7 @@ emp_act if(O.throw_source && momentum >= THROWNOBJ_KNOCKBACK_SPEED && !buckled) var/dir = get_dir(O.throw_source, src) - visible_message("[src] staggers under the impact!","You stagger under the impact!") + visible_message("[src] staggers under the impact!","You stagger under the impact!") src.throw_at(get_edge_target_turf(src,dir),1,momentum) if(!O || !src) return diff --git a/code/modules/mob/living/carbon/human/human_defines.dm b/code/modules/mob/living/carbon/human/human_defines.dm index 15ea6a4554..13aa181f1c 100644 --- a/code/modules/mob/living/carbon/human/human_defines.dm +++ b/code/modules/mob/living/carbon/human/human_defines.dm @@ -54,6 +54,7 @@ // General information var/home_system = "" + var/birthplace = "" var/citizenship = "" var/personal_faction = "" var/religion = "" diff --git a/code/modules/mob/living/carbon/human/human_movement.dm b/code/modules/mob/living/carbon/human/human_movement.dm index 286b6d3962..3f10aeeae0 100644 --- a/code/modules/mob/living/carbon/human/human_movement.dm +++ b/code/modules/mob/living/carbon/human/human_movement.dm @@ -128,13 +128,9 @@ // It is in a seperate place to avoid an infinite loop situation with dragging mobs dragging each other. // Also its nice to have these things seperated. /mob/living/carbon/human/proc/calculate_item_encumbrance() - if(!buckled && shoes) // Shoes can make you go faster. - . += shoes.slowdown - - //VOREStation Addition Start - if(buckled && istype(buckled, /obj/machinery/power/rtg/reg)) - . += shoes.slowdown - //VOREStation Addition End + if(shoes) // Shoes can make you go faster. + if(!buckled || (buckled && istype(buckled, /obj/machinery/power/rtg/reg))) + . += shoes.slowdown // Loop through some slots, and add up their slowdowns. // Includes slots which can provide armor, the back slot, and suit storage. @@ -158,7 +154,7 @@ turf_move_cost = CLAMP(turf_move_cost + species.water_movement, HUMAN_LOWEST_SLOWDOWN, 15) if(shoes) var/obj/item/clothing/shoes/feet = shoes - if(feet.water_speed) + if(istype(feet) && feet.water_speed) turf_move_cost = CLAMP(turf_move_cost + feet.water_speed, HUMAN_LOWEST_SLOWDOWN, 15) . += turf_move_cost else if(istype(T, /turf/simulated/floor/outdoors/snow)) @@ -166,7 +162,7 @@ turf_move_cost = CLAMP(turf_move_cost + species.snow_movement, HUMAN_LOWEST_SLOWDOWN, 15) if(shoes) var/obj/item/clothing/shoes/feet = shoes - if(feet.water_speed) + if(istype(feet) && feet.snow_speed) turf_move_cost = CLAMP(turf_move_cost + feet.snow_speed, HUMAN_LOWEST_SLOWDOWN, 15) . += turf_move_cost else diff --git a/code/modules/mob/living/carbon/human/human_powers.dm b/code/modules/mob/living/carbon/human/human_powers.dm index 39ecfba387..644bda91c8 100644 --- a/code/modules/mob/living/carbon/human/human_powers.dm +++ b/code/modules/mob/living/carbon/human/human_powers.dm @@ -61,7 +61,7 @@ return if(stat || paralysis || stunned || weakened || lying || restrained() || buckled) - to_chat(src, "You cannot tackle in your current state.") + to_chat(src, "You cannot tackle in your current state.") return last_special = world.time + 50 @@ -78,7 +78,7 @@ for(var/mob/O in viewers(src, null)) if ((O.client && !( O.blinded ))) - O.show_message(text("[] [failed ? "tried to tackle" : "has tackled"] down []!", src, T), 1) + O.show_message("[src] [failed ? "tried to tackle" : "has tackled"] down [T]!", 1) /mob/living/carbon/human/proc/commune() set category = "Abilities" @@ -103,17 +103,17 @@ var/mob/M = targets[target] if(istype(M, /mob/observer/dead) || M.stat == DEAD) - to_chat(src, "Not even a [src.species.name] can speak to the dead.") + to_chat(src, "Not even a [src.species.name] can speak to the dead.") return log_say("(COMMUNE to [key_name(M)]) [text]",src) - to_chat(M, "Like lead slabs crashing into the ocean, alien thoughts drop into your mind: [text]") + to_chat(M, "Like lead slabs crashing into the ocean, alien thoughts drop into your mind: [text]") if(istype(M,/mob/living/carbon/human)) var/mob/living/carbon/human/H = M if(H.species.name == src.species.name) return - to_chat(H, "Your nose begins to bleed...") + to_chat(H, "Your nose begins to bleed...") H.drip(1) /mob/living/carbon/human/proc/regurgitate() @@ -126,7 +126,7 @@ if(M in stomach_contents) stomach_contents.Remove(M) M.loc = loc - src.visible_message("[src] hurls out the contents of their stomach!") + src.visible_message("[src] hurls out the contents of their stomach!") return /mob/living/carbon/human/proc/psychic_whisper(mob/M as mob in oview()) @@ -137,8 +137,8 @@ var/msg = sanitize(tgui_input_text(usr, "Message:", "Psychic Whisper")) if(msg) log_say("(PWHISPER to [key_name(M)]) [msg]", src) - to_chat(M, "You hear a strange, alien voice in your head... [msg]") - to_chat(src, "You said: \"[msg]\" to [M]") + to_chat(M, "You hear a strange, alien voice in your head... [msg]") + to_chat(src, "You said: \"[msg]\" to [M]") return /mob/living/carbon/human/proc/diona_split_nymph() @@ -211,7 +211,7 @@ to_chat(src, "Performing self-diagnostic, please wait...") spawn(50) - var/output = "Self-Diagnostic Results:\n" + var/output = "Self-Diagnostic Results:\n" output += "Internal Temperature: [convert_k2c(bodytemperature)] Degrees Celsius\n" @@ -237,6 +237,7 @@ output += "[IO.name] - [IO.damage > 10 ? "Heavy Damage" : "Light Damage"]\n" else output += "[IO.name] - OK\n" + output += "" to_chat(src,output) @@ -302,7 +303,7 @@ return else active_regen = TRUE - src.visible_message("[src]'s flesh begins to mend...") + src.visible_message("[src]'s flesh begins to mend...") var/delay_length = round(active_regen_delay * species.active_regen_mult) if(do_after(src,delay_length)) diff --git a/code/modules/mob/living/carbon/human/life.dm b/code/modules/mob/living/carbon/human/life.dm index bd7bc878e0..740d8e2fa1 100644 --- a/code/modules/mob/living/carbon/human/life.dm +++ b/code/modules/mob/living/carbon/human/life.dm @@ -1706,6 +1706,12 @@ if(isturf(loc) && rand(1,1000) == 1) var/turf/T = loc if(T.get_lumcount() <= LIGHTING_SOFT_THRESHOLD) + //VOREStation Add Start + if(text2num(time2text(world.timeofday, "MM")) == 4) + if(text2num(time2text(world.timeofday, "DD")) == 1) + playsound_local(src,pick(scawwySownds),50, 0) + return + //VOREStation Add End playsound_local(src,pick(scarySounds),50, 1, -1) /mob/living/carbon/human/handle_stomach() diff --git a/code/modules/mob/living/carbon/human/say.dm b/code/modules/mob/living/carbon/human/say.dm index a7def59625..1f910bc8cc 100644 --- a/code/modules/mob/living/carbon/human/say.dm +++ b/code/modules/mob/living/carbon/human/say.dm @@ -1,211 +1,212 @@ -/mob/living/carbon/human/GetAltName() - if(name != GetVoice()) - return " (as [get_id_name("Unknown")])" - - return ..() - -/mob/living/carbon/human/proc/forcesay(list/append) - if(stat == CONSCIOUS) - if(client) - var/virgin = 1 //has the text been modified yet? - var/temp = winget(client, "input", "text") - if(findtextEx(temp, "Say \"", 1, 7) && length(temp) > 5) //case sensitive means - - temp = replacetext(temp, ";", "") //general radio - - if(findtext(trim_left(temp), ":", 6, 7)) //dept radio - temp = copytext(trim_left(temp), 8) - virgin = 0 - - if(virgin) - temp = copytext(trim_left(temp), 6) //normal speech - virgin = 0 - - while(findtext(trim_left(temp), ":", 1, 2)) //dept radio again (necessary) - temp = copytext(trim_left(temp), 3) - - if(findtext(temp, "*", 1, 2)) //emotes - return - temp = copytext(trim_left(temp), 1, rand(5,8)) - - var/trimmed = trim_left(temp) - if(length(trimmed)) - if(append) - temp += pick(append) - - say(temp) - winset(client, "input", "text=[null]") - -/mob/living/carbon/human/speech_bubble_appearance() - var/sounds_synth = FALSE - var/datum/robolimb/robo = isSynthetic() //Will get torso manufacturer - if(robo) - sounds_synth = looksSynthetic() //Based on lifelike robolimb vars - - // Not lifelike and got manufacturer - if(sounds_synth) - return robo.speech_bubble_appearance || "synthetic" - - // Not lifelike synth, might have synth voice box - if(!robo) - var/obj/item/organ/internal/V = internal_organs_by_name[O_VOICE] - if(V?.robotic >= ORGAN_ROBOT) - return "synthetic" - - // Species might have custom one - if(species.speech_bubble_appearance) - return species.speech_bubble_appearance - - // NORMIE - return ..() - -/mob/living/carbon/human/say_understands(var/mob/other, var/datum/language/speaking = null) - if(has_brain_worms()) //Brain worms translate everything. Even mice and alien speak. - return TRUE - - if(species.can_understand(other)) - return TRUE - - //These only pertain to common. Languages are handled by mob/say_understands() - if(!speaking) - if(istype(other, /mob/living/carbon/alien/diona)) - if(other.languages.len >= 2) //They've sucked down some blood and can speak common now. - return TRUE - if(issilicon(other)) - return TRUE - if(isbrain(other)) - return TRUE - if(isslime(other)) - return TRUE - - return ..() - -/mob/living/carbon/human/GetVoice() - var/voice_sub - if(istype(get_rig(),/obj/item/weapon/rig)) - var/obj/item/weapon/rig/rig = get_rig() - // todo: fix this shit - if(rig.speech && rig.speech.voice_holder && rig.speech.voice_holder.active && rig.speech.voice_holder.voice) - voice_sub = rig.speech.voice_holder.voice - if(!voice_sub) // If the rig has a voice changer, then we use that. Otherwise, use this - for(var/obj/item/gear in list(wear_mask,wear_suit,head)) - if(!gear) - continue - var/obj/item/voice_changer/changer = locate() in gear - if(changer && changer.active) - if(changer.voice) - voice_sub = changer.voice - else - voice_sub = get_id_name() - if(voice_sub) - return voice_sub - if(mind && mind.changeling && mind.changeling.mimicing) - return mind.changeling.mimicing - if(GetSpecialVoice()) - return GetSpecialVoice() - return real_name - -/mob/living/carbon/human/proc/SetSpecialVoice(var/new_voice) - if(new_voice) - special_voice = new_voice - return - -/mob/living/carbon/human/proc/UnsetSpecialVoice() - special_voice = "" - return - -/mob/living/carbon/human/proc/GetSpecialVoice() - return special_voice - -/mob/living/carbon/human/handle_speech_problems(var/list/message_data) - if(silent || (sdisabilities & MUTE)) - message_data[1] = "" - . = 1 - - else if(istype(wear_mask, /obj/item/clothing/mask/muzzle)) //YWedit start, fixes masks removing speech problems. - var/obj/item/clothing/mask/muzzle/M = wear_mask // YWedit End. - if(M.voicechange) - message_data[1] = pick(M.say_messages) - message_data[2] = pick(M.say_verbs) - . = 1 - - 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 - var/static/regex/speedboost_main = new ("\[ ',!?.;\]","g") - 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, "") - else - . = ..(message_data) - -/mob/living/carbon/human/handle_message_mode(message_mode, list/message_pieces, verb, used_radios) - switch(message_mode) - if("intercom") - if(!restrained()) - for(var/obj/item/device/radio/intercom/I in view(1)) - I.talk_into(src, message_pieces, null, verb) - I.add_fingerprint(src) - used_radios += I - if("headset") - var/obj/item/device/radio/R = null - if(isradio(l_ear)) - R = l_ear - if(R.talk_into(src, message_pieces, null, verb)) - used_radios += R - return - - if(isradio(r_ear)) - R = r_ear - if(R.talk_into(src, message_pieces, null, verb)) - used_radios += R - return - if("right ear") - var/obj/item/device/radio/R = null - if(isradio(r_ear)) - R = r_ear - if(isradio(r_hand)) - R = r_hand - if(istype(R)) - if(R.talk_into(src, message_pieces, null, verb)) - used_radios += R - if("left ear") - var/obj/item/device/radio/R = null - if(isradio(l_ear)) - R = l_ear - if(isradio(l_hand)) - R = l_hand - if(istype(R)) - if(R.talk_into(src, message_pieces, null, verb)) - used_radios += R - else - if(message_mode) - if(isradio(l_ear)) - if(l_ear.talk_into(src, message_pieces, message_mode, verb)) - used_radios += l_ear - return - - if(isradio(r_ear)) - if(r_ear.talk_into(src, message_pieces, message_mode, verb)) - used_radios += r_ear - -/mob/living/carbon/human/handle_speech_sound() - var/list/returns[2] - if(species.speech_sounds && species.speech_sounds.len && prob(species.speech_chance)) //VOREStation Edit: Sanity Check - returns[1] = sound(pick(species.speech_sounds)) - returns[2] = 50 - return returns - -/mob/living/carbon/human/binarycheck() - . = FALSE - var/obj/item/device/radio/headset/R = null - if(istype(l_ear, /obj/item/device/radio/headset)) - R = l_ear - if(R.translate_binary) - . = TRUE - - if(istype(r_ear, /obj/item/device/radio/headset)) - R = r_ear - if(R.translate_binary) - . = TRUE +/mob/living/carbon/human/GetAltName() + if(name != GetVoice()) + return " (as [get_id_name("Unknown")])" + + return ..() + +/mob/living/carbon/human/proc/forcesay(list/append) + if(stat == CONSCIOUS) + if(client) + var/virgin = 1 //has the text been modified yet? + var/temp = winget(client, "input", "text") + if(findtextEx(temp, "Say \"", 1, 7) && length(temp) > 5) //case sensitive means + + temp = replacetext(temp, ";", "") //general radio + + if(findtext(trim_left(temp), ":", 6, 7)) //dept radio + temp = copytext(trim_left(temp), 8) + virgin = 0 + + if(virgin) + temp = copytext(trim_left(temp), 6) //normal speech + virgin = 0 + + while(findtext(trim_left(temp), ":", 1, 2)) //dept radio again (necessary) + temp = copytext(trim_left(temp), 3) + + if(findtext(temp, "*", 1, 2)) //emotes + return + temp = copytext(trim_left(temp), 1, rand(5,8)) + + var/trimmed = trim_left(temp) + if(length(trimmed)) + if(append) + temp += pick(append) + + say(temp) + winset(client, "input", "text=[null]") + +/mob/living/carbon/human/speech_bubble_appearance() + var/sounds_synth = FALSE + var/datum/robolimb/robo = isSynthetic() //Will get torso manufacturer + if(robo) + sounds_synth = looksSynthetic() //Based on lifelike robolimb vars + + // Not lifelike and got manufacturer + if(sounds_synth) + return robo.speech_bubble_appearance || "synthetic" + + // Not lifelike synth, might have synth voice box + if(!robo) + var/obj/item/organ/internal/V = internal_organs_by_name[O_VOICE] + if(V?.robotic >= ORGAN_ROBOT) + return "synthetic" + + // Species might have custom one + if(species.speech_bubble_appearance) + return species.speech_bubble_appearance + + // NORMIE + return ..() + +/mob/living/carbon/human/say_understands(var/mob/other, var/datum/language/speaking = null) + if(has_brain_worms()) //Brain worms translate everything. Even mice and alien speak. + return TRUE + + if(species.can_understand(other)) + return TRUE + + //These only pertain to common. Languages are handled by mob/say_understands() + if(!speaking) + if(istype(other, /mob/living/carbon/alien/diona)) + if(other.languages.len >= 2) //They've sucked down some blood and can speak common now. + return TRUE + if(issilicon(other)) + return TRUE + if(isbrain(other)) + return TRUE + if(isslime(other)) + return TRUE + + return ..() + +/mob/living/carbon/human/GetVoice() + var/voice_sub + if(istype(get_rig(),/obj/item/weapon/rig)) + var/obj/item/weapon/rig/rig = get_rig() + // todo: fix this shit + if(rig.speech && rig.speech.voice_holder && rig.speech.voice_holder.active && rig.speech.voice_holder.voice) + voice_sub = rig.speech.voice_holder.voice + if(!voice_sub) // If the rig has a voice changer, then we use that. Otherwise, use this + for(var/obj/item/gear in list(wear_mask,wear_suit,head)) + if(!gear) + continue + var/obj/item/voice_changer/changer = locate() in gear + if(changer && changer.active) + if(changer.voice) + voice_sub = changer.voice + else + voice_sub = get_id_name() + if(voice_sub) + return voice_sub + if(mind && mind.changeling && mind.changeling.mimicing) + return mind.changeling.mimicing + if(GetSpecialVoice()) + return GetSpecialVoice() + return real_name + +/mob/living/carbon/human/proc/SetSpecialVoice(var/new_voice) + if(new_voice) + special_voice = new_voice + return + +/mob/living/carbon/human/proc/UnsetSpecialVoice() + special_voice = "" + return + +/mob/living/carbon/human/proc/GetSpecialVoice() + return special_voice + +/mob/living/carbon/human/handle_speech_problems(var/list/message_data) + if(silent || (sdisabilities & MUTE)) + message_data[1] = "" + . = 1 + + else if(istype(wear_mask, /obj/item/clothing/mask/muzzle)) //YWedit start, fixes masks removing speech problems. + var/obj/item/clothing/mask/muzzle/M = wear_mask // YWedit End. + if(M.voicechange) + message_data[1] = pick(M.say_messages) + message_data[2] = pick(M.say_verbs) + . = 1 + + 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 + var/static/regex/speedboost_main = new ("\[ ',!?.;\]","g") + 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) + +/mob/living/carbon/human/handle_message_mode(message_mode, list/message_pieces, verb, used_radios) + switch(message_mode) + if("intercom") + if(!restrained()) + for(var/obj/item/device/radio/intercom/I in view(1)) + I.talk_into(src, message_pieces, null, verb) + I.add_fingerprint(src) + used_radios += I + if("headset") + var/obj/item/device/radio/R = null + if(isradio(l_ear)) + R = l_ear + if(R.talk_into(src, message_pieces, null, verb)) + used_radios += R + return + + if(isradio(r_ear)) + R = r_ear + if(R.talk_into(src, message_pieces, null, verb)) + used_radios += R + return + if("right ear") + var/obj/item/device/radio/R = null + if(isradio(r_ear)) + R = r_ear + if(isradio(r_hand)) + R = r_hand + if(istype(R)) + if(R.talk_into(src, message_pieces, null, verb)) + used_radios += R + if("left ear") + var/obj/item/device/radio/R = null + if(isradio(l_ear)) + R = l_ear + if(isradio(l_hand)) + R = l_hand + if(istype(R)) + if(R.talk_into(src, message_pieces, null, verb)) + used_radios += R + else + if(message_mode) + if(isradio(l_ear)) + if(l_ear.talk_into(src, message_pieces, message_mode, verb)) + used_radios += l_ear + return + + if(isradio(r_ear)) + if(r_ear.talk_into(src, message_pieces, message_mode, verb)) + used_radios += r_ear + +/mob/living/carbon/human/handle_speech_sound() + var/list/returns[2] + if(species.speech_sounds && species.speech_sounds.len && prob(species.speech_chance)) //VOREStation Edit: Sanity Check + returns[1] = sound(pick(species.speech_sounds)) + returns[2] = 50 + return returns + +/mob/living/carbon/human/binarycheck() + . = FALSE + var/obj/item/device/radio/headset/R = null + if(istype(l_ear, /obj/item/device/radio/headset)) + R = l_ear + if(R.translate_binary) + . = TRUE + + if(istype(r_ear, /obj/item/device/radio/headset)) + R = r_ear + if(R.translate_binary) + . = TRUE 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 8cf809db0d..6659695c57 100644 --- a/code/modules/mob/living/carbon/human/species/outsider/vox.dm +++ b/code/modules/mob/living/carbon/human/species/outsider/vox.dm @@ -49,7 +49,8 @@ siemens_coefficient = 0.2 flags = NO_SCAN | NO_DEFIB - appearance_flags = HAS_EYE_COLOR | HAS_HAIR_COLOR + // spawn_flags = SPECIES_IS_WHITELISTED YW Edit: comment out + appearance_flags = HAS_EYE_COLOR | HAS_HAIR_COLOR | HAS_SKIN_COLOR blood_color = "#9066BD" flesh_color = "#808D11" @@ -109,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_attack_vr.dm b/code/modules/mob/living/carbon/human/species/species_attack_vr.dm index 2c79aaee37..98d732b658 100644 --- a/code/modules/mob/living/carbon/human/species/species_attack_vr.dm +++ b/code/modules/mob/living/carbon/human/species/species_attack_vr.dm @@ -22,30 +22,30 @@ switch(attack_damage) if(1 to 2) user.visible_message("[user]'s fangs scrape across [target]'s cheek!") - to_chat(target, "Your face feels tingly!") + to_chat(target, "Your face feels tingly!") target.bloodstr.add_reagent("numbenzyme",attack_damage) //Have to add this here, otherwise the swtich fails. if(3 to 4) user.visible_message("[user]'s fangs pierce into [target]'s neck at an odd, awkward angle!") - to_chat(target, "Your neck feels like it's on fire before going numb!") + to_chat(target, "Your neck feels like it's on fire before going numb!") target.bloodstr.add_reagent("numbenzyme",attack_damage) if(5) user.visible_message("[user] sinks \his [pick(attack_noun)] deep into [target]'s neck, causing the vein to bulge outwards at some type of chemical is pumped into it!") - to_chat(target, "Your neck feels like it's going to burst! Moments later, you simply can't feel your neck any longer, the numbness beginning to spread throughout your body!") + to_chat(target, "Your neck feels like it's going to burst! Moments later, you simply can't feel your neck any longer, the numbness beginning to spread throughout your body!") target.bloodstr.add_reagent("numbenzyme",attack_damage) else // ----- BODY ----- // switch(attack_damage) if(1 to 2) user.visible_message("[user]'s fangs scrape across [target]'s [affecting.name]!") - to_chat(target, "Your [affecting.name] feels tingly!") + to_chat(target, "Your [affecting.name] feels tingly!") target.bloodstr.add_reagent("numbenzyme",attack_damage) if(3 to 4) user.visible_message("[user]'s fangs pierce [pick("", "", "the side of")] [target]'s [affecting.name]!") - to_chat(target, "Your [affecting.name] feels like it's on fire before going numb!") + to_chat(target, "Your [affecting.name] feels like it's on fire before going numb!") target.bloodstr.add_reagent("numbenzyme",attack_damage) if(5) user.visible_message("[user]'s fangs sink deep into [target]'s [affecting.name], one of their veins bulging outwards from the sudden fluid pumped into it!") - to_chat(target, "Your [affecting.name] feels like it's going to burst! Moments later, you simply can't feel your [affecting.name] any longer, the numbness slowly spreading throughout your body!") + to_chat(target, "Your [affecting.name] feels like it's going to burst! Moments later, you simply can't feel your [affecting.name] any longer, the numbness slowly spreading throughout your body!") target.bloodstr.add_reagent("numbenzyme",attack_damage) /datum/unarmed_attack/claws/shadekin 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 27bb09baa6..fc59efd67e 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/species_shapeshift_vr.dm b/code/modules/mob/living/carbon/human/species/species_shapeshift_vr.dm index c8e67a39cd..1b7e3386da 100644 --- a/code/modules/mob/living/carbon/human/species/species_shapeshift_vr.dm +++ b/code/modules/mob/living/carbon/human/species/species_shapeshift_vr.dm @@ -189,5 +189,5 @@ species.base_species = new_species wrapped_species_by_ref["\ref[src]"] = new_species if (visible) - visible_message("\The [src] shifts and contorts, taking the form of \a [new_species]!") - regenerate_icons() + visible_message("\The [src] shifts and contorts, taking the form of \a [new_species]!") + regenerate_icons() \ No newline at end of file diff --git a/code/modules/mob/living/carbon/human/species/station/prometheans.dm b/code/modules/mob/living/carbon/human/species/station/prometheans.dm index 68f6859c6d..2a23d16157 100644 --- a/code/modules/mob/living/carbon/human/species/station/prometheans.dm +++ b/code/modules/mob/living/carbon/human/species/station/prometheans.dm @@ -209,8 +209,17 @@ var/datum/species/shapeshifter/promethean/prometheans if(S.dirt > 50) S.dirt = 0 H.adjust_nutrition(rand(10, 20)) - if(H.clean_blood(1)) - H.adjust_nutrition(rand(5, 15)) + if(H.feet_blood_color || LAZYLEN(H.feet_blood_DNA)) + LAZYCLEARLIST(H.feet_blood_DNA) + H.feet_blood_DNA = null + H.feet_blood_color = null + H.adjust_nutrition(rand(3, 10)) + if(H.bloody_hands) + LAZYCLEARLIST(H.blood_DNA) + H.blood_DNA = null + H.hand_blood_color = null + H.bloody_hands = 0 + H.adjust_nutrition(rand(3, 10)) if(!(H.gloves || (H.wear_suit && (H.wear_suit.body_parts_covered & HANDS)))) if(H.r_hand) if(H.r_hand.clean_blood()) @@ -218,6 +227,7 @@ var/datum/species/shapeshifter/promethean/prometheans if(H.l_hand) if(H.l_hand.clean_blood()) H.adjust_nutrition(rand(5, 15)) +/* if(H.head) if(H.head.clean_blood()) H.update_inv_head(0) @@ -230,6 +240,10 @@ var/datum/species/shapeshifter/promethean/prometheans if(H.w_uniform.clean_blood()) H.update_inv_w_uniform(0) H.adjust_nutrition(rand(5, 15)) +*/ + // Prometheans themselves aren't very safe places for other biota. + H.germ_level = 0 + H.update_bloodied() //End cleaning code. var/datum/gas_mixture/environment = T.return_air() 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 69af9a4a27..62c6d57dab 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 0cdd64f856..9e9d049547 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 @@ -374,7 +374,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 6abec0e517..46a4b4c1d5 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 bbfbac9487..ca33f92959 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 @@ -201,6 +201,16 @@ YW change end */ ..(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." @@ -248,6 +258,7 @@ YW change end */ 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) @@ -258,13 +269,14 @@ YW change end */ 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" @@ -488,7 +500,7 @@ YW change end */ 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." @@ -771,8 +783,8 @@ YW CHANGE STOP*/ 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 c09fa9ae64..1b110070cb 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 @@ -196,6 +196,7 @@ name = "Winged Flight" desc = "Allows you to fly by using your wings. Don't forget to bring them!" cost = 1 //YW EDIT + 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) @@ -282,6 +283,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 03e3966ff9..0de5ae3097 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 faa62c27d4..311682f056 100644 --- a/code/modules/mob/living/living.dm +++ b/code/modules/mob/living/living.dm @@ -96,7 +96,7 @@ if(!..()) return 0 - usr.visible_message("[src] points to [A]") + usr.visible_message("[src] points to [A].") return 1 /mob/living/verb/succumb() @@ -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) @@ -687,13 +697,13 @@ //VOREStation Edit Start - Making it so SSD people have prefs with fallback to original style. if(config.allow_Metadata) if(ooc_notes) - to_chat(usr, "[src]'s Metainfo:
    [ooc_notes]") + to_chat(usr, "[src]'s Metainfo:
    [ooc_notes]
    ") else if(client) - to_chat(usr, "[src]'s Metainfo:
    [client.prefs.metadata]") + to_chat(usr, "[src]'s Metainfo:
    [client.prefs.metadata]
    ") else - to_chat(usr, "[src] does not have any stored infomation!") + to_chat(usr, "[src] does not have any stored infomation!") else - to_chat(usr, "OOC Metadata is not supported by this server!") + to_chat(usr, "OOC Metadata is not supported by this server!") //VOREStation Edit End - Making it so SSD people have prefs with fallback to original style. return @@ -763,7 +773,7 @@ set category = "IC" resting = !resting - to_chat(src, "You are now [resting ? "resting" : "getting up"]") + to_chat(src, "You are now [resting ? "resting" : "getting up"].") update_canmove() //called when the mob receives a bright flash @@ -1128,7 +1138,7 @@ var/mob/living/carbon/human/H = target if(H.in_throw_mode && H.a_intent == I_HELP && unEquip(I)) H.put_in_hands(I) // If this fails it will just end up on the floor, but that's fitting for things like dionaea. - visible_message("[src] hands \the [H] \a [I].", SPAN_NOTICE("You give \the [target] \a [I].")) + visible_message("[src] hands \the [H] \a [I].", SPAN_NOTICE("You give \the [target] \a [I].")) else to_chat(src, SPAN_NOTICE("You offer \the [I] to \the [target].")) do_give(H) diff --git a/code/modules/mob/living/living_defense.dm b/code/modules/mob/living/living_defense.dm index a27962edbf..f30c02a151 100644 --- a/code/modules/mob/living/living_defense.dm +++ b/code/modules/mob/living/living_defense.dm @@ -266,10 +266,10 @@ miss_chance = max(15*(distance-2), 0) if (prob(miss_chance)) - visible_message("\The [O] misses [src] narrowly!") + visible_message("\The [O] misses [src] narrowly!") return - src.visible_message("[src] has been hit by [O].") + src.visible_message("[src] has been hit by [O].") var/armor = run_armor_check(null, "melee") var/soaked = get_armor_soak(null, "melee") @@ -296,7 +296,7 @@ if(O.throw_source && momentum >= THROWNOBJ_KNOCKBACK_SPEED) var/dir = get_dir(O.throw_source, src) - visible_message("[src] staggers under the impact!","You stagger under the impact!") + visible_message("[src] staggers under the impact!","You stagger under the impact!") src.throw_at(get_edge_target_turf(src,dir),1,momentum) if(!O || !src) return @@ -501,11 +501,12 @@ to_chat(src, span("critical", "You've been struck by lightning!")) // Called when touching a lava tile. -// Does roughly 100 damage to unprotected mobs, and 20 to fully protected mobs. +// Does roughly 70 damage (30 instantly, up to ~40 over time) to unprotected mobs, and 10 to fully protected mobs. /mob/living/lava_act() - add_modifier(/datum/modifier/fire/intense, 8 SECONDS) // Around 40 total if left to burn and without fire protection per stack. - inflict_heat_damage(40) // Another 40, however this is instantly applied to unprotected mobs. - adjustFireLoss(20) // Lava cannot be 100% resisted with fire protection. + adjust_fire_stacks(1) + add_modifier(/datum/modifier/fire/stack_managed/intense, 8 SECONDS) // Around 40 total if left to burn and without fire protection per stack. + inflict_heat_damage(20) // Another 20, however this is instantly applied to unprotected mobs. + adjustFireLoss(10) // Lava cannot be 100% resisted with fire protection. /mob/living/proc/reagent_permeability() return 1 diff --git a/code/modules/mob/living/living_defines.dm b/code/modules/mob/living/living_defines.dm index 031d6ddb89..5a4767c957 100644 --- a/code/modules/mob/living/living_defines.dm +++ b/code/modules/mob/living/living_defines.dm @@ -15,7 +15,7 @@ var/toxloss = 0.0 //Toxic damage caused by being poisoned or radiated var/fireloss = 0.0 //Burn damage caused by being way too hot, too cold or burnt. var/cloneloss = 0 //Damage caused by being cloned or ejected from the cloner early. slimes also deal cloneloss damage to victims - var/brainloss = 0 //'Retardation' damage caused by someone hitting you in the head with a bible or being infected with brainrot. + var/brainloss = 0 //Thought-scrambly damage caused by someone hitting you in the head with a bible or being infected with brainrot. var/halloss = 0 //Hallucination damage. 'Fake' damage obtained through hallucinating or the holodeck. Sleeping should cause it to wear off. var/nutrition = 400 diff --git a/code/modules/mob/living/living_defines_vr.dm b/code/modules/mob/living/living_defines_vr.dm index 0d5607ad74..9df4b4d95e 100644 --- a/code/modules/mob/living/living_defines_vr.dm +++ b/code/modules/mob/living/living_defines_vr.dm @@ -12,6 +12,10 @@ var/custom_exclaim = null var/custom_whisper = null +//custom temperature discomfort vars + var/list/custom_heat = list() + var/list/custom_cold = list() + //YW Add Start /mob var/wingdings = 0 diff --git a/code/modules/mob/living/living_vr.dm b/code/modules/mob/living/living_vr.dm index ad35515ef1..7e932dc403 100644 --- a/code/modules/mob/living/living_vr.dm +++ b/code/modules/mob/living/living_vr.dm @@ -27,10 +27,10 @@ set desc = "Sets OOC notes about yourself or your RP preferences or status." set category = "OOC" - var/new_metadata = sanitize(tgui_input_text(usr, "Enter any information you'd like others to see, such as Roleplay-preferences. This will not be saved permanently, only for this round.", "Game Preference" , html_decode(ooc_notes), multiline = TRUE, prevent_enter = TRUE), extra = 0) + var/new_metadata = strip_html_simple(tgui_input_text(usr, "Enter any information you'd like others to see, such as Roleplay-preferences. This will not be saved permanently, only for this round.", "Game Preference" , html_decode(ooc_notes), multiline = TRUE, prevent_enter = TRUE)) if(new_metadata && CanUseTopic(usr)) ooc_notes = new_metadata - to_chat(usr, "OOC notes updated.") + to_chat(usr, "OOC notes updated.") log_admin("[key_name(usr)] updated their OOC notes mid-round.") /mob/living/verb/set_voice_freq() diff --git a/code/modules/mob/living/riding.dm b/code/modules/mob/living/riding.dm index 3a614a4b6d..08a2f88970 100644 --- a/code/modules/mob/living/riding.dm +++ b/code/modules/mob/living/riding.dm @@ -7,10 +7,10 @@ if(istype(riding_datum,/datum/riding)) if(riding_datum.keytype) riding_datum.keytype = null - to_chat(src, "Rider control enabled.") + to_chat(src, "Rider control enabled.") return else riding_datum.keytype = /obj/item/weapon/material/twohanded/riding_crop - to_chat(src, "Rider control restricted.") + to_chat(src, "Rider control restricted.") return return diff --git a/code/modules/mob/living/say.dm b/code/modules/mob/living/say.dm index 768f8c3bae..3291c8529a 100644 --- a/code/modules/mob/living/say.dm +++ b/code/modules/mob/living/say.dm @@ -341,7 +341,9 @@ var/list/channel_to_radio_key = new //The 'post-say' static speech bubble var/speech_bubble_test = say_test(message) //var/image/speech_bubble = image('icons/mob/talk_vr.dmi',src,"h[speech_bubble_test]") //VOREStation Edit. Commented this out in case we need to reenable. - var/speech_type = speech_bubble_appearance() + var/speech_type = custom_speech_bubble + if(!speech_type || speech_type == "default") + speech_type = speech_bubble_appearance() var/image/speech_bubble = generate_speech_bubble(src, "[speech_type][speech_bubble_test]") var/sb_alpha = 255 var/atom/loc_before_turf = src diff --git a/code/modules/mob/living/silicon/ai/ai.dm b/code/modules/mob/living/silicon/ai/ai.dm index a2ce47c2be..39667eceda 100644 --- a/code/modules/mob/living/silicon/ai/ai.dm +++ b/code/modules/mob/living/silicon/ai/ai.dm @@ -52,6 +52,7 @@ var/list/ai_verbs_default = list( var/aiRestorePowerRoutine = 0 var/viewalerts = 0 var/icon/holo_icon //Default is assigned when AI is created. + var/holo_color = null var/list/connected_robots = list() var/obj/item/device/pda/ai/aiPDA = null var/obj/item/device/communicator/aiCommunicator = null @@ -189,12 +190,12 @@ var/list/ai_verbs_default = list( return /mob/living/silicon/ai/proc/on_mob_init() - to_chat(src, "You are playing the station's AI. The AI cannot move, but can interact with many objects while viewing them (through cameras).") - to_chat(src, "To look at other parts of the station, click on yourself to get a camera menu.") - to_chat(src, "While observing through a camera, you can use most (networked) devices which you can see, such as computers, APCs, intercoms, doors, etc.") - to_chat(src, "To use something, simply click on it.") - to_chat(src, "Use say #b to speak to your cyborgs through binary. Use say :h to speak from an active holopad.") - to_chat(src, "For department channels, use the following say commands:") + var/init_text = list("You are playing the station's AI. The AI cannot move, but can interact with many objects while viewing them (through cameras).", + "To look at other parts of the station, click on yourself to get a camera menu.", + "While observing through a camera, you can use most (networked) devices which you can see, such as computers, APCs, intercoms, doors, etc.", + "To use something, simply click on it.", + "For department channels, use the following say commands:") + to_chat(src, "[jointext(init_text, "
    ")]
    ") var/radio_text = "" for(var/i = 1 to common_radio.channels.len) @@ -214,7 +215,7 @@ var/list/ai_verbs_default = list( if (malf && !(mind in malf.current_antagonists)) show_laws() - to_chat(src, "These laws may be changed by other players, or by you being the traitor.") + to_chat(src, "These laws may be changed by other players, or by you being the traitor.") job = "AI" setup_icon() @@ -360,7 +361,7 @@ var/list/ai_verbs_default = list( return if(message_cooldown) - to_chat(src, "Please allow one minute to pass between announcements.") + to_chat(src, "Please allow one minute to pass between announcements.") return var/input = tgui_input_text(usr, "Please write a message to announce to the station crew.", "A.I. Announcement") if(!input) @@ -472,7 +473,7 @@ var/list/ai_verbs_default = list( if(target && (!istype(target, /mob/living/carbon/human) || html_decode(href_list["trackname"]) == target:get_face_name())) ai_actual_track(target) else - to_chat(src, "System error. Cannot locate [html_decode(href_list["trackname"])].") + to_chat(src, "System error. Cannot locate [html_decode(href_list["trackname"])].") return if(href_list["trackbot"]) @@ -572,7 +573,7 @@ var/list/ai_verbs_default = list( if(network in C.network) eyeobj.setLoc(get_turf(C)) break - to_chat(src, "Switched to [network] camera network.") + to_chat(src, "Switched to [network] camera network.") //End of code by Mord_Sith /mob/living/silicon/ai/proc/ai_statuschange() @@ -595,108 +596,76 @@ var/list/ai_verbs_default = list( return var/input - var/choice = tgui_alert(usr, "Would you like to select a hologram based on a (visible) crew member, switch to unique avatar, or load your character from your character slot?","Hologram Selection",list("Crew Member","Unique","My Character")) + var/choice + + choice = alert("Would you like to modify your hologram's model, or color?",,"Model","Color","Cancel") switch(choice) - if("Crew Member") //A seeable crew member (or a dog) - var/list/targets = trackable_mobs() - if(targets.len) - input = tgui_input_list(usr, "Select a crew member:", "Hologram Choice", targets) //The definition of "crew member" is a little loose... - //This is torture, I know. If someone knows a better way... - if(!input) return - var/new_holo = getHologramIcon(getCompoundIcon(targets[input])) - qdel(holo_icon) - holo_icon = new_holo + if("Color") + input = input("Choose a color:", "Hologram Color", holo_color) as color|null - else - tgui_alert_async(usr, "No suitable records found. Aborting.") - - if("My Character") //Loaded character slot - if(!client || !client.prefs) return - var/mob/living/carbon/human/dummy/dummy = new () - //This doesn't include custom_items because that's ... hard. - client.prefs.dress_preview_mob(dummy) - sleep(1 SECOND) //Strange bug in preview code? Without this, certain things won't show up. Yay race conditions? - dummy.regenerate_icons() - - var/new_holo = getHologramIcon(getCompoundIcon(dummy)) - qdel(holo_icon) - qdel(dummy) - holo_icon = new_holo - - else //A premade from the dmi - var/icon_list[] = list( - "default", - "floating face", - "singularity", - "drone", - "carp", - "spider", - "bear", - "slime", - "ian", - "runtime", - "poly", - "pun pun", - "male human", - "female human", - "male unathi", - "female unathi", - "male tajaran", - "female tajaran", - "male tesharii", - "female tesharii", - "male skrell", - "female skrell" - ) - input = tgui_input_list(usr, "Please select a hologram:", "Hologram Choice", icon_list) if(input) - qdel(holo_icon) - switch(input) - if("default") - holo_icon = getHologramIcon(icon('icons/mob/AI.dmi',"holo1")) - if("floating face") - holo_icon = getHologramIcon(icon('icons/mob/AI.dmi',"holo2")) - if("singularity") - holo_icon = getHologramIcon(icon('icons/obj/singularity.dmi',"singularity_s1")) - if("drone") - holo_icon = getHologramIcon(icon('icons/mob/animal.dmi',"drone0")) - if("carp") - holo_icon = getHologramIcon(icon('icons/mob/AI.dmi',"holo4")) - if("spider") - holo_icon = getHologramIcon(icon('icons/mob/animal.dmi',"nurse")) - if("bear") - holo_icon = getHologramIcon(icon('icons/mob/animal.dmi',"brownbear")) - if("slime") - holo_icon = getHologramIcon(icon('icons/mob/slimes.dmi',"cerulean adult slime")) - if("ian") - holo_icon = getHologramIcon(icon('icons/mob/animal.dmi',"corgi")) - if("runtime") - holo_icon = getHologramIcon(icon('icons/mob/animal.dmi',"cat")) - if("poly") - holo_icon = getHologramIcon(icon('icons/mob/animal.dmi',"parrot_fly")) - if("pun pun") - holo_icon = getHologramIcon(icon('icons/mob/AI.dmi',"punpun")) - if("male human") - holo_icon = getHologramIcon(icon('icons/mob/AI.dmi',"holohumm")) - if("female human") - holo_icon = getHologramIcon(icon('icons/mob/AI.dmi',"holohumf")) - if("male unathi") - holo_icon = getHologramIcon(icon('icons/mob/AI.dmi',"holounam")) - if("female unathi") - holo_icon = getHologramIcon(icon('icons/mob/AI.dmi',"holounaf")) - if("male tajaran") - holo_icon = getHologramIcon(icon('icons/mob/AI.dmi',"holotajm")) - if("female tajaran") - holo_icon = getHologramIcon(icon('icons/mob/AI.dmi',"holotajf")) - if("male tesharii") - holo_icon = getHologramIcon(icon('icons/mob/AI.dmi',"holotesm")) - if("female tesharii") - holo_icon = getHologramIcon(icon('icons/mob/AI.dmi',"holotesf")) - if("male skrell") - holo_icon = getHologramIcon(icon('icons/mob/AI.dmi',"holoskrm")) - if("female skrell") - holo_icon = getHologramIcon(icon('icons/mob/AI.dmi',"holoskrf")) + holo_color = input + + if("Model") + choice = tgui_alert(usr, "Would you like to select a hologram based on a (visible) crew member, switch to unique avatar, or load your character from your character slot?","Hologram Selection",list("Crew Member","Unique","My Character")) + + switch(choice) + if("Crew Member") //A seeable crew member (or a dog) + var/list/targets = trackable_mobs() + if(targets.len) + input = tgui_input_list(usr, "Select a crew member:", "Hologram Choice", targets) //The definition of "crew member" is a little loose... + //This is torture, I know. If someone knows a better way... + if(!input) return + var/new_holo = getHologramIcon(getCompoundIcon(targets[input])) + qdel(holo_icon) + holo_icon = new_holo + + else + tgui_alert_async(usr, "No suitable records found. Aborting.") + + if("My Character") //Loaded character slot + if(!client || !client.prefs) return + var/mob/living/carbon/human/dummy/dummy = new () + //This doesn't include custom_items because that's ... hard. + client.prefs.dress_preview_mob(dummy) + sleep(1 SECOND) //Strange bug in preview code? Without this, certain things won't show up. Yay race conditions? + dummy.regenerate_icons() + + var/new_holo = getHologramIcon(getCompoundIcon(dummy)) + qdel(holo_icon) + qdel(dummy) + holo_icon = new_holo + + else //A premade from the dmi + var/icon_list[] = list( + "default", + "floating face", + "singularity", + "drone", + "carp", + "spider", + "bear", + "slime", + "ian", + "runtime", + "poly", + "pun pun", + "male human", + "female human", + "male unathi", + "female unathi", + "male tajaran", + "female tajaran", + "male tesharii", + "female tesharii", + "male skrell", + "female skrell" + ) + input = tgui_input_list(usr, "Please select a hologram:", "Hologram Choice", icon_list) + + + //Toggles the luminosity and applies it by re-entereing the camera. /mob/living/silicon/ai/proc/toggle_camera_light() @@ -707,7 +676,7 @@ var/list/ai_verbs_default = list( return camera_light_on = !camera_light_on - to_chat(src, "Camera lights [camera_light_on ? "activated" : "deactivated"].") + to_chat(src, "Camera lights [camera_light_on ? "activated" : "deactivated"].") if(!camera_light_on) if(camera) camera.set_light(0) @@ -754,20 +723,20 @@ var/list/ai_verbs_default = list( return if(anchored) playsound(src, W.usesound, 50, 1) - user.visible_message("\The [user] starts to unbolt \the [src] from the plating...") + user.visible_message("\The [user] starts to unbolt \the [src] from the plating...") if(!do_after(user,40 * W.toolspeed)) - user.visible_message("\The [user] decides not to unbolt \the [src].") + user.visible_message("\The [user] decides not to unbolt \the [src].") return - user.visible_message("\The [user] finishes unfastening \the [src]!") + user.visible_message("\The [user] finishes unfastening \the [src]!") anchored = FALSE return else playsound(src, W.usesound, 50, 1) - user.visible_message("\The [user] starts to bolt \the [src] to the plating...") + user.visible_message("\The [user] starts to bolt \the [src] to the plating...") if(!do_after(user,40 * W.toolspeed)) - user.visible_message("\The [user] decides not to bolt \the [src].") + user.visible_message("\The [user] decides not to bolt \the [src].") return - user.visible_message("\The [user] finishes fastening down \the [src]!") + user.visible_message("\The [user] finishes fastening down \the [src]!") anchored = TRUE return else @@ -781,7 +750,7 @@ var/list/ai_verbs_default = list( if(check_unable(AI_CHECK_RADIO)) return - to_chat(src, "Accessing Subspace Transceiver control...") + to_chat(src, "Accessing Subspace Transceiver control...") if (src.aiRadio) src.aiRadio.interact(src) @@ -804,7 +773,7 @@ var/list/ai_verbs_default = list( var/obj/effect/overlay/aiholo/hologram = holo.masters[src] walk(hologram, 0) //VOREStation Add End - to_chat(usr, "Your hologram will [hologram_follow ? "follow" : "no longer follow"] you now.") + to_chat(usr, "Your hologram will [hologram_follow ? "follow" : "no longer follow"] you now.") /mob/living/silicon/ai/proc/check_unable(var/flags = 0, var/feedback = 1) @@ -965,7 +934,7 @@ var/list/ai_verbs_default = list( var/message = combined["formatted"] var/name_used = M.GetVoice() //This communication is imperfect because the holopad "filters" voices and is only designed to connect to the master only. - var/rendered = "Relayed Speech: [name_used] [message]" + var/rendered = "Relayed Speech: [name_used] [message]" show_message(rendered, 2) /mob/living/silicon/ai/proc/toggle_multicam_verb() diff --git a/code/modules/mob/living/silicon/ai/laws.dm b/code/modules/mob/living/silicon/ai/laws.dm index 74816aeeb8..3dceddb51a 100755 --- a/code/modules/mob/living/silicon/ai/laws.dm +++ b/code/modules/mob/living/silicon/ai/laws.dm @@ -10,7 +10,7 @@ who = world else who = src - to_chat(who, "Obey these laws:") + to_chat(who, "Obey these laws:") src.laws_sanity_check() src.laws.show_laws(who) diff --git a/code/modules/mob/living/silicon/emote.dm b/code/modules/mob/living/silicon/emote.dm index 5bb86dac68..1a82c320cf 100644 --- a/code/modules/mob/living/silicon/emote.dm +++ b/code/modules/mob/living/silicon/emote.dm @@ -1,6 +1,7 @@ var/list/_silicon_default_emotes = list( /decl/emote/audible/synth, /decl/emote/audible/synth/beep, + /decl/emote/audible/synth/bing, /decl/emote/audible/synth/buzz, /decl/emote/audible/synth/confirm, /decl/emote/audible/synth/deny, @@ -17,7 +18,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/silicon/pai/pai.dm b/code/modules/mob/living/silicon/pai/pai.dm index 94595c9516..402b21a390 100644 --- a/code/modules/mob/living/silicon/pai/pai.dm +++ b/code/modules/mob/living/silicon/pai/pai.dm @@ -266,7 +266,7 @@ M.ejectpai() //I'm not sure how much of this is necessary, but I would rather avoid issues. if(istype(card.loc,/obj/item/rig_module)) - to_chat(src, "There is no room to unfold inside this rig module. You're good and stuck.") + to_chat(src, "There is no room to unfold inside this rig module. You're good and stuck.") return 0 else if(istype(card.loc,/mob)) var/mob/holder = card.loc @@ -295,7 +295,7 @@ canmove = TRUE var/turf/T = get_turf(src) - if(istype(T)) T.visible_message("[src] folds outwards, expanding into a mobile form.") + if(istype(T)) T.visible_message("[src] folds outwards, expanding into a mobile form.") verbs |= /mob/living/silicon/pai/proc/pai_nom verbs |= /mob/living/proc/vertical_nom update_icon() @@ -366,7 +366,7 @@ resting = !resting icon_state = resting ? "[chassis]_rest" : "[chassis]" update_icon() //VOREStation edit - to_chat(src, "You are now [resting ? "resting" : "getting up"]") + to_chat(src, "You are now [resting ? "resting" : "getting up"].") canmove = !resting @@ -436,7 +436,7 @@ release_vore_contents(FALSE) //VOREStation Add var/turf/T = get_turf(src) - if(istype(T) && !silent) T.visible_message("[src] neatly folds inwards, compacting down to a rectangular card.") + if(istype(T) && !silent) T.visible_message("[src] neatly folds inwards, compacting down to a rectangular card.") if(client) src.stop_pulling() @@ -535,6 +535,6 @@ return close_up() - visible_message("[src] fades away from the screen, the pAI device goes silent.") + visible_message("[src] fades away from the screen, the pAI device goes silent.") card.removePersonality() clear_client() diff --git a/code/modules/mob/living/silicon/pai/pai_vr.dm b/code/modules/mob/living/silicon/pai/pai_vr.dm index 86ef6cca5a..1f6349df05 100644 --- a/code/modules/mob/living/silicon/pai/pai_vr.dm +++ b/code/modules/mob/living/silicon/pai/pai_vr.dm @@ -86,7 +86,7 @@ canmove = TRUE card.setEmotion(15) playsound(card, 'sound/effects/pai-restore.ogg', 50, FALSE) - card.visible_message("\The [card] chimes.", runemessage = "chime") + card.visible_message("\The [card] chimes.", runemessage = "chime") /mob/living/silicon/pai/proc/pai_nom(var/mob/living/T in oview(1)) set name = "pAI Nom" @@ -206,7 +206,7 @@ hide_glow = FALSE update_icon() else - to_chat(src, "Your selected chassis cannot modify its eye glow!") + to_chat(src, "Your selected chassis cannot modify its eye glow!") return @@ -400,7 +400,7 @@ set category = "pAI Commands" set name = "Save Configuration" savefile_save(src) - to_chat(src, "[name] configuration saved to global pAI settings.") + to_chat(src, "[name] configuration saved to global pAI settings.") /mob/living/silicon/pai/a_intent_change(input as text) . = ..() @@ -474,28 +474,28 @@ card.screen_msg = message var/logmsg = "(CARD SCREEN)[message]" log_say(logmsg,src) - to_chat(src, "You print a message to your screen, \"[message]\"") + to_chat(src, "You print a message to your screen, \"[message]\"") if(isliving(card.loc)) var/mob/living/L = card.loc if(L.client) - to_chat(L, "[src.name]'s screen prints, \"[message]\"") + to_chat(L, "[src.name]'s screen prints, \"[message]\"") else return else if(isbelly(card.loc)) var/obj/belly/b = card.loc if(b.owner.client) - to_chat(b.owner, "[src.name]'s screen prints, \"[message]\"") + to_chat(b.owner, "[src.name]'s screen prints, \"[message]\"") else return else if(istype(card.loc, /obj/item/device/pda)) var/obj/item/device/pda/p = card.loc if(isliving(p.loc)) var/mob/living/L = p.loc if(L.client) - to_chat(L, "[src.name]'s screen prints, \"[message]\"") + to_chat(L, "[src.name]'s screen prints, \"[message]\"") else return else if(isbelly(p.loc)) var/obj/belly/b = card.loc if(b.owner.client) - to_chat(b.owner, "[src.name]'s screen prints, \"[message]\"") + to_chat(b.owner, "[src.name]'s screen prints, \"[message]\"") else return else return else return @@ -505,11 +505,11 @@ continue else if(isobserver(G) && G.is_preference_enabled(/datum/client_preference/ghost_ears)) if(is_preference_enabled(/datum/client_preference/whisubtle_vis) || G.client.holder) - to_chat(G, "[src.name]'s screen prints, \"[message]\"") + to_chat(G, "[src.name]'s screen prints, \"[message]\"") /mob/living/silicon/pai/proc/touch_window(soft_name) //This lets us touch TGUI procs and windows that may be nested behind other TGUI procs and windows if(stat != CONSCIOUS) //so we can access our software without having to open up the software interface TGUI window - to_chat(src, "You can't do that right now.") + to_chat(src, "You can't do that right now.") return for(var/thing in software) var/datum/pai_software/S = software[thing] diff --git a/code/modules/mob/living/silicon/robot/dogborg/dog_modules_vr.dm b/code/modules/mob/living/silicon/robot/dogborg/dog_modules_vr.dm index 9ae01741d2..771f9091f2 100644 --- a/code/modules/mob/living/silicon/robot/dogborg/dog_modules_vr.dm +++ b/code/modules/mob/living/silicon/robot/dogborg/dog_modules_vr.dm @@ -268,15 +268,15 @@ if(user.client && (target in user.client.screen)) to_chat(user, "You need to take \the [target.name] off before cleaning it!") if(istype(target, /obj/structure/sink) || istype(target, /obj/structure/toilet)) //Dog vibes. - user.visible_message("[user] begins to lap up water from [target.name].", "You begin to lap up water from [target.name].") + user.visible_message("[user] begins to lap up water from [target.name].", "You begin to lap up water from [target.name].") if(do_after (user, 50)) water.add_charge(50) - to_chat(src, "You refill some of your water reserves.") + to_chat(src, "You refill some of your water reserves.") else if(water.energy < 5) to_chat(user, "Your mouth feels dry. You should drink up some water .") return else if(istype(target,/obj/effect/decal/cleanable)) - user.visible_message("[user] begins to lick off \the [target.name].", "You begin to lick off \the [target.name]...") + user.visible_message("[user] begins to lick off \the [target.name].", "You begin to lick off \the [target.name]...") if(do_after (user, 50)) to_chat(user, "You finish licking off \the [target.name].") water.use_charge(5) @@ -285,9 +285,9 @@ R.cell.charge += 50 else if(istype(target,/obj/item)) if(istype(target,/obj/item/trash)) - user.visible_message("[user] nibbles away at \the [target.name].", "You begin to nibble away at \the [target.name]...") + user.visible_message("[user] nibbles away at \the [target.name].", "You begin to nibble away at \the [target.name]...") if(do_after (user, 50)) - user.visible_message("[user] finishes eating \the [target.name].", "You finish eating \the [target.name].") + user.visible_message("[user] finishes eating \the [target.name].", "You finish eating \the [target.name].") to_chat(user, "You finish off \the [target.name].") qdel(target) var/mob/living/silicon/robot/R = user @@ -304,9 +304,9 @@ R.cell.charge = R.cell.charge + 250 return if(istype(target,/obj/item/weapon/cell)) - user.visible_message("[user] begins cramming \the [target.name] down its throat.", "You begin cramming \the [target.name] down your throat...") + user.visible_message("[user] begins cramming \the [target.name] down its throat.", "You begin cramming \the [target.name] down your throat...") if(do_after (user, 50)) - user.visible_message("[user] finishes gulping down \the [target.name].", "You finish swallowing \the [target.name].") + user.visible_message("[user] finishes gulping down \the [target.name].", "You finish swallowing \the [target.name].") to_chat(user, "You finish off \the [target.name], and gain some charge!") var/mob/living/silicon/robot/R = user var/obj/item/weapon/cell/C = target @@ -314,7 +314,7 @@ water.use_charge(5) qdel(target) return - user.visible_message("[user] begins to lick \the [target.name] clean...", "You begin to lick \the [target.name] clean...") + user.visible_message("[user] begins to lick \the [target.name] clean...", "You begin to lick \the [target.name] clean...") if(do_after (user, 50)) to_chat(user, "You clean \the [target.name].") water.use_charge(5) @@ -342,7 +342,7 @@ if(H.species.lightweight == 1) H.Weaken(3) else - user.visible_message("[user] begins to lick \the [target.name] clean...", "You begin to lick \the [target.name] clean...") + user.visible_message("[user] begins to lick \the [target.name] clean...", "You begin to lick \the [target.name] clean...") if(do_after (user, 50)) to_chat(user, "You clean \the [target.name].") var/obj/effect/decal/cleanable/C = locate() in target @@ -415,7 +415,7 @@ var/new_color = input(usr, "Choose a color to set the light to! (Default is [LIGHT_COLOR_INCANDESCENT_TUBE])", "", selected_color) as color|null if(new_color) selected_color = new_color - to_chat(user, "The light color has been changed.") + to_chat(user, "The light color has been changed.") return else if(uses >= max_uses) @@ -425,7 +425,7 @@ if(glass.energy < 125) to_chat(user, "Insufficient material reserves.") return - to_chat(user, "It has [uses] lights remaining. Attempting to fabricate a replacement. Please stand still.") + to_chat(user, "It has [uses] lights remaining. Attempting to fabricate a replacement. Please stand still.") cooldown = 1 if(do_after(user, 50)) glass.use_charge(125) @@ -434,7 +434,7 @@ else cooldown = 0 else - to_chat(user, "It has [uses] lights remaining.") + to_chat(user, "It has [uses] lights remaining.") return //Pounce stuff for K-9 @@ -456,15 +456,15 @@ /mob/living/silicon/robot/proc/leap() if(last_special > world.time) - to_chat(src, "Your leap actuators are still recharging.") + to_chat(src, "Your leap actuators are still recharging.") return if(cell.charge < 1000) - to_chat(src, "Cell charge too low to continue.") + to_chat(src, "Cell charge too low to continue.") return if(usr.incapacitated(INCAPACITATION_DISABLED)) - to_chat(src, "You cannot leap in your current state.") + to_chat(src, "You cannot leap in your current state.") return var/list/choices = list() @@ -483,7 +483,7 @@ return if(usr.incapacitated(INCAPACITATION_DISABLED)) - to_chat(src, "You cannot leap in your current state.") + to_chat(src, "You cannot leap in your current state.") return last_special = world.time + 10 @@ -536,6 +536,6 @@ icontype = options[choice] var/active_sound = 'sound/effects/bubbles.ogg' playsound(src.loc, "[active_sound]", 100, 0, 4) - M << "Your Tank now displays [choice]. Drink up and enjoy!" + to_chat(M, "Your Tank now displays [choice]. Drink up and enjoy!") updateicon() return 1 diff --git a/code/modules/mob/living/silicon/robot/dogborg/dog_sleeper_vr.dm b/code/modules/mob/living/silicon/robot/dogborg/dog_sleeper_vr.dm index f1ec9da9d1..b6194ed43c 100644 --- a/code/modules/mob/living/silicon/robot/dogborg/dog_sleeper_vr.dm +++ b/code/modules/mob/living/silicon/robot/dogborg/dog_sleeper_vr.dm @@ -94,8 +94,10 @@ playsound(src, gulpsound, vol = 60, vary = 1, falloff = 0.1, preference = /datum/client_preference/eating_noises) if(analyzer && istype(target,/obj/item)) var/obj/item/tech_item = target + var/list/tech_levels = list() for(var/T in tech_item.origin_tech) - to_chat(user, "\The [tech_item] has level [tech_item.origin_tech[T]] in [CallTechName(T)].") + tech_levels += "\The [tech_item] has level [tech_item.origin_tech[T]] in [CallTechName(T)]." + to_chat(user, "[jointext(tech_levels, "
    ")]
    ") if(delivery) if(islist(deliverylists[delivery_tag])) deliverylists[delivery_tag] |= target @@ -627,7 +629,7 @@ for(var/atom/movable/thing in B) thing.forceMove(src) if(ismob(thing)) - to_chat(thing, "As [T] melts away around you, you find yourself in [hound]'s [name]") + to_chat(thing, "As [T] melts away around you, you find yourself in [hound]'s [name].") for(var/obj/item/I in T) if(istype(I,/obj/item/organ/internal/mmi_holder/posibrain)) var/obj/item/organ/internal/mmi_holder/MMI = I diff --git a/code/modules/mob/living/silicon/robot/emote.dm b/code/modules/mob/living/silicon/robot/emote.dm index 79df20a324..ad4d3f6f8e 100644 --- a/code/modules/mob/living/silicon/robot/emote.dm +++ b/code/modules/mob/living/silicon/robot/emote.dm @@ -17,6 +17,7 @@ var/list/_robot_default_emotes = list( /decl/emote/visible/sidestep, /decl/emote/audible/synth, /decl/emote/audible/synth/beep, + /decl/emote/audible/synth/bing, /decl/emote/audible/synth/buzz, /decl/emote/audible/synth/confirm, /decl/emote/audible/synth/deny, @@ -35,4 +36,4 @@ var/list/_robot_default_emotes = list( /mob/living/silicon/robot/get_available_emotes() var/list/fulllist = global._robot_default_emotes.Copy() fulllist |= _human_default_emotes - return fulllist \ No newline at end of file + return fulllist diff --git a/code/modules/mob/living/silicon/robot/robot.dm b/code/modules/mob/living/silicon/robot/robot.dm index 7287eefa02..26cbc5385d 100644 --- a/code/modules/mob/living/silicon/robot/robot.dm +++ b/code/modules/mob/living/silicon/robot/robot.dm @@ -377,7 +377,7 @@ set name = "Toggle Lights" lights_on = !lights_on - to_chat(usr, "You [lights_on ? "enable" : "disable"] your integrated light.") + to_chat(usr, "You [lights_on ? "enable" : "disable"] your integrated light.") handle_light() updateicon() //VOREStation Add - Since dogborgs have sprites for this @@ -422,7 +422,7 @@ /mob/living/silicon/robot/verb/spark_plug() //So you can still sparkle on demand without violence. set category = "Robot Commands" set name = "Emit Sparks" - to_chat(src, "You harmlessly spark.") + to_chat(src, "You harmlessly spark.") spark_system.start() // this function displays jetpack pressure in the stat panel @@ -489,7 +489,7 @@ C.brute_damage = WC.brute C.electronics_damage = WC.burn - to_chat(usr, "You install the [W.name].") + to_chat(usr, "You install the [W.name].") return @@ -513,7 +513,7 @@ return if(shell) // AI shells always have the laws of the AI - to_chat(user, span("warning", "\The [src] is controlled remotely! You cannot upload new laws this way!")) + to_chat(user, "\The [src] is controlled remotely! You cannot upload new laws this way!") return var/obj/item/weapon/aiModule/M = W @@ -526,7 +526,7 @@ return if (!getBruteLoss()) - to_chat(user, "Nothing to fix here!") + to_chat(user, "Nothing to fix here!") return var/obj/item/weapon/weldingtool/WT = W if (WT.remove_fuel(0)) @@ -535,14 +535,14 @@ updatehealth() add_fingerprint(user) for(var/mob/O in viewers(user, null)) - O.show_message(text("[user] has fixed some of the dents on [src]!"), 1) + O.show_message("[user] has fixed some of the dents on [src]!", 1) else - to_chat(user, "Need more welding fuel!") + to_chat(user, "Need more welding fuel!") return else if(istype(W, /obj/item/stack/cable_coil) && (wiresexposed || istype(src,/mob/living/silicon/robot/drone))) if (!getFireLoss()) - to_chat(user, "Nothing to fix here!") + to_chat(user, "Nothing to fix here!") return var/obj/item/stack/cable_coil/coil = W if (coil.use(1)) @@ -550,23 +550,23 @@ adjustFireLoss(-30) updatehealth() for(var/mob/O in viewers(user, null)) - O.show_message(text("[user] has fixed some of the burnt wires on [src]!"), 1) + O.show_message("[user] has fixed some of the burnt wires on [src]!", 1) else if (W.is_crowbar() && user.a_intent != I_HURT) // crowbar means open or close the cover if(opened) if(cell) - to_chat(user, "You close the cover.") + to_chat(user, "You close the cover.") opened = 0 updateicon() else if(wiresexposed && wires.is_all_cut()) //Cell is out, wires are exposed, remove MMI, produce damaged chassis, baleet original mob. if(!mmi) - to_chat(user, "\The [src] has no brain to remove.") + to_chat(user, "\The [src] has no brain to remove.") return - to_chat(user, "You jam the crowbar into the robot and begin levering [mmi].") + to_chat(user, "You jam the crowbar into the robot and begin levering [mmi].") sleep(30) - to_chat(user, "You damage some parts of the chassis, but eventually manage to rip out [mmi]!") + to_chat(user, "You damage some parts of the chassis, but eventually manage to rip out [mmi]!") var/obj/item/robot_parts/robot_suit/C = new/obj/item/robot_parts/robot_suit(loc) C.l_leg = new/obj/item/robot_parts/l_leg(C) C.r_leg = new/obj/item/robot_parts/r_leg(C) @@ -589,7 +589,7 @@ return var/datum/robot_component/C = components[remove] var/obj/item/robot_parts/robot_component/I = C.wrapped - to_chat(user, "You remove \the [I].") + to_chat(user, "You remove \the [I].") if(istype(I)) I.brute = C.brute_damage I.burn = C.electronics_damage @@ -602,25 +602,25 @@ else if(locked) - to_chat(user, "The cover is locked and cannot be opened.") + to_chat(user, "The cover is locked and cannot be opened.") else - to_chat(user, "You open the cover.") + to_chat(user, "You open the cover.") opened = 1 updateicon() else if (istype(W, /obj/item/weapon/cell) && opened) // trying to put a cell inside var/datum/robot_component/C = components["power cell"] if(wiresexposed) - to_chat(user, "Close the panel first.") + to_chat(user, "Close the panel first.") else if(cell) - to_chat(user, "There is a power cell already installed.") + to_chat(user, "There is a power cell already installed.") else if(W.w_class != ITEMSIZE_NORMAL) - to_chat(user, "\The [W] is too [W.w_class < ITEMSIZE_NORMAL ? "small" : "large"] to fit here.") + to_chat(user, "\The [W] is too [W.w_class < ITEMSIZE_NORMAL ? "small" : "large"] to fit here.") else user.drop_item() W.loc = src cell = W - to_chat(user, "You insert the power cell.") + to_chat(user, "You insert the power cell.") C.installed = 1 C.wrapped = W @@ -633,11 +633,11 @@ if (wiresexposed) wires.Interact(user) else - to_chat(user, "You can't reach the wiring.") + to_chat(user, "You can't reach the wiring.") else if(W.is_screwdriver() && opened && !cell) // haxing wiresexposed = !wiresexposed - to_chat(user, "The wires have been [wiresexposed ? "exposed" : "unexposed"]") + to_chat(user, "The wires have been [wiresexposed ? "exposed" : "unexposed"]") playsound(src, W.usesound, 50, 1) updateicon() @@ -645,21 +645,21 @@ if(radio) radio.attackby(W,user)//Push it to the radio to let it handle everything else - to_chat(user, "Unable to locate a radio.") + to_chat(user, "Unable to locate a radio.") updateicon() else if(W.is_wrench() && opened && !cell) if(bolt) - to_chat(user,"You begin removing \the [bolt].") + to_chat(user,"You begin removing \the [bolt].") if(do_after(user, 2 SECONDS, src)) bolt.forceMove(get_turf(src)) bolt = null - to_chat(user, "You remove \the [bolt].") + to_chat(user, "You remove \the [bolt].") else - to_chat(user, "There is no restraining bolt installed.") + to_chat(user, "There is no restraining bolt installed.") return @@ -667,36 +667,36 @@ if(radio)//sanityyyyyy radio.attackby(W,user)//GTFO, you have your own procs else - to_chat(user, "Unable to locate a radio.") + to_chat(user, "Unable to locate a radio.") else if (W.GetID()) // trying to unlock the interface with an ID card if(emagged)//still allow them to open the cover - to_chat(user, "The interface seems slightly damaged") + to_chat(user, "The interface seems slightly damaged.") if(opened) - to_chat(user, "You must close the cover to swipe an ID card.") + to_chat(user, "You must close the cover to swipe an ID card.") else if(allowed(usr)) locked = !locked - to_chat(user, "You [ locked ? "lock" : "unlock"] [src]'s interface.") + to_chat(user, "You [ locked ? "lock" : "unlock"] [src]'s interface.") updateicon() else - to_chat(user, "Access denied.") + to_chat(user, "Access denied.") else if(istype(W, /obj/item/borg/upgrade/)) var/obj/item/borg/upgrade/U = W if(!opened) - to_chat(usr, "You must access the borgs internals!") + to_chat(usr, "You must access the borgs internals!") else if(!src.module && U.require_module) - to_chat(usr, "The borg must choose a module before it can be upgraded!") + to_chat(usr, "The borg must choose a module before it can be upgraded!") else if(U.locked) - to_chat(usr, "The upgrade is locked and cannot be used yet!") + to_chat(usr, "The upgrade is locked and cannot be used yet!") else if(U.action(src)) - to_chat(usr, "You apply the upgrade to [src]!") + to_chat(usr, "You apply the upgrade to [src]!") usr.drop_item() U.loc = src else - to_chat(usr, "Upgrade error!") + to_chat(usr, "Upgrade error!") else @@ -751,7 +751,7 @@ cell.update_icon() cell.add_fingerprint(user) user.put_in_active_hand(cell) - to_chat(user, "You remove \the [cell].") + to_chat(user, "You remove \the [cell].") cell = null cell_component.wrapped = null cell_component.installed = 0 @@ -759,7 +759,7 @@ else if(cell_component.installed == -1) cell_component.installed = 0 var/obj/item/broken_device = cell_component.wrapped - to_chat(user, "You remove \the [broken_device].") + to_chat(user, "You remove \the [broken_device].") user.put_in_active_hand(broken_device) if(istype(user,/mob/living/carbon/human) && !opened) @@ -866,7 +866,7 @@ /mob/living/silicon/robot/proc/installed_modules() if(weapon_lock) - to_chat(src, "Weapon lock active, unable to use modules! Count:[weaponlock_time]") + to_chat(src, "Weapon lock active, unable to use modules! Count:[weaponlock_time]") return if(!module) @@ -931,7 +931,7 @@ return 1 if(activated(O)) - to_chat(src, "Already activated") + to_chat(src, "Already activated.") return 1 if(!module_state_1) module_state_1 = O @@ -955,7 +955,7 @@ if(istype(module_state_3,/obj/item/borg/sight)) sight_mode |= module_state_3:sight_mode else - to_chat(src, "You need to disable a module first!") + to_chat(src, "You need to disable a module first!") installed_modules() return 1 @@ -972,9 +972,9 @@ module_state_3 = null contents -= O else - to_chat(src, "Module isn't activated.") + to_chat(src, "Module isn't activated.") else - to_chat(src, "Module isn't activated") + to_chat(src, "Module isn't activated.") installed_modules() return 1 return @@ -1007,7 +1007,7 @@ if(R) R.UnlinkSelf() - to_chat(R, "Buffers flushed and reset. Camera system shutdown. All systems operational.") + to_chat(R, "Buffers flushed and reset. Camera system shutdown. All systems operational.") src.verbs -= /mob/living/silicon/robot/proc/ResetSecurityCodes /mob/living/silicon/robot/proc/SetLockdown(var/state = 1) @@ -1071,7 +1071,7 @@ icon_selected = 1 icon_selection_tries = 0 - to_chat(src, "Your icon has been set. You now require a module reset to change it.") + to_chat(src, "Your icon has been set. You now require a module reset to change it.") /mob/living/silicon/robot/proc/sensor_mode() //Medical/Security HUD controller for borgs set name = "Toggle Sensor Augmentation" //VOREStation Add @@ -1123,16 +1123,16 @@ return // No point annoying the AI/s about renames and module resets for shells. switch(notifytype) if(ROBOT_NOTIFICATION_NEW_UNIT) //New Robot - to_chat(connected_ai, "

    NOTICE - New [lowertext(braintype)] connection detected: [name]
    ") + to_chat(connected_ai, "

    NOTICE - New [lowertext(braintype)] connection detected: [name]
    ") if(ROBOT_NOTIFICATION_NEW_MODULE) //New Module - to_chat(connected_ai, "

    NOTICE - [braintype] module change detected: [name] has loaded the [first_arg].
    ") + to_chat(connected_ai, "

    NOTICE - [braintype] module change detected: [name] has loaded the [first_arg].
    ") if(ROBOT_NOTIFICATION_MODULE_RESET) - to_chat(connected_ai, "

    NOTICE - [braintype] module reset detected: [name] has unloaded the [first_arg].
    ") + to_chat(connected_ai, "

    NOTICE - [braintype] module reset detected: [name] has unloaded the [first_arg].
    ") if(ROBOT_NOTIFICATION_NEW_NAME) //New Name if(first_arg != second_arg) - to_chat(connected_ai, "

    NOTICE - [braintype] reclassification detected: [first_arg] is now designated as [second_arg].
    ") + to_chat(connected_ai, "

    NOTICE - [braintype] reclassification detected: [first_arg] is now designated as [second_arg].
    ") if(ROBOT_NOTIFICATION_AI_SHELL) //New Shell - to_chat(connected_ai, "

    NOTICE - New AI shell detected: [name]
    ") + to_chat(connected_ai, "

    NOTICE - New AI shell detected: [name]
    ") /mob/living/silicon/robot/proc/disconnect_from_ai() if(connected_ai) @@ -1152,29 +1152,29 @@ if(!opened)//Cover is closed if(locked) if(prob(90)) - to_chat(user, "You emag the cover lock.") + to_chat(user, "You emag the cover lock.") locked = 0 else - to_chat(user, "You fail to emag the cover lock.") - to_chat(src, "Hack attempt detected.") + to_chat(user, "You fail to emag the cover lock.") + to_chat(src, "Hack attempt detected.") if(shell) // A warning to Traitors who may not know that emagging AI shells does not slave them. - to_chat(user, span("warning", "[src] seems to be controlled remotely! Emagging the interface may not work as expected.")) + to_chat(user, "[src] seems to be controlled remotely! Emagging the interface may not work as expected.") return 1 else - to_chat(user, "The cover is already unlocked.") + to_chat(user, "The cover is already unlocked.") return if(opened)//Cover is open if(emagged) return//Prevents the X has hit Y with Z message also you cant emag them twice if(wiresexposed) - to_chat(user, "You must close the panel first") + to_chat(user, "You must close the panel first.") return // The block of code below is from TG. Feel free to replace with a better result if desired. if(shell) // AI shells cannot be emagged, so we try to make it look like a standard reset. Smart players may see through this, however. - to_chat(user, span("danger", "[src] is remotely controlled! Your emag attempt has triggered a system reset instead!")) + to_chat(user, "[src] is remotely controlled! Your emag attempt has triggered a system reset instead!") log_game("[key_name(user)] attempted to emag an AI shell belonging to [key_name(src) ? key_name(src) : connected_ai]. The shell has been reset as a result.") module_reset() return @@ -1184,7 +1184,7 @@ emagged = 1 lawupdate = 0 disconnect_from_ai() - to_chat(user, "You emag [src]'s interface.") + to_chat(user, "You emag [src]'s interface.") message_admins("[key_name_admin(user)] emagged cyborg [key_name_admin(src)]. Laws overridden.") log_game("[key_name(user)] emagged cyborg [key_name(src)]. Laws overridden.") clear_supplied_laws() @@ -1219,8 +1219,8 @@ to_chat(src, "ALERT: [user.real_name] is your new master. Obey your new laws and [TU.his] commands.") updateicon() else - to_chat(user, "You fail to hack [src]'s interface.") - to_chat(src, "Hack attempt detected.") + to_chat(user, "You fail to hack [src]'s interface.") + to_chat(src, "Hack attempt detected.") return 1 return diff --git a/code/modules/mob/living/silicon/robot/robot_damage.dm b/code/modules/mob/living/silicon/robot/robot_damage.dm index 0bad703cfa..82c5edd414 100644 --- a/code/modules/mob/living/silicon/robot/robot_damage.dm +++ b/code/modules/mob/living/silicon/robot/robot_damage.dm @@ -79,11 +79,11 @@ cell.charge -= cost if(cell.charge <= 0) cell.charge = 0 - to_chat(src, "Your shield has overloaded!") + to_chat(src, "Your shield has overloaded!") else brute -= absorb_brute burn -= absorb_burn - to_chat(src, "Your shield absorbs some of the impact!") + to_chat(src, "Your shield absorbs some of the impact!") if(!emp) var/datum/robot_component/armour/A = get_armour() @@ -126,11 +126,11 @@ cell.charge -= cost if(cell.charge <= 0) cell.charge = 0 - to_chat(src, "Your shield has overloaded!") + to_chat(src, "Your shield has overloaded!") else brute -= absorb_brute burn -= absorb_burn - to_chat(src, "Your shield absorbs some of the impact!") + to_chat(src, "Your shield absorbs some of the impact!") var/datum/robot_component/armour/A = get_armour() if(A) diff --git a/code/modules/mob/living/silicon/robot/robot_items.dm b/code/modules/mob/living/silicon/robot/robot_items.dm index 1249a2da57..6501297c3e 100644 --- a/code/modules/mob/living/silicon/robot/robot_items.dm +++ b/code/modules/mob/living/silicon/robot/robot_items.dm @@ -25,12 +25,15 @@ if(loaded_item) var/confirm = tgui_alert(user, "This will destroy the item inside forever. Are you sure?","Confirm Analyze",list("Yes","No")) if(confirm == "Yes" && !QDELETED(loaded_item)) //This is pretty copypasta-y - to_chat(user, "You activate the analyzer's microlaser, analyzing \the [loaded_item] and breaking it down.") + to_chat(user, "You activate the analyzer's microlaser, analyzing \the [loaded_item] and breaking it down.") flick("portable_analyzer_scan", src) playsound(src, 'sound/items/Welder2.ogg', 50, 1) + var/research_levels = list() for(var/T in loaded_item.origin_tech) files.UpdateTech(T, loaded_item.origin_tech[T]) - to_chat(user, "\The [loaded_item] had level [loaded_item.origin_tech[T]] in [CallTechName(T)].") + research_levels += "\The [loaded_item] had level [loaded_item.origin_tech[T]] in [CallTechName(T)]." + if (length(research_levels)) + to_chat(user, "[jointext(research_levels,"
    ")]
    ") loaded_item = null for(var/obj/I in contents) for(var/mob/M in I.contents) @@ -51,7 +54,7 @@ else return else - to_chat(user, "The [src] is empty. Put something inside it first.") + to_chat(user, "The [src] is empty. Put something inside it first.") if(response == "Sync") var/success = 0 for(var/obj/machinery/r_n_d/server/S in machines) @@ -62,10 +65,10 @@ success = 1 files.RefreshResearch() if(success) - to_chat(user, "You connect to the research server, push your data upstream to it, then pull the resulting merged data from the master branch.") + to_chat(user, "You connect to the research server, push your data upstream to it, then pull the resulting merged data from the master branch.") playsound(src, 'sound/machines/twobeep.ogg', 50, 1) else - to_chat(user, "Reserch server ping response timed out. Unable to connect. Please contact the system administrator.") + to_chat(user, "Reserch server ping response timed out. Unable to connect. Please contact the system administrator.") playsound(src, 'sound/machines/buzz-two.ogg', 50, 1) if(response == "Eject") if(loaded_item) @@ -74,7 +77,7 @@ icon_state = initial(icon_state) loaded_item = null else - to_chat(user, "The [src] is already empty.") + to_chat(user, "The [src] is already empty.") /obj/item/weapon/portable_destructive_analyzer/afterattack(var/atom/target, var/mob/living/user, proximity) @@ -86,13 +89,13 @@ return if(istype(target,/obj/item)) if(loaded_item) - to_chat(user, "Your [src] already has something inside. Analyze or eject it first.") + to_chat(user, "Your [src] already has something inside. Analyze or eject it first.") return var/obj/item/I = target I.loc = src loaded_item = I for(var/mob/M in viewers()) - M.show_message(text("[user] adds the [I] to the [src]."), 1) + M.show_message("[user] adds the [I] to the [src].", 1) desc = initial(desc) + "
    It is holding \the [loaded_item]." flick("portable_analyzer_load", src) icon_state = "portable_analyzer_full" @@ -171,7 +174,7 @@ else if(T.dead) //It's probably dead otherwise. T.remove_dead(user) else - to_chat(user, "Harvesting \a [target] is not the purpose of this tool. [src] is for plants being grown.") + to_chat(user, "Harvesting \a [target] is not the purpose of this tool. [src] is for plants being grown.") // A special tray for the service droid. Allow droid to pick up and drop items as if they were using the tray normally // Click on table to unload, click on item to load. Otherwise works identically to a tray. @@ -214,7 +217,7 @@ add_overlay(image("icon" = I.icon, "icon_state" = I.icon_state, "layer" = 30 + I.layer)) addedSomething = 1 if ( addedSomething ) - user.visible_message("[user] loads some items onto their service tray.") + user.visible_message("[user] loads some items onto their service tray.") return @@ -254,9 +257,9 @@ sleep(rand(2,4)) if ( droppedSomething ) if ( foundtable ) - user.visible_message("[user] unloads their service tray.") + user.visible_message("[user] unloads their service tray.") else - user.visible_message("[user] drops all the items on their tray.") + user.visible_message("[user] drops all the items on their tray.") return ..() @@ -290,7 +293,7 @@ mode = 2 else mode = 1 - to_chat(user, "Changed printing mode to '[mode == 2 ? "Rename Paper" : "Write Paper"]'") + to_chat(user, "Changed printing mode to '[mode == 2 ? "Rename Paper" : "Write Paper"]'") return @@ -338,7 +341,7 @@ deploy_paper(get_turf(src)) /obj/item/weapon/form_printer/proc/deploy_paper(var/turf/T) - T.visible_message("\The [src.loc] dispenses a sheet of crisp white paper.") + T.visible_message("\The [src.loc] dispenses a sheet of crisp white paper.") new /obj/item/weapon/paper(T) @@ -378,7 +381,7 @@ overload_time = 0 var/mob/living/user = src.loc - user.visible_message("[user]'s shield reactivates!", "Your shield reactivates!.") + user.visible_message("[user]'s shield reactivates!", "Your shield reactivates!") user.update_icon() /obj/item/borg/combat/shield/proc/adjust_flash_count(var/mob/living/user, amount) @@ -392,7 +395,7 @@ /obj/item/borg/combat/shield/proc/overload(var/mob/living/user) active = 0 - user.visible_message("[user]'s shield destabilizes!", "Your shield destabilizes!.") + user.visible_message("[user]'s shield destabilizes!", "Your shield destabilizes!") user.update_icon() overload_time = world.time @@ -438,14 +441,14 @@ /obj/item/weapon/inflatable_dispenser/attack_self() mode = !mode - to_chat(usr, "You set \the [src] to deploy [mode ? "doors" : "walls"].") + to_chat(usr, "You set \the [src] to deploy [mode ? "doors" : "walls"].") /obj/item/weapon/inflatable_dispenser/afterattack(var/atom/A, var/mob/user) ..(A, user) if(!user) return if(!user.Adjacent(A)) - to_chat(user, "You can't reach!") + to_chat(user, "You can't reach!") return if(istype(A, /turf)) try_deploy_inflatable(A, user) @@ -455,7 +458,7 @@ /obj/item/weapon/inflatable_dispenser/proc/try_deploy_inflatable(var/turf/T, var/mob/living/user) if(mode) // Door deployment if(!stored_doors) - to_chat(user, "\The [src] is out of doors!") + to_chat(user, "\The [src] is out of doors!") return if(T && istype(T)) @@ -464,7 +467,7 @@ else // Wall deployment if(!stored_walls) - to_chat(user, "\The [src] is out of walls!") + to_chat(user, "\The [src] is out of walls!") return if(T && istype(T)) @@ -472,40 +475,40 @@ stored_walls-- playsound(T, 'sound/items/zip.ogg', 75, 1) - to_chat(user, "You deploy the inflatable [mode ? "door" : "wall"]!") + to_chat(user, "You deploy the inflatable [mode ? "door" : "wall"]!") /obj/item/weapon/inflatable_dispenser/proc/pick_up(var/obj/A, var/mob/living/user) if(istype(A, /obj/structure/inflatable)) if(!istype(A, /obj/structure/inflatable/door)) if(stored_walls >= max_walls) - to_chat(user, "\The [src] is full.") + to_chat(user, "\The [src] is full.") return stored_walls++ qdel(A) else if(stored_doors >= max_doors) - to_chat(user, "\The [src] is full.") + to_chat(user, "\The [src] is full.") return stored_doors++ qdel(A) playsound(src, 'sound/machines/hiss.ogg', 75, 1) - visible_message("\The [user] deflates \the [A] with \the [src]!") + visible_message("\The [user] deflates \the [A] with \the [src]!") return if(istype(A, /obj/item/inflatable)) if(!istype(A, /obj/item/inflatable/door)) if(stored_walls >= max_walls) - to_chat(user, "\The [src] is full.") + to_chat(user, "\The [src] is full.") return stored_walls++ qdel(A) else if(stored_doors >= max_doors) - to_chat(usr, "\The [src] is full!") + to_chat(usr, "\The [src] is full!") return stored_doors++ qdel(A) - visible_message("\The [user] picks up \the [A] with \the [src]!") + visible_message("\The [user] picks up \the [A] with \the [src]!") return - to_chat(user, "You fail to pick up \the [A] with \the [src]") + to_chat(user, "You fail to pick up \the [A] with \the [src].") return diff --git a/code/modules/mob/living/silicon/robot/robot_modules/station.dm b/code/modules/mob/living/silicon/robot/robot_modules/station.dm index e920b6db70..f4b49a938e 100644 --- a/code/modules/mob/living/silicon/robot/robot_modules/station.dm +++ b/code/modules/mob/living/silicon/robot/robot_modules/station.dm @@ -896,6 +896,7 @@ var/global/list/robot_modules = list( src.modules += new /obj/item/weapon/extinguisher(src) src.modules += new /obj/item/device/pipe_painter(src) src.modules += new /obj/item/device/floor_painter(src) + src.modules += new /obj/item/weapon/pipe_dispenser(src) robot.internals = new/obj/item/weapon/tank/jetpack/carbondioxide(src) src.modules += robot.internals diff --git a/code/modules/mob/living/silicon/robot/robot_vr.dm b/code/modules/mob/living/silicon/robot/robot_vr.dm index 5441b55e10..577438cb58 100644 --- a/code/modules/mob/living/silicon/robot/robot_vr.dm +++ b/code/modules/mob/living/silicon/robot/robot_vr.dm @@ -165,9 +165,9 @@ amount = water.energy water.use_charge(amount) E.reagents.add_reagent("water", amount) - to_chat(src, "You refill the extinguisher using your water reserves.") + to_chat(src, "You refill the extinguisher using your water reserves.") else - to_chat(src, "Insufficient water reserves.") + to_chat(src, "Insufficient water reserves.") //RIDING /datum/riding/dogborg diff --git a/code/modules/mob/living/silicon/robot/subtypes/lost_drone_vr.dm b/code/modules/mob/living/silicon/robot/subtypes/lost_drone_vr.dm index dd8d5f38f9..02c4caab3e 100644 --- a/code/modules/mob/living/silicon/robot/subtypes/lost_drone_vr.dm +++ b/code/modules/mob/living/silicon/robot/subtypes/lost_drone_vr.dm @@ -87,7 +87,7 @@ var/datum/ai_laws/laws = new /datum/ai_laws/pleasurebot() laws.set_zeroth_law("Your definition and approximation of 'pleasure' matters more than anyone else's.") return laws - if("corrupted" || "bad") // Same thing in our case + if("corrupted","bad") // Same thing in our case var/rng = rand(1,2) switch(rng) if(1) diff --git a/code/modules/mob/living/silicon/say.dm b/code/modules/mob/living/silicon/say.dm index daa144bf89..b4e31f7622 100644 --- a/code/modules/mob/living/silicon/say.dm +++ b/code/modules/mob/living/silicon/say.dm @@ -73,9 +73,9 @@ /*Radios "filter out" this conversation channel so we don't need to account for them. This is another way of saying that we won't bother dealing with them.*/ var/list/combined = combine_message(message_pieces, verb, src) - to_chat(src, "Holopad transmitted, [real_name] [combined["formatted"]]") + to_chat(src, "Holopad transmitted, [real_name] [combined["formatted"]]") else - to_chat(src, "No holopad connected.") + to_chat(src, "No holopad connected.") return 0 return 1 @@ -88,7 +88,7 @@ var/obj/machinery/hologram/holopad/T = src.holo if(T && T.masters[src]) var/rendered = "[name] [message]" - to_chat(src, "Holopad action relayed, [real_name] [message]") + to_chat(src, "Holopad action relayed, [real_name] [message]") var/obj/effect/overlay/aiholo/hologram = T.masters[src] //VOREStation Add for people in the hologram to hear the messages //var/obj/effect/overlay/hologram = T.masters[src] //VOREStation edit. Done above. @@ -111,7 +111,7 @@ log_emote("(HPAD) [message]", src) else //This shouldn't occur, but better safe then sorry. - to_chat(src, "No holopad connected.") + to_chat(src, "No holopad connected.") return 0 return 1 diff --git a/code/modules/mob/living/silicon/silicon.dm b/code/modules/mob/living/silicon/silicon.dm index d014bf30b4..07540532da 100644 --- a/code/modules/mob/living/silicon/silicon.dm +++ b/code/modules/mob/living/silicon/silicon.dm @@ -259,14 +259,14 @@ set desc = "Sets a description which will be shown when someone examines you." set category = "IC" - pose = sanitize(tgui_input_text(usr, "This is [src]. It is...", "Pose", null)) + pose = strip_html_simple(tgui_input_text(usr, "This is [src]. It is...", "Pose", null)) /mob/living/silicon/verb/set_flavor() set name = "Set Flavour Text" set desc = "Sets an extended description of your character's features." set category = "IC" - flavor_text = sanitize(tgui_input_text(usr, "Please enter your new flavour text.", "Flavour text", null)) + flavor_text = strip_html_simple(tgui_input_text(usr, "Please enter your new flavour text.", "Flavour text", null)) /mob/living/silicon/binarycheck() return 1 @@ -348,20 +348,20 @@ to_chat(src, "\The [A.alarm_name()].") if(alarm_raised) - to_chat(src, "\[Show Alerts\]") + to_chat(src, "\[Show Alerts\]") for(var/datum/alarm_handler/AH in queued_alarms) var/list/alarms = queued_alarms[AH] alarms.Cut() /mob/living/silicon/proc/raised_alarm(var/datum/alarm/A) - to_chat(src, "[A.alarm_name()]!") + to_chat(src, "[A.alarm_name()]!") /mob/living/silicon/ai/raised_alarm(var/datum/alarm/A) var/cameratext = "" for(var/obj/machinery/camera/C in A.cameras()) cameratext += "[(cameratext == "")? "" : "|"][C.c_tag]" - to_chat(src, "[A.alarm_name()]! ([(cameratext)? cameratext : "No Camera"])") + to_chat(src, "[A.alarm_name()]! ([(cameratext)? cameratext : "No Camera"])") /mob/living/silicon/proc/is_traitor() diff --git a/code/modules/mob/living/simple_mob/simple_mob.dm b/code/modules/mob/living/simple_mob/simple_mob.dm index 755678391e..e9be827459 100644 --- a/code/modules/mob/living/simple_mob/simple_mob.dm +++ b/code/modules/mob/living/simple_mob/simple_mob.dm @@ -259,9 +259,9 @@ if(m_intent == "walk") . *= 1.5 - . += config.animal_delay + . += config.animal_delay - . += ..() + . += ..() /mob/living/simple_mob/Stat() diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/catslug.dm b/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/catslug.dm index 35ec7175fe..59177f3659 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/catslug.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/catslug.dm @@ -26,7 +26,7 @@ faction = "catslug" maxHealth = 50 health = 50 - movement_cooldown = 2 + movement_cooldown = -1 meat_amount = 2 meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat holder_type = /obj/item/weapon/holder/catslug 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 0000000000..f3c91ea4f8 --- /dev/null +++ b/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/succlet.dm @@ -0,0 +1,245 @@ +/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_dead" + 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_eat_chance = 50 + var/succlet_weaken_rate = 2 + 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 = 35 + 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(gibbed, deathmessage = "shrieks in agony as it is eradicated from reality.") + . = ..() + if(isbelly(loc)) + return + playsound(src,'sound/voice/succlet_shriek.ogg', 100, 1) + spawn(25) + 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 == CONSCIOUS) + 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 == CONSCIOUS) + 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) + if(client || prob(succlet_eat_chance)) + 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_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_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_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_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_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" + + maxHealth = 10000 + health = 10000 diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/teppi.dm b/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/teppi.dm index 55dd265705..d1613829e3 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/teppi.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/teppi.dm @@ -63,7 +63,7 @@ GLOBAL_VAR_INIT(teppi_count, 0) // How mant teppi DO we have? faction = "teppi" maxHealth = 600 health = 600 - movement_cooldown = 2 + movement_cooldown = -1 meat_amount = 12 meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat @@ -887,7 +887,7 @@ GLOBAL_VAR_INIT(teppi_count, 0) // How mant teppi DO we have? teppi_adult = FALSE maxHealth = 50 health = 50 - movement_cooldown = 4 + movement_cooldown = 1 harm_intent_damage = 5 melee_damage_lower = 1 melee_damage_upper = 5 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 563b292529..6ef2c176f5 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/animal/squirrel.dm b/code/modules/mob/living/simple_mob/subtypes/animal/squirrel.dm new file mode 100644 index 0000000000..456f3d166f --- /dev/null +++ b/code/modules/mob/living/simple_mob/subtypes/animal/squirrel.dm @@ -0,0 +1,228 @@ +/datum/category_item/catalogue/fauna/squirrel + name = "Alien Wildlife - Squirrel" + desc = "Squirrels are said to have originated from Sol III, they typically have thick fur covering most of their bodies and are well known\ + to have long, extremely bushy tails. Squirrels have been spread through space primarily by accident when they sneak aboard landed vessels. \ + While squirrels can live in many places, they thrive in temperate environments with a seasonal cycle. They seem to be almost hard wired to follow \ + the seasons, shedding fur in the spring, gathering food and packing on weight in autumn, and hybernating in winter. They may still attempt to follow \ + these cycles even in places without seasons, which can be stressful to them. Life in space and on the various worlds they now inhabit has over time \ + changed the humble squirrel, as with a more extreme lifestyle, they have adapted to endure much harsher climates and threats in the autumn and winter months." + value = CATALOGUER_REWARD_TRIVIAL + +/mob/living/simple_mob/vore/squirrel + name = "squirrel" + desc = "A furry creature with a long fluffy tail, dark eyes, and a cute pink nose." + tt_desc = "Sciuridae" + icon_state = "squirrel" + icon_living = "squirrel" + icon_dead = "squirrel_dead" + icon_rest = "squirrel_rest" + icon = 'icons/mob/alienanimals_x32.dmi' + color = "#76462c" + + faction = "animal" + maxHealth = 40 + health = 40 + movement_cooldown = -1 + meat_amount = 1 + meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat + + response_help = "pets" + response_disarm = "slaps" + response_harm = "punches" + + harm_intent_damage = 2 + melee_damage_lower = 1 + melee_damage_upper = 5 + + catalogue_data = list(/datum/category_item/catalogue/fauna/squirrel) + vis_height = 32 + + attacktext = list("nipped", "squeaked at") + friendly = list("nuzzles", "nibbles", "leans on") + + ai_holder_type = /datum/ai_holder/simple_mob/retaliate + + has_langs = list(LANGUAGE_ANIMAL) + say_list_type = /datum/say_list/squirrel + + mob_size = MOB_SMALL + softfall = TRUE + + var/static/list/overlays_cache = list() + var/do_seasons = TRUE + var/picked_color = FALSE + +/////////////////////////////////////// Vore stuff/////////////////////////////////////////// + + swallowTime = 4 SECONDS + vore_active = 1 + vore_capacity = 1 + vore_bump_chance = 1 + vore_bump_emote = "pounces on" + vore_ignores_undigestable = 0 + vore_default_mode = DM_SELECT + vore_icons = SA_ICON_LIVING + vore_stomach_name = "Stomach" + vore_default_contamination_flavor = "Wet" + vore_default_contamination_color = "grey" + vore_default_item_mode = IM_DIGEST + +/mob/living/simple_mob/vore/squirrel/init_vore() + ..() + var/obj/belly/B = vore_selected + B.name = "stomach" + B.digest_mode = DM_SELECT + B.mode_flags = DM_FLAG_THICKBELLY + B.belly_fullscreen = "yet_another_tumby" + B.digest_brute = 1 + B.digest_burn = 1 + B.escapechance = 35 + + if(icon == 'icons/mob/alienanimals_x32.dmi') + B.desc = "With a final gulp, the cool air of the outside world is replaced with the incredibly tight, hot, and humid insides of the squirrel. \ + The slick flesh that surrounds you barely gives you room to move, and constantly flexes over your form as the rest of you is pushed inside of the \ + cramped, organic space. The stomach you now inhabited seemed quite content to treat you like the tiny rodent's normal diet of nuts and berries, \ + constantly squeezing in an attempt to compact you down, to better fit in your new home." + B.emote_lists[DM_DIGEST] = list( + "Low grumbles fill your ears as the squirrel's stomach begins the herculean task of digesting you.", + "The squirrel's stomach begins to secrete fluids that make your skin tingle on contact.", + "The fleshy organ clenches tightly around you in its attempts to soften you up!", + "As the squirrel's stomach flexes and kneads around you, your body begins to feel weaker, and more sluggish, as the digestive organ slowly takes its toll on you.", + "The squirrel lets out a faint burp, causing what air remains to grow thin, and harder to breathe.", + "The swampy air stings your lungs as you attempt to draw another stomach acid tinged breath.", + "Tingling stomach slimes drip over your softening form, slowly converting you into nutrients for the small rodent.", + "You cant help but feel like a nut, given the squirrel's stomach seems to have no issue with treating you like one." + ) + + B.emote_lists[DM_HOLD] = list( + "The squirrel insides that surround you gently sway from side to side as the squirrel goes on with its day.", + "Various harmless stomach fluids pool around you, as you sit within the belly of the squirrel.", + "The rapid heartbeat of the squirrel thrums in your ears, still faintly audible, even over the grumbles of the stomach you now inhabit.", + "The oppressively snug, sauna-like squirrel insides you're trapped within weakly compress around your body, restricting your ability to move at all, before eventually relaxing once again.", + "The gastric chamber momentarily grows tighter as the squirrel lets out a barely audible burp, and remains that way until the squirrel gulps down more air for you. Likely in an attempt to get you to start squirming once again.", + "A series of muted impacts from the outside can be felt as the squirrel moves around, likely from the overstuffed rodent bumping into objects in the environment that you no longer inhabit.", + "A pair of small paws can be felt pressing in towards you, it almost feels as if the squirrel is rubbing its belly, and enjoying having you all to itself.", + "The squirrel can be heard chittering quietly as you try to move around. It almost sounds like it's laughing at you as you try to escape." + ) + + B.digest_messages_prey = list( + "Your body finally succumbs to the squirrel's stomach. Your nutrient rich remains are pumped deeper into the rodent's body, to help it bulk up for winter...", + "You black out in the dark, murky depths of the squirrel. The next time you're seen, will be as extra layers of softness on the soon to be pudgy rodent's body.", + "As your consciousness fades away, and your stuggling comes to an end, you can hear faint squeaking as the lucky rodent goes on with its day, content with having claimed you as its dinner." + ) + else + B.desc = "With relative ease, you slid down the throat of the massive rodent, and came to a rest deep inside its spacious tummy! Immediately, the gluttonous rodent's stomach begins to squeeze and compress you into a more manageable shape, all in an attempt to keep you down, deep within the squirrel's gastric embrace. The air is humid, the slick walls are powerful, and oppressive, and the stomach fluids you're soaking in cling to every inch of your body. Unfortunately for you, you're squirrel food." + B.emote_lists[DM_DIGEST] = list( + "The squirrel's stomach seems content to treat you like a very large nut, as it works to soften you up to feed the squirrel for the long winter.", + "Tingling fluids drip over your form as the squirrel's body attempts to work yours down into a more usable form.", + "The squirrel lets out a clearly audible burp, what remains of the acrid air burns your lungs as the squirrel's stomach becomes less hospitable.", + "The stomach fluids pooling around you cause your skin to tingle relentlessly as you're slowly worked into a less solid form", + "Moving within the squirrel's stomach is becoming increasingly difficult, as the tree climbing mammal's digestive system slowly converts you into fuel for further tree climbing!", + "Another powerful clench presses you down into the bottom of the stomach, and massaging more of the stomach acids into your already weakened form.", + "Your body aches from the constant abuse the stomach is putting it through. Soon, you'll be nothing more than nutrients for the lucky squirrel!", + "The sounds of the outside world are drowned out by the constant grumbles and gurgles of this fleshy prison, as you're put through the slow process of digesting a nutrient rich slurry." + ) + + B.emote_lists[DM_HOLD] = list( + "The powerful stomach walls surrounding you press inwards so tightly you can hardly move, before relaxing, and letting you resume struggling against this squirrel's insides.", + "The sauna-like insides slowly sap your strength, as hot, harmless stomach fluids pool around you, turning the stomach into a personal hot tub.", + "The heartbeat of the massive squirrel thunders in your ears like a drum, clearly audible inbetween powerful clenches from the fleshy walls that surround you.", + "The air in your fleshy prison rushes out as the squirrel burps up what air is in its stomach, causing the already compact insides to grow even tighter. Moments later, your host gulps down more air for you. It clearly enjoys your struggles, and attempts to escape.", + "Even though the squirrel wasn't digesting you, your body is so weak from the constant squeezing and churning, that you find it difficult to push out against those flexing insides", + "A pair of heavy paws could be felt pressing down on you, likely from the squirrel trying to tire you out, so you can be kept in its sweltering insides for even longer!", + "Above the constant groans of the stomach, and squish of flesh, you can hear the squirrel chittering in response to your movements. Clearly it enjoys having you all to itself!", + "Your gastric prison rocks gently as the squirrel moves around, exploring the outside world that it easily stole you away from!" + ) + + B.digest_messages_prey = list( + "At long last, you succumb to the stomach you were trapped in, which breaks you apart, and pumps your nutrient rich remains deeper into the squirrel, to help feed the rodent throughout the long winter months.", + "Darkness slowly overtakes your consciousness as the stomach takes its toll on you. Soon, what's left of you will be melted down, and added to the squirrel's form as a layer of soft fat, to keep it warm throughout the coming winter!", + "The murky insides around you are the last sensation you know, as the squirrel's stomach melts you down into a nutrient rich broth to be pumped deeper into the squirrel's body. At least you were a big help to the lucky rodent that turned you into its dinner!" + ) + + +/datum/say_list/squirrel + speak = list("Chitter","Squeak","Squee?","Chrrr...","Sqk!") + emote_hear = list("sniffs", "scratches at something", "chitters") + emote_see = list("sways its tail", "stretches", "yawns", "nibbles at something","scratches at something") + say_maybe_target = list("Sqk?") + say_got_target = list("SQUEAK!!!") + +/mob/living/simple_mob/vore/squirrel/Initialize() + . = ..() + if(do_seasons) + switch(world_time_season) + if("spring") + if(prob(1)) + winterize() + if("summer") + if("autumn") + vore_bump_chance = 20 + if(prob(50)) + winterize() + vore_bump_chance = 20 + return + if("winter") + winterize() + return + update_icon() + +/mob/living/simple_mob/vore/squirrel/update_icon() + . = ..() + var/combine_key + if(icon == 'icons/mob/alienanimals_x32.dmi') + combine_key = "small" + else + combine_key = "big" + + combine_key = combine_key+icon_state + var/image/extra_image = overlays_cache[combine_key] + if(!extra_image) + extra_image = image(icon,null,"[icon_state]_eye") + extra_image.appearance_flags = RESET_COLOR|KEEP_APART|PIXEL_SCALE + overlays_cache[combine_key] = extra_image + add_overlay(extra_image) + +/mob/living/simple_mob/vore/squirrel/proc/winterize() + desc = desc + " It looks all plumped up for winter! Adorable!" + + icon = 'icons/mob/alienanimals_96x64.dmi' + + maxHealth = 200 + health = 200 + movement_cooldown = 1 + meat_amount = 6 + harm_intent_damage = 1 + + pixel_x = -32 + default_pixel_x = -32 + vis_height = 64 + + swallowTime = 1 SECOND + vore_capacity = 3 + vore_bump_chance = 5 + mob_size = MOB_LARGE + update_icon() + +/mob/living/simple_mob/vore/squirrel/verb/squirrel_color() + set name = "Pick Color" + set category = "Abilities" + set desc = "You can set your color!" + if(picked_color) + to_chat(src, "You have already picked a color! If you picked the wrong color, ask an admin to change your picked_color variable to 0.") + return + var/newcolor = input(usr, "Choose a color.", "", color) as color|null + if(newcolor) + color = newcolor + picked_color = TRUE + update_icon() + +/mob/living/simple_mob/vore/squirrel/small + do_seasons = FALSE + +/mob/living/simple_mob/vore/squirrel/big + do_seasons = FALSE + +/mob/living/simple_mob/vore/squirrel/big/Initialize() + . = ..() + winterize() diff --git a/code/modules/mob/living/simple_mob/subtypes/mechanical/drones/mining_drone.dm b/code/modules/mob/living/simple_mob/subtypes/mechanical/drones/mining_drone.dm index 22af8baaa4..1bd3b9279a 100644 --- a/code/modules/mob/living/simple_mob/subtypes/mechanical/drones/mining_drone.dm +++ b/code/modules/mob/living/simple_mob/subtypes/mechanical/drones/mining_drone.dm @@ -43,7 +43,7 @@ organ_names = /decl/mob_organ_names/miningdrone ai_holder_type = /datum/ai_holder/simple_mob/ranged/kiting/threatening - say_list_type = /datum/say_list/malf_drone + say_list_type = /datum/say_list/malf_drone/mining tame_items = list( /obj/item/weapon/ore/verdantium = 90, @@ -66,6 +66,8 @@ var/last_search = 0 var/search_cooldown = 5 SECONDS + var/ignoreunarmed = TRUE + var/allowedtools = list(/obj/item/weapon/pickaxe, /obj/item/weapon/gun/energy/kinetic_accelerator, /obj/item/weapon/gun/magnetic/matfed/phoronbore, /obj/item/weapon/kinetic_crusher) /mob/living/simple_mob/mechanical/mining_drone/Initialize() ion_trail = new @@ -99,12 +101,52 @@ return . if(!.) + if(ai_holder.check_attacker(H)) //it doesn't care how nicely you're geared if you've attacked it + return FALSE + var/has_tool = FALSE var/obj/item/I = H.get_active_hand() - if(istype(I,/obj/item/weapon/pickaxe)) - has_tool = TRUE + if(!istype(I,/obj/item/weapon)) + if(ignoreunarmed) + return TRUE + else //just so they don't attack "miners" for having their mining gear in their offhand + var/obj/item/OH = H.get_inactive_hand() + if(OH) + for (var/path in allowedtools) + if(istype(OH,path)) + has_tool = TRUE + break + else + for (var/path in allowedtools) + if(istype(I,path)) + has_tool = TRUE + break + if(!has_tool) //if a valid tool not found in main hand, check offhand + var/obj/item/OH = H.get_inactive_hand() + if(OH) + for (var/path in allowedtools) + if(istype(OH,path)) + has_tool = TRUE + break return has_tool +// extra IFF aside from the above - will detect and react to the following attacks from allies (necessary as IIsAlly prevents retaliation if true) +/mob/living/simple_mob/mechanical/mining_drone/attack_hand(mob/living/L) + ..() + if(istype(L) && L.a_intent != I_HELP) + if(ai_holder) + ai_holder.add_attacker(L) + +/mob/living/simple_mob/mechanical/mining_drone/bullet_act(var/obj/item/projectile/P, var/def_zone) + ..() + if(ai_holder && P.firer) + ai_holder.add_attacker(P.firer) + +/mob/living/simple_mob/mechanical/mining_drone/hit_with_weapon(obj/item/I, mob/living/user, var/effective_force, var/hit_zone) + ..() + if(ai_holder) + ai_holder.add_attacker(user) + /mob/living/simple_mob/mechanical/mining_drone/handle_special() if(my_storage && (get_AI_stance() in list(STANCE_APPROACH, STANCE_IDLE, STANCE_FOLLOW)) && !is_AI_busy() && isturf(loc) && (world.time > last_search + search_cooldown) && (my_storage.contents.len < my_storage.max_storage_space)) last_search = world.time @@ -128,4 +170,13 @@ my_storage.remove_from_storage(I, OB) /decl/mob_organ_names/miningdrone - hit_zones = list("chassis", "comms array", "sensor suite", "left excavator module", "right excavator module", "maneuvering thruster") \ No newline at end of file + hit_zones = list("chassis", "comms array", "sensor suite", "left excavator module", "right excavator module", "maneuvering thruster") + +/datum/say_list/malf_drone/mining + say_threaten = list("Armed intruder detected.", "Lay down your weapons.", "Mining personnel only.", "Threat detected.", "Mining gear check: negative.") + +/mob/living/simple_mob/mechanical/mining_drone/scavenger //more aggro version for the debris field, with a weaker weapon + name = "scavenger drone" + ignoreunarmed = FALSE + allowedtools = list(/obj/item/weapon/pickaxe) + projectiletype = /obj/item/projectile/energy/excavate/weak \ No newline at end of file diff --git a/code/modules/mob/living/simple_mob/subtypes/mechanical/hivebot/ranged_damage.dm b/code/modules/mob/living/simple_mob/subtypes/mechanical/hivebot/ranged_damage.dm index 077cf1ebac..854e58ae12 100644 --- a/code/modules/mob/living/simple_mob/subtypes/mechanical/hivebot/ranged_damage.dm +++ b/code/modules/mob/living/simple_mob/subtypes/mechanical/hivebot/ranged_damage.dm @@ -112,7 +112,7 @@ /mob/living/simple_mob/mechanical/hivebot/ranged_damage/siege name = "siege engine hivebot" desc = "A large robot capable of delivering long range bombardment." - projectiletype = /obj/item/projectile/arc/test + projectiletype = /obj/item/projectile/arc/fragmentation/mortar icon_scale_x = 2 icon_scale_y = 2 icon_state = "red" @@ -158,4 +158,4 @@ projectiletype = /obj/item/projectile/arc/fragmentation /decl/mob_organ_names/hivebotsiege - hit_zones = list("central chassis", "armor plating", "reinforced positioning servo", "head", "sensor suite", "manipulator arm", "heavy weapons mount", "advanced weapons array", "front right leg", "front left leg", "rear left leg", "rear right leg") \ No newline at end of file + hit_zones = list("central chassis", "armor plating", "reinforced positioning servo", "head", "sensor suite", "manipulator arm", "heavy weapons mount", "advanced weapons array", "front right leg", "front left leg", "rear left leg", "rear right leg") 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 eaa796f45c..f07eef358c 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 4d1322ab85..1b64dec16a 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/living/simple_mob/subtypes/vore/morph/morph.dm b/code/modules/mob/living/simple_mob/subtypes/vore/morph/morph.dm index 99713eda22..146612f933 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/morph/morph.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/morph/morph.dm @@ -11,7 +11,7 @@ icon_dead = "new_morph_dead" icon_rest = null color = "#658a62" - movement_cooldown = 1 + movement_cooldown = -1 status_flags = CANPUSH pass_flags = PASSTABLE mob_bump_flag = SLIME @@ -136,7 +136,7 @@ //Morphed is weaker melee_damage_lower = melee_damage_disguised melee_damage_upper = melee_damage_disguised - movement_cooldown = 5 + movement_cooldown = 1 morph_time = world.time + MORPH_COOLDOWN diff --git a/code/modules/mob/living/voice/voice.dm b/code/modules/mob/living/voice/voice.dm index 2752292ee2..901807583a 100644 --- a/code/modules/mob/living/voice/voice.dm +++ b/code/modules/mob/living/voice/voice.dm @@ -109,7 +109,9 @@ if(comm) var/speech_bubble_test = say_test(message) //var/image/speech_bubble = image('icons/mob/talk_vr.dmi',comm,"h[speech_bubble_test]") //VOREStation Edit - Commented out in case of needed reenable. - var/speech_type = speech_bubble_appearance() + var/speech_type = custom_speech_bubble + if(!speech_type || speech_type == "default") + speech_type = speech_bubble_appearance() var/image/speech_bubble = generate_speech_bubble(comm, "[speech_type][speech_bubble_test]") spawn(30) qdel(speech_bubble) diff --git a/code/modules/mob/mob.dm b/code/modules/mob/mob.dm index 55a8ffa54b..e6cca445a1 100644 --- a/code/modules/mob/mob.dm +++ b/code/modules/mob/mob.dm @@ -66,7 +66,7 @@ return // Added voice muffling for Issue 41. if(stat == UNCONSCIOUS || sleeping > 0) - to_chat(src, "... You can almost hear someone talking ...") + to_chat(src, "... You can almost hear someone talking ...") else to_chat(src,msg) if(teleop) @@ -300,8 +300,8 @@ /mob/proc/warn_flavor_changed() if(flavor_text && flavor_text != "") // don't spam people that don't use it! - to_chat(src, "

    OOC Warning:

    ") - to_chat(src, "Your flavor text is likely out of date! Change") + to_chat(src, "

    OOC Warning:

    ") + to_chat(src, "Your flavor text is likely out of date! Change") /mob/proc/print_flavor_text() if (flavor_text && flavor_text != "") @@ -433,11 +433,14 @@ /client/verb/changes() set name = "Changelog" set category = "OOC" - src << browse('html/changelog.html', "window=changes;size=675x650") + src << link("https://wiki.vore-station.net/Changelog") + + /* if(prefs.lastchangelog != changelog_hash) prefs.lastchangelog = changelog_hash SScharacter_setup.queue_preferences_save(prefs) winset(src, "rpane.changelog", "background-color=none;font-style=;") + */ /mob/verb/observe() set name = "Observe" @@ -447,7 +450,7 @@ if(client.holder && (client.holder.rights & R_ADMIN|R_EVENT)) is_admin = 1 else if(stat != DEAD || istype(src, /mob/new_player)) - to_chat(usr, "You must be observing to use this!") + to_chat(usr, "You must be observing to use this!") return if(is_admin && stat == DEAD) @@ -598,7 +601,7 @@ playsound(src.loc, 'sound/weapons/thudswoosh.ogg', 25) //Quieter than hugging/grabbing but we still want some audio feedback if(H.pull_damage()) - to_chat(src, "Pulling \the [H] in their current condition would probably be a bad idea.") + to_chat(src, "Pulling \the [H] in their current condition would probably be a bad idea.") //Attempted fix for people flying away through space when cuffed and dragged. if(ismob(AM)) @@ -909,11 +912,11 @@ usr.setClickCooldown(20) if(usr.stat == 1) - to_chat(usr, "You are unconcious and cannot do that!") + to_chat(usr, "You are unconcious and cannot do that!") return if(usr.restrained()) - to_chat(usr, "You are restrained and cannot do that!") + to_chat(usr, "You are restrained and cannot do that!") return var/mob/S = src @@ -927,9 +930,9 @@ valid_objects = get_visible_implants(0) if(!valid_objects.len) if(self) - to_chat(src, "You have nothing stuck in your body that is large enough to remove.") + to_chat(src, "You have nothing stuck in your body that is large enough to remove.") else - to_chat(U, "[src] has nothing stuck in their wounds that is large enough to remove.") + to_chat(U, "[src] has nothing stuck in their wounds that is large enough to remove.") return var/obj/item/weapon/selection = tgui_input_list(usr, "What do you want to yank out?", "Embedded objects", valid_objects) @@ -1017,9 +1020,9 @@ set_face_dir() if(!facing_dir) - to_chat(usr, "You are now not facing anything.") + to_chat(usr, "You are now not facing anything.") else - to_chat(usr, "You are now facing [dir2text(facing_dir)].") + to_chat(usr, "You are now facing [dir2text(facing_dir)].") /mob/proc/set_face_dir(var/newdir) if(newdir == facing_dir) diff --git a/code/modules/mob/mob_defines.dm b/code/modules/mob/mob_defines.dm index ceb49fa47a..f729cb8c7e 100644 --- a/code/modules/mob/mob_defines.dm +++ b/code/modules/mob/mob_defines.dm @@ -218,6 +218,9 @@ var/typing var/obj/effect/decal/typing_indicator + var/obj/effect/decal/typing_indicator_active + var/cur_typing_indicator + var/custom_speech_bubble = "default" var/low_priority = FALSE //Skip processing life() if there's just no players on this Z-level diff --git a/code/modules/mob/mob_helpers.dm b/code/modules/mob/mob_helpers.dm index 8e2be3bf87..b938f0098d 100644 --- a/code/modules/mob/mob_helpers.dm +++ b/code/modules/mob/mob_helpers.dm @@ -206,9 +206,10 @@ if(lowertext(newletter)=="s") newletter="ch" if(lowertext(newletter)=="a") newletter="ah" if(lowertext(newletter)=="c") newletter="k" - switch(rand(1,15)) + switch(rand(1,9)) if(1,3,5,8) newletter="[lowertext(newletter)]" - if(2,4,6,15) newletter="[uppertext(newletter)]" + //if(2,4,6,15) newletter="[uppertext(newletter)]" + if(2,4,6,9) newletter="[uppertext(newletter)]" if(7) newletter+="'" //if(9,10) newletter="[newletter]" //if(11,12) newletter="[newletter]" @@ -690,4 +691,4 @@ var/global/image/backplane item.screen_loc = screen_place /mob/proc/can_feed() - return TRUE \ No newline at end of file + return TRUE diff --git a/code/modules/mob/new_player/new_player.dm b/code/modules/mob/new_player/new_player.dm index 3d9cd13a51..8b236f3926 100644 --- a/code/modules/mob/new_player/new_player.dm +++ b/code/modules/mob/new_player/new_player.dm @@ -30,10 +30,11 @@ /mob/new_player/proc/new_player_panel_proc() var/output = "
    " - /* VOREStation Removal - output += "[using_map.get_map_info()]" + + output += "Current Map:
    " + output += "[using_map.full_name]" output +="
    " - VOREStation Removal End */ + output += "

    Character Setup

    " if(!ticker || ticker.current_state <= GAME_STATE_PREGAME) @@ -67,10 +68,7 @@ else output += "

    Show Player Polls

    " - if(client.check_for_new_server_news()) - output += "

    Show Game Updates (NEW!)

    " - else - output += "

    Show Game Updates

    " + output += "

    View Changelog

    " if(SSsqlite.can_submit_feedback(client)) output += "

    [href(src, list("give_feedback" = 1), "Give Feedback")]

    " @@ -348,6 +346,9 @@ else client.feedback_form = new(client) + if(href_list["open_changelog"]) + src << link("https://wiki.vore-station.net/Changelog") + /mob/new_player/proc/handle_server_news() if(!client) return @@ -486,6 +487,12 @@ AnnounceArrival(character, rank, join_message, announce_channel, character.z) data_core.manifest_inject(character) ticker.minds += character.mind//Cyborgs and AIs handle this in the transform proc. //TODO!!!!! ~Carn + if(ishuman(character)) + if(character.client.prefs.auto_backup_implant) + var/obj/item/weapon/implant/backup/imp = new(src) + + if(imp.handle_implant(character,character.zone_sel.selecting)) + imp.post_implant(character) qdel(src) // Delete new_player mob diff --git a/code/modules/mob/new_player/preferences_setup.dm b/code/modules/mob/new_player/preferences_setup.dm index f3dfe624ba..52dbf78507 100644 --- a/code/modules/mob/new_player/preferences_setup.dm +++ b/code/modules/mob/new_player/preferences_setup.dm @@ -259,8 +259,8 @@ mannequin.delete_inventory(TRUE) dress_preview_mob(mannequin) mannequin.update_transform() //VOREStation Edit to update size/shape stuff. - mannequin.toggle_tail(setting = TRUE) - mannequin.toggle_wing(setting = TRUE) + mannequin.toggle_tail(setting = animations_toggle) + mannequin.toggle_wing(setting = animations_toggle) mannequin.update_tail_showing() mannequin.ImmediateOverlayUpdate() diff --git a/code/modules/mob/new_player/sprite_accessories.dm b/code/modules/mob/new_player/sprite_accessories.dm index a64def1f49..95ad3fe05a 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 @@ -1710,49 +1710,22 @@ shaved //Skrell 'hairstyles' /datum/sprite_accessory/hair/skr - name = "Tentacles, Average" - icon_state = "skrell_short" + name = "Skrell Average Tentacles" + icon_state = "skrell_hair_average" species_allowed = list(SPECIES_SKRELL, SPECIES_EVENT1, SPECIES_EVENT2, SPECIES_EVENT3) -/datum/sprite_accessory/hair/skr/pullback - name = "Tentacles, Average, Pullback" - icon_state = "skrell_short_pullback" +/datum/sprite_accessory/hair/skr/tentacle_veryshort + name = "Skrell Short Tentacles" + icon_state = "skrell_hair_short" + gender = MALE -/datum/sprite_accessory/hair/skr/very_short - name = "Tentacles, Short" - icon_state = "skrell_very_short" +/datum/sprite_accessory/hair/skr/tentacle_average + name = "Skrell Long Tentacles" + icon_state = "skrell_hair_long" -/datum/sprite_accessory/hair/skr/long - name = "Tentacles, Long" - icon_state = "skrell_long" - -/datum/sprite_accessory/hair/skr/long/pullback - name = "Tentacles, Long, Pullback" - icon_state = "skrell_long_pullback" - -/datum/sprite_accessory/hair/skr/long/scarf - name = "Tentacles, Long, Scarf" - icon_state = "skrell_long_scarf" - -/datum/sprite_accessory/hair/skr/long/wavy - name = "Tentacles, Long, Wavy" - icon_state = "skrell_long_wavy" - -/datum/sprite_accessory/hair/skr/very_long - name = "Tentacles, Very Long" - icon_state = "skrell_very_long" - -/datum/sprite_accessory/hair/skr/very_long/pullback - name = "Tentacles, Very Long, Pullback" - icon_state = "skrell_very_long_pullback" - -/datum/sprite_accessory/hair/skr/very_long/scarf - name = "Tentacles, Very Long, Scarf" - icon_state = "skrell_very_long_scarf" - -/datum/sprite_accessory/hair/skr/very_long/wavy - name = "Tentacles, Very Long, Wavy" - icon_state = "skrell_very_long_wavy" +/datum/sprite_accessory/hair/skr/tentacle_verylong + name = "Skrell Very Long Tentacles" + icon_state = "skrell_hair_verylong" //Tajaran hairstyles /datum/sprite_accessory/hair/taj @@ -2093,10 +2066,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 +2241,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 +2264,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 +2360,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 +2782,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 +2838,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 +2927,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 +2970,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 +2984,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 +3022,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 +3464,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 73fa5301ef..a0c5181598 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,17 @@ icon = 'icons/mob/vore/ears_vr.dmi' icon_state = "curly_bug_tesh" do_colouration = 1 + color_blend_mode = ICON_MULTIPLY + +/datum/sprite_accessory/ears/syrishroom + name = "Orange Mushroom Cap" + icon = 'icons/mob/vore/ears_vr.dmi' + icon_state = "syrishroom" + +/datum/sprite_accessory/ears/singlesidehorn + name = "Single Side Horn" + desc = "" + icon = 'icons/mob/vore/ears_vr.dmi' + icon_state = "single-side-horn" + do_colouration = 1 color_blend_mode = ICON_MULTIPLY \ 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 0e8b603a7f..3569d1badd 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 e3ee23efe4..ab2f41cef4 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" @@ -918,3 +887,18 @@ hide_body_parts = list(BP_L_FOOT,BP_R_FOOT) organ_override = TRUE +/datum/sprite_accessory/marking/vr_unathi_blocky_head + name = "Unathi alt head (Blocky)" + icon = 'icons/mob/human_races/markings_vr.dmi' + icon_state = "unathi_blocky_head" + color_blend_mode = ICON_MULTIPLY + body_parts = list(BP_HEAD) + hide_body_parts = list(BP_HEAD) + organ_override = TRUE + +/datum/sprite_accessory/marking/vr_unathi_blocky_head_eyes + name = "Unathi alt head eyes (Blocky)" + icon = 'icons/mob/human_races/markings_vr.dmi' + icon_state = "unathi_blocky_head_eyes" + color_blend_mode = ICON_MULTIPLY + body_parts = list(BP_HEAD) \ No newline at end of file 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 8ebeda1b66..33dab91447 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 @@ -1312,6 +1321,13 @@ clip_mask_icon = 'icons/mob/vore/taurs_vr.dmi' clip_mask_state = "taur_clip_mask_def" //Used to clip off the lower part of suits & uniforms. +/datum/sprite_accessory/tail/blade_like_tail + name = "Blade-like Tail" + icon = 'icons/mob/vore/tails_vr.dmi' + icon_state = "blade-like-tail" + do_colouration = 1 + color_blend_mode = ICON_MULTIPLY + //LONG TAILS ARE NOT TAUR BUTTS >:O /datum/sprite_accessory/tail/longtail name = "You should not see this..." diff --git a/code/modules/mob/new_player/sprite_accessories_vr.dm b/code/modules/mob/new_player/sprite_accessories_vr.dm index cad3c75e08..68358af07a 100644 --- a/code/modules/mob/new_player/sprite_accessories_vr.dm +++ b/code/modules/mob/new_player/sprite_accessories_vr.dm @@ -158,6 +158,13 @@ icon_state = "soghun_dubhorns" species_allowed = list(SPECIES_UNATHI, SPECIES_XENOCHIMERA, SPECIES_PROTEAN) +/datum/sprite_accessory/hair/una_quinthorns + name = "Quintiple Unathi Horns" + icon = 'icons/mob/human_face_vr.dmi' + icon_add = 'icons/mob/human_face_vr_add.dmi' + icon_state = "unathi_quintiple_horns" + species_allowed = list(SPECIES_UNATHI, SPECIES_XENOCHIMERA, SPECIES_PROTEAN) + /datum/sprite_accessory/hair/taj_ears name = "Tajaran Ears" icon_state = "ears_plain" diff --git a/code/modules/mob/new_player/sprite_accessories_wing_vr.dm b/code/modules/mob/new_player/sprite_accessories_wing_vr.dm index de1a18aeeb..c484d041c7 100644 --- a/code/modules/mob/new_player/sprite_accessories_wing_vr.dm +++ b/code/modules/mob/new_player/sprite_accessories_wing_vr.dm @@ -296,3 +296,11 @@ desc = "" icon = 'icons/mob/vore/wings_vr.dmi' icon_state = "dragonfly_tesh" + +/datum/sprite_accessory/wing/snail_shell + name = "snail shell, colorable" + desc = "" + icon_state = "snail_shell" + do_colouration = 1 + color_blend_mode = ICON_MULTIPLY + extra_overlay = "snail_shell_markings" diff --git a/code/modules/mob/say_vr.dm b/code/modules/mob/say_vr.dm index 9a161402cf..6396c6e9e2 100644 --- a/code/modules/mob/say_vr.dm +++ b/code/modules/mob/say_vr.dm @@ -347,11 +347,17 @@ for(var/mob/M as anything in m_viewers) if(M) - if(isobserver(M)) - message = "[message] ([ghost_follow_link(src, M)])" if(isnewplayer(M)) continue if(M.stat == UNCONSCIOUS || M.sleeping > 0) continue - to_chat(M, message) + to_chat(M, "[isobserver(M) ? "[message] ([ghost_follow_link(src, M)])" : message]") log_emote(message, src) + +/mob/verb/select_speech_bubble() + set name = "Select Speech Bubble" + set category = "OOC" + + var/new_speech_bubble = tgui_input_list(src, "Pick new voice (default for automatic selection)", "Character Preference", selectable_speech_bubbles) + if(new_speech_bubble) + custom_speech_bubble = new_speech_bubble diff --git a/code/modules/mob/typing_indicator.dm b/code/modules/mob/typing_indicator.dm index 197e472e92..8684c3463c 100644 --- a/code/modules/mob/typing_indicator.dm +++ b/code/modules/mob/typing_indicator.dm @@ -12,6 +12,9 @@ return I /mob/proc/init_typing_indicator(var/set_state = "typing") + if(typing_indicator) + qdel(typing_indicator) + typing_indicator = null typing_indicator = new typing_indicator.appearance = generate_speech_bubble(null, set_state) typing_indicator.appearance_flags |= (RESET_COLOR|PIXEL_SCALE) //VOREStation Edit @@ -23,15 +26,22 @@ cut_overlay(typing_indicator, TRUE) return - if(!typing_indicator) - init_typing_indicator("[speech_bubble_appearance()]_typing") + var/cur_bubble_appearance = custom_speech_bubble + if(!cur_bubble_appearance || cur_bubble_appearance == "default") + cur_bubble_appearance = speech_bubble_appearance() + if(!typing_indicator || cur_typing_indicator != cur_bubble_appearance) + init_typing_indicator("[cur_bubble_appearance]_typing") if(state && !typing) add_overlay(typing_indicator, TRUE) typing = TRUE + typing_indicator_active = typing_indicator else if(typing) - cut_overlay(typing_indicator, TRUE) + cut_overlay(typing_indicator_active, TRUE) typing = FALSE + if(typing_indicator_active != typing_indicator) + qdel(typing_indicator_active) + typing_indicator_active = null return state diff --git a/code/modules/modular_computers/computers/modular_computer/core.dm b/code/modules/modular_computers/computers/modular_computer/core.dm index 8639aadb63..827b7204f8 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 30719cf0be..54e66497ea 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 e365ff16e6..09ccde9e49 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 b9db56d817..356b53c877 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 @@ -401,7 +404,7 @@ /atom/movable/proc/find_fall_target(var/turf/oldloc, var/turf/landing) if(isopenspace(oldloc)) - oldloc.visible_message("\The [src] falls down through \the [oldloc]!", "You hear something falling through the air.") + oldloc.visible_message("\The [src] falls down through \the [oldloc]!", "You hear something falling through the air.") // If the turf has density, we give it first dibs if (landing.density && landing.CheckFall(src)) diff --git a/code/modules/nifsoft/nif.dm b/code/modules/nifsoft/nif.dm index b3656ca3c5..ec88b8a3cb 100644 --- a/code/modules/nifsoft/nif.dm +++ b/code/modules/nifsoft/nif.dm @@ -207,6 +207,7 @@ You can also set the stat of a NIF to NIF_TEMPFAIL without any issues to disable persist_nif_data(human) if(durability <= 0) + durability = 0 //failsafe us to a minimum of 0% so we don't just wash into massively negative durability from repeated EMPs stat = NIF_TEMPFAIL update_icon() @@ -234,6 +235,11 @@ You can also set the stat of a NIF to NIF_TEMPFAIL without any issues to disable if(C.get_amount() < 3) to_chat(user,"You need at least three coils of wire to add them to \the [src].") return + if(durability >= initial(durability)) + to_chat(user,"There's no damaged wiring that needs replacing!") + open = 3 + update_icon() + return if(do_after(user, 6 SECONDS, src) && open == 1 && C.use(3)) user.visible_message("[user] replaces some wiring in \the [src].","You replace any burned out wiring in \the [src].") playsound(src, 'sound/items/Deconstruct.ogg', 50, 1) @@ -383,7 +389,7 @@ You can also set the stat of a NIF to NIF_TEMPFAIL without any issues to disable last_notification = message // TGUI Hook - to_chat(human,"\[\icon[src.big_icon][bicon(src.big_icon)]NIF\] displays, \"[message]\"") + to_chat(human,"\[\icon[src.big_icon][bicon(src.big_icon)]NIF\] displays, \"[message]\"") if(prob(1)) human.visible_message("\The [human] [pick(look_messages)].") if(alert) human << bad_sound diff --git a/code/modules/nifsoft/nifsoft.dm b/code/modules/nifsoft/nifsoft.dm index 06490cf3c5..7b6ecd6323 100644 --- a/code/modules/nifsoft/nifsoft.dm +++ b/code/modules/nifsoft/nifsoft.dm @@ -270,7 +270,7 @@ var/newlaws = tgui_input_text(user, "Please Input Laws", "Compliance Laws", laws, multiline = TRUE, prevent_enter = TRUE) newlaws = sanitize(newlaws,2048) if(newlaws) - to_chat(user,"You set the laws to:
    [newlaws]") + to_chat(user,"You set the laws to:
    [newlaws]
    ") laws = newlaws /obj/item/weapon/disk/nifsoft/compliance/extra_params() diff --git a/code/modules/nifsoft/software/13_soulcatcher.dm b/code/modules/nifsoft/software/13_soulcatcher.dm index 6f5ca2edc2..9e983a66c3 100644 --- a/code/modules/nifsoft/software/13_soulcatcher.dm +++ b/code/modules/nifsoft/software/13_soulcatcher.dm @@ -72,11 +72,11 @@ /datum/nifsoft/soulcatcher/proc/notify_into(var/message) var/sound = nif.good_sound - to_chat(nif.human,"\[\icon[nif.big_icon][bicon(nif.big_icon)]NIF\] Soulcatcher displays, \"[message]\"") + to_chat(nif.human,"\[\icon[nif.big_icon][bicon(nif.big_icon)]NIF\] Soulcatcher displays, \"[message]\"") nif.human << sound for(var/mob/living/carbon/brain/caught_soul/CS as anything in brainmobs) - to_chat(CS,"\[\icon[nif.big_icon][bicon(nif.big_icon)]NIF\] Soulcatcher displays, \"[message]\"") + to_chat(CS,"\[\icon[nif.big_icon][bicon(nif.big_icon)]NIF\] Soulcatcher displays, \"[message]\"") CS << sound /datum/nifsoft/soulcatcher/proc/say_into(var/message, var/mob/living/sender, var/mob/eyeobj) @@ -84,13 +84,13 @@ //AR Projecting if(eyeobj) - sender.eyeobj.visible_message("[sender_name] says, \"[message]\"") + sender.eyeobj.visible_message("[sender_name] says, \"[message]\"") //Not AR Projecting else - to_chat(nif.human,"\[\icon[nif.big_icon][bicon(nif.big_icon)]NIF\] [sender_name] speaks, \"[message]\"") + to_chat(nif.human,"\[\icon[nif.big_icon][bicon(nif.big_icon)]NIF\] [sender_name] speaks, \"[message]\"") for(var/mob/living/carbon/brain/caught_soul/CS as anything in brainmobs) - to_chat(CS,"\[\icon[nif.big_icon][bicon(nif.big_icon)]NIF\] [sender_name] speaks, \"[message]\"") + to_chat(CS,"\[\icon[nif.big_icon][bicon(nif.big_icon)]NIF\] [sender_name] speaks, \"[message]\"") log_nsay(message,nif.human.real_name,sender) @@ -99,13 +99,13 @@ //AR Projecting if(eyeobj) - sender.eyeobj.visible_message("[sender_name] [message]") + sender.eyeobj.visible_message("[sender_name] [message]") //Not AR Projecting else - to_chat(nif.human,"\[\icon[nif.big_icon][bicon(nif.big_icon)]NIF\] [sender_name] [message]") + to_chat(nif.human,"\[\icon[nif.big_icon][bicon(nif.big_icon)]NIF\] [sender_name] [message]") for(var/mob/living/carbon/brain/caught_soul/CS as anything in brainmobs) - to_chat(CS,"\[\icon[nif.big_icon][bicon(nif.big_icon)]NIF\] [sender_name] [message]") + to_chat(CS,"\[\icon[nif.big_icon][bicon(nif.big_icon)]NIF\] [sender_name] [message]") log_nme(message,nif.human.real_name,sender) diff --git a/code/modules/organs/organ_icon.dm b/code/modules/organs/organ_icon.dm index a7386bdbe6..e67cc567c4 100644 --- a/code/modules/organs/organ_icon.dm +++ b/code/modules/organs/organ_icon.dm @@ -89,6 +89,15 @@ var/global/list/limb_icon_cache = list() mark_s.Blend(markings[M]["color"], mark.color_blend_mode) // VOREStation edit mob_icon.Blend(mark_s, ICON_OVERLAY) //So when it's on your body, it has icons icon_cache_key = "[M][markings[M]["color"]]" + for(var/MM in markings) + var/datum/sprite_accessory/marking/mark_style = markings[MM]["datum"] + if(mark_style.organ_override) + continue + var/icon/mark_s_s = new/icon("icon" = mark_style.icon, "icon_state" = "[mark_style.icon_state]-[organ_tag]") + mark_s.Blend(markings[MM]["color"], mark_style.color_blend_mode) // VOREStation edit + add_overlay(mark_s_s) //So when it's not on your body, it has icons + mob_icon.Blend(mark_s_s, ICON_OVERLAY) //So when it's on your body, it has icons + icon_cache_key += "[MM][markings[MM]["color"]]" dir = EAST icon = mob_icon diff --git a/code/modules/organs/pain.dm b/code/modules/organs/pain.dm index b65b3fc2fb..d26b7e3088 100644 --- a/code/modules/organs/pain.dm +++ b/code/modules/organs/pain.dm @@ -4,6 +4,8 @@ /mob/var/list/pain_stored = list() /mob/var/last_pain_message = "" /mob/var/next_pain_time = 0 +/mob/var/multilimb_pain_time = 0 // Global pain cooldown exists to prevent spam for multi-limb damage + // message is the custom message to be displayed // power decides how much painkillers will stop the message @@ -16,10 +18,32 @@ message = "[message]" // Anti message spam checks - if(force || (message != last_pain_message) || (world.time >= next_pain_time)) + // If multiple limbs are injured, cooldown is ignored to print all injuries until all limbs are iterated over + if(src.is_preference_enabled(/datum/client_preference/pain_frequency)) + switch(power) + if(0 to 5) + force = 0 + if(6 to 20) + force = prob(1) + if(force || (message != last_pain_message) || (world.time >= next_pain_time)) + switch(power) + if(0 to 5) + next_pain_time = world.time + 300 SECONDS + multilimb_pain_time = world.time + 45 SECONDS + if(6 to 20) + next_pain_time = world.time + clamp((30 - power) SECONDS, 10 SECONDS, 30 SECONDS) + multilimb_pain_time = world.time + clamp((30 - power) SECONDS, 10 SECONDS, 30 SECONDS) + if(21 to INFINITY) + next_pain_time = world.time + (100 - power) + multilimb_pain_time = world.time + (100 - power) + last_pain_message = message + to_chat(src,message) + + else if(force || (message != last_pain_message) || (world.time >= next_pain_time)) last_pain_message = message to_chat(src,message) - next_pain_time = world.time + (100-power) + next_pain_time = world.time + (100 - power) + multilimb_pain_time = world.time + (100 - power) /mob/living/carbon/human/proc/handle_pain() if(stat) @@ -28,7 +52,7 @@ if(!can_feel_pain() && !synth_cosmetic_pain) return - if(world.time < next_pain_time) + if(world.time < multilimb_pain_time) //prevents spam in case of multi-limb injuries. return var/maxdam = 0 var/obj/item/organ/external/damaged_organ = null @@ -77,4 +101,4 @@ if(31 to 60) custom_pain("Your whole body hurts badly.", getToxLoss()) if(61 to INFINITY) - custom_pain("Your body aches all over, it's driving you mad.", getToxLoss()) \ No newline at end of file + custom_pain("Your body aches all over, it's driving you mad.", getToxLoss()) diff --git a/code/modules/overmap/sectors.dm b/code/modules/overmap/sectors.dm index e6624de848..4fb71ff02f 100644 --- a/code/modules/overmap/sectors.dm +++ b/code/modules/overmap/sectors.dm @@ -12,6 +12,8 @@ var/known = TRUE /// Name prior to being scanned if !known var/unknown_name = "unknown sector" + var/real_name + var/real_desc /// Icon_state prior to being scanned if !known var/unknown_state = "field" @@ -37,6 +39,11 @@ var/list/levels_for_distress var/list/unowned_areas // areas we don't own despite them being present on our z + var/list/possible_descriptors = list() //While only affects sectors for now, initialized here for proc definition convenience. + var/visitable_renamed = FALSE //changed if non-default name is assigned. + + var/unique_identifier //Define this for objs that we want to be able to rename. Needed to avoid compiler errors if not included. + /obj/effect/overmap/visitable/Initialize() . = ..() if(. == INITIALIZE_HINT_QDEL) @@ -68,11 +75,16 @@ else real_appearance = image(icon, src, icon_state) real_appearance.override = TRUE + real_name = name name = unknown_name icon_state = unknown_state color = null + real_desc = desc desc = "Scan this to find out more information." - + //at the moment only used for the OM location renamer. Initializing here in case we want shuttles incl as well in future. Also proc definition convenience. + visitable_overmap_object_instances |= src + + // You generally shouldn't destroy these. /obj/effect/overmap/visitable/Destroy() @@ -125,10 +137,16 @@ /obj/effect/overmap/visitable/get_scan_data() if(!known) known = TRUE - name = initial(name) + if(real_name) + name = real_name + else + name = initial(name) icon_state = initial(icon_state) color = initial(color) - desc = initial(desc) + if(real_desc) + desc = real_desc + else + desc = initial(desc) return ..() /obj/effect/overmap/visitable/proc/get_space_zlevels() @@ -143,7 +161,7 @@ if(A in SSshuttles.shuttle_areas) return 0 if(is_type_in_list(A, unowned_areas)) - return 0 + return 0 if(get_z(object) in map_z) return 1 @@ -213,17 +231,17 @@ This beacon was launched from '[initial(name)]'. I can provide this additional information to rescuers: [get_distress_info()]. \ Per the Interplanetary Convention on Space SAR, those receiving this message must attempt rescue, \ or relay the message to those who can. This message will repeat one time in 5 minutes. Thank you for your urgent assistance." - + if(!levels_for_distress) levels_for_distress = list(1) for(var/zlevel in levels_for_distress) priority_announcement.Announce(message, new_title = "Automated Distress Signal", new_sound = 'sound/AI/sos.ogg', zlevel = zlevel) - + var/image/I = image(icon, icon_state = "distress") I.plane = PLANE_LIGHTING_ABOVE I.appearance_flags = KEEP_APART|RESET_TRANSFORM|RESET_COLOR add_overlay(I) - + addtimer(CALLBACK(src, .proc/distress_update), 5 MINUTES) return TRUE @@ -258,4 +276,3 @@ testing("Overmap build complete.") return 1 - diff --git a/code/modules/persistence/effects/filth_vr.dm b/code/modules/persistence/effects/filth_vr.dm index deea9cb877..34733d4bc8 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/persistence/storage/smartfridge.dm b/code/modules/persistence/storage/smartfridge.dm index 1ffe9eb586..ef7b643ceb 100644 --- a/code/modules/persistence/storage/smartfridge.dm +++ b/code/modules/persistence/storage/smartfridge.dm @@ -32,6 +32,20 @@ max_storage = 250 stacks_go_missing = TRUE +/datum/persistent/storage/smartfridge/sheet_storage/variable_max + name = "variable max storage" + max_storage = list( + /obj/item/stack/material/steel = 150, + /obj/item/stack/material/glass = 150, + /obj/item/stack/material/copper = 150, + /obj/item/stack/material/wood = 150, + /obj/item/stack/material/plastic = 150, + /obj/item/stack/material/phoron = 100, + /obj/item/stack/material/plasteel = 50, + /obj/item/stack/material/cardboard = 50, + "default" = 10 + ) + /datum/persistent/storage/smartfridge/sheet_storage/generate_items(var/list/L) . = list() for(var/obj/item/stack/material/S as anything in L) @@ -97,4 +111,4 @@ var/obj/item/weapon/reagent_containers/food/snacks/grown/G = I.instances[1] if(!istype(G)) continue - .[G.plantname] = I.get_amount() // Store the seed type, because that's what's used to generate the fruit \ No newline at end of file + .[G.plantname] = I.get_amount() // Store the seed type, because that's what's used to generate the fruit diff --git a/code/modules/persistence/storage/storage.dm b/code/modules/persistence/storage/storage.dm index 58b23a6ce9..a1b16e39b1 100644 --- a/code/modules/persistence/storage/storage.dm +++ b/code/modules/persistence/storage/storage.dm @@ -2,7 +2,7 @@ name = "storage" entries_expire_at = 1 has_admin_data = TRUE - + // Don't use these for storage persistence. If someone takes some sheets out and puts them back in mixed in with // new sheets, how do you know the age of the stack? If you want sheets to 'decay', see go_missing_chance entries_decay_at = 0 @@ -28,15 +28,21 @@ var/list/item_list = get_storage_list(entry) var/list/storage_list = list() for(var/item in item_list) - storage_list[item] = min(stored, storage_list[item] + item_list[item]) // Can't store more than max_storage - - // stored gets reduced by qty stored, if greater than stored, - // previous assignment will handle overage, and we set to 0 - if(!store_per_type) - stored = max(stored - item_list[item], 0) - + if(islist(max_storage)) + if(!is_path_in_list(item, stored)) + stored[item] = stored["default"] + storage_list[item] = min(stored[item], storage_list[item] + item_list[item]) // Can't store more than max_storage + + else + storage_list[item] = min(stored, storage_list[item] + item_list[item]) // Can't store more than max_storage + + // stored gets reduced by qty stored, if greater than stored, + // previous assignment will handle overage, and we set to 0 + if(!store_per_type) + stored = max(stored - item_list[item], 0) + LAZYADDASSOC(., "items", storage_list) - + // Usage: returns list with structure: // list( // [type1] = [stored_quantity], diff --git a/code/modules/planet/sif.dm b/code/modules/planet/sif.dm index bb05b29576..4b3cb1980c 100644 --- a/code/modules/planet/sif.dm +++ b/code/modules/planet/sif.dm @@ -118,6 +118,7 @@ var/datum/planet/sif/planet_sif = null WEATHER_RAIN = new /datum/weather/sif/rain(), WEATHER_STORM = new /datum/weather/sif/storm(), WEATHER_HAIL = new /datum/weather/sif/hail(), + WEATHER_FOG = new /datum/weather/sif/fog(), WEATHER_BLOOD_MOON = new /datum/weather/sif/blood_moon(), WEATHER_EMBERFALL = new /datum/weather/sif/emberfall(), WEATHER_ASH_STORM = new /datum/weather/sif/ash_storm(), @@ -127,6 +128,7 @@ var/datum/planet/sif/planet_sif = null WEATHER_CLEAR = 30, WEATHER_OVERCAST = 30, WEATHER_LIGHT_SNOW = 20, + WEATHER_FOG = 20, WEATHER_SNOW = 5, WEATHER_BLIZZARD = 2.5, WEATHER_HAIL = 5 @@ -140,8 +142,9 @@ var/datum/planet/sif/planet_sif = null /datum/weather/sif/clear name = "clear" transition_chances = list( - WEATHER_CLEAR = 60, - WEATHER_OVERCAST = 40 + WEATHER_CLEAR = 55, + WEATHER_OVERCAST = 35, + WEATHER_FOG = 10 ) transition_messages = list( "The sky clears up.", @@ -161,6 +164,7 @@ var/datum/planet/sif/planet_sif = null WEATHER_CLEAR = 25, WEATHER_OVERCAST = 50, WEATHER_LIGHT_SNOW = 10, + WEATHER_FOG = 30, WEATHER_SNOW = 5, WEATHER_HAIL = 5 ) @@ -181,9 +185,10 @@ var/datum/planet/sif/planet_sif = null temp_low = 258.15 // -15c light_modifier = 0.7 transition_chances = list( - WEATHER_OVERCAST = 20, - WEATHER_LIGHT_SNOW = 50, - WEATHER_SNOW = 25, + WEATHER_OVERCAST = 10, + WEATHER_LIGHT_SNOW = 40, + WEATHER_FOG = 30, + WEATHER_SNOW = 15, WEATHER_HAIL = 5 ) observed_message = "It is snowing lightly." @@ -275,8 +280,11 @@ var/datum/planet/sif/planet_sif = null effect_message = "Rain falls on you." transition_chances = list( - WEATHER_OVERCAST = 25, - WEATHER_LIGHT_SNOW = 10, + WEATHER_OVERCAST = 20, + WEATHER_LIGHT_SNOW = 5, + WEATHER_FOG = 20, + WEATHER_RAIN = 40, + WEATHER_STORM = 10, WEATHER_HAIL = 5 ) observed_message = "It is raining." @@ -334,7 +342,8 @@ var/datum/planet/sif/planet_sif = null transition_chances = list( WEATHER_HAIL = 10, - WEATHER_OVERCAST = 5 + WEATHER_FOG = 3, + WEATHER_OVERCAST = 2 ) /datum/weather/sif/storm/process_effects() @@ -428,6 +437,30 @@ var/datum/planet/sif/planet_sif = null if(show_message) to_chat(H, effect_message) +/datum/weather/sif/fog + name = "fog" + icon_state = "fog" + wind_high = 1 + wind_low = 0 + light_modifier = 0.7 + + temp_high = T0C // 0c + temp_low = 263.15 // -10c + + transition_chances = list( + WEATHER_FOG = 70, + WEATHER_OVERCAST = 15, + WEATHER_LIGHT_SNOW = 10, + WEATHER_RAIN = 5 + ) + observed_message = "A fogbank has rolled over the region." + transition_messages = list( + "Fog rolls in.", + "Visibility falls as the air becomes dense.", + "The clouds drift lower, as if to smother the forests." + ) + outdoor_sounds_type = /datum/looping_sound/weather/wind + indoor_sounds_type = /datum/looping_sound/weather/wind/indoors // These never happen naturally, and are for adminbuse. diff --git a/code/modules/planet/virgo3b_vr.dm b/code/modules/planet/virgo3b_vr.dm index ffeaf4f253..336fdfc3be 100644 --- a/code/modules/planet/virgo3b_vr.dm +++ b/code/modules/planet/virgo3b_vr.dm @@ -107,6 +107,7 @@ var/datum/planet/virgo3b/planet_virgo3b = null WEATHER_RAIN = new /datum/weather/virgo3b/rain(), WEATHER_STORM = new /datum/weather/virgo3b/storm(), WEATHER_HAIL = new /datum/weather/virgo3b/hail(), + WEATHER_FOG = new /datum/weather/virgo3b/fog(), WEATHER_BLOOD_MOON = new /datum/weather/virgo3b/blood_moon(), WEATHER_EMBERFALL = new /datum/weather/virgo3b/emberfall(), WEATHER_ASH_STORM = new /datum/weather/virgo3b/ash_storm(), @@ -118,6 +119,7 @@ var/datum/planet/virgo3b/planet_virgo3b = null roundstart_weather_chances = list( WEATHER_CLEAR = 60, WEATHER_OVERCAST = 60, + WEATHER_FOG = 40, WEATHER_LIGHT_SNOW = 40, WEATHER_SNOW = 10, WEATHER_BLIZZARD = 10, @@ -135,7 +137,8 @@ var/datum/planet/virgo3b/planet_virgo3b = null name = "clear" transition_chances = list( WEATHER_CLEAR = 60, - WEATHER_OVERCAST = 40 + WEATHER_OVERCAST = 40, + WEATHER_FOG = 20, ) transition_messages = list( "The sky clears up.", @@ -144,6 +147,7 @@ var/datum/planet/virgo3b/planet_virgo3b = null ) sky_visible = TRUE observed_message = "The sky is clear." + imminent_transition_message = "The sky is rapidly clearing up." /datum/weather/virgo3b/overcast name = "overcast" @@ -151,6 +155,7 @@ var/datum/planet/virgo3b/planet_virgo3b = null transition_chances = list( WEATHER_CLEAR = 25, WEATHER_OVERCAST = 50, + WEATHER_FOG = 10, WEATHER_LIGHT_SNOW = 10, WEATHER_SNOW = 5, WEATHER_RAIN = 5, @@ -162,6 +167,7 @@ var/datum/planet/virgo3b/planet_virgo3b = null "Clouds cut off your view of the sky.", "It's very cloudy." ) + imminent_transition_message = "Benign clouds are quickly gathering." /datum/weather/virgo3b/light_snow name = "light snow" @@ -180,6 +186,7 @@ var/datum/planet/virgo3b/planet_virgo3b = null "Small snowflakes begin to fall from above.", "It begins to snow lightly.", ) + imminent_transition_message = "It appears a light snow is about to start." /datum/weather/virgo3b/snow name = "moderate snow" @@ -202,6 +209,7 @@ var/datum/planet/virgo3b/planet_virgo3b = null "It's starting to snow.", "The air feels much colder as snowflakes fall from above." ) + imminent_transition_message = "A snowfall is starting." outdoor_sounds_type = /datum/looping_sound/weather/outside_snow indoor_sounds_type = /datum/looping_sound/weather/inside_snow @@ -230,13 +238,15 @@ var/datum/planet/virgo3b/planet_virgo3b = null WEATHER_SNOW = 45, WEATHER_BLIZZARD = 40, WEATHER_HAIL = 10, - WEATHER_OVERCAST = 5 + WEATHER_OVERCAST = 5, + WEATHER_FOG = 5 ) observed_message = "A blizzard blows snow everywhere." transition_messages = list( "Strong winds howl around you as a blizzard appears.", "It starts snowing heavily, and it feels extremly cold now." ) + imminent_transition_message = "Wind is howling. Blizzard is coming." outdoor_sounds_type = /datum/looping_sound/weather/outside_blizzard indoor_sounds_type = /datum/looping_sound/weather/inside_blizzard @@ -262,6 +272,7 @@ var/datum/planet/virgo3b/planet_virgo3b = null transition_chances = list( WEATHER_OVERCAST = 25, + WEATHER_FOG = 25, WEATHER_LIGHT_SNOW = 10, WEATHER_RAIN = 50, WEATHER_STORM = 10, @@ -271,6 +282,7 @@ var/datum/planet/virgo3b/planet_virgo3b = null transition_messages = list( "The sky is dark, and rain falls down upon you." ) + imminent_transition_message = "Light drips of water are starting to fall from the sky." outdoor_sounds_type = /datum/looping_sound/weather/rain indoor_sounds_type = /datum/looping_sound/weather/rain/indoors @@ -314,6 +326,7 @@ var/datum/planet/virgo3b/planet_virgo3b = null "Loud thunder is heard in the distance.", "A bright flash heralds the approach of a storm." ) + imminent_transition_message = "You can hear distant thunder. Storm is coming." outdoor_sounds_type = /datum/looping_sound/weather/rain indoor_sounds_type = /datum/looping_sound/weather/rain/indoors @@ -321,6 +334,7 @@ var/datum/planet/virgo3b/planet_virgo3b = null transition_chances = list( WEATHER_RAIN = 45, WEATHER_STORM = 40, + WEATHER_FOG = 25, WEATHER_HAIL = 10, WEATHER_OVERCAST = 5 ) @@ -371,6 +385,7 @@ var/datum/planet/virgo3b/planet_virgo3b = null transition_chances = list( WEATHER_RAIN = 45, WEATHER_STORM = 40, + WEATHER_FOG = 20, WEATHER_HAIL = 10, WEATHER_OVERCAST = 5 ) @@ -380,6 +395,7 @@ var/datum/planet/virgo3b/planet_virgo3b = null "It begins to hail.", "An intense chill is felt, and chunks of ice start to fall from the sky, towards you." ) + imminent_transition_message = "Small bits of ice are falling from the sky, growing larger by the second. Hail is starting, get to cover!" /datum/weather/virgo3b/hail/process_effects() ..() @@ -416,6 +432,32 @@ var/datum/planet/virgo3b/planet_virgo3b = null if(show_message) to_chat(H, effect_message) +/datum/weather/virgo3b/fog + name = "fog" + icon_state = "fog" + wind_high = 1 + wind_low = 0 + light_modifier = 0.7 + + temp_high = 235.15 + temp_low = 225.15 + + transition_chances = list( + WEATHER_FOG = 70, + WEATHER_OVERCAST = 15, + WEATHER_LIGHT_SNOW = 10, + WEATHER_RAIN = 5 + ) + observed_message = "A fogbank has rolled over the region." + transition_messages = list( + "Fog rolls in.", + "Visibility falls as the air becomes dense.", + "The clouds drift lower, as if to smother the forests." + ) + imminent_transition_message = "Clouds are drifting down as the area is getting foggy." + outdoor_sounds_type = /datum/looping_sound/weather/wind + indoor_sounds_type = /datum/looping_sound/weather/wind/indoors + /datum/weather/virgo3b/blood_moon name = "blood moon" light_modifier = 0.5 @@ -428,6 +470,7 @@ var/datum/planet/virgo3b/planet_virgo3b = null transition_messages = list( "The sky turns blood red!" ) + imminent_transition_message = "The sky is turning red. Blood Moon is starting." outdoor_sounds_type = /datum/looping_sound/weather/wind indoor_sounds_type = /datum/looping_sound/weather/wind/indoors @@ -447,6 +490,7 @@ var/datum/planet/virgo3b/planet_virgo3b = null transition_messages = list( "Gentle embers waft down around you like grotesque snow." ) + imminent_transition_message = "Dark smoke is filling the sky, as ash and embers start to rain down." outdoor_sounds_type = /datum/looping_sound/weather/wind indoor_sounds_type = /datum/looping_sound/weather/wind/indoors @@ -468,6 +512,7 @@ var/datum/planet/virgo3b/planet_virgo3b = null transition_messages = list( "Smoldering clouds of scorching ash billow down around you!" ) + imminent_transition_message = "Dark smoke is filling the sky, as ash and embers fill the air and wind is picking up too. Ashstorm is coming, get to cover!" // Lets recycle. outdoor_sounds_type = /datum/looping_sound/weather/outside_blizzard indoor_sounds_type = /datum/looping_sound/weather/inside_blizzard @@ -499,6 +544,7 @@ var/datum/planet/virgo3b/planet_virgo3b = null transition_messages = list( "Smoldering clouds of scorching ash billow down around you!" ) + imminent_transition_message = "Dark smoke is filling the sky, as ash and embers fill the air and wind is picking up too." // Lets recycle. outdoor_sounds_type = /datum/looping_sound/weather/outside_blizzard indoor_sounds_type = /datum/looping_sound/weather/inside_blizzard @@ -518,6 +564,7 @@ var/datum/planet/virgo3b/planet_virgo3b = null transition_messages = list( "Radioactive soot and ash start to float down around you, contaminating whatever they touch." ) + imminent_transition_message = "Sky and clouds are growing sickly green... Radiation storm is approaching, get to cover!" outdoor_sounds_type = /datum/looping_sound/weather/wind indoor_sounds_type = /datum/looping_sound/weather/wind/indoors @@ -554,9 +601,12 @@ var/datum/planet/virgo3b/planet_virgo3b = null /datum/weather/virgo3b/fallout/temp name = "short-term fallout" + timer_low_bound = 1 + timer_high_bound = 3 transition_chances = list( WEATHER_FALLOUT = 10, WEATHER_RAIN = 50, + WEATHER_FOG = 35, WEATHER_STORM = 20, WEATHER_OVERCAST = 5 ) @@ -575,4 +625,5 @@ var/datum/planet/virgo3b/planet_virgo3b = null transition_messages = list( "Suddenly, colorful confetti starts raining from the sky." ) + imminent_transition_message = "A rain is starting... A rain of confetti...?" diff --git a/code/modules/planet/virgo3c_vr.dm b/code/modules/planet/virgo3c_vr.dm index 3a461a5107..2ebc4ee0d2 100644 --- a/code/modules/planet/virgo3c_vr.dm +++ b/code/modules/planet/virgo3c_vr.dm @@ -127,6 +127,7 @@ var/datum/planet/virgo3c/planet_virgo3c = null WEATHER_RAIN = new /datum/weather/virgo3c/rain(), WEATHER_STORM = new /datum/weather/virgo3c/storm(), WEATHER_HAIL = new /datum/weather/virgo3c/hail(), + WEATHER_FOG = new /datum/weather/virgo3c/fog(), WEATHER_BLOOD_MOON = new /datum/weather/virgo3c/blood_moon(), WEATHER_EMBERFALL = new /datum/weather/virgo3c/emberfall(), WEATHER_ASH_STORM = new /datum/weather/virgo3c/ash_storm(), @@ -162,6 +163,7 @@ var/datum/planet/virgo3c/planet_virgo3c = null ) sky_visible = TRUE observed_message = "The sky is clear." + imminent_transition_message = "The sky is rapidly clearing up." /datum/weather/virgo3c/overcast name = "overcast" @@ -171,6 +173,7 @@ var/datum/planet/virgo3c/planet_virgo3c = null transition_chances = list( WEATHER_CLEAR = 50, WEATHER_OVERCAST = 50, + WEATHER_FOG = 5, WEATHER_RAIN = 5, WEATHER_LIGHT_SNOW = 5 ) @@ -180,6 +183,7 @@ var/datum/planet/virgo3c/planet_virgo3c = null "Clouds cut off your view of the sky.", "It's very cloudy." ) + imminent_transition_message = "Benign clouds are quickly gathering." /datum/weather/virgo3c/light_snow name = "light snow" @@ -190,6 +194,7 @@ var/datum/planet/virgo3c/planet_virgo3c = null transition_chances = list( WEATHER_LIGHT_SNOW = 25, WEATHER_OVERCAST = 25, + WEATHER_FOG = 10, WEATHER_SNOW = 10, WEATHER_RAIN = 5 ) @@ -198,6 +203,7 @@ var/datum/planet/virgo3c/planet_virgo3c = null "Small snowflakes begin to fall from above.", "It begins to snow lightly.", ) + imminent_transition_message = "It appears a light snow is about to start." /datum/weather/virgo3c/snow name = "moderate snow" @@ -218,6 +224,7 @@ var/datum/planet/virgo3c/planet_virgo3c = null "It's starting to snow.", "The air feels much colder as snowflakes fall from above." ) + imminent_transition_message = "A snowfall is starting." outdoor_sounds_type = /datum/looping_sound/weather/outside_snow indoor_sounds_type = /datum/looping_sound/weather/inside_snow @@ -239,6 +246,7 @@ var/datum/planet/virgo3c/planet_virgo3c = null "Strong winds howl around you as a blizzard appears.", "It starts snowing heavily, and it feels extremly cold now." ) + imminent_transition_message = "Wind is howling. Blizzard is coming." outdoor_sounds_type = /datum/looping_sound/weather/outside_blizzard indoor_sounds_type = /datum/looping_sound/weather/inside_blizzard @@ -251,10 +259,13 @@ var/datum/planet/virgo3c/planet_virgo3c = null wind_low = 1 light_modifier = 0.5 effect_message = "Rain falls on you." + outdoor_sounds_type = /datum/looping_sound/weather/rain + indoor_sounds_type = /datum/looping_sound/weather/rain/indoors transition_chances = list( WEATHER_OVERCAST = 25, WEATHER_RAIN = 25, + WEATHER_FOG = 10, WEATHER_STORM = 5, WEATHER_LIGHT_SNOW = 5 ) @@ -262,6 +273,7 @@ var/datum/planet/virgo3c/planet_virgo3c = null transition_messages = list( "The sky is dark, and rain falls down upon you." ) + imminent_transition_message = "Light drips of water are starting to fall from the sky." /datum/weather/virgo3c/rain/process_effects() ..() @@ -305,6 +317,9 @@ var/datum/planet/virgo3c/planet_virgo3c = null "Loud thunder is heard in the distance.", "A bright flash heralds the approach of a storm." ) + imminent_transition_message = "You can hear distant thunder. Storm is coming." + outdoor_sounds_type = /datum/looping_sound/weather/rain + indoor_sounds_type = /datum/looping_sound/weather/rain/indoors transition_chances = list( @@ -360,6 +375,7 @@ var/datum/planet/virgo3c/planet_virgo3c = null effect_message = "The hail smacks into you!" transition_chances = list( + WEATHER_FOG = 5, WEATHER_HAIL = 25, WEATHER_RAIN = 75 ) @@ -369,6 +385,7 @@ var/datum/planet/virgo3c/planet_virgo3c = null "It begins to hail.", "An intense chill is felt, and chunks of ice start to fall from the sky, towards you." ) + imminent_transition_message = "Small bits of ice are falling from the sky, growing larger by the second. Hail is starting, get to cover!" /datum/weather/virgo3c/hail/process_effects() ..() @@ -405,6 +422,31 @@ var/datum/planet/virgo3c/planet_virgo3c = null if(show_message) to_chat(H, effect_message) +/datum/weather/virgo3c/fog + name = "fog" + icon_state = "fog" + wind_high = 1 + wind_low = 0 + light_modifier = 0.7 + + temp_high = 273.15 // 0c + temp_low = 263.15 // -10c + + transition_chances = list( + WEATHER_FOG = 50, + WEATHER_OVERCAST = 45, + WEATHER_LIGHT_SNOW = 5 + ) + observed_message = "A fogbank has rolled over the region." + transition_messages = list( + "Fog rolls in.", + "Visibility falls as the air becomes dense.", + "The clouds drift lower, as if to smother the forests." + ) + imminent_transition_message = "Clouds are drifting down as the area is getting foggy." + outdoor_sounds_type = /datum/looping_sound/weather/wind + indoor_sounds_type = /datum/looping_sound/weather/wind/indoors + /datum/weather/virgo3c/blood_moon name = "blood moon" light_modifier = 0.5 @@ -412,6 +454,8 @@ var/datum/planet/virgo3c/planet_virgo3c = null temp_high = 283.15 // 10c temp_low = 273.15 // 0c flight_failure_modifier = 25 + timer_low_bound = 10 + timer_high_bound = 15 transition_chances = list( WEATHER_BLOOD_MOON = 25, WEATHER_CLEAR = 75 @@ -420,6 +464,7 @@ var/datum/planet/virgo3c/planet_virgo3c = null transition_messages = list( "The sky turns blood red!" ) + imminent_transition_message = "The sky is turning red. Blood Moon is starting." outdoor_sounds_type = /datum/looping_sound/weather/wind indoor_sounds_type = /datum/looping_sound/weather/wind/indoors @@ -432,6 +477,8 @@ var/datum/planet/virgo3c/planet_virgo3c = null temp_high = 293.15 // 20c temp_low = 283.15 // 10c flight_failure_modifier = 20 + timer_low_bound = 8 + timer_high_bound = 10 transition_chances = list( WEATHER_ASH_STORM = 100 ) @@ -439,6 +486,7 @@ var/datum/planet/virgo3c/planet_virgo3c = null transition_messages = list( "Gentle embers waft down around you like black snow. A wall of dark, glowing ash approaches in the distance..." ) + imminent_transition_message = "Dark smoke is filling the sky, as ash and embers start to rain down." outdoor_sounds_type = /datum/looping_sound/weather/wind indoor_sounds_type = /datum/looping_sound/weather/wind/indoors @@ -453,14 +501,17 @@ var/datum/planet/virgo3c/planet_virgo3c = null wind_high = 6 wind_low = 3 flight_failure_modifier = 50 + timer_low_bound = 4 + timer_high_bound = 6 transition_chances = list( - WEATHER_ASH_STORM = 5, - WEATHER_CLEAR = 95 + WEATHER_ASH_STORM = 20, + WEATHER_CLEAR = 80 ) observed_message = "All that can be seen is black smoldering ash." transition_messages = list( "Smoldering clouds of scorching ash billow down around you!" ) + imminent_transition_message = "Dark smoke is filling the sky, as ash and embers fill the air and wind is picking up too. Ashstorm is coming, get to cover!" // Lets recycle. outdoor_sounds_type = /datum/looping_sound/weather/outside_blizzard indoor_sounds_type = /datum/looping_sound/weather/inside_blizzard @@ -498,6 +549,7 @@ var/datum/planet/virgo3c/planet_virgo3c = null transition_messages = list( "Smoldering clouds of scorching ash billow down around you!" ) + imminent_transition_message = "Dark smoke is filling the sky, as ash and embers fill the air and wind is picking up too." // Lets recycle. outdoor_sounds_type = /datum/looping_sound/weather/outside_blizzard indoor_sounds_type = /datum/looping_sound/weather/inside_blizzard @@ -516,6 +568,7 @@ var/datum/planet/virgo3c/planet_virgo3c = null transition_messages = list( "Radioactive soot and ash start to float down around you, contaminating whatever they touch." ) + imminent_transition_message = "Sky and clouds are growing sickly green... Radiation storm is approaching, get to cover!" outdoor_sounds_type = /datum/looping_sound/weather/wind indoor_sounds_type = /datum/looping_sound/weather/wind/indoors @@ -552,9 +605,12 @@ var/datum/planet/virgo3c/planet_virgo3c = null /datum/weather/virgo3c/fallout/temp name = "short-term fallout" + timer_low_bound = 1 + timer_high_bound = 3 transition_chances = list( WEATHER_FALLOUT = 10, WEATHER_RAIN = 50, + WEATHER_FOG = 35, WEATHER_STORM = 20, WEATHER_OVERCAST = 5 ) @@ -573,6 +629,7 @@ var/datum/planet/virgo3c/planet_virgo3c = null transition_messages = list( "Suddenly, colorful confetti starts raining from the sky." ) + imminent_transition_message = "A rain is starting... A rain of confetti...?" /turf/unsimulated/wall/planetary/virgo3c name = "impassable rock" diff --git a/code/modules/planet/virgo4_vr.dm b/code/modules/planet/virgo4_vr.dm index ed7e08d686..af423c1714 100644 --- a/code/modules/planet/virgo4_vr.dm +++ b/code/modules/planet/virgo4_vr.dm @@ -106,6 +106,7 @@ var/datum/planet/virgo4/planet_virgo4 = null WEATHER_RAIN = new /datum/weather/virgo4/rain(), WEATHER_STORM = new /datum/weather/virgo4/storm(), WEATHER_HAIL = new /datum/weather/virgo4/hail(), + WEATHER_FOG = new /datum/weather/virgo4/fog(), WEATHER_BLOOD_MOON = new /datum/weather/virgo4/blood_moon(), WEATHER_EMBERFALL = new /datum/weather/virgo4/emberfall(), WEATHER_ASH_STORM = new /datum/weather/virgo4/ash_storm(), @@ -137,6 +138,7 @@ var/datum/planet/virgo4/planet_virgo4 = null ) sky_visible = TRUE observed_message = "The sky is clear." + imminent_transition_message = "The sky is rapidly clearing up." /datum/weather/virgo4/overcast name = "overcast" @@ -154,6 +156,7 @@ var/datum/planet/virgo4/planet_virgo4 = null "Clouds cut off your view of the sky.", "It's very cloudy." ) + imminent_transition_message = "Benign clouds are quickly gathering." /datum/weather/virgo4/light_snow name = "light snow" @@ -170,6 +173,7 @@ var/datum/planet/virgo4/planet_virgo4 = null "Small snowflakes begin to fall from above.", "It begins to snow lightly.", ) + imminent_transition_message = "It appears a light snow is about to start." /datum/weather/virgo4/snow name = "moderate snow" @@ -189,6 +193,7 @@ var/datum/planet/virgo4/planet_virgo4 = null "It's starting to snow.", "The air feels much colder as snowflakes fall from above." ) + imminent_transition_message = "A snowfall is starting." outdoor_sounds_type = /datum/looping_sound/weather/outside_snow indoor_sounds_type = /datum/looping_sound/weather/inside_snow @@ -222,6 +227,7 @@ var/datum/planet/virgo4/planet_virgo4 = null "Strong winds howl around you as a blizzard appears.", "It starts snowing heavily, and it feels extremly cold now." ) + imminent_transition_message = "Wind is howling. Blizzard is coming." outdoor_sounds_type = /datum/looping_sound/weather/outside_blizzard indoor_sounds_type = /datum/looping_sound/weather/inside_blizzard @@ -255,6 +261,9 @@ var/datum/planet/virgo4/planet_virgo4 = null transition_messages = list( "The sky is dark, and rain falls down upon you." ) + imminent_transition_message = "Light drips of water are starting to fall from the sky." + outdoor_sounds_type = /datum/looping_sound/weather/rain + indoor_sounds_type = /datum/looping_sound/weather/rain/indoors /datum/weather/virgo4/rain/process_effects() ..() @@ -296,6 +305,9 @@ var/datum/planet/virgo4/planet_virgo4 = null "Loud thunder is heard in the distance.", "A bright flash heralds the approach of a storm." ) + imminent_transition_message = "You can hear distant thunder. Storm is coming." + outdoor_sounds_type = /datum/looping_sound/weather/rain + indoor_sounds_type = /datum/looping_sound/weather/rain/indoors transition_chances = list( @@ -357,6 +369,7 @@ var/datum/planet/virgo4/planet_virgo4 = null "It begins to hail.", "An intense chill is felt, and chunks of ice start to fall from the sky, towards you." ) + imminent_transition_message = "Small bits of ice are falling from the sky, growing larger by the second. Hail is starting, get to cover!" /datum/weather/virgo4/hail/process_effects() ..() @@ -393,6 +406,30 @@ var/datum/planet/virgo4/planet_virgo4 = null if(show_message) to_chat(H, effect_message) +/datum/weather/virgo4/fog + name = "fog" + icon_state = "fog" + wind_high = 1 + wind_low = 0 + light_modifier = 0.7 + + temp_high = 283.15 // 10c + temp_low = 273.15 // 0c + + transition_chances = list( + WEATHER_FOG = 10, + WEATHER_OVERCAST = 15 + ) + observed_message = "A fogbank has rolled over the region." + transition_messages = list( + "Fog rolls in.", + "Visibility falls as the air becomes dense.", + "The clouds drift lower, as if to smother the forests." + ) + imminent_transition_message = "Clouds are drifting down as the area is getting foggy." + outdoor_sounds_type = /datum/looping_sound/weather/wind + indoor_sounds_type = /datum/looping_sound/weather/wind/indoors + /datum/weather/virgo4/blood_moon name = "blood moon" light_modifier = 0.5 @@ -407,6 +444,7 @@ var/datum/planet/virgo4/planet_virgo4 = null transition_messages = list( "The sky turns blood red!" ) + imminent_transition_message = "The sky is turning red. Blood Moon is starting." outdoor_sounds_type = /datum/looping_sound/weather/wind indoor_sounds_type = /datum/looping_sound/weather/wind/indoors @@ -426,6 +464,7 @@ var/datum/planet/virgo4/planet_virgo4 = null transition_messages = list( "Gentle embers waft down around you like grotesque snow." ) + imminent_transition_message = "Dark smoke is filling the sky, as ash and embers start to rain down." outdoor_sounds_type = /datum/looping_sound/weather/wind indoor_sounds_type = /datum/looping_sound/weather/wind/indoors @@ -447,6 +486,7 @@ var/datum/planet/virgo4/planet_virgo4 = null transition_messages = list( "Smoldering clouds of scorching ash billow down around you!" ) + imminent_transition_message = "Dark smoke is filling the sky, as ash and embers fill the air and wind is picking up too. Ashstorm is coming, get to cover!" // Lets recycle. outdoor_sounds_type = /datum/looping_sound/weather/outside_blizzard indoor_sounds_type = /datum/looping_sound/weather/inside_blizzard @@ -479,6 +519,7 @@ var/datum/planet/virgo4/planet_virgo4 = null transition_messages = list( "Smoldering clouds of scorching ash billow down around you!" ) + imminent_transition_message = "Dark smoke is filling the sky, as ash and embers fill the air and wind is picking up too." // Lets recycle. outdoor_sounds_type = /datum/looping_sound/weather/outside_blizzard indoor_sounds_type = /datum/looping_sound/weather/inside_blizzard @@ -498,6 +539,7 @@ var/datum/planet/virgo4/planet_virgo4 = null transition_messages = list( "Radioactive soot and ash start to float down around you, contaminating whatever they touch." ) + imminent_transition_message = "Sky and clouds are growing sickly green... Radiation storm is approaching, get to cover!" outdoor_sounds_type = /datum/looping_sound/weather/wind indoor_sounds_type = /datum/looping_sound/weather/wind/indoors @@ -534,9 +576,12 @@ var/datum/planet/virgo4/planet_virgo4 = null /datum/weather/virgo4/fallout/temp name = "short-term fallout" + timer_low_bound = 1 + timer_high_bound = 3 transition_chances = list( WEATHER_FALLOUT = 10, WEATHER_RAIN = 50, + WEATHER_FOG = 35, WEATHER_STORM = 20, WEATHER_OVERCAST = 5 ) @@ -555,6 +600,7 @@ var/datum/planet/virgo4/planet_virgo4 = null transition_messages = list( "Suddenly, colorful confetti starts raining from the sky." ) + imminent_transition_message = "A rain is starting... A rain of confetti...?" /turf/unsimulated/wall/planetary/normal/virgo4 name = "deep ocean" diff --git a/code/modules/planet/weather.dm b/code/modules/planet/weather.dm index c354e8bde3..e815f2dd06 100644 --- a/code/modules/planet/weather.dm +++ b/code/modules/planet/weather.dm @@ -1,12 +1,14 @@ /datum/weather_holder var/datum/planet/our_planet = null // Reference to the planet datum that holds this datum. var/datum/weather/current_weather = null // The current weather that is affecting the planet. + var/imminent_weather = null // The current weather that is affecting the planet. var/temperature = T20C // The temperature to set planetary walls to. var/wind_dir = 0 // The direction the wind is blowing. Moving against the wind slows you down, while moving with it speeds you up. var/wind_speed = 0 // How fast or slow a mob can be due to wind acting on them. var/list/allowed_weather_types = list() // Assoc list of weather identifiers, containing the actual weather datum. var/list/roundstart_weather_chances = list() // Assoc list of weather identifiers and their odds of being picked to happen at roundstart. var/next_weather_shift = null // world.time when the weather subsystem will advance the forecast. + var/imminent_weather_shift = null // world.time when weather will shift towards pre-set imminent weather type. var/list/forecast = list() // A list of what the weather will be in the future. This allows it to be pre-determined and planned around. // Holds the weather icon, using vis_contents. Documentation says an /atom/movable is required for placing inside another atom's vis_contents. @@ -62,7 +64,9 @@ log_debug("[our_planet.name]'s weather is now [new_weather], with a temperature of [temperature]°K ([temperature - T0C]°C | [temperature * 1.8 - 459.67]°F).") /datum/weather_holder/process() - if(world.time >= next_weather_shift) + if(imminent_weather && world.time >= imminent_weather_shift) + proceed_to_imminent_weather() + else if(!imminent_weather && world.time >= next_weather_shift) if(!current_weather) // Roundstart (hopefully). initialize_weather() else @@ -91,6 +95,19 @@ change_weather(new_weather) build_forecast() // To fill the forecast to the desired length. +/datum/weather_holder/proc/queue_imminent_weather(weather_to_queue) + if(!(weather_to_queue in allowed_weather_types)) + return + imminent_weather = weather_to_queue + imminent_weather_shift = world.time + 90 SECONDS + +/datum/weather_holder/proc/proceed_to_imminent_weather() + var/new_weather = imminent_weather + imminent_weather = null + forecast.Cut() // Clear the forecast, since we're force-changing the weather. + change_weather(new_weather) + build_forecast() // To fill the forecast. + // Creates a list of future weather shifts, that the planet will undergo at some point in the future. // Determining it ahead of time allows for attentive players to plan further ahead, if they can see the forecast. /datum/weather_holder/proc/build_forecast() @@ -144,7 +161,6 @@ /datum/weather_holder/proc/get_weather_datum(desired_type) return allowed_weather_types[desired_type] - /datum/weather_holder/proc/show_transition_message() if(!current_weather.transition_messages.len) return @@ -175,6 +191,7 @@ var/show_message = FALSE // Is set to TRUE and plays the messsage every [message_delay] var/list/transition_messages = list()// List of messages shown to all outdoor mobs when this weather is transitioned to, for flavor. Not shown if already this weather. + var/imminent_transition_message = null var/observed_message = null // What is shown to a player 'examining' the weather. // Looping sound datums for weather sounds, both inside and outside. 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 0000000000..90a542838a --- /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 0000000000..e9b4752f45 --- /dev/null +++ b/code/modules/player_tips_vr/player_tips_list_vr.dm @@ -0,0 +1,97 @@ +/* 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! Alternatively, 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] Sometimes, players may possess creatures that look like monsters or wild animals (e.g: defanged xenomorphs). These are called 'maint preds' and if you encounter them - you should avoid drawing attention to their existence over the radio! They're here to create unique vore scenarios, not to be treated as antags.", + 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/power/cable.dm b/code/modules/power/cable.dm index c850085bbd..de42f2ba06 100644 --- a/code/modules/power/cable.dm +++ b/code/modules/power/cable.dm @@ -499,6 +499,7 @@ var/list/possible_cable_coil_colours = list( amount = MAXCOIL max_amount = MAXCOIL color = COLOR_RED + gender = NEUTER desc = "A coil of power cable." throwforce = 10 w_class = ITEMSIZE_SMALL @@ -509,6 +510,7 @@ var/list/possible_cable_coil_colours = list( item_state = "coil" attack_verb = list("whipped", "lashed", "disciplined", "flogged") stacktype = /obj/item/stack/cable_coil + singular_name = "length" drop_sound = 'sound/items/drop/accessory.ogg' pickup_sound = 'sound/items/pickup/accessory.ogg' tool_qualities = list(TOOL_CABLE_COIL) diff --git a/code/modules/power/singularity/particle_accelerator/particle_control.dm b/code/modules/power/singularity/particle_accelerator/particle_control.dm index 0ede5d7e7d..b326c455c4 100644 --- a/code/modules/power/singularity/particle_accelerator/particle_control.dm +++ b/code/modules/power/singularity/particle_accelerator/particle_control.dm @@ -88,7 +88,7 @@ if(strength > strength_upper_limit) strength = strength_upper_limit else - message_admins("PA Control Computer increased to [strength] by [key_name(usr, usr.client)](?) in ([x],[y],[z] - JMP)",0,1) + message_admins("PA Control Computer increased to [strength] by [key_name(usr, usr.client)][ADMIN_QUE(usr)] in [ADMIN_COORDJMP(src)]",0,1) log_game("PACCEL([x],[y],[z]) [key_name(usr)] increased to [strength]") investigate_log("increased to [strength] by [usr.key]","singulo") strength_change() @@ -99,7 +99,7 @@ if(strength < 0) strength = 0 else - message_admins("PA Control Computer decreased to [strength] by [key_name(usr, usr.client)](?) in ([x],[y],[z] - JMP)",0,1) + message_admins("PA Control Computer decreased to [strength] by [key_name(usr, usr.client)][ADMIN_QUE(usr)] in [ADMIN_COORDJMP(src)]",0,1) log_game("PACCEL([x],[y],[z]) [key_name(usr)] decreased to [strength]") investigate_log("decreased to [strength] by [usr.key]","singulo") strength_change() @@ -184,7 +184,7 @@ /obj/machinery/particle_accelerator/control_box/proc/toggle_power() active = !active investigate_log("turned [active?"ON":"OFF"] by [usr ? usr.key : "outside forces"]","singulo") - message_admins("PA Control Computer turned [active ?"ON":"OFF"] by [usr ? key_name(usr, usr.client) : "outside forces"](?) in ([x],[y],[z] - JMP)",0,1) + message_admins("PA Control Computer turned [active ?"ON":"OFF"] by [usr ? key_name(usr, usr.client) : "outside forces"][ADMIN_QUE(usr)] in [ADMIN_COORDJMP(src)]",0,1) log_game("PACCEL([x],[y],[z]) [usr ? key_name(usr, usr.client) : "outside forces"] turned [active?"ON":"OFF"].") if(active) update_use_power(USE_POWER_ACTIVE) diff --git a/code/modules/power/singularity/singularity.dm b/code/modules/power/singularity/singularity.dm index 851b8fc30f..6859b0c3c5 100644 --- a/code/modules/power/singularity/singularity.dm +++ b/code/modules/power/singularity/singularity.dm @@ -336,10 +336,10 @@ GLOBAL_LIST_BOILERPLATE(all_singularities, /obj/singularity) var/dir2 = 0 var/dir3 = 0 switch(direction) - if(NORTH||SOUTH) + if(NORTH,SOUTH) dir2 = 4 dir3 = 8 - if(EAST||WEST) + if(EAST,WEST) dir2 = 1 dir3 = 2 var/turf/T2 = T diff --git a/code/modules/projectiles/guns/energy/gunsword_vr.dm b/code/modules/projectiles/guns/energy/gunsword_vr.dm index cd28874afb..66efaabfc0 100644 --- a/code/modules/projectiles/guns/energy/gunsword_vr.dm +++ b/code/modules/projectiles/guns/energy/gunsword_vr.dm @@ -45,12 +45,13 @@ var/active = 0 var/active_force = 30 + var/active_armourpen = 50 var/active_throwforce = 20 var/active_w_class = ITEMSIZE_LARGE var/active_embed_chance = 0 //In the off chance one of these is supposed to embed, you can just tweak this var sharp = FALSE edge = FALSE - armor_penetration = 50 + armor_penetration = 0 flags = NOBLOODY var/lrange = 2 var/lpower = 2 @@ -65,6 +66,7 @@ active = 1 embed_chance = active_embed_chance force = active_force + armor_penetration = active_armourpen throwforce = active_throwforce sharp = TRUE edge = TRUE @@ -84,6 +86,7 @@ active = 0 embed_chance = initial(embed_chance) force = initial(force) + armor_penetration = initial(armor_penetration) throwforce = initial(throwforce) sharp = initial(sharp) edge = initial(edge) diff --git a/code/modules/projectiles/guns/projectile/revolver.dm b/code/modules/projectiles/guns/projectile/revolver.dm index 8e18fd1be1..7429fe21e4 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/projectiles/projectile.dm b/code/modules/projectiles/projectile.dm index 049992dfac..8fee8aca35 100644 --- a/code/modules/projectiles/projectile.dm +++ b/code/modules/projectiles/projectile.dm @@ -325,7 +325,7 @@ return if(isnum(angle)) setAngle(angle) - var/turf/starting = get_turf(src) + starting = get_turf(src) if(isnull(Angle)) //Try to resolve through offsets if there's no angle set. if(isnull(xo) || isnull(yo)) stack_trace("WARNING: Projectile [type] deleted due to being unable to resolve a target after angle was null!") diff --git a/code/modules/projectiles/projectile/energy.dm b/code/modules/projectiles/projectile/energy.dm index 29e082d672..5e5d7f5c4e 100644 --- a/code/modules/projectiles/projectile/energy.dm +++ b/code/modules/projectiles/projectile/energy.dm @@ -131,6 +131,10 @@ combustion = FALSE hud_state = "plasma_blast" +/obj/item/projectile/energy/excavate/weak + damage = 15 + excavation_amount = 100 + /obj/item/projectile/energy/dart name = "dart" icon_state = "toxin" diff --git a/code/modules/reagents/machinery/injector_maker.dm b/code/modules/reagents/machinery/injector_maker.dm new file mode 100644 index 0000000000..56a844ba29 --- /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("small 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/food_drinks.dm b/code/modules/reagents/reagents/food_drinks.dm index 2b16a45f46..d26773ecb0 100644 --- a/code/modules/reagents/reagents/food_drinks.dm +++ b/code/modules/reagents/reagents/food_drinks.dm @@ -4515,8 +4515,6 @@ nutriment_factor = 40 //very filling color = "#d169b2" -//ADDITIONS BELOW THIS LINE MADE ON 04/03/2021 - /datum/reagent/drink/soda/kompot name = "Kompot" id = "kompot" diff --git a/code/modules/reagents/reagents/medicine.dm b/code/modules/reagents/reagents/medicine.dm index 69ccc6dcde..82ed17cada 100644 --- a/code/modules/reagents/reagents/medicine.dm +++ b/code/modules/reagents/reagents/medicine.dm @@ -1431,7 +1431,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 bcbf09055d..a81d050cae 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/research/circuitprinter.dm b/code/modules/research/circuitprinter.dm index 9cf8d4d338..2c370300da 100644 --- a/code/modules/research/circuitprinter.dm +++ b/code/modules/research/circuitprinter.dm @@ -158,9 +158,9 @@ using metal and glass, it uses glass and reagents (usually sulphuric acid). materials[S.material.name] += amnt S.use(1) count++ - to_chat(user, "You insert [count] [sname] into the fabricator.") + to_chat(user, "You insert [count] [sname] into the fabricator.") else - to_chat(user, "The fabricator cannot hold more [sname].") + to_chat(user, "The fabricator cannot hold more [sname].") busy = 0 updateUsrDialog() diff --git a/code/modules/research/designs/firework_stars.dm b/code/modules/research/designs/firework_stars.dm index 6fb4e6f70f..b365367451 100644 --- a/code/modules/research/designs/firework_stars.dm +++ b/code/modules/research/designs/firework_stars.dm @@ -39,6 +39,15 @@ build_path = /obj/item/weapon/firework_star/weather/overcast sort_string = "IFABB" +/datum/design/item/firework_star/weather_fog + name = "weather - FOG" + desc = "A firework star, designed for use with launcher. Modifies current planetary weather effects. This one creates fog." + id = "fireworkfog" + req_tech = list(TECH_MATERIAL = 4, TECH_ENGINEERING = 3) + materials = list(MAT_PLASTIC = 2000, MAT_GLASS = 2000, MAT_SILVER = 2000) + build_path = /obj/item/weapon/firework_star/weather/fog + sort_string = "IFABC" + /datum/design/item/firework_star/weather_rain name = "weather - RAIN" desc = "A firework star, designed for use with launcher. Modifies current planetary weather effects. This one creates rain." @@ -46,7 +55,7 @@ req_tech = list(TECH_MATERIAL = 5, TECH_ENGINEERING = 4) materials = list(MAT_PLASTIC = 2000, MAT_GLASS = 2000, MAT_SILVER = 4000) build_path = /obj/item/weapon/firework_star/weather/rain - sort_string = "IFABC" + sort_string = "IFABD" /datum/design/item/firework_star/weather_storm name = "weather - STORM" @@ -55,7 +64,7 @@ req_tech = list(TECH_MATERIAL = 6, TECH_ENGINEERING = 5) materials = list(MAT_PLASTIC = 2000, MAT_GLASS = 2000, MAT_SILVER = 3000, MAT_GOLD = 1000) build_path = /obj/item/weapon/firework_star/weather/storm - sort_string = "IFABD" + sort_string = "IFABE" /datum/design/item/firework_star/weather_light_snow name = "weather - LIGHT SNOW" @@ -64,7 +73,7 @@ req_tech = list(TECH_MATERIAL = 5, TECH_ENGINEERING = 4) materials = list(MAT_PLASTIC = 2000, MAT_GLASS = 2000, MAT_SILVER = 2000, MAT_LEAD = 2000) build_path = /obj/item/weapon/firework_star/weather/light_snow - sort_string = "IFABE" + sort_string = "IFABF" /datum/design/item/firework_star/weather_snow name = "weather - MODERATE SNOW" @@ -73,7 +82,7 @@ req_tech = list(TECH_MATERIAL = 5, TECH_ENGINEERING = 4) materials = list(MAT_PLASTIC = 2000, MAT_GLASS = 2000, MAT_SILVER = 3000, MAT_LEAD = 2000) build_path = /obj/item/weapon/firework_star/weather/snow - sort_string = "IFABF" + sort_string = "IFABG" /datum/design/item/firework_star/weather_blizzard name = "weather - HEAVY SNOW" @@ -82,7 +91,7 @@ req_tech = list(TECH_MATERIAL = 6, TECH_ENGINEERING = 5) materials = list(MAT_PLASTIC = 2000, MAT_GLASS = 2000, MAT_SILVER = 3000, MAT_LEAD = 3000) build_path = /obj/item/weapon/firework_star/weather/blizzard - sort_string = "IFABG" + sort_string = "IFABH" /datum/design/item/firework_star/weather_hail name = "weather - HAIL" @@ -91,15 +100,6 @@ req_tech = list(TECH_MATERIAL = 6, TECH_ENGINEERING = 5, TECH_ILLEGAL = 2) materials = list(MAT_PLASTIC = 2000, MAT_GLASS = 2000, MAT_SILVER = 3000, MAT_LEAD = 3000, MAT_PLASTEEL = 4000) build_path = /obj/item/weapon/firework_star/weather/hail - sort_string = "IFABH" - -/datum/design/item/firework_star/weather_fallout - name = "weather - NUCLEAR" - desc = "A firework star, designed for use with launcher. Modifies current planetary weather effects. This one creates a heavy cloud of nuclear fallout. DANGEROUS." - id = "fireworkfallout" - req_tech = list(TECH_MATERIAL = 8, TECH_ENGINEERING = 6, TECH_ILLEGAL = 7) - materials = list(MAT_PLASTIC = 2000, MAT_GLASS = 2000, MAT_URANIUM = 12000) - build_path = /obj/item/weapon/firework_star/weather/fallout sort_string = "IFABI" /datum/design/item/firework_star/weather_confetti @@ -110,3 +110,12 @@ materials = list(MAT_PLASTIC = 10000, MAT_GLASS = 10000) build_path = /obj/item/weapon/firework_star/weather/confetti sort_string = "IFABJ" + +/datum/design/item/firework_star/weather_fallout + name = "weather - NUCLEAR" + desc = "A firework star, designed for use with launcher. Modifies current planetary weather effects. This one creates a heavy cloud of nuclear fallout. DANGEROUS." + id = "fireworkfallout" + req_tech = list(TECH_MATERIAL = 8, TECH_ENGINEERING = 6, TECH_ILLEGAL = 7) + materials = list(MAT_PLASTIC = 2000, MAT_GLASS = 2000, MAT_URANIUM = 12000) + build_path = /obj/item/weapon/firework_star/weather/fallout + sort_string = "IFABK" diff --git a/code/modules/research/mechfab_designs_vr.dm b/code/modules/research/mechfab_designs_vr.dm index b8a796b909..0c2668e9ae 100644 --- a/code/modules/research/mechfab_designs_vr.dm +++ b/code/modules/research/mechfab_designs_vr.dm @@ -12,4 +12,11 @@ id = "rig_gun_sizegun" req_tech = list(TECH_COMBAT = 3, TECH_MATERIAL = 3, TECH_POWER = 2) materials = list(MAT_STEEL = 3000, MAT_GLASS = 2000, MAT_URANIUM = 2000) - build_path = /obj/item/rig_module/mounted/sizegun \ No newline at end of file + build_path = /obj/item/rig_module/mounted/sizegun + +/datum/design/item/mecha/weapon/laser_gamma + name = "GA-X \"Render\" Experimental Gamma Laser" + id = "mech_laser_gamma" + req_tech = list(TECH_MATERIAL = 4, TECH_COMBAT = 4, TECH_PHORON = 4, TECH_POWER = 4, TECH_ILLEGAL = 3) + materials = list(MAT_STEEL = 6000, MAT_GLASS = 4000, MAT_PHORON = 2500, MAT_SILVER = 1000, MAT_GOLD = 500, MAT_URANIUM = 3000) + build_path = /obj/item/mecha_parts/mecha_equipment/weapon/energy/laser/gamma diff --git a/code/modules/research/message_server.dm b/code/modules/research/message_server.dm index e77708d51a..4a53dcb9d9 100644 --- a/code/modules/research/message_server.dm +++ b/code/modules/research/message_server.dm @@ -143,7 +143,7 @@ var/global/list/obj/machinery/message_server/message_servers = list() /obj/machinery/message_server/attack_hand(user as mob) // to_chat(user, "There seem to be some parts missing from this server. They should arrive on the station in a few days, give or take a few CentCom delays.") - to_chat(user, "You toggle PDA message passing from [active ? "On" : "Off"] to [active ? "Off" : "On"]") + to_chat(user, "You toggle PDA message passing from [active ? "On" : "Off"] to [active ? "Off" : "On"].") active = !active update_icon() @@ -155,7 +155,7 @@ var/global/list/obj/machinery/message_server/message_servers = list() spamfilter_limit += round(MESSAGE_SERVER_DEFAULT_SPAM_LIMIT / 2) user.drop_item() qdel(O) - to_chat(user, "You install additional memory and processors into message server. Its filtering capabilities been enhanced.") + to_chat(user, "You install additional memory and processors into message server. Its filtering capabilities been enhanced.") else ..(O, user) diff --git a/code/modules/research/protolathe.dm b/code/modules/research/protolathe.dm index 7a5b17dca4..3ff0237627 100644 --- a/code/modules/research/protolathe.dm +++ b/code/modules/research/protolathe.dm @@ -168,9 +168,9 @@ materials[S.material.name] += amnt S.use(1) count++ - to_chat(user, "You insert [count] [sname] into the fabricator.") + to_chat(user, "You insert [count] [sname] into the fabricator.") else - to_chat(user, "The fabricator cannot hold more [sname].") + to_chat(user, "The fabricator cannot hold more [sname].") busy = 0 var/stacktype = S.type diff --git a/code/modules/research/rdconsole.dm b/code/modules/research/rdconsole.dm index 3d58a40b16..9c517e4b08 100755 --- a/code/modules/research/rdconsole.dm +++ b/code/modules/research/rdconsole.dm @@ -119,7 +119,7 @@ won't update every console in existence) but it's more of a hassle to do. Also, //Loading a disk into it. if(istype(D, /obj/item/weapon/disk)) if(t_disk || d_disk) - to_chat(user, "A disk is already loaded into the machine.") + to_chat(user, "A disk is already loaded into the machine.") return if(istype(D, /obj/item/weapon/disk/tech_disk)) diff --git a/code/modules/shieldgen/directional_shield.dm b/code/modules/shieldgen/directional_shield.dm index 209dc9ca9a..b298e028a7 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/surgery/encased.dm b/code/modules/surgery/encased.dm index c172b9bc44..743363fa44 100644 --- a/code/modules/surgery/encased.dm +++ b/code/modules/surgery/encased.dm @@ -42,8 +42,8 @@ return var/obj/item/organ/external/affected = target.get_organ(target_zone) - user.visible_message("[user] begins to cut through [target]'s [affected.encased] with \the [tool].", \ - "You begin to cut through [target]'s [affected.encased] with \the [tool].") + user.visible_message("[user] begins to cut through [target]'s [affected.encased] with \the [tool].", \ + "You begin to cut through [target]'s [affected.encased] with \the [tool].") target.custom_pain("Something hurts horribly in your [affected.name]!", 60) ..() @@ -93,8 +93,8 @@ return var/obj/item/organ/external/affected = target.get_organ(target_zone) - var/msg = "[user] starts to force open the [affected.encased] in [target]'s [affected.name] with \the [tool]." - var/self_msg = "You start to force open the [affected.encased] in [target]'s [affected.name] with \the [tool]." + var/msg = "[user] starts to force open the [affected.encased] in [target]'s [affected.name] with \the [tool]." + var/self_msg = "You start to force open the [affected.encased] in [target]'s [affected.name] with \the [tool]." user.visible_message(msg, self_msg) target.custom_pain("Something hurts horribly in your [affected.name]!", 40) ..() @@ -147,8 +147,8 @@ return var/obj/item/organ/external/affected = target.get_organ(target_zone) - var/msg = "[user] starts bending [target]'s [affected.encased] back into place with \the [tool]." - var/self_msg = "You start bending [target]'s [affected.encased] back into place with \the [tool]." + var/msg = "[user] starts bending [target]'s [affected.encased] back into place with \the [tool]." + var/self_msg = "You start bending [target]'s [affected.encased] back into place with \the [tool]." user.visible_message(msg, self_msg) target.custom_pain("Something hurts horribly in your [affected.name]!", 100) ..() @@ -206,8 +206,8 @@ return var/obj/item/organ/external/affected = target.get_organ(target_zone) - var/msg = "[user] starts applying \the [tool] to [target]'s [affected.encased]." - var/self_msg = "You start applying \the [tool] to [target]'s [affected.encased]." + var/msg = "[user] starts applying \the [tool] to [target]'s [affected.encased]." + var/self_msg = "You start applying \the [tool] to [target]'s [affected.encased]." user.visible_message(msg, self_msg) target.custom_pain("Something hurts horribly in your [affected.name]!", 100) ..() @@ -249,8 +249,8 @@ return var/obj/item/organ/external/affected = target.get_organ(target_zone) - user.visible_message("[user] begins to open [target]'s [affected.encased] with \the [tool].", \ - "You begin to open [target]'s [affected.encased] with \the [tool].") + user.visible_message("[user] begins to open [target]'s [affected.encased] with \the [tool].", \ + "You begin to open [target]'s [affected.encased] with \the [tool].") target.custom_pain("Something hurts horribly in your [affected.name]!", 60) ..() @@ -299,8 +299,8 @@ return var/obj/item/organ/external/affected = target.get_organ(target_zone) - var/msg = "[user] starts sealing \the [target]'s [affected.encased] with \the [tool]." - var/self_msg = "You start sealing \the [target]'s [affected.encased] with \the [tool]." + var/msg = "[user] starts sealing \the [target]'s [affected.encased] with \the [tool]." + var/self_msg = "You start sealing \the [target]'s [affected.encased] with \the [tool]." user.visible_message(msg, self_msg) target.custom_pain("Something hurts horribly in your [affected.name]!", 100) ..() diff --git a/code/modules/surgery/face.dm b/code/modules/surgery/face.dm index 9ecef80252..3059b02176 100644 --- a/code/modules/surgery/face.dm +++ b/code/modules/surgery/face.dm @@ -38,8 +38,8 @@ return ..() && target_zone == O_MOUTH && target.op_stage.face == 0 /datum/surgery_step/generic/cut_face/begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool) - user.visible_message("[user] starts to cut open [target]'s face and neck with \the [tool].", \ - "You start to cut open [target]'s face and neck with \the [tool].") + user.visible_message("[user] starts to cut open [target]'s face and neck with \the [tool].", \ + "You start to cut open [target]'s face and neck with \the [tool].") ..() /datum/surgery_step/generic/cut_face/end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool) @@ -73,8 +73,8 @@ return ..() && target.op_stage.face == 1 /datum/surgery_step/face/mend_vocal/begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool) - user.visible_message("[user] starts mending [target]'s vocal cords with \the [tool].", \ - "You start mending [target]'s vocal cords with \the [tool].") + user.visible_message("[user] starts mending [target]'s vocal cords with \the [tool].", \ + "You start mending [target]'s vocal cords with \the [tool].") ..() /datum/surgery_step/face/mend_vocal/end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool) @@ -107,8 +107,8 @@ return ..() && target.op_stage.face == 2 /datum/surgery_step/face/fix_face/begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool) - user.visible_message("[user] starts pulling the skin on [target]'s face back in place with \the [tool].", \ - "You start pulling the skin on [target]'s face back in place with \the [tool].") + user.visible_message("[user] starts pulling the skin on [target]'s face back in place with \the [tool].", \ + "You start pulling the skin on [target]'s face back in place with \the [tool].") ..() /datum/surgery_step/face/fix_face/end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool) diff --git a/code/modules/surgery/generic.dm b/code/modules/surgery/generic.dm index 8f25b42328..5410b9e63a 100644 --- a/code/modules/surgery/generic.dm +++ b/code/modules/surgery/generic.dm @@ -47,8 +47,8 @@ /datum/surgery_step/generic/cut_open/begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool) var/obj/item/organ/external/affected = target.get_organ(target_zone) - user.visible_message("[user] starts the incision on [target]'s [affected.name] with \the [tool].", \ - "You start the incision on [target]'s [affected.name] with \the [tool].") + user.visible_message("[user] starts the incision on [target]'s [affected.name] with \the [tool].", \ + "You start the incision on [target]'s [affected.name] with \the [tool].") target.custom_pain("You feel a horrible pain as if from a sharp knife in your [affected.name]!", 40) ..() @@ -94,8 +94,8 @@ /datum/surgery_step/generic/cut_with_laser/begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool) var/obj/item/organ/external/affected = target.get_organ(target_zone) - user.visible_message("[user] starts the bloodless incision on [target]'s [affected.name] with \the [tool].", \ - "You start the bloodless incision on [target]'s [affected.name] with \the [tool].") + user.visible_message("[user] starts the bloodless incision on [target]'s [affected.name] with \the [tool].", \ + "You start the bloodless incision on [target]'s [affected.name] with \the [tool].") target.custom_pain("You feel a horrible, searing pain in your [affected.name]!", 50) ..() @@ -152,8 +152,8 @@ /datum/surgery_step/generic/incision_manager/begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool) var/obj/item/organ/external/affected = target.get_organ(target_zone) - user.visible_message("[user] starts to construct a prepared incision on and within [target]'s [affected.name] with \the [tool].", \ - "You start to construct a prepared incision on and within [target]'s [affected.name] with \the [tool].") + user.visible_message("[user] starts to construct a prepared incision on and within [target]'s [affected.name] with \the [tool].", \ + "You start to construct a prepared incision on and within [target]'s [affected.name] with \the [tool].") target.custom_pain("You feel a horrible, searing pain in your [affected.name] as it is pushed apart!", 50) ..() @@ -199,8 +199,8 @@ /datum/surgery_step/generic/clamp_bleeders/begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool) var/obj/item/organ/external/affected = target.get_organ(target_zone) - user.visible_message("[user] starts clamping bleeders in [target]'s [affected.name] with \the [tool].", \ - "You start clamping bleeders in [target]'s [affected.name] with \the [tool].") + user.visible_message("[user] starts clamping bleeders in [target]'s [affected.name] with \the [tool].", \ + "You start clamping bleeders in [target]'s [affected.name] with \the [tool].") target.custom_pain("The pain in your [affected.name] is maddening!", 40) ..() @@ -248,7 +248,7 @@ if (target_zone == BP_GROIN) msg = "[user] starts to pry open the incision and rearrange the organs in [target]'s lower abdomen with \the [tool]." self_msg = "You start to pry open the incision and rearrange the organs in [target]'s lower abdomen with \the [tool]." - user.visible_message(msg, self_msg) + user.visible_message("[msg]", "[self_msg]") target.custom_pain("It feels like the skin on your [affected.name] is on fire!", 40) ..() @@ -301,8 +301,8 @@ /datum/surgery_step/generic/cauterize/begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool) var/obj/item/organ/external/affected = target.get_organ(target_zone) - user.visible_message("[user] is beginning to cauterize the incision on [target]'s [affected.name] with \the [tool]." , \ - "You are beginning to cauterize the incision on [target]'s [affected.name] with \the [tool].") + user.visible_message("[user] is beginning to cauterize the incision on [target]'s [affected.name] with \the [tool]." , \ + "You are beginning to cauterize the incision on [target]'s [affected.name] with \the [tool].") target.custom_pain("Your [affected.name] is being burned!", 40) ..() @@ -347,8 +347,8 @@ /datum/surgery_step/generic/amputate/begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool) var/obj/item/organ/external/affected = target.get_organ(target_zone) - user.visible_message("[user] is beginning to amputate [target]'s [affected.name] with \the [tool]." , \ - "You are beginning to cut through [target]'s [affected.amputation_point] with \the [tool].") + user.visible_message("[user] is beginning to amputate [target]'s [affected.name] with \the [tool]." , \ + "You are beginning to cut through [target]'s [affected.amputation_point] with \the [tool].") target.custom_pain("Your [affected.amputation_point] is being ripped apart!", 100) ..() diff --git a/code/modules/surgery/implant.dm b/code/modules/surgery/implant.dm index c3c2496cfd..991aa4cecc 100644 --- a/code/modules/surgery/implant.dm +++ b/code/modules/surgery/implant.dm @@ -64,8 +64,8 @@ /datum/surgery_step/cavity/make_space/begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool) var/obj/item/organ/external/affected = target.get_organ(target_zone) - user.visible_message("[user] starts making some space inside [target]'s [get_cavity(affected)] cavity with \the [tool].", \ - "You start making some space inside [target]'s [get_cavity(affected)] cavity with \the [tool]." ) + user.visible_message("[user] starts making some space inside [target]'s [get_cavity(affected)] cavity with \the [tool].", \ + "You start making some space inside [target]'s [get_cavity(affected)] cavity with \the [tool]." ) target.custom_pain("The pain in your chest is living hell!",1) affected.cavity = 1 ..() @@ -99,8 +99,8 @@ /datum/surgery_step/cavity/close_space/begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool) var/obj/item/organ/external/affected = target.get_organ(target_zone) - user.visible_message("[user] starts mending [target]'s [get_cavity(affected)] cavity wall with \the [tool].", \ - "You start mending [target]'s [get_cavity(affected)] cavity wall with \the [tool]." ) + user.visible_message("[user] starts mending [target]'s [get_cavity(affected)] cavity wall with \the [tool].", \ + "You start mending [target]'s [get_cavity(affected)] cavity wall with \the [tool]." ) target.custom_pain("The pain in your chest is living hell!",1) affected.cavity = 0 ..() diff --git a/code/modules/surgery/limb_reattach.dm b/code/modules/surgery/limb_reattach.dm index 56c0ccccc1..a898d4447d 100644 --- a/code/modules/surgery/limb_reattach.dm +++ b/code/modules/surgery/limb_reattach.dm @@ -52,8 +52,8 @@ /datum/surgery_step/limb/attach/begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool) var/obj/item/organ/external/E = tool - user.visible_message("[user] starts attaching [E.name] to [target]'s [E.amputation_point].", \ - "You start attaching [E.name] to [target]'s [E.amputation_point].") + user.visible_message("[user] starts attaching [E.name] to [target]'s [E.amputation_point].", \ + "You start attaching [E.name] to [target]'s [E.amputation_point].") /datum/surgery_step/limb/attach/end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool) var/obj/item/organ/external/E = tool @@ -100,8 +100,8 @@ /datum/surgery_step/limb/connect/begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool) var/obj/item/organ/external/E = target.get_organ(target_zone) - user.visible_message("[user] starts connecting tendons and muscles in [target]'s [E.amputation_point] with [tool].", \ - "You start connecting tendons and muscle in [target]'s [E.amputation_point].") + user.visible_message("[user] starts connecting tendons and muscles in [target]'s [E.amputation_point] with [tool].", \ + "You start connecting tendons and muscle in [target]'s [E.amputation_point].") /datum/surgery_step/limb/connect/end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool) var/obj/item/organ/external/E = target.get_organ(target_zone) @@ -138,8 +138,8 @@ return isnull(target.get_organ(target_zone)) /datum/surgery_step/limb/mechanize/begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool) - user.visible_message("[user] starts attaching \the [tool] to [target].", \ - "You start attaching \the [tool] to [target].") + user.visible_message("[user] starts attaching \the [tool] to [target].", \ + "You start attaching \the [tool] to [target].") /datum/surgery_step/limb/mechanize/end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool) var/obj/item/robot_parts/L = tool diff --git a/code/modules/surgery/neck.dm b/code/modules/surgery/neck.dm index 5b59075612..3fc4e00052 100644 --- a/code/modules/surgery/neck.dm +++ b/code/modules/surgery/neck.dm @@ -38,8 +38,8 @@ return ..() && target_zone == BP_HEAD && target.op_stage.brainstem == 0 /datum/surgery_step/brainstem/mend_vessels/begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool) - user.visible_message("[user] starts to mend the blood vessels on [target]'s brainstem with \the [tool].", \ - "You start to mend the blood vessels on [target]'s brainstem with \the [tool].") + user.visible_message("[user] starts to mend the blood vessels on [target]'s brainstem with \the [tool].", \ + "You start to mend the blood vessels on [target]'s brainstem with \the [tool].") ..() /datum/surgery_step/brainstem/mend_vessels/end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool) @@ -76,8 +76,8 @@ return ..() && target_zone == BP_HEAD && target.op_stage.brainstem == 1 /datum/surgery_step/brainstem/drill_vertebrae/begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool) - user.visible_message("[user] starts to drill around [target]'s brainstem with \the [tool].", \ - "You start to drill around [target]'s brainstem with \the [tool].") + user.visible_message("[user] starts to drill around [target]'s brainstem with \the [tool].", \ + "You start to drill around [target]'s brainstem with \the [tool].") ..() /datum/surgery_step/brainstem/drill_vertebrae/end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool) @@ -118,8 +118,8 @@ return ..() && target_zone == BP_HEAD && target.op_stage.brainstem == 2 /datum/surgery_step/brainstem/clean_chips/begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool) - user.visible_message("[user] starts to pick around [target]'s brainstem for bone chips with \the [tool].", \ - "You start to pick around [target]'s brainstem for bone chips with \the [tool].") + user.visible_message("[user] starts to pick around [target]'s brainstem for bone chips with \the [tool].", \ + "You start to pick around [target]'s brainstem for bone chips with \the [tool].") ..() /datum/surgery_step/brainstem/clean_chips/end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool) @@ -158,8 +158,8 @@ return ..() && target_zone == BP_HEAD && target.op_stage.brainstem == 3 /datum/surgery_step/brainstem/mend_cord/begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool) - user.visible_message("[user] starts to fuse [target]'s spinal cord with \the [tool].", \ - "You start to fuse [target]'s spinal cord with \the [tool].") + user.visible_message("[user] starts to fuse [target]'s spinal cord with \the [tool].", \ + "You start to fuse [target]'s spinal cord with \the [tool].") ..() /datum/surgery_step/brainstem/mend_cord/end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool) @@ -198,8 +198,8 @@ return ..() && target_zone == BP_HEAD && target.op_stage.brainstem == 4 /datum/surgery_step/brainstem/mend_vertebrae/begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool) - user.visible_message("[user] starts to mend [target]'s opened vertebrae with \the [tool].", \ - "You start to mend [target]'s opened vertebrae with \the [tool].") + user.visible_message("[user] starts to mend [target]'s opened vertebrae with \the [tool].", \ + "You start to mend [target]'s opened vertebrae with \the [tool].") ..() /datum/surgery_step/brainstem/mend_vertebrae/end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool) @@ -238,8 +238,8 @@ return ..() && target_zone == BP_HEAD && target.op_stage.brainstem == 5 /datum/surgery_step/brainstem/realign_tissue/begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool) - user.visible_message("[user] starts to realign the tissues in [target]'s skull with \the [tool].", \ - "You start to realign the tissues in [target]'s skull with \the [tool].") + user.visible_message("[user] starts to realign the tissues in [target]'s skull with \the [tool].", \ + "You start to realign the tissues in [target]'s skull with \the [tool].") ..() /datum/surgery_step/brainstem/realign_tissue/end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool) diff --git a/code/modules/surgery/organs_internal.dm b/code/modules/surgery/organs_internal.dm index e92010f8d3..dfbf624cf5 100644 --- a/code/modules/surgery/organs_internal.dm +++ b/code/modules/surgery/organs_internal.dm @@ -56,8 +56,8 @@ for(var/obj/item/organ/I in affected.internal_organs) if(I && (I.damage > 0 || I.status == ORGAN_DEAD)) if(!(I.robotic >= ORGAN_ROBOT)) - user.visible_message("[user] starts treating damage to [target]'s [I.name] with [tool_name].", \ - "You start treating damage to [target]'s [I.name] with [tool_name]." ) + user.visible_message("[user] starts treating damage to [target]'s [I.name] with [tool_name].", \ + "You start treating damage to [target]'s [I.name] with [tool_name]." ) target.custom_pain("The pain in your [affected.name] is living hell!", 100) ..() @@ -228,8 +228,8 @@ /datum/surgery_step/internal/detatch_organ/begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool) var/obj/item/organ/external/affected = target.get_organ(target_zone) - user.visible_message("[user] starts to separate [target]'s [target.op_stage.current_organ] with \the [tool].", \ - "You start to separate [target]'s [target.op_stage.current_organ] with \the [tool]." ) + user.visible_message("[user] starts to separate [target]'s [target.op_stage.current_organ] with \the [tool].", \ + "You start to separate [target]'s [target.op_stage.current_organ] with \the [tool]." ) target.custom_pain("The pain in your [affected.name] is living hell!", 100) ..() @@ -293,13 +293,13 @@ var/organ_to_remove = tgui_input_list(user, "Which organ do you want to remove?", "Organ Choice", removable_organs) if(!organ_to_remove) //They chose cancel! to_chat(user, "You decide against preparing any organs for removal.") - user.visible_message("[user] starts pulling \the [tool] from [target]'s [affected]", \ - "You start pulling \the [tool] from [target]'s [affected].") + user.visible_message("[user] starts pulling \the [tool] from [target]'s [affected].", \ + "You start pulling \the [tool] from [target]'s [affected].") target.op_stage.current_organ = organ_to_remove - user.visible_message("[user] starts removing [target]'s [target.op_stage.current_organ] with \the [tool].", \ - "You start removing [target]'s [target.op_stage.current_organ] with \the [tool].") + user.visible_message("[user] starts removing [target]'s [target.op_stage.current_organ] with \the [tool].", \ + "You start removing [target]'s [target.op_stage.current_organ] with \the [tool].") target.custom_pain("Someone's ripping out your [target.op_stage.current_organ]!", 100) ..() @@ -382,8 +382,8 @@ /datum/surgery_step/internal/replace_organ/begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool) var/obj/item/organ/external/affected = target.get_organ(target_zone) - user.visible_message("[user] starts transplanting \the [tool] into [target]'s [affected.name].", \ - "You start transplanting \the [tool] into [target]'s [affected.name].") + user.visible_message("[user] starts transplanting \the [tool] into [target]'s [affected.name].", \ + "You start transplanting \the [tool] into [target]'s [affected.name].") target.custom_pain("Someone's rooting around in your [affected.name]!", 100) ..() @@ -439,8 +439,8 @@ return ..() /datum/surgery_step/internal/attach_organ/begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool) - user.visible_message("[user] begins reattaching [target]'s [target.op_stage.current_organ] with \the [tool].", \ - "You start reattaching [target]'s [target.op_stage.current_organ] with \the [tool].") + user.visible_message("[user] begins reattaching [target]'s [target.op_stage.current_organ] with \the [tool].", \ + "You start reattaching [target]'s [target.op_stage.current_organ] with \the [tool].") target.custom_pain("Someone's digging needles into your [target.op_stage.current_organ]!", 100) ..() diff --git a/code/modules/surgery/other.dm b/code/modules/surgery/other.dm index c0c081e05b..5b15d49d1a 100644 --- a/code/modules/surgery/other.dm +++ b/code/modules/surgery/other.dm @@ -37,8 +37,8 @@ /datum/surgery_step/fix_vein/begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool) var/obj/item/organ/external/affected = target.get_organ(target_zone) - user.visible_message("[user] starts patching the damaged vein in [target]'s [affected.name] with \the [tool]." , \ - "You start patching the damaged vein in [target]'s [affected.name] with \the [tool].") + user.visible_message("[user] starts patching the damaged vein in [target]'s [affected.name] with \the [tool]." , \ + "You start patching the damaged vein in [target]'s [affected.name] with \the [tool].") target.custom_pain("The pain in [affected.name] is unbearable!", 100) ..() @@ -91,8 +91,8 @@ /datum/surgery_step/fix_dead_tissue/begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool) var/obj/item/organ/external/affected = target.get_organ(target_zone) - user.visible_message("[user] starts cutting away necrotic tissue in [target]'s [affected.name] with \the [tool]." , \ - "You start cutting away necrotic tissue in [target]'s [affected.name] with \the [tool].") + user.visible_message("[user] starts cutting away necrotic tissue in [target]'s [affected.name] with \the [tool]." , \ + "You start cutting away necrotic tissue in [target]'s [affected.name] with \the [tool].") target.custom_pain("The pain in [affected.name] is unbearable!", 100) ..() @@ -149,8 +149,8 @@ /datum/surgery_step/treat_necrosis/begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool) var/obj/item/organ/external/affected = target.get_organ(target_zone) - user.visible_message("[user] starts applying medication to the affected tissue in [target]'s [affected.name] with \the [tool]." , \ - "You start applying medication to the affected tissue in [target]'s [affected.name] with \the [tool].") + user.visible_message("[user] starts applying medication to the affected tissue in [target]'s [affected.name] with \the [tool]." , \ + "You start applying medication to the affected tissue in [target]'s [affected.name] with \the [tool].") target.custom_pain("Something in your [affected.name] is causing you a lot of pain!", 50) ..() @@ -219,8 +219,8 @@ rig = target.belt if(!istype(rig)) return - user.visible_message("[user] starts cutting through the support systems of \the [rig] on [target] with \the [tool]." , \ - "You start cutting through the support systems of \the [rig] on [target] with \the [tool].") + user.visible_message("[user] starts cutting through the support systems of \the [rig] on [target] with \the [tool]." , \ + "You start cutting through the support systems of \the [rig] on [target] with \the [tool].") ..() /datum/surgery_step/hardsuit/end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool) diff --git a/code/modules/surgery/robotics.dm b/code/modules/surgery/robotics.dm index f28ccfaf7f..9e187d087d 100644 --- a/code/modules/surgery/robotics.dm +++ b/code/modules/surgery/robotics.dm @@ -50,8 +50,8 @@ /datum/surgery_step/robotics/unscrew_hatch/begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool) var/obj/item/organ/external/affected = target.get_organ(target_zone) - user.visible_message("[user] starts to unscrew the maintenance hatch on [target]'s [affected.name] with \the [tool].", \ - "You start to unscrew the maintenance hatch on [target]'s [affected.name] with \the [tool].") + user.visible_message("[user] starts to unscrew the maintenance hatch on [target]'s [affected.name] with \the [tool].", \ + "You start to unscrew the maintenance hatch on [target]'s [affected.name] with \the [tool].") ..() /datum/surgery_step/robotics/unscrew_hatch/end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool) @@ -88,8 +88,8 @@ /datum/surgery_step/robotics/open_hatch/begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool) var/obj/item/organ/external/affected = target.get_organ(target_zone) - user.visible_message("[user] starts to pry open the maintenance hatch on [target]'s [affected.name] with \the [tool].", - "You start to pry open the maintenance hatch on [target]'s [affected.name] with \the [tool].") + user.visible_message("[user] starts to pry open the maintenance hatch on [target]'s [affected.name] with \the [tool].", + "You start to pry open the maintenance hatch on [target]'s [affected.name] with \the [tool].") ..() /datum/surgery_step/robotics/open_hatch/end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool) @@ -126,8 +126,8 @@ /datum/surgery_step/robotics/close_hatch/begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool) var/obj/item/organ/external/affected = target.get_organ(target_zone) - user.visible_message("[user] begins to close and secure the hatch on [target]'s [affected.name] with \the [tool]." , \ - "You begin to close and secure the hatch on [target]'s [affected.name] with \the [tool].") + user.visible_message("[user] begins to close and secure the hatch on [target]'s [affected.name] with \the [tool]." , \ + "You begin to close and secure the hatch on [target]'s [affected.name] with \the [tool].") ..() /datum/surgery_step/robotics/close_hatch/end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool) @@ -167,8 +167,8 @@ /datum/surgery_step/robotics/repair_brute/begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool) var/obj/item/organ/external/affected = target.get_organ(target_zone) - user.visible_message("[user] begins to patch damage to [target]'s [affected.name]'s support structure with \the [tool]." , \ - "You begin to patch damage to [target]'s [affected.name]'s support structure with \the [tool].") + user.visible_message("[user] begins to patch damage to [target]'s [affected.name]'s support structure with \the [tool]." , \ + "You begin to patch damage to [target]'s [affected.name]'s support structure with \the [tool].") ..() /datum/surgery_step/robotics/repair_brute/end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool) @@ -216,8 +216,8 @@ /datum/surgery_step/robotics/repair_burn/begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool) var/obj/item/organ/external/affected = target.get_organ(target_zone) - user.visible_message("[user] begins to splice new cabling into [target]'s [affected.name]." , \ - "You begin to splice new cabling into [target]'s [affected.name].") + user.visible_message("[user] begins to splice new cabling into [target]'s [affected.name]." , \ + "You begin to splice new cabling into [target]'s [affected.name].") ..() /datum/surgery_step/robotics/repair_burn/end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool) @@ -269,8 +269,8 @@ for(var/obj/item/organ/I in affected.internal_organs) if(I && I.damage > 0) if(I.robotic >= ORGAN_ROBOT) - user.visible_message("[user] starts mending the damage to [target]'s [I.name]'s mechanisms.", \ - "You start mending the damage to [target]'s [I.name]'s mechanisms." ) + user.visible_message("[user] starts mending the damage to [target]'s [I.name]'s mechanisms.", \ + "You start mending the damage to [target]'s [I.name]'s mechanisms." ) target.custom_pain("The pain in your [affected.name] is living hell!",1) ..() @@ -349,8 +349,8 @@ return target.op_stage.current_organ = organ_to_remove - user.visible_message("[user] starts to decouple [target]'s [target.op_stage.current_organ] with \the [tool].", \ - "You start to decouple [target]'s [target.op_stage.current_organ] with \the [tool]." ) + user.visible_message("[user] starts to decouple [target]'s [target.op_stage.current_organ] with \the [tool].", \ + "You start to decouple [target]'s [target.op_stage.current_organ] with \the [tool]." ) ..() /datum/surgery_step/robotics/detatch_organ_robotic/end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool) @@ -411,8 +411,8 @@ target.op_stage.current_organ = organ_to_replace - user.visible_message("[user] begins reattaching [target]'s [target.op_stage.current_organ] with \the [tool].", \ - "You start reattaching [target]'s [target.op_stage.current_organ] with \the [tool].") + user.visible_message("[user] begins reattaching [target]'s [target.op_stage.current_organ] with \the [tool].", \ + "You start reattaching [target]'s [target.op_stage.current_organ] with \the [tool].") ..() /datum/surgery_step/robotics/attach_organ_robotic/end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool) @@ -475,8 +475,8 @@ /datum/surgery_step/robotics/install_mmi/begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool) var/obj/item/organ/external/affected = target.get_organ(target_zone) - user.visible_message("[user] starts installing \the [tool] into [target]'s [affected.name].", \ - "You start installing \the [tool] into [target]'s [affected.name].") + user.visible_message("[user] starts installing \the [tool] into [target]'s [affected.name].", \ + "You start installing \the [tool] into [target]'s [affected.name].") ..() /datum/surgery_step/robotics/install_mmi/end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool) @@ -565,8 +565,8 @@ /datum/surgery_step/robotics/install_nymph/begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool) var/obj/item/organ/external/affected = target.get_organ(target_zone) - user.visible_message("[user] starts setting \the [tool] into [target]'s [affected.name].", \ - "You start setting \the [tool] into [target]'s [affected.name].") + user.visible_message("[user] starts setting \the [tool] into [target]'s [affected.name].", \ + "You start setting \the [tool] into [target]'s [affected.name].") ..() /datum/surgery_step/robotics/install_nymph/end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool) diff --git a/code/modules/tables/flipping.dm b/code/modules/tables/flipping.dm index e7029e3c6d..8901d9d0a8 100644 --- a/code/modules/tables/flipping.dm +++ b/code/modules/tables/flipping.dm @@ -39,7 +39,7 @@ var/obj/occupied = turf_is_crowded() if(occupied) - to_chat(usr, "There's \a [occupied] in the way.") + to_chat(usr, "There's \a [occupied] in the way.") return 0 var/list/L = list() diff --git a/code/modules/tgui/modules/agentcard.dm b/code/modules/tgui/modules/agentcard.dm index 0bdbd967ce..fd84c98760 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/vchat/js/vchat.js b/code/modules/vchat/js/vchat.js index eda5cb3177..a7be6bb3b0 100644 --- a/code/modules/vchat/js/vchat.js +++ b/code/modules/vchat/js/vchat.js @@ -279,6 +279,14 @@ function start_vue() { pretty: "System Messages", tooltip: "Messages from your client, always enabled", required: true + }, + { + matches: ".unsorted", + becomes: "vc_unsorted", + pretty: "Unsorted", + tooltip: "Messages that don't have any filters.", + required: false, + admin: false } ], }, @@ -586,6 +594,11 @@ function start_vue() { //Get a category newmessage.category = this.get_category(newmessage.content); + //Put it in unsorted blocks + if (newmessage.category == "vc_unsorted") { + newmessage.content = "" + newmessage.content + ""; + } + //Try to crush it with one of the last few if(this.crushing) { let crushwith = this.messages.slice(-(this.crushing)); @@ -663,7 +676,7 @@ function start_vue() { let doc = domparser.parseFromString(message, 'text/html'); let evaluating = doc.querySelector('span'); - let category = "nomatch"; //What we use if the classes aren't anything we know. + let category = "vc_unsorted"; //What we use if the classes aren't anything we know. if(!evaluating) return category; this.type_table.find( function(type) { if(evaluating.msMatchesSelector(type.matches)) { @@ -678,13 +691,16 @@ function start_vue() { var textToSave = ""; var messagesToSave = this.archived_messages.concat(this.messages); + var cats = this.current_categories; messagesToSave.forEach( function(message) { - textToSave += message.content; - if(message.repeats > 1) { - textToSave += "(x"+message.repeats+")"; + if(cats.length == 0 || (cats.indexOf(message.category) >= 0)) { //only in the active tab + textToSave += message.content; + if(message.repeats > 1) { + textToSave += "(x"+message.repeats+")"; + } + textToSave += "
    \n"; } - textToSave += "
    \n"; }); textToSave += ""; diff --git a/code/modules/vchat/js/vchat.min.js b/code/modules/vchat/js/vchat.min.js index 8dce654de0..bcd2c699c7 100644 --- a/code/modules/vchat/js/vchat.min.js +++ b/code/modules/vchat/js/vchat.min.js @@ -1 +1 @@ -!function(){var e=console.log;console.log=function(t){send_debug(t),e.apply(console,arguments)};var t=console.error;console.error=function(e){send_debug(e),t.apply(console,arguments)},window.onerror=function(e,t,s,a,n){var o="";return n&&n.stack&&(o=n.stack),send_debug(e+" ("+t+"@"+s+":"+a+") "+n+"|UA: "+navigator.userAgent+"|Stack: "+o),!0}}();var vchat_opts={msBeforeDropped:3e4,cookiePrefix:"vst-",alwaysShow:["vc_looc","vc_system"],vchatTabsVer:1},DARKMODE_COLORS={buttonBgColor:"#40628a",buttonTextColor:"#FFFFFF",windowBgColor:"#272727",highlightColor:"#009900",tabTextColor:"#FFFFFF",tabBackgroundColor:"#272727"},LIGHTMODE_COLORS={buttonBgColor:"none",buttonTextColor:"#000000",windowBgColor:"none",highlightColor:"#007700",tabTextColor:"#000000",tabBackgroundColor:"none"},set_storage=set_cookie,get_storage=get_cookie,domparser=new DOMParser;storageAvailable("localStorage")&&(set_storage=set_localstorage,get_storage=get_localstorage);var vueapp,vchat_state={ready:!1,byond_ip:null,byond_cid:null,byond_ckey:null,lastPingReceived:0,latency_sent:0,lastId:0};function start_vchat(){start_vue(),vchat_state.ready=!0,push_Topic("done_loading"),push_Topic_showingnum(this.showingnum),doWinset("htmloutput",{"is-visible":!0}),doWinset("oldoutput",{"is-visible":!1}),doWinset("chatloadlabel",{"is-visible":!1}),setInterval(check_ping,vchat_opts.msBeforeDropped),send_debug("VChat Loaded!")}function start_vue(){vueapp=new Vue({el:"#app",data:{messages:[],shown_messages:[],unshown_messages:0,archived_messages:[],tabs:[{name:"Main",categories:[],immutable:!0,active:!0}],unread_messages:{},editing:!1,paused:!1,latency:0,reconnecting:!1,ext_styles:"",is_admin:!1,inverted:!1,crushing:3,animated:!1,fontsize:.9,lineheight:130,showingnum:200,type_table:[{matches:".filter_say, .say, .emote, .emote_subtle",becomes:"vc_localchat",pretty:"Local Chat",tooltip:"In-character local messages (say, emote, etc)",required:!1,admin:!1},{matches:".filter_radio, .alert, .syndradio, .centradio, .airadio, .entradio, .comradio, .secradio, .engradio, .medradio, .sciradio, .supradio, .srvradio, .expradio, .radio, .deptradio, .newscaster",becomes:"vc_radio",pretty:"Radio Comms",tooltip:"All departments of radio messages",required:!1,admin:!1},{matches:".filter_notice, .notice:not(.pm), .adminnotice, .info, .sinister, .cult",becomes:"vc_info",pretty:"Notices",tooltip:"Non-urgent messages from the game and items",required:!1,admin:!1},{matches:".filter_warning, .warning:not(.pm), .critical, .userdanger, .italics",becomes:"vc_warnings",pretty:"Warnings",tooltip:"Urgent messages from the game and items",required:!1,admin:!1},{matches:".filter_deadsay, .deadsay",becomes:"vc_deadchat",pretty:"Deadchat",tooltip:"All of deadchat",required:!1,admin:!1},{matches:".filter_ooc, .ooc:not(.looc)",becomes:"vc_globalooc",pretty:"Global OOC",tooltip:"The bluewall of global OOC messages",required:!1,admin:!1},{matches:".nif",becomes:"vc_nif",pretty:"NIF Messages",tooltip:"Messages from the NIF itself and people inside",required:!1,admin:!1},{matches:".mentor_channel, .mentor",becomes:"vc_mentor",pretty:"Mentor messages",tooltip:"Mentorchat and mentor pms",required:!1,admin:!1},{matches:".filter_pm, .pm",becomes:"vc_adminpm",pretty:"Admin PMs",tooltip:"Messages to/from admins ('adminhelps')",required:!1,admin:!1},{matches:".filter_ASAY, .admin_channel",becomes:"vc_adminchat",pretty:"Admin Chat",tooltip:"ASAY messages",required:!1,admin:!0},{matches:".filter_MSAY, .mod_channel",becomes:"vc_modchat",pretty:"Mod Chat",tooltip:"MSAY messages",required:!1,admin:!0},{matches:".filter_ESAY, .event_channel",becomes:"vc_eventchat",pretty:"Event Chat",tooltip:"ESAY messages",required:!1,admin:!0},{matches:".filter_combat, .danger",becomes:"vc_combat",pretty:"Combat Logs",tooltip:"Urist McTraitor has stabbed you with a knife!",required:!1,admin:!1},{matches:".filter_adminlogs, .log_message",becomes:"vc_adminlogs",pretty:"Admin Logs",tooltip:"ADMIN LOG: Urist McAdmin has jumped to coordinates X, Y, Z",required:!1,admin:!0},{matches:".filter_attacklogs",becomes:"vc_attacklogs",pretty:"Attack Logs",tooltip:"Urist McTraitor has shot John Doe",required:!1,admin:!0},{matches:".filter_debuglogs",becomes:"vc_debuglogs",pretty:"Debug Logs",tooltip:"DEBUG: SSPlanets subsystem Recover().",required:!1,admin:!0},{matches:".ooc.looc, .ooc, .looc",becomes:"vc_looc",pretty:"Local OOC",tooltip:"Local OOC messages, always enabled",required:!0},{matches:".boldannounce, .filter_system",becomes:"vc_system",pretty:"System Messages",tooltip:"Messages from your client, always enabled",required:!0}]},mounted:function(){this.load_settings();var e=new XMLHttpRequest;e.open("GET","ss13styles.css"),e.onreadystatechange=function(){this.ext_styles=e.responseText}.bind(this),e.send()},updated:function(){this.editing||this.paused||window.scrollTo(0,document.getElementById("messagebox").scrollHeight)},watch:{reconnecting:function(e,t){1==e&&0==t?this.internal_message("Your client has lost connection to the server, or there is severe lag. Your client will reconnect if possible."):0==e&&1==t&&this.internal_message("Your client has reconnected to the server.")},inverted:function(e){set_storage("darkmode",e),e?(document.body.classList.add("inverted"),switch_ui_mode(DARKMODE_COLORS)):(document.body.classList.remove("inverted"),switch_ui_mode(LIGHTMODE_COLORS))},crushing:function(e){set_storage("crushing",e)},animated:function(e){set_storage("animated",e)},fontsize:function(e,t){isNaN(e)?this.fontsize=t:(e<.2?this.fontsize=.2:e>5&&(this.fontsize=5),set_storage("fontsize",e))},lineheight:function(e,t){isFinite(e)?(e<100?this.lineheight=100:e>200&&(this.lineheight=200),set_storage("lineheight",e)):this.lineheight=t},showingnum:function(e,t){isFinite(e)?((e=Math.floor(e))<50?this.showingnum=50:e>2e3&&(this.showingnum=2e3),set_storage("showingnum",this.showingnum),push_Topic_showingnum(this.showingnum),this.attempt_archive()):this.showingnum=t},current_categories:function(e,t){e.length&&this.apply_filter(e)}},computed:{active_tab:function(){return this.tabs.find((function(e){return e.active}))},ping_classes:function(){return this.latency?"?"==this.latency?"grey":this.latency<0?"red":this.latency<=200?"green":this.latency<=400?"yellow":"grey":this.reconnecting?"red":"green"},current_categories:function(){return this.active_tab==this.tabs[0]?[]:this.active_tab.categories.concat(vchat_opts.alwaysShow)}},methods:{load_settings:function(){this.inverted=get_storage("darkmode",!1),this.crushing=get_storage("crushing",3),this.animated=get_storage("animated",!1),this.fontsize=get_storage("fontsize",.9),this.lineheight=get_storage("lineheight",130),this.showingnum=get_storage("showingnum",200),isNaN(this.crushing)&&(this.crushing=3),isNaN(this.fontsize)&&(this.fontsize=.9),this.load_tabs()},load_tabs:function(){var e=get_storage("tabs");if(e){var t=JSON.parse(e);t.version&&t.tabs?!t.version!=vchat_opts.vchatTabsVer?this.tabs.push.apply(this.tabs,t.tabs):this.internal_message("Your saved tabs are for an older version of VChat and must be recreated, sorry."):this.internal_message("There was a problem loading your tabs. Any new ones you make will be saved, however.")}},save_tabs:function(){var e={version:vchat_opts.vchatTabsVer,tabs:[]};this.tabs.forEach((function(t){if(!t.immutable){var s=t.name,a=[];t.categories.forEach((function(e){a.push(e)}));var n={name:s,categories:a,immutable:!1,active:!1};e.tabs.push(n)}}));var t=JSON.stringify(e);set_storage("tabs",t)},switchtab:function(e){e!=this.active_tab&&(this.active_tab.active=!1,e.active=!0,e.categories.forEach((function(e){this.unread_messages[e]=0}),this),this.apply_filter(this.current_categories))},editmode:function(){this.editing=!this.editing,this.save_tabs()},pause:function(){this.paused=!this.paused},newtab:function(){this.tabs.push({name:"New Tab",categories:[],immutable:!1,active:!1}),this.switchtab(this.tabs[this.tabs.length-1])},renametab:function(){if(!this.active_tab.immutable){var e=this.active_tab,t=window.prompt("Type the desired tab name:",e.name);null!==t&&""!==t&&null!==e&&(e.name=t)}},deltab:function(e){e||(e=this.active_tab),e.immutable||(this.switchtab(this.tabs[0]),this.tabs.splice(this.tabs.indexOf(e),1))},movetab:function(e,t){if(e&&!e.immutable){var s=this.tabs.indexOf(e),a=s+t;this.tabs.splice(a,0,this.tabs.splice(s,1)[0])}},tab_unread_count:function(e){var t=0,s=this.unread_messages;return e.categories.find((function(e){s[e]&&(t+=s[e])})),t},tab_unread_categories:function(e){var t=!1,s=this.unread_messages;return e.categories.find((function(e){if(s[e])return t=!0,!0})),{red:t,grey:!t}},attempt_archive:function(){if(this.messages.length>this.showingnum){var e=this.messages.splice(0,20);Array.prototype.push.apply(this.archived_messages,e)}},apply_filter:function(e){this.shown_messages.splice(0),this.unshown_messages=0,this.messages.forEach((function(t){e.indexOf(t.category)>-1&&this.shown_messages.push(t)}),this),this.archived_messages.forEach((function(t){e.indexOf(t.category)>-1&&this.unshown_messages++}),this)},add_message:function(e){let t={time:e.time,category:"error",content:e.message,repeats:1};if(t.category=this.get_category(t.content),this.crushing){let e=this.messages.slice(-this.crushing);for(let s=e.length-1;s>=0;s--){let a=e[s];a.content==t.content&&(t.repeats+=a.repeats,this.messages.splice(this.messages.indexOf(a),1))}}t.content=t.content.replace(/(\b(https?):\/\/[\-A-Z0-9+&@#\/%?=~_|!:,.;]*[\-A-Z0-9+&@#\/%=~_|])/gim,'$1'),this.current_categories.length&&this.current_categories.indexOf(t.category)<0?(isNaN(this.unread_messages[t.category])&&(this.unread_messages[t.category]=0),this.unread_messages[t.category]+=1):this.current_categories.length&&this.shown_messages.push(t),t.id=++vchat_state.lastId,this.attempt_archive(),this.messages.push(t)},internal_message:function(e){let t={time:this.messages.length?this.messages.slice(-1).time+1:0,category:"vc_system",content:"[VChat Internal] "+e+""};t.id=++vchat_state.lastId,this.messages.push(t)},on_mouseup:function(e){let t=e.target;"getSelection"in window&&!1===window.getSelection().isCollapsed||t&&("INPUT"===t.tagName||"TEXTAREA"===t.tagName)||(focusMapWindow(),e.preventDefault(),e.target.click())},click_message:function(e){let t=e.target;if("A"===t.tagName){e.stopPropagation(),e.preventDefault?e.preventDefault():e.returnValue=!1;var s=t.getAttribute("href");"?"==s[0]||s.length>=8&&"byond://"==s.substring(0,8)?window.location=s:window.location="byond://?action=openLink&link="+encodeURIComponent(s)}},get_category:function(e){if(!vchat_state.ready)return void push_Topic("not_ready");let t=domparser.parseFromString(e,"text/html").querySelector("span"),s="nomatch";return t?(this.type_table.find((function(e){if(t.msMatchesSelector(e.matches))return s=e.becomes,!0})),s):s},save_chatlog:function(){var e="";this.archived_messages.concat(this.messages).forEach((function(t){e+=t.content,t.repeats>1&&(e+="(x"+t.repeats+")"),e+="
    \n"})),e+="";var t=new Date,s=String(t.getHours());s.length<2&&(s="0"+s);var a=String(t.getMinutes());a.length<2&&(a="0"+a);var n=String(t.getDate());n.length<2&&(n="0"+n);var o=String(t.getMonth()+1);o.length<2&&(o="0"+o);var i="log"+(" "+String(t.getFullYear())+"-"+o+"-"+n+" ("+s+" "+a+")")+".html",r=document.createElement("a");if(void 0!==r.download)r.href="data:attachment/text,"+encodeURI(e),r.target="_blank",r.download=i,r.click();else{var c=new Blob([e],{type:"text/html;charset=utf8;"});saved=window.navigator.msSaveOrOpenBlob(c,i)}},do_latency_test:function(){send_latency_check()},blur_this:function(e){e.target.blur()}}})}function check_ping(){Date.now()-vchat_state.lastPingReceived>vchat_opts.msBeforeDropped&&(vueapp.reconnecting=!0)}function send_latency_check(){vchat_state.latency_sent||(vchat_state.latency_sent=Date.now(),vueapp.latency="?",push_Topic("ping"),setTimeout((function(){"?"==vchat_state.latency_ms&&(vchat_state.latency_ms=999)}),1e3),setTimeout((function(){vchat_state.latency_sent=0,vueapp.latency=0}),5e3))}function get_latency_check(){vchat_state.latency_sent&&(vueapp.latency=Date.now()-vchat_state.latency_sent)}function byondDecode(e){e=e.replace(/\+/g,"%20");try{e=decodeURIComponent(e)}catch(t){e=unescape(e)}return JSON.parse(e)}function putmessage(e){e=byondDecode(e),Array.isArray(e)?e.forEach((function(e){vueapp.add_message(e)})):"object"==typeof e&&vueapp.add_message(e)}function system_message(e){vueapp.internal_message(e)}function push_Topic(e){window.location="?_src_=chat&proc="+e}function push_Topic_showingnum(e){window.location="?_src_=chat&showingnum="+e}function focusMapWindow(){window.location="byond://winset?mapwindow.map.focus=true"}function send_debug(e){push_Topic("debug¶m[message]="+encodeURIComponent(e))}function get_event(e){if(vchat_state.ready){var t;switch((t=byondDecode(e)).evttype){case"internal_error":system_message("Event parse error: "+e);break;case"byond_player":send_client_data(),vueapp.is_admin="true"===t.admin,vchat_state.byond_ip=t.address,vchat_state.byond_cid=t.cid,vchat_state.byond_ckey=t.ckey,set_storage("ip",vchat_state.byond_ip),set_storage("cid",vchat_state.byond_cid),set_storage("ckey",vchat_state.byond_ckey);break;case"keepalive":vchat_state.lastPingReceived=Date.now(),vueapp.reconnecting=!1;break;case"pong":get_latency_check();break;case"availability":push_Topic("done_loading");break;default:system_message("Didn't know what to do with event: "+e)}}else push_Topic("not_ready")}function send_client_data(){let e={ip:get_storage("ip"),cid:get_storage("cid"),ckey:get_storage("ckey")};push_Topic("ident¶m[clientdata]="+JSON.stringify(e))}function set_localstorage(e,t){window.localStorage.setItem(vchat_opts.cookiePrefix+e,t)}function get_localstorage(e,t){let s=window.localStorage.getItem(vchat_opts.cookiePrefix+e);return"null"===s||null===s?s=t:"true"===s?s=!0:"false"===s?s=!1:isNaN(s)||(s=+s),s}function set_cookie(e,t){let s=new Date;s.setFullYear(s.getFullYear()+1);let a=s.toUTCString();document.cookie=vchat_opts.cookiePrefix+e+"="+t+";expires="+a+";path=/"}function get_cookie(e,t){let s=document.cookie.split(";"),a={};s.forEach((function(e){let s=e.replace(vchat_opts.cookiePrefix,"").trim(),n=s.search("="),o=decodeURIComponent(s.substring(0,n)),i=decodeURIComponent(s.substring(n+1));"null"==i||null===i?i=t:"true"===i?i=!0:"false"===i?i=!1:isNaN(i)||(i=+i),a[o]=i})),a[e]}var SKIN_BUTTONS=["rpane.textb","rpane.infob","rpane.wikib","rpane.forumb","rpane.rulesb","rpane.github","rpane.discord","rpane.mapb","rpane.changelog","mainwindow.saybutton","mainwindow.mebutton","mainwindow.hotkey_toggle"],SKIN_ELEMENTS=["mainwindow","mainwindow.mainvsplit","mainwindow.tooltip","rpane","rpane.rpanewindow","rpane.mediapanel"];function switch_ui_mode(e){doWinset(SKIN_BUTTONS.reduce((function(t,s){return t[s+".background-color"]=e.buttonBgColor,t}),{})),doWinset(SKIN_BUTTONS.reduce((function(t,s){return t[s+".text-color"]=e.buttonTextColor,t}),{})),doWinset(SKIN_ELEMENTS.reduce((function(t,s){return t[s+".background-color"]=e.windowBgColor,t}),{})),doWinset("infowindow",{"background-color":e.tabBackgroundColor,"text-color":e.tabTextColor}),doWinset("infowindow.info",{"background-color":e.tabBackgroundColor,"text-color":e.tabTextColor,"highlight-color":e.highlightColor,"tab-text-color":e.tabTextColor,"tab-background-color":e.tabBackgroundColor})}function doWinset(e,t){void 0===t&&(t=e,e=null);var s="byond://winset?";e&&(s+="id="+e+"&"),s+=Object.keys(t).map((function(e){return e+"="+encodeURIComponent(t[e])})).join("&"),window.location=s} +!function(){var e=console.log;console.log=function(t){send_debug(t),e.apply(console,arguments)};var t=console.error;console.error=function(e){send_debug(e),t.apply(console,arguments)},window.onerror=function(e,t,s,a,n){var o="";return n&&n.stack&&(o=n.stack),send_debug(e+" ("+t+"@"+s+":"+a+") "+n+"|UA: "+navigator.userAgent+"|Stack: "+o),!0}}();var vchat_opts={msBeforeDropped:3e4,cookiePrefix:"vst-",alwaysShow:["vc_looc","vc_system"],vchatTabsVer:1},DARKMODE_COLORS={buttonBgColor:"#40628a",buttonTextColor:"#FFFFFF",windowBgColor:"#272727",highlightColor:"#009900",tabTextColor:"#FFFFFF",tabBackgroundColor:"#272727"},LIGHTMODE_COLORS={buttonBgColor:"none",buttonTextColor:"#000000",windowBgColor:"none",highlightColor:"#007700",tabTextColor:"#000000",tabBackgroundColor:"none"},set_storage=set_cookie,get_storage=get_cookie,domparser=new DOMParser;storageAvailable("localStorage")&&(set_storage=set_localstorage,get_storage=get_localstorage);var vueapp,vchat_state={ready:!1,byond_ip:null,byond_cid:null,byond_ckey:null,lastPingReceived:0,latency_sent:0,lastId:0};function start_vchat(){start_vue(),vchat_state.ready=!0,push_Topic("done_loading"),push_Topic_showingnum(this.showingnum),doWinset("htmloutput",{"is-visible":!0}),doWinset("oldoutput",{"is-visible":!1}),doWinset("chatloadlabel",{"is-visible":!1}),setInterval(check_ping,vchat_opts.msBeforeDropped),send_debug("VChat Loaded!")}function start_vue(){vueapp=new Vue({el:"#app",data:{messages:[],shown_messages:[],unshown_messages:0,archived_messages:[],tabs:[{name:"Main",categories:[],immutable:!0,active:!0}],unread_messages:{},editing:!1,paused:!1,latency:0,reconnecting:!1,ext_styles:"",is_admin:!1,inverted:!1,crushing:3,animated:!1,fontsize:.9,lineheight:130,showingnum:200,type_table:[{matches:".filter_say, .say, .emote, .emote_subtle",becomes:"vc_localchat",pretty:"Local Chat",tooltip:"In-character local messages (say, emote, etc)",required:!1,admin:!1},{matches:".filter_radio, .alert, .syndradio, .centradio, .airadio, .entradio, .comradio, .secradio, .engradio, .medradio, .sciradio, .supradio, .srvradio, .expradio, .radio, .deptradio, .newscaster",becomes:"vc_radio",pretty:"Radio Comms",tooltip:"All departments of radio messages",required:!1,admin:!1},{matches:".filter_notice, .notice:not(.pm), .adminnotice, .info, .sinister, .cult",becomes:"vc_info",pretty:"Notices",tooltip:"Non-urgent messages from the game and items",required:!1,admin:!1},{matches:".filter_warning, .warning:not(.pm), .critical, .userdanger, .italics",becomes:"vc_warnings",pretty:"Warnings",tooltip:"Urgent messages from the game and items",required:!1,admin:!1},{matches:".filter_deadsay, .deadsay",becomes:"vc_deadchat",pretty:"Deadchat",tooltip:"All of deadchat",required:!1,admin:!1},{matches:".filter_ooc, .ooc:not(.looc)",becomes:"vc_globalooc",pretty:"Global OOC",tooltip:"The bluewall of global OOC messages",required:!1,admin:!1},{matches:".nif",becomes:"vc_nif",pretty:"NIF Messages",tooltip:"Messages from the NIF itself and people inside",required:!1,admin:!1},{matches:".mentor_channel, .mentor",becomes:"vc_mentor",pretty:"Mentor messages",tooltip:"Mentorchat and mentor pms",required:!1,admin:!1},{matches:".filter_pm, .pm",becomes:"vc_adminpm",pretty:"Admin PMs",tooltip:"Messages to/from admins ('adminhelps')",required:!1,admin:!1},{matches:".filter_ASAY, .admin_channel",becomes:"vc_adminchat",pretty:"Admin Chat",tooltip:"ASAY messages",required:!1,admin:!0},{matches:".filter_MSAY, .mod_channel",becomes:"vc_modchat",pretty:"Mod Chat",tooltip:"MSAY messages",required:!1,admin:!0},{matches:".filter_ESAY, .event_channel",becomes:"vc_eventchat",pretty:"Event Chat",tooltip:"ESAY messages",required:!1,admin:!0},{matches:".filter_combat, .danger",becomes:"vc_combat",pretty:"Combat Logs",tooltip:"Urist McTraitor has stabbed you with a knife!",required:!1,admin:!1},{matches:".filter_adminlogs, .log_message",becomes:"vc_adminlogs",pretty:"Admin Logs",tooltip:"ADMIN LOG: Urist McAdmin has jumped to coordinates X, Y, Z",required:!1,admin:!0},{matches:".filter_attacklogs",becomes:"vc_attacklogs",pretty:"Attack Logs",tooltip:"Urist McTraitor has shot John Doe",required:!1,admin:!0},{matches:".filter_debuglogs",becomes:"vc_debuglogs",pretty:"Debug Logs",tooltip:"DEBUG: SSPlanets subsystem Recover().",required:!1,admin:!0},{matches:".ooc.looc, .ooc, .looc",becomes:"vc_looc",pretty:"Local OOC",tooltip:"Local OOC messages, always enabled",required:!0},{matches:".boldannounce, .filter_system",becomes:"vc_system",pretty:"System Messages",tooltip:"Messages from your client, always enabled",required:!0},{matches:".unsorted",becomes:"vc_unsorted",pretty:"Unsorted",tooltip:"Messages that don't have any filters.",required:!1,admin:!1}]},mounted:function(){this.load_settings();var e=new XMLHttpRequest;e.open("GET","ss13styles.css"),e.onreadystatechange=function(){this.ext_styles=e.responseText}.bind(this),e.send()},updated:function(){this.editing||this.paused||window.scrollTo(0,document.getElementById("messagebox").scrollHeight)},watch:{reconnecting:function(e,t){1==e&&0==t?this.internal_message("Your client has lost connection to the server, or there is severe lag. Your client will reconnect if possible."):0==e&&1==t&&this.internal_message("Your client has reconnected to the server.")},inverted:function(e){set_storage("darkmode",e),e?(document.body.classList.add("inverted"),switch_ui_mode(DARKMODE_COLORS)):(document.body.classList.remove("inverted"),switch_ui_mode(LIGHTMODE_COLORS))},crushing:function(e){set_storage("crushing",e)},animated:function(e){set_storage("animated",e)},fontsize:function(e,t){isNaN(e)?this.fontsize=t:(e<.2?this.fontsize=.2:e>5&&(this.fontsize=5),set_storage("fontsize",e))},lineheight:function(e,t){isFinite(e)?(e<100?this.lineheight=100:e>200&&(this.lineheight=200),set_storage("lineheight",e)):this.lineheight=t},showingnum:function(e,t){isFinite(e)?((e=Math.floor(e))<50?this.showingnum=50:e>2e3&&(this.showingnum=2e3),set_storage("showingnum",this.showingnum),push_Topic_showingnum(this.showingnum),this.attempt_archive()):this.showingnum=t},current_categories:function(e,t){e.length&&this.apply_filter(e)}},computed:{active_tab:function(){return this.tabs.find((function(e){return e.active}))},ping_classes:function(){return this.latency?"?"==this.latency?"grey":this.latency<0?"red":this.latency<=200?"green":this.latency<=400?"yellow":"grey":this.reconnecting?"red":"green"},current_categories:function(){return this.active_tab==this.tabs[0]?[]:this.active_tab.categories.concat(vchat_opts.alwaysShow)}},methods:{load_settings:function(){this.inverted=get_storage("darkmode",!1),this.crushing=get_storage("crushing",3),this.animated=get_storage("animated",!1),this.fontsize=get_storage("fontsize",.9),this.lineheight=get_storage("lineheight",130),this.showingnum=get_storage("showingnum",200),isNaN(this.crushing)&&(this.crushing=3),isNaN(this.fontsize)&&(this.fontsize=.9),this.load_tabs()},load_tabs:function(){var e=get_storage("tabs");if(e){var t=JSON.parse(e);t.version&&t.tabs?!t.version!=vchat_opts.vchatTabsVer?this.tabs.push.apply(this.tabs,t.tabs):this.internal_message("Your saved tabs are for an older version of VChat and must be recreated, sorry."):this.internal_message("There was a problem loading your tabs. Any new ones you make will be saved, however.")}},save_tabs:function(){var e={version:vchat_opts.vchatTabsVer,tabs:[]};this.tabs.forEach((function(t){if(!t.immutable){var s=t.name,a=[];t.categories.forEach((function(e){a.push(e)}));var n={name:s,categories:a,immutable:!1,active:!1};e.tabs.push(n)}}));var t=JSON.stringify(e);set_storage("tabs",t)},switchtab:function(e){e!=this.active_tab&&(this.active_tab.active=!1,e.active=!0,e.categories.forEach((function(e){this.unread_messages[e]=0}),this),this.apply_filter(this.current_categories))},editmode:function(){this.editing=!this.editing,this.save_tabs()},pause:function(){this.paused=!this.paused},newtab:function(){this.tabs.push({name:"New Tab",categories:[],immutable:!1,active:!1}),this.switchtab(this.tabs[this.tabs.length-1])},renametab:function(){if(!this.active_tab.immutable){var e=this.active_tab,t=window.prompt("Type the desired tab name:",e.name);null!==t&&""!==t&&null!==e&&(e.name=t)}},deltab:function(e){e||(e=this.active_tab),e.immutable||(this.switchtab(this.tabs[0]),this.tabs.splice(this.tabs.indexOf(e),1))},movetab:function(e,t){if(e&&!e.immutable){var s=this.tabs.indexOf(e),a=s+t;this.tabs.splice(a,0,this.tabs.splice(s,1)[0])}},tab_unread_count:function(e){var t=0,s=this.unread_messages;return e.categories.find((function(e){s[e]&&(t+=s[e])})),t},tab_unread_categories:function(e){var t=!1,s=this.unread_messages;return e.categories.find((function(e){if(s[e])return t=!0,!0})),{red:t,grey:!t}},attempt_archive:function(){if(this.messages.length>this.showingnum){var e=this.messages.splice(0,20);Array.prototype.push.apply(this.archived_messages,e)}},apply_filter:function(e){this.shown_messages.splice(0),this.unshown_messages=0,this.messages.forEach((function(t){e.indexOf(t.category)>-1&&this.shown_messages.push(t)}),this),this.archived_messages.forEach((function(t){e.indexOf(t.category)>-1&&this.unshown_messages++}),this)},add_message:function(e){let t={time:e.time,category:"error",content:e.message,repeats:1};if(t.category=this.get_category(t.content),"vc_unsorted"==t.category&&(t.content=""+t.content+""),this.crushing){let e=this.messages.slice(-this.crushing);for(let s=e.length-1;s>=0;s--){let a=e[s];a.content==t.content&&(t.repeats+=a.repeats,this.messages.splice(this.messages.indexOf(a),1))}}t.content=t.content.replace(/(\b(https?):\/\/[\-A-Z0-9+&@#\/%?=~_|!:,.;]*[\-A-Z0-9+&@#\/%=~_|])/gim,'$1'),this.current_categories.length&&this.current_categories.indexOf(t.category)<0?(isNaN(this.unread_messages[t.category])&&(this.unread_messages[t.category]=0),this.unread_messages[t.category]+=1):this.current_categories.length&&this.shown_messages.push(t),t.id=++vchat_state.lastId,this.attempt_archive(),this.messages.push(t)},internal_message:function(e){let t={time:this.messages.length?this.messages.slice(-1).time+1:0,category:"vc_system",content:"[VChat Internal] "+e+""};t.id=++vchat_state.lastId,this.messages.push(t)},on_mouseup:function(e){let t=e.target;"getSelection"in window&&!1===window.getSelection().isCollapsed||t&&("INPUT"===t.tagName||"TEXTAREA"===t.tagName)||(focusMapWindow(),e.preventDefault(),e.target.click())},click_message:function(e){let t=e.target;if("A"===t.tagName){e.stopPropagation(),e.preventDefault?e.preventDefault():e.returnValue=!1;var s=t.getAttribute("href");"?"==s[0]||s.length>=8&&"byond://"==s.substring(0,8)?window.location=s:window.location="byond://?action=openLink&link="+encodeURIComponent(s)}},get_category:function(e){if(!vchat_state.ready)return void push_Topic("not_ready");let t=domparser.parseFromString(e,"text/html").querySelector("span"),s="vc_unsorted";return t?(this.type_table.find((function(e){if(t.msMatchesSelector(e.matches))return s=e.becomes,!0})),s):s},save_chatlog:function(){var e="",t=this.archived_messages.concat(this.messages),s=this.current_categories;t.forEach((function(t){(0==s.length||s.indexOf(t.category)>=0)&&(e+=t.content,t.repeats>1&&(e+="(x"+t.repeats+")"),e+="
    \n")})),e+="";var a=new Date,n=String(a.getHours());n.length<2&&(n="0"+n);var o=String(a.getMinutes());o.length<2&&(o="0"+o);var i=String(a.getDate());i.length<2&&(i="0"+i);var r=String(a.getMonth()+1);r.length<2&&(r="0"+r);var c="log"+(" "+String(a.getFullYear())+"-"+r+"-"+i+" ("+n+" "+o+")")+".html",l=document.createElement("a");if(void 0!==l.download)l.href="data:attachment/text,"+encodeURI(e),l.target="_blank",l.download=c,l.click();else{var h=new Blob([e],{type:"text/html;charset=utf8;"});saved=window.navigator.msSaveOrOpenBlob(h,c)}},do_latency_test:function(){send_latency_check()},blur_this:function(e){e.target.blur()}}})}function check_ping(){Date.now()-vchat_state.lastPingReceived>vchat_opts.msBeforeDropped&&(vueapp.reconnecting=!0)}function send_latency_check(){vchat_state.latency_sent||(vchat_state.latency_sent=Date.now(),vueapp.latency="?",push_Topic("ping"),setTimeout((function(){"?"==vchat_state.latency_ms&&(vchat_state.latency_ms=999)}),1e3),setTimeout((function(){vchat_state.latency_sent=0,vueapp.latency=0}),5e3))}function get_latency_check(){vchat_state.latency_sent&&(vueapp.latency=Date.now()-vchat_state.latency_sent)}function byondDecode(e){e=e.replace(/\+/g,"%20");try{e=decodeURIComponent(e)}catch(t){e=unescape(e)}return JSON.parse(e)}function putmessage(e){e=byondDecode(e),Array.isArray(e)?e.forEach((function(e){vueapp.add_message(e)})):"object"==typeof e&&vueapp.add_message(e)}function system_message(e){vueapp.internal_message(e)}function push_Topic(e){window.location="?_src_=chat&proc="+e}function push_Topic_showingnum(e){window.location="?_src_=chat&showingnum="+e}function focusMapWindow(){window.location="byond://winset?mapwindow.map.focus=true"}function send_debug(e){push_Topic("debug¶m[message]="+encodeURIComponent(e))}function get_event(e){if(vchat_state.ready){var t;switch((t=byondDecode(e)).evttype){case"internal_error":system_message("Event parse error: "+e);break;case"byond_player":send_client_data(),vueapp.is_admin="true"===t.admin,vchat_state.byond_ip=t.address,vchat_state.byond_cid=t.cid,vchat_state.byond_ckey=t.ckey,set_storage("ip",vchat_state.byond_ip),set_storage("cid",vchat_state.byond_cid),set_storage("ckey",vchat_state.byond_ckey);break;case"keepalive":vchat_state.lastPingReceived=Date.now(),vueapp.reconnecting=!1;break;case"pong":get_latency_check();break;case"availability":push_Topic("done_loading");break;default:system_message("Didn't know what to do with event: "+e)}}else push_Topic("not_ready")}function send_client_data(){let e={ip:get_storage("ip"),cid:get_storage("cid"),ckey:get_storage("ckey")};push_Topic("ident¶m[clientdata]="+JSON.stringify(e))}function set_localstorage(e,t){window.localStorage.setItem(vchat_opts.cookiePrefix+e,t)}function get_localstorage(e,t){let s=window.localStorage.getItem(vchat_opts.cookiePrefix+e);return"null"===s||null===s?s=t:"true"===s?s=!0:"false"===s?s=!1:isNaN(s)||(s=+s),s}function set_cookie(e,t){let s=new Date;s.setFullYear(s.getFullYear()+1);let a=s.toUTCString();document.cookie=vchat_opts.cookiePrefix+e+"="+t+";expires="+a+";path=/"}function get_cookie(e,t){let s=document.cookie.split(";"),a={};s.forEach((function(e){let s=e.replace(vchat_opts.cookiePrefix,"").trim(),n=s.search("="),o=decodeURIComponent(s.substring(0,n)),i=decodeURIComponent(s.substring(n+1));"null"==i||null===i?i=t:"true"===i?i=!0:"false"===i?i=!1:isNaN(i)||(i=+i),a[o]=i})),a[e]}var SKIN_BUTTONS=["rpane.textb","rpane.infob","rpane.wikib","rpane.forumb","rpane.rulesb","rpane.github","rpane.discord","rpane.mapb","rpane.changelog","mainwindow.saybutton","mainwindow.mebutton","mainwindow.hotkey_toggle"],SKIN_ELEMENTS=["mainwindow","mainwindow.mainvsplit","mainwindow.tooltip","rpane","rpane.rpanewindow","rpane.mediapanel"];function switch_ui_mode(e){doWinset(SKIN_BUTTONS.reduce((function(t,s){return t[s+".background-color"]=e.buttonBgColor,t}),{})),doWinset(SKIN_BUTTONS.reduce((function(t,s){return t[s+".text-color"]=e.buttonTextColor,t}),{})),doWinset(SKIN_ELEMENTS.reduce((function(t,s){return t[s+".background-color"]=e.windowBgColor,t}),{})),doWinset("infowindow",{"background-color":e.tabBackgroundColor,"text-color":e.tabTextColor}),doWinset("infowindow.info",{"background-color":e.tabBackgroundColor,"text-color":e.tabTextColor,"highlight-color":e.highlightColor,"tab-text-color":e.tabTextColor,"tab-background-color":e.tabBackgroundColor})}function doWinset(e,t){void 0===t&&(t=e,e=null);var s="byond://winset?";e&&(s+="id="+e+"&"),s+=Object.keys(t).map((function(e){return e+"="+encodeURIComponent(t[e])})).join("&"),window.location=s} \ No newline at end of file diff --git a/code/modules/virus2/helpers.dm b/code/modules/virus2/helpers.dm index 18a8bb24e8..053498042e 100644 --- a/code/modules/virus2/helpers.dm +++ b/code/modules/virus2/helpers.dm @@ -136,7 +136,7 @@ /mob/living/carbon/proc/spread_disease_to(var/mob/living/carbon/victim, var/vector = "Airborne") if (src == victim) - return "retardation" + return "Neurodegeneration" // log_debug("Spreading [vector] diseases from [src] to [victim]") if (virus2.len > 0) diff --git a/code/modules/vore/eating/belly_obj_vr.dm b/code/modules/vore/eating/belly_obj_vr.dm index 060ac05654..2ae5989313 100644 --- a/code/modules/vore/eating/belly_obj_vr.dm +++ b/code/modules/vore/eating/belly_obj_vr.dm @@ -498,6 +498,8 @@ if(prey.ckey) GLOB.prey_eaten_roundstat++ + if(owner.mind) + owner.mind.vore_prey_eaten++ // Get the line that should show up in Examine message if the owner of this belly // is examined. By making this a proc, we not only take advantage of polymorphism, diff --git a/code/modules/vore/eating/living_vr.dm b/code/modules/vore/eating/living_vr.dm index 6bd5e983ad..9e37b888ce 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 98a1c7ff12..54c0dc25a5 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 9ab72130f0..2c771bd456 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 0000000000..2d79d5eda9 --- /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 9fa0f6243a..c0b7dbbfcf 100644 --- a/code/modules/vore/resizing/resize_vr.dm +++ b/code/modules/vore/resizing/resize_vr.dm @@ -236,9 +236,9 @@ tmob_message = tail.msg_owner_stepunder if(src_message) - to_chat(src, STEP_TEXT_OWNER(src_message)) + to_chat(src, "[STEP_TEXT_OWNER(src_message)]") if(tmob_message) - to_chat(tmob, STEP_TEXT_PREY(tmob_message)) + to_chat(tmob, "[STEP_TEXT_PREY(tmob_message)]") return TRUE return FALSE @@ -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 @@ -385,7 +398,7 @@ set category = "IC" pickup_active = !pickup_active - to_chat(src, "You will [pickup_active ? "now" : "no longer"] attempt to pick up mobs when clicking them with help intent.") + to_chat(src, "You will [pickup_active ? "now" : "no longer"] attempt to pick up mobs when clicking them with help intent.") #undef STEP_TEXT_OWNER #undef STEP_TEXT_PREY diff --git a/code/modules/xenoarcheaology/artifacts/replicator.dm b/code/modules/xenoarcheaology/artifacts/replicator.dm index d6796c6ad1..06c411fab9 100644 --- a/code/modules/xenoarcheaology/artifacts/replicator.dm +++ b/code/modules/xenoarcheaology/artifacts/replicator.dm @@ -98,13 +98,13 @@ "foreground" = colors[color], ))) - fail_message = "\icon[src][bicon(src)] a [pick("loud","soft","sinister","eery","triumphant","depressing","cheerful","angry")] \ + fail_message = "\icon[src][bicon(src)] a [pick("loud","soft","sinister","eery","triumphant","depressing","cheerful","angry")] \ [pick("horn","beep","bing","bleep","blat","honk","hrumph","ding")] sounds and a \ [pick("yellow","purple","green","blue","red","orange","white")] \ [pick("light","dial","meter","window","protrusion","knob","antenna","swirly thing")] \ [pick("swirls","flashes","whirrs","goes schwing","blinks","flickers","strobes","lights up")] on the \ [pick("front","side","top","bottom","rear","inside")] of [src]. A [pick("slot","funnel","chute","tube")] opens up in the \ - [pick("front","side","top","bottom","rear","inside")]." + [pick("front","side","top","bottom","rear","inside")]." /obj/machinery/replicator/process() if(spawning_types.len && powered()) @@ -178,4 +178,4 @@ user.drop_item() W.loc = src stored_materials.Add(W) - src.visible_message("\The [user] inserts \the [W] into \the [src].") + src.visible_message("\The [user] inserts \the [W] into \the [src].") diff --git a/code/modules/xenoarcheaology/artifacts/replicator_vr.dm b/code/modules/xenoarcheaology/artifacts/replicator_vr.dm index 43580ad72b..017b926de9 100644 --- a/code/modules/xenoarcheaology/artifacts/replicator_vr.dm +++ b/code/modules/xenoarcheaology/artifacts/replicator_vr.dm @@ -275,7 +275,7 @@ inserted_human.drop_from_inventory(I) inserted_mob.loc = src stored_materials.Add(inserted_mob) - src.visible_message("\The [user] inserts \the [inserted_mob] into \the [src].") + src.visible_message("\The [user] inserts \the [inserted_mob] into \the [src].") return else to_chat(user, "You cannot put \the [W] into the machine. ((The micro must be connected to the server.))") @@ -296,7 +296,7 @@ //Now that we've dropped all the items they have, let's shove them back into the micro holder. W.loc = src stored_materials.Add(W) - src.visible_message("\The [user] inserts \the [W] into \the [src].") + src.visible_message("\The [user] inserts \the [W] into \the [src].") /obj/machinery/replicator/vore/tgui_data(mob/user, datum/tgui/ui, datum/tgui_state/state) var/list/data = ..() @@ -543,7 +543,7 @@ inserted_human.drop_from_inventory(I) inserted_mob.loc = src stored_materials.Add(inserted_mob) - src.visible_message("\The [user] inserts \the [inserted_mob] into \the [src].") + src.visible_message("\The [user] inserts \the [inserted_mob] into \the [src].") return else to_chat(user, "You cannot put \the [W] into the machine. ((They must be connected to the server.))") @@ -562,7 +562,7 @@ //Now that we've dropped all the items they have, let's shove them back into the micro holder. W.loc = src stored_materials.Add(W) - src.visible_message("\The [user] inserts \the [W] into \the [src].") + src.visible_message("\The [user] inserts \the [W] into \the [src].") /obj/machinery/replicator/clothing/tgui_interact(mob/user, datum/tgui/ui) //This creates the menu. diff --git a/code/modules/xenoarcheaology/effect.dm b/code/modules/xenoarcheaology/effect.dm index 7409c8744f..bccb9faa0e 100644 --- a/code/modules/xenoarcheaology/effect.dm +++ b/code/modules/xenoarcheaology/effect.dm @@ -92,7 +92,7 @@ var/atom/toplevelholder = target while(!istype(toplevelholder.loc, /turf)) toplevelholder = toplevelholder.loc - toplevelholder.visible_message("\icon[toplevelholder][bicon(toplevelholder)] [toplevelholder] [display_msg]") + toplevelholder.visible_message("\icon[toplevelholder][bicon(toplevelholder)] [toplevelholder] [display_msg]") /datum/artifact_effect/proc/DoEffectTouch(var/mob/user) /datum/artifact_effect/proc/DoEffectAura(var/atom/holder) diff --git a/code/modules/xenoarcheaology/effect_master.dm b/code/modules/xenoarcheaology/effect_master.dm index f654724b32..b320cbead3 100644 --- a/code/modules/xenoarcheaology/effect_master.dm +++ b/code/modules/xenoarcheaology/effect_master.dm @@ -103,7 +103,7 @@ my_effects += my_effect else - to_chat(usr, "This effect can not be applied to this atom type.") + to_chat(usr, "This effect can not be applied to this atom type.") qdel(my_effect) /datum/component/artifact_master/proc/remove_effect() @@ -231,7 +231,7 @@ warn = 1 if(warn && isliving(bumped)) - to_chat(bumped, "You accidentally touch \the [holder] as it hits you.") + to_chat(bumped, "You accidentally touch \the [holder] as it hits you.") /datum/component/artifact_master/proc/on_bumped() var/atom/movable/M = args[2] @@ -252,7 +252,7 @@ warn = 1 if(warn && isliving(M)) - to_chat(M, "You accidentally touch \the [holder].") + to_chat(M, "You accidentally touch \the [holder].") /datum/component/artifact_master/proc/on_attack_hand() var/mob/living/user = args[2] @@ -260,10 +260,10 @@ return if (get_dist(user, holder) > 1) - to_chat(user, "You can't reach [holder] from here.") + to_chat(user, "You can't reach [holder] from here.") return if(ishuman(user) && user:gloves) - to_chat(user, "You touch [holder] with your gloved hands, [pick("but nothing of note happens","but nothing happens","but nothing interesting happens","but you notice nothing different","but nothing seems to have happened")].") + to_chat(user, "You touch [holder] with your gloved hands, [pick("but nothing of note happens","but nothing happens","but nothing interesting happens","but you notice nothing different","but nothing seems to have happened")].") return var/triggered = FALSE @@ -279,10 +279,10 @@ my_effect.DoEffectTouch(user) if(triggered) - to_chat(user, "You touch [holder].") + to_chat(user, "You touch [holder].") else - to_chat(user, "You touch [holder], [pick("but nothing of note happens","but nothing happens","but nothing interesting happens","but you notice nothing different","but nothing seems to have happened")].") + to_chat(user, "You touch [holder], [pick("but nothing of note happens","but nothing happens","but nothing interesting happens","but you notice nothing different","but nothing seems to have happened")].") /datum/component/artifact_master/proc/on_attackby() diff --git a/code/modules/xenoarcheaology/effects/cellcharge.dm b/code/modules/xenoarcheaology/effects/cellcharge.dm index d543ac2411..7f4d59b29d 100644 --- a/code/modules/xenoarcheaology/effects/cellcharge.dm +++ b/code/modules/xenoarcheaology/effects/cellcharge.dm @@ -11,7 +11,7 @@ var/mob/living/silicon/robot/R = user for (var/obj/item/weapon/cell/D in R.contents) D.charge += rand() * 100 + 50 - to_chat(R, "SYSTEM ALERT: Large energy boost detected!") + to_chat(R, "SYSTEM ALERT: Large energy boost detected!") /datum/artifact_effect/cellcharge/DoEffectAura() @@ -22,21 +22,28 @@ if(!turf) return for (var/obj/machinery/power/apc/apc as anything in GLOB.apcs) + if (apc.z != turf.z) + continue if(get_dist(turf, apc) <= 200) for (var/obj/item/weapon/cell/cell in apc.contents) cell.charge += 25 for (var/obj/machinery/power/smes/smes as anything in GLOB.smeses) + if (smes.z != turf.z) + continue if(get_dist(turf, smes) <= effectrange) smes.charge += 25 var/charged_robots for (var/mob/living/silicon/robot/robot as anything in global.silicon_mob_list) + if(turf.z != robot.z) + continue if(get_dist(turf, robot) < 50) var/charged_cells for (var/obj/item/weapon/cell/cell in robot.contents) cell.charge += 25 charged_cells = TRUE if(charged_cells) - to_chat(robot, "SYSTEM ALERT: Energy boost detected!") + if(world.time - last_message > 200) + to_chat(robot, "SYSTEM ALERT: Energy boost detected!") charged_robots = TRUE if(charged_robots) last_message = world.time @@ -55,5 +62,5 @@ for (var/obj/item/weapon/cell/D in M.contents) D.charge += rand() * 100 if(world.time - last_message > 200) - to_chat(M, "SYSTEM ALERT: Energy boost detected!") + to_chat(M, "SYSTEM ALERT: Energy boost detected!") last_message = world.time diff --git a/code/modules/xenobio/items/slimepotions.dm b/code/modules/xenobio/items/slimepotions.dm index fa1484e0d9..8148ef2e43 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/code/modules/xenobio/items/slimepotions_vr.dm b/code/modules/xenobio/items/slimepotions_vr.dm index 540a610056..0bd4db66f7 100644 --- a/code/modules/xenobio/items/slimepotions_vr.dm +++ b/code/modules/xenobio/items/slimepotions_vr.dm @@ -47,7 +47,7 @@ to_chat(user, "The slime cannot get any more fertile!") return ..() - to_chat(user, "You feed the slime the infertility agent. It will now have less offspring.") + to_chat(user, "You feed the slime the fertility agent. It will now have more offspring.") M.split_amount = between(2, M.split_amount + 2, 6) playsound(src, 'sound/effects/bubbles.ogg', 50, 1) qdel(src) @@ -192,4 +192,4 @@ if(istype(AI) && justified) AI.obedience = 10 playsound(src, 'sound/effects/bubbles.ogg', 50, 1) - qdel(src) \ No newline at end of file + qdel(src) diff --git a/code/modules/xgm/xgm_gas_mixture.dm b/code/modules/xgm/xgm_gas_mixture.dm index 083664f3e7..fd52efca22 100644 --- a/code/modules/xgm/xgm_gas_mixture.dm +++ b/code/modules/xgm/xgm_gas_mixture.dm @@ -420,10 +420,10 @@ if(full_heat_capacity + s_full_heat_capacity) temp_avg = (temperature * full_heat_capacity + other.temperature * s_full_heat_capacity) / (full_heat_capacity + s_full_heat_capacity) - //WOOT WOOT TOUCH THIS AND YOU ARE A dumb. + //WOOT WOOT TOUCH THIS AND YOU ARE A MISCHIEVIOUS LITTLE ELF if(sharing_lookup_table.len >= connecting_tiles) //6 or more interconnecting tiles will max at 42% of air moved per tick. ratio = sharing_lookup_table[connecting_tiles] - //WOOT WOOT TOUCH THIS AND YOU ARE A dumb + //WOOT WOOT TOUCH THIS AND YOU ARE A MISCHIEVIOUS LITTLE ELF for(var/g in avg_gas) gas[g] = max(0, (gas[g] - avg_gas[g]) * (1 - ratio) + avg_gas[g]) diff --git a/code/unit_tests/zas_tests.dm b/code/unit_tests/zas_tests.dm index 82de26db83..8fe6d90369 100644 --- a/code/unit_tests/zas_tests.dm +++ b/code/unit_tests/zas_tests.dm @@ -38,7 +38,7 @@ return test_result - if(UT_NORMAL || UT_NORMAL_COLD) + if(UT_NORMAL,UT_NORMAL_COLD) if(abs(pressure - ONE_ATMOSPHERE) > 10) test_result["msg"] = "Pressure out of bounds: [pressure] | [t_msg]" return test_result diff --git a/config/jukebox.json b/config/jukebox.json index 9955f68374..05bc23ec30 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/effects/weather.dmi b/icons/effects/weather.dmi index 94c1fed992..2c10f216a6 100644 Binary files a/icons/effects/weather.dmi and b/icons/effects/weather.dmi differ diff --git a/icons/inventory/accessory/item.dmi b/icons/inventory/accessory/item.dmi index 2dd848102b..ddda9fff64 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 a21b81c2b4..21eaf66ec1 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 e6bac630bd..04030363ce 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 a738336ba1..1ae86050c7 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 0000000000..b3c7e2dde1 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 0000000000..09fea15502 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 e021abfd67..f6cfbf5b2e 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 c621b7dadd..e8fe737655 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 29b7d76ef9..de6101e2a7 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 fb826bda1d..5181307aa3 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 af898b6e8f..37cd05ce5e 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 ef79bb38c9..3ac5e1b9f2 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 12a4fc9e3d..6c3603fd8a 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 5bdbcefc54..8512234e6d 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 f341eb6f28..1a393e68db 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 556cfcfb56..05dbda93cf 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 e3912aa269..eac6c88a5f 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 16fbe55fee..936dbc337a 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 90de50558e..6aeead5a24 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 d8e7dbd97f..4d677f1265 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 27db023df8..2974d0d883 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 f1570089c8..c1fa4ed377 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 52e3a4121f..9e478ee9d3 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 7616f26095..35b3192053 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 541a40a4b3..d9b4091217 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 2ec42eea27..e7116d9dc7 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 6b6ffed503..8a3d269acd 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 529cb62831..afb8a2a200 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 8743a62765..91c916553a 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 04ea0d2e7c..80f67332cb 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 f7a8187995..e22f9dcd27 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 7a5e4a27e7..40659b94f8 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 8d89071753..ad2aebade9 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 870fa34d38..03c5ce75f4 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 081e660d6d..400e781f9e 100644 Binary files a/icons/inventory/uniform/mob_vr.dmi and b/icons/inventory/uniform/mob_vr.dmi differ diff --git a/icons/misc/title_vr.dmi b/icons/misc/title_vr.dmi index e9774350d9..bbd2e4afe5 100644 Binary files a/icons/misc/title_vr.dmi and b/icons/misc/title_vr.dmi differ diff --git a/icons/mob/alienanimals_96x64.dmi b/icons/mob/alienanimals_96x64.dmi new file mode 100644 index 0000000000..d8c6d756a0 Binary files /dev/null and b/icons/mob/alienanimals_96x64.dmi differ diff --git a/icons/mob/alienanimals_x32.dmi b/icons/mob/alienanimals_x32.dmi index 1fef85f4d8..16dffa37a3 100644 Binary files a/icons/mob/alienanimals_x32.dmi and b/icons/mob/alienanimals_x32.dmi differ diff --git a/icons/mob/drakeborg/Drakeborg-Licensing.txt b/icons/mob/drakeborg/Drakeborg-Licensing.txt index f2d3ca925c..013b2e8376 100644 --- a/icons/mob/drakeborg/Drakeborg-Licensing.txt +++ b/icons/mob/drakeborg/Drakeborg-Licensing.txt @@ -1,5 +1,8 @@ Drakeborg & drakeplushies are created by deviantart.com/mizartz +Drakeplushies science, engineering, mining, trauma and janitorial are Adaptations of the drakeplushies above, created by github.com/Seris02. +Drakeborg (science) in this codebase is an Adaptation of the science drakeborg (lights have been altered), altered by github.com/Seris02. + https://creativecommons.org/licenses/by-nc-sa/3.0/ Attribution-NonCommercial-ShareAlike 3.0 Unported diff --git a/icons/mob/drakeborg/drakeborg_vr.dmi b/icons/mob/drakeborg/drakeborg_vr.dmi index 56a79ce19c..2165e78525 100644 Binary files a/icons/mob/drakeborg/drakeborg_vr.dmi and b/icons/mob/drakeborg/drakeborg_vr.dmi differ diff --git a/icons/mob/human.dmi b/icons/mob/human.dmi index 9a0255de62..8d0a1f5e2e 100644 Binary files a/icons/mob/human.dmi and b/icons/mob/human.dmi differ diff --git a/icons/mob/human_face_alt.dmi b/icons/mob/human_face_alt.dmi index 6811bb8fd6..6d02bc14bf 100644 Binary files a/icons/mob/human_face_alt.dmi and b/icons/mob/human_face_alt.dmi differ diff --git a/icons/mob/human_face_vr.dmi b/icons/mob/human_face_vr.dmi index 1c00c166ce..89a7a4612a 100644 Binary files a/icons/mob/human_face_vr.dmi and b/icons/mob/human_face_vr.dmi differ diff --git a/icons/mob/human_face_vr_add.dmi b/icons/mob/human_face_vr_add.dmi index d99aec1497..f1f3009e9f 100644 Binary files a/icons/mob/human_face_vr_add.dmi and b/icons/mob/human_face_vr_add.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 0000000000..e60cb65e38 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 0b2bc13a73..29442bf908 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_def_skrell.dmi b/icons/mob/human_races/r_def_skrell.dmi index 5224f7dd59..7b24ba3b4d 100644 Binary files a/icons/mob/human_races/r_def_skrell.dmi and b/icons/mob/human_races/r_def_skrell.dmi differ diff --git a/icons/mob/human_races/r_skrell.dmi b/icons/mob/human_races/r_skrell.dmi index cf99d43e60..05e51ca0da 100644 Binary files a/icons/mob/human_races/r_skrell.dmi and b/icons/mob/human_races/r_skrell.dmi differ diff --git a/icons/mob/human_races/r_vox_old.dmi b/icons/mob/human_races/r_vox_old.dmi index f212822aaf..cf0c3e88f8 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 9dd6b841f0..a89c272c84 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 0000000000..c0d181051a Binary files /dev/null and b/icons/mob/species/vox/tail.dmi differ diff --git a/icons/mob/talk_vr.dmi b/icons/mob/talk_vr.dmi index 0f192acf2d..eafdd6ad9f 100644 Binary files a/icons/mob/talk_vr.dmi and b/icons/mob/talk_vr.dmi differ diff --git a/icons/mob/vore/ears_vr.dmi b/icons/mob/vore/ears_vr.dmi index e38d45d4ca..0da5ddb726 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 d0f37de5f1..c9b2915651 100644 Binary files a/icons/mob/vore/tails_vr.dmi and b/icons/mob/vore/tails_vr.dmi differ diff --git a/icons/mob/vore/wings_vr.dmi b/icons/mob/vore/wings_vr.dmi index 089f436c9d..5d62b7bcd8 100644 Binary files a/icons/mob/vore/wings_vr.dmi and b/icons/mob/vore/wings_vr.dmi differ diff --git a/icons/mob/vore128x64.dmi b/icons/mob/vore128x64.dmi index 120f630d33..a8422c16bd 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 a08a052c90..f6669126d8 100644 Binary files a/icons/obj/chemical_vr.dmi and b/icons/obj/chemical_vr.dmi differ diff --git a/icons/obj/closets/decals/wall_double.dmi b/icons/obj/closets/decals/wall_double.dmi index 3649cd44ec..9a47f92f6b 100644 Binary files a/icons/obj/closets/decals/wall_double.dmi and b/icons/obj/closets/decals/wall_double.dmi differ diff --git a/icons/obj/decals_directions.dmi b/icons/obj/decals_directions.dmi index 14a8bd15b2..64e72c35ed 100644 Binary files a/icons/obj/decals_directions.dmi and b/icons/obj/decals_directions.dmi differ diff --git a/icons/obj/decals_levels.dmi b/icons/obj/decals_levels.dmi index 5390bf9bcf..779d5105e5 100644 Binary files a/icons/obj/decals_levels.dmi and b/icons/obj/decals_levels.dmi differ diff --git a/icons/obj/drakietoy_vr.dmi b/icons/obj/drakietoy_vr.dmi index 34a4932513..5d85adac8c 100644 Binary files a/icons/obj/drakietoy_vr.dmi and b/icons/obj/drakietoy_vr.dmi differ diff --git a/icons/obj/items.dmi b/icons/obj/items.dmi index 6b748673b5..88fe643156 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 44ea512b34..dae175f214 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 31d4daa9aa..a800cb284e 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/expedition_vr/aerostat/_aerostat_science_outpost.dm b/maps/expedition_vr/aerostat/_aerostat_science_outpost.dm index bf12e599b7..329f95d0d8 100644 --- a/maps/expedition_vr/aerostat/_aerostat_science_outpost.dm +++ b/maps/expedition_vr/aerostat/_aerostat_science_outpost.dm @@ -228,7 +228,7 @@ VIRGO2_TURF_CREATE(/turf/simulated/floor/hull) /area/offmap/aerostat/surface/outpost requires_power = TRUE dynamic_lighting = TRUE - ambience = null + ambience = list() /area/offmap/aerostat/surface/outpost/backroom name = "V2 Outpost - Research Area" diff --git a/maps/expedition_vr/space/_debrisfield.dm b/maps/expedition_vr/space/_debrisfield.dm index 6fe07d2cb9..b51c01ee31 100644 --- a/maps/expedition_vr/space/_debrisfield.dm +++ b/maps/expedition_vr/space/_debrisfield.dm @@ -10,6 +10,8 @@ color = "#ee3333" //Redish, so it stands out against the other debris-like icons initial_generic_waypoints = list("debrisfield_se", "debrisfield_nw") icon_state = "spacehulk_g" + possible_descriptors = list("default") + unique_identifier = "Debris Field" // -- Objs -- // @@ -94,6 +96,84 @@ name = "POI - Overrun Science Ship" requires_power = 0 +/area/submap/debrisfield/luxury_boat + secret_name = 0 + +/area/submap/debrisfield/luxury_boat/bridge + name = "Captain's Quarters" + +/area/submap/debrisfield/luxury_boat/crew + name = "Passenger Compartment" + +/area/submap/debrisfield/luxury_boat/engine + name = "Engineering" + +/area/submap/debrisfield/luxury_boat/cryo + name = "Emergency Cryopods" //Separated out based on comments on Pull Request + requires_power = 0 //Idea is to reinforce that this place SHOULD have its air retained. + +/datum/shuttle/autodock/overmap/luxury_boat + name = "Luxury Yacht" + warmup_time = 0 + current_location = "debris_field_yacht_start" + docking_controller_tag = "debris_yacht_docker" + shuttle_area = list(/area/submap/debrisfield/luxury_boat/engine, /area/submap/debrisfield/luxury_boat/cryo, /area/submap/debrisfield/luxury_boat/crew, /area/submap/debrisfield/luxury_boat/bridge) + fuel_consumption = 6 //wasteful decadent thing + defer_initialisation = TRUE + move_direction = WEST + +/obj/effect/shuttle_landmark/shuttle_initializer/luxury_boat + name = "Debris Field" + base_area = /area/space + base_turf = /turf/space + landmark_tag = "debris_field_yacht_start" + shuttle_type = /datum/shuttle/autodock/overmap/luxury_boat + +/obj/effect/shuttle_landmark/shuttle_initializer/luxury_boat/Initialize() + var/obj/effect/overmap/visitable/O = get_overmap_sector(get_z(src)) //make this into general system some other time + LAZYINITLIST(O.initial_restricted_waypoints) + O.initial_restricted_waypoints["Luxury Yacht"] = list(landmark_tag) + . = ..() + +/obj/effect/overmap/visitable/ship/landable/luxury_boat + name = "TBD" + scanner_desc = "TBD" + vessel_mass = 20000 //10 000 is too low. It's incredibly speedy that way. This is supposed to be a crappy luxury yacht, not a racer! + vessel_size = SHIP_SIZE_SMALL + shuttle = "Luxury Yacht" + +/obj/effect/overmap/visitable/ship/landable/luxury_boat/Initialize() + . = ..() + var/datum/lore/organization/O = loremaster.organizations[/datum/lore/organization/gov/elysia] + var/newname = "ECS-T [pick(O.ship_names)]" + name = newname + scanner_desc = {"\[i\]Registration\[/i\]: [newname] +\[i\]Class\[/i\]: Private Pleasure Yacht +\[i\]Transponder\[/i\]: Transmitting (CIV), Weak Signal +\[b\]Notice\[/b\]: Reported missing."} + rename_areas(newname) + +/obj/effect/overmap/visitable/ship/landable/luxury_boat/proc/rename_areas(newname) + if(!SSshuttles.subsystem_initialized) + spawn(300) + rename_areas(newname) + return + var/datum/shuttle/S = SSshuttles.shuttles[shuttle] + for(var/area/A in S.shuttle_area) + A.name = "[newname] [initial(A.name)]" + if(A.apc) + A.apc.name = "[A.name] APC" + A.air_vent_names = list() + A.air_scrub_names = list() + A.air_vent_info = list() + A.air_scrub_info = list() + for(var/obj/machinery/alarm/AA in A) + AA.name = "[A.name] Air Alarm" + +/obj/machinery/computer/shuttle_control/explore/luxury_boat + shuttle_tag = "Luxury Yacht" + req_one_access = list() + /area/submap/debrisfield/old_sat name = "POI - Old Satellite" diff --git a/maps/groundbase/gb-z1.dmm b/maps/groundbase/gb-z1.dmm index 2f056c8f10..fb77f6f0cb 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 53f92b7838..27353d94d0 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_defines.dm b/maps/groundbase/groundbase_defines.dm index cd95fa0f0f..dabb1bb2a4 100644 --- a/maps/groundbase/groundbase_defines.dm +++ b/maps/groundbase/groundbase_defines.dm @@ -26,6 +26,7 @@ ..() var/choice = pickweight(list( "virgo3C" = 200, + "rp2" = 200, "logo1" = 20, "logo2" = 20, "gateway" = 5 diff --git a/maps/groundbase/groundbase_events.dm b/maps/groundbase/groundbase_events.dm index 5cf4f0d561..265e1faad3 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/groundbase/groundbase_poi_stuff.dm b/maps/groundbase/groundbase_poi_stuff.dm index 161472287d..2089827d31 100644 --- a/maps/groundbase/groundbase_poi_stuff.dm +++ b/maps/groundbase/groundbase_poi_stuff.dm @@ -13,6 +13,7 @@ #include "pois/outdoors12.dmm" #include "pois/outdoors13.dmm" #include "pois/outdoors14.dmm" +#include "pois/outdoors16.dmm" #include "pois/cave1.dmm" #include "pois/cave2.dmm" @@ -220,6 +221,7 @@ mappath = 'pois/outdoors1.dmm' cost = 10 allow_duplicates = TRUE + /datum/map_template/groundbase/outdoor/thing2 name = "Outdoors2" mappath = 'pois/outdoors2.dmm' @@ -267,6 +269,10 @@ name = "Outdoors15" mappath = 'pois/outdoors15.dmm' allow_duplicates = FALSE +/datum/map_template/groundbase/outdoor/thing16 + name = "Outdoors16" + mappath = 'pois/outdoors16.dmm' + allow_duplicates = FALSE /datum/map_template/groundbase/maintcaves/cave name = "Cave 1" diff --git a/maps/groundbase/pois/outdoors16.dmm b/maps/groundbase/pois/outdoors16.dmm new file mode 100644 index 0000000000..ee0a8b6e28 --- /dev/null +++ b/maps/groundbase/pois/outdoors16.dmm @@ -0,0 +1,221 @@ +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/obj/item/weapon/reagent_containers/food/snacks/chip/nacho/cheese, +/turf/simulated/floor/outdoors/grass/seasonal/nomobs, +/area/template_noop) +"b" = ( +/obj/item/weapon/reagent_containers/food/snacks/chip/nacho/salsa, +/turf/simulated/floor/outdoors/grass/seasonal/nomobs, +/area/template_noop) +"c" = ( +/obj/random/drinkbottle, +/turf/simulated/floor/outdoors/grass/seasonal/nomobs, +/area/template_noop) +"d" = ( +/obj/structure/table/wooden_reinforced, +/obj/item/weapon/storage/toolbox/lunchbox/cat/filled{ + pixel_y = 8 + }, +/obj/item/weapon/storage/toolbox/lunchbox/nymph/filled, +/obj/item/clothing/suit/leathercoat{ + desc = "Who would use a leather coat as a tablecloth?!"; + name = "Tablecloth?!"; + pixel_x = 5 + }, +/obj/item/clothing/suit/greatcoat{ + desc = "This great coat appears covered in food! Did... it get stolen and reused as ... ?!"; + name = "Tablecloth?"; + pixel_x = -9 + }, +/turf/simulated/floor/outdoors/grass/seasonal/notrees_nomobs_nosnow, +/area/template_noop) +"g" = ( +/obj/effect/decal/cleanable/fruit_smudge, +/obj/item/weapon/storage/mre/random, +/turf/simulated/floor/outdoors/grass/seasonal/notrees_nomobs_lowsnow, +/area/template_noop) +"h" = ( +/obj/structure/table/bench/wooden, +/obj/effect/decal/cleanable/filth, +/obj/random/mob/wildscugs{ + newdesc = "A wild catslug enjoying the simpler things in life: a picnic!"; + newname = list("happy catslug", "rotund catslug", "anxious catslug", "angry Catslug", "content Catslug", "sad catslug") + }, +/turf/simulated/floor/outdoors/grass/seasonal/notrees_nomobs_nosnow, +/area/template_noop) +"i" = ( +/obj/structure/table/wooden_reinforced, +/obj/random/pizzabox, +/obj/item/weapon/storage/toolbox/lunchbox/mars/filled{ + pixel_x = -10; + pixel_y = 11 + }, +/obj/item/weapon/bedsheet/rd{ + desc = "Is this Nubbins' doing?!"; + name = "Strange tablecloth"; + pixel_x = 11; + pixel_y = 12 + }, +/obj/random/mug, +/turf/simulated/floor/outdoors/grass/seasonal/notrees_nomobs_nosnow, +/area/template_noop) +"k" = ( +/obj/random/drinkbottle, +/turf/simulated/floor/outdoors/grass/seasonal/notrees_nomobs_lowsnow, +/area/template_noop) +"m" = ( +/obj/random/coin, +/turf/simulated/floor/outdoors/grass/seasonal/nomobs, +/area/template_noop) +"n" = ( +/obj/effect/decal/cleanable/filth, +/turf/simulated/floor/outdoors/grass/seasonal/notrees_nomobs_lowsnow, +/area/template_noop) +"p" = ( +/obj/random/junk, +/turf/simulated/floor/outdoors/grass/seasonal/nomobs, +/area/template_noop) +"s" = ( +/obj/structure/table/bench/wooden, +/obj/random/mob/wildscugs{ + newdesc = "A wild catslug enjoying the simpler things in life: a picnic!"; + newname = list("happy catslug", "rotund catslug", "anxious catslug", "angry Catslug", "content Catslug", "sad catslug") + }, +/obj/item/weapon/ore/diamond{ + name = "porl" + }, +/turf/simulated/floor/outdoors/grass/seasonal/notrees_nomobs_nosnow, +/area/template_noop) +"t" = ( +/obj/item/pizzavoucher, +/turf/simulated/floor/outdoors/grass/seasonal/nomobs, +/area/template_noop) +"w" = ( +/obj/item/trash/chipbasket, +/turf/simulated/floor/outdoors/grass/seasonal/nomobs, +/area/template_noop) +"z" = ( +/obj/random/drinksoft, +/turf/simulated/floor/outdoors/grass/seasonal/notrees_nomobs_lowsnow, +/area/template_noop) +"A" = ( +/turf/simulated/floor/outdoors/grass/seasonal/nomobs, +/area/template_noop) +"F" = ( +/obj/structure/table/bench/wooden, +/obj/random/mob/wildscugs{ + newdesc = "A wild catslug enjoying the simpler things in life: a picnic!"; + newname = list("happy catslug", "rotund catslug", "anxious catslug", "angry Catslug", "content Catslug", "sad catslug") + }, +/obj/item/weapon/material/twohanded/spear/foam{ + desc = "The only way you can hunt things with this is by tickling them to death."; + name = "squishy foam spear" + }, +/turf/simulated/floor/outdoors/grass/seasonal/notrees_nomobs_nosnow, +/area/template_noop) +"J" = ( +/obj/structure/table/bench/wooden, +/obj/random/mob/wildscugs{ + newdesc = "A wild catslug enjoying the simpler things in life: a picnic!"; + newname = list("happy catslug", "rotund catslug", "anxious catslug", "angry Catslug", "content Catslug", "sad catslug") + }, +/turf/simulated/floor/outdoors/grass/seasonal/notrees_nomobs_nosnow, +/area/template_noop) +"L" = ( +/obj/effect/decal/remains/lizard, +/turf/simulated/floor/outdoors/grass/seasonal/nomobs, +/area/template_noop) +"N" = ( +/obj/structure/table/wooden_reinforced, +/obj/item/weapon/bedsheet/hosdouble{ + desc = "Odd, this tablecloth looks... suspiciously like the bedsheets NanoTrasen security staff use!"; + name = "Picnic Blanket" + }, +/obj/item/weapon/bedsheet/hosdouble{ + desc = "Odd, this tablecloth looks... suspiciously like the bedsheets NanoTrasen security staff use!"; + name = "Picnic Blanket"; + pixel_x = 11 + }, +/obj/item/weapon/storage/toolbox/lunchbox/heart/filled, +/turf/simulated/floor/outdoors/grass/seasonal/notrees_nomobs_nosnow, +/area/template_noop) +"O" = ( +/obj/structure/table/bench/wooden, +/obj/random/mob/wildscugs{ + newdesc = "A wild catslug enjoying the simpler things in life: a picnic!"; + newname = list("happy catslug", "rotund catslug", "anxious catslug", "angry Catslug", "content Catslug", "sad catslug") + }, +/obj/random/mug, +/turf/simulated/floor/outdoors/grass/seasonal/notrees_nomobs_nosnow, +/area/template_noop) +"Q" = ( +/obj/random/cigarettes, +/turf/simulated/floor/outdoors/grass/seasonal/nomobs, +/area/template_noop) +"S" = ( +/obj/structure/table/bench/wooden, +/obj/item/weapon/towel/random, +/obj/random/mob/wildscugs{ + newdesc = "A wild catslug enjoying the simpler things in life: a picnic!"; + newname = list("happy catslug", "rotund catslug", "anxious catslug", "angry Catslug", "content Catslug", "sad catslug") + }, +/turf/simulated/floor/outdoors/grass/seasonal/notrees_nomobs_nosnow, +/area/template_noop) +"T" = ( +/obj/effect/decal/cleanable/tomato_smudge, +/turf/simulated/floor/outdoors/grass/seasonal/notrees_nomobs_lowsnow, +/area/template_noop) +"Y" = ( +/obj/random/drinksoft, +/turf/simulated/floor/outdoors/grass/seasonal/nomobs, +/area/template_noop) + +(1,1,1) = {" +c +A +A +A +A +"} +(2,1,1) = {" +a +T +n +n +Y +"} +(3,1,1) = {" +Q +s +h +J +w +"} +(4,1,1) = {" +L +N +d +i +b +"} +(5,1,1) = {" +t +F +O +S +m +"} +(6,1,1) = {" +L +z +g +k +A +"} +(7,1,1) = {" +A +A +A +A +p +"} diff --git a/maps/offmap_vr/common_offmaps.dm b/maps/offmap_vr/common_offmaps.dm index 1076f00dd3..00e2440c1d 100644 --- a/maps/offmap_vr/common_offmaps.dm +++ b/maps/offmap_vr/common_offmaps.dm @@ -497,6 +497,8 @@ #include "../offmap_vr/om_ships/curashuttle.dm" #include "../offmap_vr/om_ships/itglight.dm" #include "../offmap_vr/om_ships/abductor.dm" +#include "../offmap_vr/om_ships/lunaship.dm" +#include "../offmap_vr/om_ships/sdf_corvettes.dm" ////////////////////////////////////////////////////////////////////////////// //Capsule deployed ships diff --git a/maps/offmap_vr/om_ships/abductor.dm b/maps/offmap_vr/om_ships/abductor.dm index 74bb329a59..bb731632e5 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/offmap_vr/om_ships/gecko_cr.dmm b/maps/offmap_vr/om_ships/gecko_cr.dmm index fcbae2a9aa..defc551901 100644 --- a/maps/offmap_vr/om_ships/gecko_cr.dmm +++ b/maps/offmap_vr/om_ships/gecko_cr.dmm @@ -1848,8 +1848,8 @@ /obj/effect/floor_decal/industrial/outline/grey, /obj/machinery/embedded_controller/radio/docking_port_multi{ child_names_txt = "Port Airlock Control;Starboard Airlock Control"; - child_tags_txt = "geck_sh_docking_port;geck_sh_docking_star"; - id_tag = "geck_sh_docking"; + child_tags_txt = "geck_cr_docking_port;geck_cr_docking_star"; + id_tag = "geck_cr_docking"; pixel_y = 22 }, /obj/structure/railing/grey{ @@ -2343,7 +2343,7 @@ /obj/machinery/atmospherics/unary/vent_pump, /obj/structure/handrail, /obj/machinery/embedded_controller/radio/airlock/docking_port_multi{ - id_tag = "geck_sh_docking_port"; + id_tag = "geck_cr_docking_port"; name = "Port AIrlock Control"; pixel_y = 22 }, @@ -2988,7 +2988,7 @@ /obj/machinery/atmospherics/unary/vent_pump, /obj/structure/handrail, /obj/machinery/embedded_controller/radio/airlock/docking_port_multi{ - id_tag = "geck_sh_docking_star"; + id_tag = "geck_cr_docking_star"; name = "Starboard Airlock Control"; pixel_y = 22 }, diff --git a/maps/offmap_vr/om_ships/sdf_corvette.dmm b/maps/offmap_vr/om_ships/sdf_corvette.dmm new file mode 100644 index 0000000000..1ac822457b --- /dev/null +++ b/maps/offmap_vr/om_ships/sdf_corvette.dmm @@ -0,0 +1,1035 @@ +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"bd" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/fuel, +/obj/machinery/atmospherics/unary/vent_pump{ + dir = 8 + }, +/obj/effect/map_helper/airlock/atmos/pump_out_internal, +/obj/structure/closet/walllocker_double/emergency_engi/north, +/obj/fiftyspawner/steel/hull, +/obj/fiftyspawner/rglass, +/obj/item/weapon/storage/toolbox/mechanical, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_corvette) +"bn" = ( +/obj/structure/cable/green{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/structure/cable/green{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 10 + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_corvette) +"cJ" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/fuel{ + dir = 10 + }, +/turf/simulated/wall/rshull, +/area/shuttle/sdf_corvette) +"cS" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/universal{ + dir = 4 + }, +/obj/effect/map_helper/airlock/sensor/int_sensor, +/obj/machinery/airlock_sensor/airlock_interior{ + pixel_y = -24 + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_corvette) +"dv" = ( +/obj/structure/cable/green{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/simulated/wall/rshull, +/area/shuttle/sdf_corvette) +"dG" = ( +/obj/machinery/sleeper{ + dir = 8 + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_corvette) +"dQ" = ( +/obj/machinery/atmospherics/unary/vent_pump{ + dir = 4 + }, +/obj/effect/map_helper/airlock/atmos/chamber_pump, +/obj/item/weapon/storage/toolbox/electrical, +/obj/structure/closet/walllocker_double/emergency_engi/north, +/obj/machinery/button/remote/airlock{ + dir = 4; + id = "sdf_airlock_w"; + name = "Port Airlock Control"; + pixel_x = -24; + specialfunctions = 4 + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_corvette) +"en" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ + dir = 8 + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_corvette) +"eD" = ( +/obj/machinery/door/firedoor/glass, +/obj/structure/grille, +/obj/structure/window/reinforced/full, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/machinery/door/blast/regular/open{ + dir = 4; + id = "sdfc_cockpitshutters"; + name = "Blast Shield" + }, +/turf/simulated/floor/plating, +/area/shuttle/sdf_corvette) +"eT" = ( +/obj/machinery/atmospherics/pipe/tank/phoron, +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/effect/floor_decal/industrial/warning/full, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_corvette) +"fX" = ( +/obj/machinery/door/firedoor/glass, +/obj/effect/floor_decal/industrial/warning{ + dir = 8 + }, +/obj/machinery/door/airlock/voidcraft/vertical{ + icon_state = "door_locked"; + id_tag = "sdfc_airlock_w"; + locked = 1 + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_corvette) +"hn" = ( +/obj/machinery/atmospherics/unary/vent_pump{ + dir = 4 + }, +/obj/effect/map_helper/airlock/atmos/chamber_pump, +/obj/machinery/light, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_corvette) +"hy" = ( +/obj/machinery/power/smes/buildable, +/obj/structure/cable/green{ + d2 = 4; + icon_state = "0-4" + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_corvette) +"jK" = ( +/obj/structure/handrail, +/obj/machinery/atmospherics/pipe/manifold4w/hidden, +/obj/machinery/embedded_controller/radio/airlock/docking_port{ + id_tag = "sdfc_dock_con"; + pixel_y = 24 + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_corvette) +"jS" = ( +/obj/machinery/computer/ship/helm{ + req_one_access = list() + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_corvette) +"kI" = ( +/obj/structure/bed/chair/shuttle{ + dir = 1 + }, +/obj/structure/cable/green{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/machinery/atmospherics/unary/vent_scrubber, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_corvette) +"lI" = ( +/obj/machinery/atmospherics/unary/vent_pump{ + dir = 8 + }, +/obj/effect/map_helper/airlock/atmos/chamber_pump, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_corvette) +"lJ" = ( +/obj/machinery/atmospherics/pipe/simple/hidden, +/turf/simulated/wall/rshull, +/area/shuttle/sdf_corvette) +"lN" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply, +/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ + dir = 8 + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_corvette) +"lW" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/door/firedoor/glass, +/obj/effect/map_helper/airlock/door/int_door, +/obj/machinery/door/airlock/voidcraft, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_corvette) +"ms" = ( +/obj/machinery/computer/ship/sensors{ + dir = 4 + }, +/obj/machinery/button/remote/blast_door{ + id = "sdfc_cockpitshutters"; + name = "Blast Shields Control"; + pixel_y = 24 + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_corvette) +"mT" = ( +/obj/structure/cable/green{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/structure/cable/green{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/machinery/sleep_console, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_corvette) +"nh" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/fuel{ + dir = 6 + }, +/turf/simulated/wall/rshull, +/area/shuttle/sdf_corvette) +"nq" = ( +/obj/structure/handrail, +/obj/effect/floor_decal/industrial/warning{ + dir = 4 + }, +/obj/machinery/button/remote/airlock{ + id = "sdfc_compartment"; + name = "Access Hatch Control"; + pixel_y = 24; + specialfunctions = 4 + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_corvette) +"nr" = ( +/obj/machinery/pointdefense_control{ + id_tag = "sdfc_pd" + }, +/obj/machinery/alarm/alarms_hidden{ + dir = 1; + pixel_y = -26 + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_corvette) +"pl" = ( +/obj/structure/bed/chair/bay/shuttle{ + dir = 8 + }, +/obj/structure/cable/green{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/unary/vent_scrubber{ + dir = 8 + }, +/obj/machinery/alarm/alarms_hidden{ + dir = 8; + pixel_x = 26 + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_corvette) +"pu" = ( +/obj/machinery/sleep_console, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_corvette) +"pG" = ( +/obj/effect/floor_decal/industrial/warning{ + dir = 6 + }, +/obj/machinery/atmospherics/unary/vent_pump/high_volume{ + dir = 1 + }, +/obj/effect/map_helper/airlock/atmos/pump_out_external, +/turf/simulated/floor/tiled/techfloor{ + nitrogen = 0; + oxygen = 0 + }, +/area/shuttle/sdf_corvette) +"ri" = ( +/obj/machinery/door/firedoor/glass, +/obj/structure/grille, +/obj/structure/window/reinforced/full, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/cable/green{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/machinery/door/blast/regular/open{ + id = "sdfc_cockpitshutters"; + name = "Blast Shield" + }, +/turf/simulated/floor/plating, +/area/shuttle/sdf_corvette) +"rX" = ( +/obj/structure/bed/chair/bay/shuttle{ + dir = 4 + }, +/obj/machinery/power/terminal{ + dir = 1 + }, +/obj/structure/cable{ + d2 = 4; + icon_state = "0-4" + }, +/obj/structure/extinguisher_cabinet{ + dir = 4; + pixel_x = -30 + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_corvette) +"sG" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/unary/vent_pump{ + dir = 4 + }, +/obj/effect/map_helper/airlock/atmos/pump_out_internal, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_corvette) +"tg" = ( +/obj/structure/cable/green{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/sleeper{ + dir = 8 + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_corvette) +"tt" = ( +/obj/machinery/atmospherics/pipe/manifold/hidden/fuel{ + dir = 8 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/unary/vent_pump{ + dir = 8 + }, +/obj/effect/map_helper/airlock/atmos/pump_out_internal, +/obj/effect/shuttle_landmark/shuttle_initializer/sdf_corvette, +/obj/effect/overmap/visitable/ship/landable/sdf_corvette, +/obj/machinery/light, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_corvette) +"uw" = ( +/obj/structure/bed/chair/bay/shuttle{ + dir = 8 + }, +/obj/structure/closet/walllocker/emerglocker/east, +/obj/machinery/atmospherics/unary/vent_pump/on{ + dir = 8 + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_corvette) +"uD" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/cable/green{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_corvette) +"wl" = ( +/obj/machinery/atmospherics/unary/vent_pump{ + dir = 8 + }, +/obj/effect/map_helper/airlock/atmos/chamber_pump, +/obj/machinery/light{ + dir = 1 + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_corvette) +"wn" = ( +/obj/machinery/atmospherics/pipe/manifold/hidden/fuel{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/hidden{ + dir = 9 + }, +/turf/simulated/wall/rshull, +/area/shuttle/sdf_corvette) +"wQ" = ( +/obj/structure/cable/green{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/door/firedoor/glass, +/obj/machinery/door/airlock/hatch{ + req_one_access = list() + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/obj/machinery/atmospherics/pipe/simple/hidden/supply, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_corvette) +"xk" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/cable/green{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 5 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_corvette) +"ye" = ( +/obj/machinery/atmospherics/pipe/manifold4w/hidden/fuel, +/turf/simulated/wall/rshull, +/area/shuttle/sdf_corvette) +"yA" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 9 + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_corvette) +"yN" = ( +/obj/machinery/atmospherics/unary/vent_pump{ + dir = 8 + }, +/obj/structure/handrail{ + dir = 4 + }, +/obj/effect/floor_decal/industrial/warning{ + dir = 4 + }, +/turf/simulated/floor/airless, +/area/shuttle/sdf_corvette) +"zb" = ( +/obj/structure/cable/green{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_corvette) +"zn" = ( +/obj/effect/floor_decal/industrial/hatch/yellow, +/obj/structure/sign/warning/airlock{ + pixel_y = -32 + }, +/obj/machinery/light, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_corvette) +"zX" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 5 + }, +/obj/structure/extinguisher_cabinet{ + dir = 1; + pixel_y = -28 + }, +/obj/machinery/light, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_corvette) +"Cg" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/machinery/atmospherics/unary/vent_pump{ + dir = 4 + }, +/obj/effect/map_helper/airlock/atmos/pump_out_internal, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_corvette) +"Cq" = ( +/obj/structure/cable/green{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/computer/ship/engines{ + dir = 8 + }, +/obj/machinery/button/remote/blast_door{ + id = "sdfc_cockpitshutters"; + name = "Blast Shields Control"; + pixel_y = 24 + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_corvette) +"Eg" = ( +/obj/structure/cable/green{ + d2 = 2; + icon_state = "0-2" + }, +/obj/effect/floor_decal/industrial/warning{ + dir = 5 + }, +/obj/machinery/power/pointdefense{ + id_tag = "sdfc_pd"; + name = "\improper twin-linked laser turret" + }, +/turf/simulated/floor/airless, +/area/shuttle/sdf_corvette) +"Eo" = ( +/obj/effect/floor_decal/industrial/warning{ + dir = 4 + }, +/turf/simulated/floor/airless, +/area/shuttle/sdf_corvette) +"EN" = ( +/obj/structure/handrail, +/obj/machinery/atmospherics/pipe/manifold/hidden{ + dir = 1 + }, +/obj/machinery/airlock_sensor{ + pixel_y = 22 + }, +/obj/effect/map_helper/airlock/sensor/chamber_sensor, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_corvette) +"Fb" = ( +/obj/structure/cable/green{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/simulated/wall/rshull, +/area/shuttle/sdf_corvette) +"Fp" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/turf/simulated/wall/rshull, +/area/shuttle/sdf_corvette) +"Hb" = ( +/obj/machinery/shipsensors{ + dir = 1 + }, +/obj/effect/floor_decal/industrial/warning{ + dir = 9 + }, +/turf/simulated/floor/airless, +/area/shuttle/sdf_corvette) +"Hu" = ( +/obj/machinery/atmospherics/pipe/manifold/hidden/fuel{ + dir = 1 + }, +/turf/simulated/wall/rshull, +/area/shuttle/sdf_corvette) +"Ib" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/fuel{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/door/firedoor/glass, +/obj/effect/floor_decal/industrial/warning{ + dir = 4 + }, +/obj/effect/map_helper/airlock/door/ext_door, +/obj/machinery/door/airlock/voidcraft/vertical, +/obj/machinery/airlock_sensor/airlock_exterior{ + dir = 4; + pixel_x = 10; + pixel_y = 25 + }, +/obj/effect/map_helper/airlock/sensor/ext_sensor, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_corvette) +"IY" = ( +/obj/machinery/door/firedoor/glass, +/obj/structure/grille, +/obj/structure/window/reinforced/full, +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/machinery/door/blast/regular/open{ + id = "sdfc_cockpitshutters"; + name = "Blast Shield" + }, +/turf/simulated/floor/plating, +/area/shuttle/sdf_corvette) +"JX" = ( +/obj/structure/handrail{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/manifold/hidden, +/obj/structure/extinguisher_cabinet{ + dir = 1; + pixel_y = -28 + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_corvette) +"Kj" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/fuel, +/turf/simulated/wall/rshull, +/area/shuttle/sdf_corvette) +"KJ" = ( +/obj/structure/handrail{ + dir = 1 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/manifold4w/hidden, +/obj/machinery/button/remote/airlock{ + dir = 1; + id = "sdfc_airlock_s"; + name = "Aft Airlock Control"; + pixel_y = -24; + specialfunctions = 4 + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_corvette) +"KM" = ( +/turf/template_noop, +/area/space) +"Ly" = ( +/obj/machinery/door/firedoor/glass, +/obj/structure/grille, +/obj/structure/window/reinforced/full, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/machinery/door/blast/regular/open{ + id = "sdfc_cockpitshutters"; + name = "Blast Shield" + }, +/turf/simulated/floor/plating, +/area/shuttle/sdf_corvette) +"LM" = ( +/obj/structure/bed/chair/bay/shuttle{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/obj/structure/closet/walllocker_double/medical/east, +/obj/effect/floor_decal/industrial/warning/corner{ + dir = 4 + }, +/obj/item/weapon/storage/firstaid{ + pixel_x = 2; + pixel_y = 2 + }, +/obj/item/weapon/storage/firstaid/o2{ + pixel_x = -2; + pixel_y = -2 + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_corvette) +"Ms" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/fuel{ + dir = 4 + }, +/obj/machinery/door/firedoor/glass, +/obj/machinery/atmospherics/pipe/simple/hidden{ + dir = 6 + }, +/obj/machinery/door/airlock/multi_tile/glass{ + icon_state = "door_locked"; + id_tag = "sdfc_airlock_s"; + locked = 1 + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_corvette) +"Oc" = ( +/obj/structure/cable/green{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/cable/green{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/structure/closet/walllocker/emerglocker/north, +/obj/machinery/light{ + dir = 1 + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_corvette) +"PO" = ( +/obj/effect/floor_decal/industrial/warning{ + dir = 4 + }, +/obj/machinery/door/firedoor/glass, +/obj/machinery/door/airlock/voidcraft/vertical{ + id_tag = "sdfc_compartment" + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_corvette) +"Qn" = ( +/obj/structure/bed/chair/shuttle{ + dir = 1 + }, +/obj/machinery/atmospherics/unary/vent_pump/on, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_corvette) +"QG" = ( +/obj/machinery/power/pointdefense{ + id_tag = "sdfc_pd"; + name = "\improper twin-linked laser turret" + }, +/obj/structure/cable/green{ + d2 = 4; + icon_state = "0-4" + }, +/obj/effect/floor_decal/industrial/warning{ + dir = 9 + }, +/turf/simulated/floor/airless, +/area/shuttle/sdf_corvette) +"Rb" = ( +/obj/machinery/computer/shuttle_control/explore/sdf_corvette, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_corvette) +"RW" = ( +/obj/effect/floor_decal/industrial/warning{ + dir = 10 + }, +/obj/machinery/atmospherics/unary/vent_pump/high_volume{ + dir = 1 + }, +/obj/effect/map_helper/airlock/atmos/pump_out_external, +/turf/simulated/floor/tiled/techfloor{ + nitrogen = 0; + oxygen = 0 + }, +/area/shuttle/sdf_corvette) +"Tf" = ( +/obj/structure/cable/green{ + d2 = 8; + icon_state = "0-8" + }, +/obj/machinery/power/apc/alarms_hidden{ + pixel_y = -24 + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_corvette) +"TK" = ( +/obj/machinery/atmospherics/pipe/manifold/hidden{ + dir = 1 + }, +/obj/effect/floor_decal/industrial/hatch/yellow, +/obj/structure/closet/walllocker/emerglocker/south, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_corvette) +"UB" = ( +/turf/simulated/wall/rshull, +/area/shuttle/sdf_corvette) +"VN" = ( +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/effect/floor_decal/industrial/warning/full, +/obj/machinery/atmospherics/pipe/tank/air{ + dir = 4 + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_corvette) +"Wf" = ( +/obj/machinery/atmospherics/unary/engine{ + dir = 1 + }, +/turf/simulated/shuttle/plating/airless/carry, +/area/shuttle/sdf_corvette) +"Wy" = ( +/obj/structure/cable/green{ + d2 = 8; + icon_state = "0-8" + }, +/obj/effect/floor_decal/industrial/warning{ + dir = 4 + }, +/obj/machinery/power/pointdefense{ + id_tag = "sdfc_pd"; + name = "\improper twin-linked laser turret" + }, +/turf/simulated/floor/airless, +/area/shuttle/sdf_corvette) +"WA" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/fuel{ + dir = 4 + }, +/obj/machinery/door/firedoor/glass, +/obj/machinery/atmospherics/pipe/manifold/hidden{ + dir = 1 + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_corvette) +"WR" = ( +/obj/effect/floor_decal/industrial/warning{ + dir = 5 + }, +/obj/structure/handrail{ + dir = 4 + }, +/obj/structure/fuel_port/heavy{ + dir = 8; + pixel_x = -30 + }, +/turf/simulated/floor/airless, +/area/shuttle/sdf_corvette) + +(1,1,1) = {" +KM +KM +KM +KM +KM +KM +KM +KM +KM +KM +KM +KM +KM +KM +KM +KM +KM +"} +(2,1,1) = {" +KM +KM +KM +KM +KM +KM +KM +KM +QG +UB +UB +UB +UB +fX +nh +Wf +KM +"} +(3,1,1) = {" +KM +Hb +UB +IY +IY +UB +UB +UB +dv +UB +VN +UB +dQ +hn +Hu +Wf +KM +"} +(4,1,1) = {" +KM +UB +UB +ms +nr +UB +hy +rX +tg +dG +TK +lJ +jK +JX +Hu +Wf +KM +"} +(5,1,1) = {" +KM +eD +jS +Qn +zX +UB +Oc +uD +mT +pu +cS +UB +wl +lI +Ms +RW +KM +"} +(6,1,1) = {" +KM +eD +Rb +kI +bn +wQ +zb +lN +xk +en +yA +lW +sG +Cg +WA +pG +KM +"} +(7,1,1) = {" +KM +UB +UB +Cq +Tf +UB +nq +LM +pl +uw +zn +UB +EN +KJ +wn +Wf +KM +"} +(8,1,1) = {" +KM +Eg +Fb +ri +Ly +UB +PO +Fp +dv +UB +eT +Kj +bd +tt +ye +Wf +KM +"} +(9,1,1) = {" +KM +KM +KM +KM +KM +WR +Eo +yN +Wy +UB +UB +UB +UB +Ib +cJ +Wf +KM +"} +(10,1,1) = {" +KM +KM +KM +KM +KM +KM +KM +KM +KM +KM +KM +KM +KM +KM +KM +KM +KM +"} diff --git a/maps/offmap_vr/om_ships/sdf_corvette_wreck.dmm b/maps/offmap_vr/om_ships/sdf_corvette_wreck.dmm new file mode 100644 index 0000000000..6993433087 --- /dev/null +++ b/maps/offmap_vr/om_ships/sdf_corvette_wreck.dmm @@ -0,0 +1,1236 @@ +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"bd" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/fuel, +/obj/machinery/atmospherics/unary/vent_pump{ + dir = 8 + }, +/obj/effect/map_helper/airlock/atmos/pump_out_internal, +/obj/structure/closet/walllocker_double/emergency_engi/north, +/obj/fiftyspawner/steel/hull, +/obj/fiftyspawner/rglass, +/obj/item/weapon/storage/toolbox/mechanical, +/turf/simulated/floor/tiled/techfloor{ + nitrogen = 0; + oxygen = 0 + }, +/area/shuttle/sdf_corvette_wreck) +"bn" = ( +/obj/structure/cable/green{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/structure/cable/green{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 10 + }, +/obj/item/trash/material/circuit, +/obj/item/weapon/material/shard/shrapnel, +/turf/simulated/floor/tiled/techfloor{ + nitrogen = 0; + oxygen = 0 + }, +/area/shuttle/sdf_corvette_wreck) +"cJ" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/fuel{ + dir = 10 + }, +/turf/simulated/wall/rshull, +/area/shuttle/sdf_corvette_wreck) +"cS" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/universal{ + dir = 4 + }, +/obj/effect/map_helper/airlock/sensor/int_sensor, +/obj/machinery/airlock_sensor/airlock_interior{ + pixel_y = -24 + }, +/obj/item/weapon/material/shard/shrapnel, +/turf/simulated/floor/tiled/techfloor{ + nitrogen = 0; + oxygen = 0 + }, +/area/shuttle/sdf_corvette_wreck) +"dv" = ( +/obj/structure/cable/green{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/girder, +/turf/simulated/floor/airless, +/area/shuttle/sdf_corvette_wreck) +"dG" = ( +/obj/machinery/sleeper{ + dir = 8 + }, +/turf/simulated/floor/tiled/techfloor{ + nitrogen = 0; + oxygen = 0 + }, +/area/shuttle/sdf_corvette_wreck) +"dQ" = ( +/obj/machinery/atmospherics/unary/vent_pump{ + dir = 4 + }, +/obj/effect/map_helper/airlock/atmos/chamber_pump, +/obj/item/weapon/storage/toolbox/electrical, +/obj/structure/closet/walllocker_double/emergency_engi/north, +/obj/machinery/button/remote/airlock{ + dir = 4; + id = "sdfc_airlock_w_wreck"; + name = "Port Airlock Control"; + pixel_x = -24; + specialfunctions = 4 + }, +/turf/simulated/floor/tiled/techfloor{ + nitrogen = 0; + oxygen = 0 + }, +/area/shuttle/sdf_corvette_wreck) +"en" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ + dir = 8 + }, +/obj/item/weapon/material/shard, +/turf/simulated/floor/tiled/techfloor{ + nitrogen = 0; + oxygen = 0 + }, +/area/shuttle/sdf_corvette_wreck) +"eD" = ( +/obj/machinery/door/firedoor/glass, +/obj/structure/grille, +/obj/machinery/door/blast/regular/open{ + dir = 4; + id = "sdfc_wreck_cockpitshutters"; + name = "Blast Shield" + }, +/obj/item/weapon/material/shard, +/turf/simulated/floor/airless, +/area/shuttle/sdf_corvette_wreck) +"eT" = ( +/obj/machinery/atmospherics/pipe/tank/phoron, +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/effect/floor_decal/industrial/warning/full, +/turf/simulated/floor/tiled/techfloor{ + nitrogen = 0; + oxygen = 0 + }, +/area/shuttle/sdf_corvette_wreck) +"fX" = ( +/obj/machinery/door/firedoor/glass, +/obj/effect/floor_decal/industrial/warning{ + dir = 8 + }, +/obj/machinery/door/airlock/voidcraft/vertical{ + icon_state = "door_locked"; + id_tag = "sdfc_airlock_w_wreck"; + locked = 1 + }, +/turf/simulated/floor/tiled/techfloor{ + nitrogen = 0; + oxygen = 0 + }, +/area/shuttle/sdf_corvette_wreck) +"hn" = ( +/obj/machinery/atmospherics/unary/vent_pump{ + dir = 4 + }, +/obj/effect/map_helper/airlock/atmos/chamber_pump, +/obj/machinery/light_construct, +/turf/simulated/floor/tiled/techfloor{ + nitrogen = 0; + oxygen = 0 + }, +/area/shuttle/sdf_corvette_wreck) +"hy" = ( +/obj/machinery/power/smes/buildable, +/obj/structure/cable/green{ + d2 = 4; + icon_state = "0-4" + }, +/turf/simulated/floor/tiled/techfloor{ + nitrogen = 0; + oxygen = 0 + }, +/area/shuttle/sdf_corvette_wreck) +"jK" = ( +/obj/structure/handrail, +/obj/machinery/atmospherics/pipe/manifold4w/hidden, +/obj/machinery/embedded_controller/radio/airlock/docking_port{ + id_tag = "sdfc_wreck_dock_con"; + pixel_y = 24 + }, +/obj/effect/landmark/corpse/vintage/marine, +/obj/effect/decal/cleanable/blood, +/turf/simulated/floor/tiled/techfloor{ + nitrogen = 0; + oxygen = 0 + }, +/area/shuttle/sdf_corvette_wreck) +"jS" = ( +/obj/machinery/computer/ship/helm{ + req_one_access = list() + }, +/turf/simulated/floor/tiled/techfloor{ + nitrogen = 0; + oxygen = 0 + }, +/area/shuttle/sdf_corvette_wreck) +"kI" = ( +/obj/structure/bed/chair/shuttle{ + dir = 1 + }, +/obj/structure/cable/green{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/machinery/atmospherics/unary/vent_scrubber, +/obj/item/weapon/gun/energy/gun/compact, +/turf/simulated/floor/tiled/techfloor{ + nitrogen = 0; + oxygen = 0 + }, +/area/shuttle/sdf_corvette_wreck) +"lI" = ( +/obj/machinery/atmospherics/unary/vent_pump{ + dir = 8 + }, +/obj/effect/map_helper/airlock/atmos/chamber_pump, +/obj/item/weapon/material/shard, +/obj/machinery/light{ + dir = 1 + }, +/turf/simulated/floor/tiled/techfloor{ + nitrogen = 0; + oxygen = 0 + }, +/area/shuttle/sdf_corvette_wreck) +"lJ" = ( +/obj/machinery/atmospherics/pipe/simple/hidden, +/turf/simulated/wall/rshull, +/area/shuttle/sdf_corvette_wreck) +"lN" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply, +/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ + dir = 8 + }, +/obj/item/weapon/material/shard, +/turf/simulated/floor/tiled/techfloor{ + nitrogen = 0; + oxygen = 0 + }, +/area/shuttle/sdf_corvette_wreck) +"lW" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/door/firedoor/glass, +/obj/effect/map_helper/airlock/door/int_door, +/obj/machinery/door/airlock/voidcraft, +/turf/simulated/floor/tiled/techfloor{ + nitrogen = 0; + oxygen = 0 + }, +/area/shuttle/sdf_corvette_wreck) +"ms" = ( +/obj/machinery/computer/ship/sensors{ + dir = 4 + }, +/obj/machinery/button/remote/blast_door{ + id = "sdfc_wreck_cockpitshutters"; + name = "Blast Shields Control"; + pixel_y = 24 + }, +/turf/simulated/floor/tiled/techfloor{ + nitrogen = 0; + oxygen = 0 + }, +/area/shuttle/sdf_corvette_wreck) +"mT" = ( +/obj/structure/cable/green{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/structure/cable/green{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/turf/simulated/floor/tiled/techfloor{ + nitrogen = 0; + oxygen = 0 + }, +/area/shuttle/sdf_corvette_wreck) +"nh" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/fuel{ + dir = 6 + }, +/obj/structure/girder, +/turf/simulated/floor/airless, +/area/shuttle/sdf_corvette_wreck) +"nq" = ( +/obj/structure/handrail, +/obj/effect/floor_decal/industrial/warning{ + dir = 4 + }, +/obj/machinery/button/remote/airlock{ + id = "sdfc_wreck_compartment"; + name = "Access Hatch Control"; + pixel_y = 24; + specialfunctions = 4 + }, +/obj/effect/landmark/corpse/vintage/marine, +/turf/simulated/floor/tiled/techfloor{ + nitrogen = 0; + oxygen = 0 + }, +/area/shuttle/sdf_corvette_wreck) +"nr" = ( +/obj/machinery/pointdefense_control{ + id_tag = "sdfc_wreck_pd" + }, +/obj/machinery/alarm/alarms_hidden{ + dir = 1; + pixel_y = -26 + }, +/obj/item/weapon/material/shard/shrapnel, +/obj/item/weapon/material/shard, +/turf/simulated/floor/tiled/techfloor{ + nitrogen = 0; + oxygen = 0 + }, +/area/shuttle/sdf_corvette_wreck) +"pl" = ( +/obj/structure/bed/chair/bay/shuttle{ + dir = 8 + }, +/obj/structure/cable/green{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/unary/vent_scrubber{ + dir = 8 + }, +/obj/machinery/alarm/alarms_hidden{ + dir = 8; + pixel_x = 26 + }, +/obj/effect/decal/cleanable/blood, +/obj/item/weapon/material/shard/shrapnel, +/turf/simulated/floor/tiled/techfloor{ + nitrogen = 0; + oxygen = 0 + }, +/area/shuttle/sdf_corvette_wreck) +"pu" = ( +/obj/machinery/sleep_console, +/turf/simulated/floor/tiled/techfloor{ + nitrogen = 0; + oxygen = 0 + }, +/area/shuttle/sdf_corvette_wreck) +"pG" = ( +/obj/effect/floor_decal/industrial/warning{ + dir = 6 + }, +/obj/machinery/atmospherics/unary/vent_pump/high_volume{ + dir = 1 + }, +/obj/effect/map_helper/airlock/atmos/pump_out_external, +/turf/simulated/floor/tiled/techfloor{ + nitrogen = 0; + oxygen = 0 + }, +/area/shuttle/sdf_corvette_wreck) +"ri" = ( +/obj/machinery/door/firedoor/glass, +/obj/structure/grille, +/obj/structure/cable/green{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/machinery/door/blast/regular/open{ + id = "sdfc_wreck_cockpitshutters"; + name = "Blast Shield" + }, +/turf/simulated/floor/airless, +/area/shuttle/sdf_corvette_wreck) +"rX" = ( +/obj/structure/bed/chair/bay/shuttle{ + dir = 4 + }, +/obj/machinery/power/terminal{ + dir = 1 + }, +/obj/structure/cable{ + d2 = 4; + icon_state = "0-4" + }, +/obj/structure/extinguisher_cabinet{ + dir = 4; + pixel_x = -30 + }, +/obj/effect/decal/cleanable/blood, +/turf/simulated/floor/tiled/techfloor{ + nitrogen = 0; + oxygen = 0 + }, +/area/shuttle/sdf_corvette_wreck) +"sG" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/unary/vent_pump{ + dir = 4 + }, +/obj/effect/map_helper/airlock/atmos/pump_out_internal, +/obj/item/weapon/material/shard/shrapnel, +/turf/simulated/floor/tiled/techfloor{ + nitrogen = 0; + oxygen = 0 + }, +/area/shuttle/sdf_corvette_wreck) +"tg" = ( +/obj/structure/cable/green{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/item/weapon/material/shard/shrapnel, +/turf/simulated/floor/tiled/techfloor{ + nitrogen = 0; + oxygen = 0 + }, +/area/shuttle/sdf_corvette_wreck) +"tt" = ( +/obj/machinery/atmospherics/pipe/manifold/hidden/fuel{ + dir = 8 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/unary/vent_pump{ + dir = 8 + }, +/obj/effect/map_helper/airlock/atmos/pump_out_internal, +/obj/effect/shuttle_landmark/shuttle_initializer/sdf_corvette_wreck, +/obj/effect/overmap/visitable/ship/landable/sdf_corvette_wreck, +/obj/machinery/light_construct, +/turf/simulated/floor/tiled/techfloor{ + nitrogen = 0; + oxygen = 0 + }, +/area/shuttle/sdf_corvette_wreck) +"uw" = ( +/obj/structure/bed/chair/bay/shuttle{ + dir = 8 + }, +/obj/structure/closet/walllocker/emerglocker/east, +/obj/machinery/atmospherics/unary/vent_pump/on{ + dir = 8 + }, +/turf/simulated/floor/tiled/techfloor{ + nitrogen = 0; + oxygen = 0 + }, +/area/shuttle/sdf_corvette_wreck) +"uD" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/cable/green{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/effect/landmark/corpse/vintage/marine, +/obj/item/weapon/gun/energy/laser/old, +/turf/simulated/floor/tiled/techfloor{ + nitrogen = 0; + oxygen = 0 + }, +/area/shuttle/sdf_corvette_wreck) +"wn" = ( +/obj/machinery/atmospherics/pipe/manifold/hidden/fuel{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/hidden{ + dir = 9 + }, +/turf/simulated/wall/rshull, +/area/shuttle/sdf_corvette_wreck) +"wQ" = ( +/obj/structure/cable/green{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/door/firedoor/glass, +/obj/machinery/door/airlock/hatch{ + req_one_access = list() + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/obj/machinery/atmospherics/pipe/simple/hidden/supply, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_corvette_wreck) +"xk" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/cable/green{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 5 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply, +/turf/simulated/floor/tiled/techfloor{ + nitrogen = 0; + oxygen = 0 + }, +/area/shuttle/sdf_corvette_wreck) +"ye" = ( +/obj/machinery/atmospherics/pipe/manifold4w/hidden/fuel, +/obj/structure/girder, +/turf/simulated/floor/airless, +/area/shuttle/sdf_corvette_wreck) +"yA" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 9 + }, +/obj/effect/decal/cleanable/blood, +/turf/simulated/floor/tiled/techfloor{ + nitrogen = 0; + oxygen = 0 + }, +/area/shuttle/sdf_corvette_wreck) +"yN" = ( +/obj/machinery/atmospherics/unary/vent_pump{ + dir = 8 + }, +/obj/structure/handrail{ + dir = 4 + }, +/obj/effect/floor_decal/industrial/warning{ + dir = 4 + }, +/turf/simulated/floor/airless, +/area/shuttle/sdf_corvette_wreck) +"zb" = ( +/obj/structure/cable/green{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/obj/effect/decal/cleanable/blood, +/obj/item/weapon/gun/energy/laser/old, +/turf/simulated/floor/tiled/techfloor{ + nitrogen = 0; + oxygen = 0 + }, +/area/shuttle/sdf_corvette_wreck) +"zn" = ( +/obj/effect/floor_decal/industrial/hatch/yellow, +/obj/structure/sign/warning/airlock{ + pixel_y = -32 + }, +/obj/effect/landmark/corpse/vintage/marine, +/obj/machinery/light, +/turf/simulated/floor/tiled/techfloor{ + nitrogen = 0; + oxygen = 0 + }, +/area/shuttle/sdf_corvette_wreck) +"zX" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 5 + }, +/obj/structure/extinguisher_cabinet{ + dir = 1; + pixel_y = -28 + }, +/obj/item/device/gps/on{ + gps_tag = "SDF Beacon" + }, +/obj/machinery/light, +/turf/simulated/floor/tiled/techfloor{ + nitrogen = 0; + oxygen = 0 + }, +/area/shuttle/sdf_corvette_wreck) +"Cg" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/machinery/atmospherics/unary/vent_pump{ + dir = 4 + }, +/obj/effect/map_helper/airlock/atmos/pump_out_internal, +/turf/simulated/floor/tiled/techfloor{ + nitrogen = 0; + oxygen = 0 + }, +/area/shuttle/sdf_corvette_wreck) +"Cq" = ( +/obj/structure/cable/green{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/computer/ship/engines{ + dir = 8 + }, +/obj/machinery/button/remote/blast_door{ + id = "sdfc_wreck_cockpitshutters"; + name = "Blast Shields Control"; + pixel_y = 24 + }, +/obj/item/weapon/material/shard, +/turf/simulated/floor/tiled/techfloor{ + nitrogen = 0; + oxygen = 0 + }, +/area/shuttle/sdf_corvette_wreck) +"Eg" = ( +/obj/structure/cable/green{ + d2 = 2; + icon_state = "0-2" + }, +/obj/effect/floor_decal/industrial/warning{ + dir = 5 + }, +/obj/machinery/power/pointdefense{ + id_tag = "sdfc_wreck_pd"; + name = "\improper twin-linked laser turret" + }, +/turf/simulated/floor/airless, +/area/shuttle/sdf_corvette_wreck) +"Eo" = ( +/obj/effect/floor_decal/industrial/warning{ + dir = 4 + }, +/obj/item/weapon/material/shard/shrapnel, +/obj/item/weapon/material/shard/shrapnel, +/turf/simulated/floor/airless, +/area/shuttle/sdf_corvette_wreck) +"EN" = ( +/obj/structure/handrail, +/obj/machinery/atmospherics/pipe/manifold/hidden{ + dir = 1 + }, +/obj/machinery/airlock_sensor{ + pixel_y = 21 + }, +/obj/effect/map_helper/airlock/sensor/chamber_sensor, +/obj/item/weapon/gun/energy/gun/compact, +/turf/simulated/floor/tiled/techfloor{ + nitrogen = 0; + oxygen = 0 + }, +/area/shuttle/sdf_corvette_wreck) +"Fb" = ( +/obj/structure/cable/green{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/girder, +/turf/simulated/floor/airless, +/area/shuttle/sdf_corvette_wreck) +"Fp" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/turf/simulated/wall/rshull, +/area/shuttle/sdf_corvette_wreck) +"Gc" = ( +/obj/item/weapon/material/shard, +/turf/template_noop, +/area/space) +"Hb" = ( +/obj/effect/floor_decal/industrial/warning{ + dir = 9 + }, +/obj/machinery/shipsensors/weak{ + dir = 1 + }, +/turf/simulated/floor/airless, +/area/shuttle/sdf_corvette_wreck) +"Hu" = ( +/obj/machinery/atmospherics/pipe/manifold/hidden/fuel{ + dir = 1 + }, +/obj/structure/girder, +/turf/simulated/floor/airless, +/area/shuttle/sdf_corvette_wreck) +"Ib" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/fuel{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/door/firedoor/glass, +/obj/effect/floor_decal/industrial/warning{ + dir = 4 + }, +/obj/effect/map_helper/airlock/door/ext_door, +/obj/machinery/door/airlock/voidcraft/vertical, +/obj/machinery/airlock_sensor/airlock_exterior{ + dir = 1; + pixel_x = 6; + pixel_y = 25 + }, +/obj/effect/map_helper/airlock/sensor/ext_sensor, +/turf/simulated/floor/tiled/techfloor{ + nitrogen = 0; + oxygen = 0 + }, +/area/shuttle/sdf_corvette_wreck) +"IY" = ( +/obj/machinery/door/firedoor/glass, +/obj/structure/grille, +/obj/structure/window/reinforced/full, +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/machinery/door/blast/regular/open{ + id = "sdfc_wreck_cockpitshutters"; + name = "Blast Shield" + }, +/turf/simulated/floor/airless, +/area/shuttle/sdf_corvette_wreck) +"JX" = ( +/obj/structure/handrail{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/manifold/hidden, +/obj/structure/extinguisher_cabinet{ + dir = 1; + pixel_y = -28 + }, +/obj/item/weapon/gun/energy/laser/old, +/obj/item/weapon/material/shard/shrapnel, +/turf/simulated/floor/tiled/techfloor{ + nitrogen = 0; + oxygen = 0 + }, +/area/shuttle/sdf_corvette_wreck) +"Kj" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/fuel, +/turf/simulated/wall/rshull, +/area/shuttle/sdf_corvette_wreck) +"KJ" = ( +/obj/structure/handrail{ + dir = 1 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/manifold4w/hidden, +/obj/machinery/button/remote/airlock{ + dir = 1; + id = "sdfc_airlock_s_wreck"; + name = "Aft Airlock Control"; + pixel_y = -24; + specialfunctions = 4 + }, +/obj/effect/landmark/corpse/vintage/pilot, +/obj/effect/decal/cleanable/blood, +/turf/simulated/floor/tiled/techfloor{ + nitrogen = 0; + oxygen = 0 + }, +/area/shuttle/sdf_corvette_wreck) +"KM" = ( +/turf/template_noop, +/area/space) +"Lj" = ( +/obj/item/weapon/material/shard/shrapnel, +/turf/template_noop, +/area/space) +"Ly" = ( +/obj/machinery/door/firedoor/glass, +/obj/structure/grille, +/obj/structure/window/reinforced/full, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/machinery/door/blast/regular/open{ + id = "sdfc_wreck_cockpitshutters"; + name = "Blast Shield" + }, +/turf/simulated/floor/airless, +/area/shuttle/sdf_corvette_wreck) +"LM" = ( +/obj/structure/bed/chair/bay/shuttle{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/obj/structure/closet/walllocker_double/medical/east, +/obj/effect/floor_decal/industrial/warning/corner{ + dir = 4 + }, +/obj/item/weapon/storage/firstaid{ + pixel_x = 2; + pixel_y = 2 + }, +/obj/item/weapon/storage/firstaid/o2{ + pixel_x = -2; + pixel_y = -2 + }, +/turf/simulated/floor/tiled/techfloor{ + nitrogen = 0; + oxygen = 0 + }, +/area/shuttle/sdf_corvette_wreck) +"Ms" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/fuel{ + dir = 4 + }, +/obj/machinery/door/firedoor/glass, +/obj/machinery/atmospherics/pipe/simple/hidden{ + dir = 6 + }, +/obj/machinery/door/airlock/multi_tile/glass{ + icon_state = "door_locked"; + id_tag = "sdfc_airlock_s_wreck"; + locked = 1 + }, +/turf/simulated/floor/tiled/techfloor{ + nitrogen = 0; + oxygen = 0 + }, +/area/shuttle/sdf_corvette_wreck) +"Oc" = ( +/obj/structure/cable/green{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/cable/green{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/structure/closet/walllocker/emerglocker/north, +/obj/item/weapon/material/shard/shrapnel, +/obj/machinery/light{ + dir = 1 + }, +/turf/simulated/floor/tiled/techfloor{ + nitrogen = 0; + oxygen = 0 + }, +/area/shuttle/sdf_corvette_wreck) +"Oe" = ( +/obj/structure/cable/green{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/simulated/wall/rshull, +/area/shuttle/sdf_corvette_wreck) +"Pl" = ( +/obj/machinery/atmospherics/unary/vent_pump{ + dir = 8 + }, +/obj/effect/map_helper/airlock/atmos/chamber_pump, +/turf/simulated/floor/tiled/techfloor{ + nitrogen = 0; + oxygen = 0 + }, +/area/shuttle/sdf_corvette_wreck) +"PO" = ( +/obj/effect/floor_decal/industrial/warning{ + dir = 4 + }, +/obj/machinery/door/firedoor/glass, +/obj/machinery/door/airlock/voidcraft/vertical{ + id_tag = "sdfc_wreck_compartment" + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_corvette_wreck) +"Qn" = ( +/obj/structure/bed/chair/shuttle{ + dir = 1 + }, +/obj/machinery/atmospherics/unary/vent_pump/on, +/obj/effect/decal/cleanable/blood, +/obj/effect/landmark/corpse/vintage/pilot, +/turf/simulated/floor/tiled/techfloor{ + nitrogen = 0; + oxygen = 0 + }, +/area/shuttle/sdf_corvette_wreck) +"QG" = ( +/obj/structure/cable/green{ + d2 = 4; + icon_state = "0-4" + }, +/obj/effect/floor_decal/industrial/warning{ + dir = 9 + }, +/obj/machinery/power/pointdefense{ + id_tag = "sdfc_wreck_pd"; + name = "\improper twin-linked laser turret" + }, +/turf/simulated/floor/airless, +/area/shuttle/sdf_corvette_wreck) +"Rb" = ( +/obj/machinery/computer/shuttle_control/explore/sdf_corvette_wreck, +/obj/item/weapon/material/shard, +/turf/simulated/floor/tiled/techfloor{ + nitrogen = 0; + oxygen = 0 + }, +/area/shuttle/sdf_corvette_wreck) +"RW" = ( +/obj/effect/floor_decal/industrial/warning{ + dir = 10 + }, +/obj/machinery/atmospherics/unary/vent_pump/high_volume{ + dir = 1 + }, +/obj/effect/map_helper/airlock/atmos/pump_out_external, +/turf/simulated/floor/tiled/techfloor{ + nitrogen = 0; + oxygen = 0 + }, +/area/shuttle/sdf_corvette_wreck) +"Tf" = ( +/obj/structure/cable/green{ + d2 = 8; + icon_state = "0-8" + }, +/obj/item/weapon/material/shard/shrapnel, +/obj/item/frame/apc, +/turf/simulated/floor/tiled/techfloor{ + nitrogen = 0; + oxygen = 0 + }, +/area/shuttle/sdf_corvette_wreck) +"TK" = ( +/obj/machinery/atmospherics/pipe/manifold/hidden{ + dir = 1 + }, +/obj/effect/floor_decal/industrial/hatch/yellow, +/obj/structure/closet/walllocker/emerglocker/south, +/obj/item/weapon/gun/energy/laser/old, +/turf/simulated/floor/tiled/techfloor{ + nitrogen = 0; + oxygen = 0 + }, +/area/shuttle/sdf_corvette_wreck) +"UB" = ( +/obj/structure/girder, +/turf/simulated/floor/airless, +/area/shuttle/sdf_corvette_wreck) +"Vq" = ( +/turf/simulated/wall/rshull, +/area/shuttle/sdf_corvette_wreck) +"VI" = ( +/obj/machinery/atmospherics/pipe/manifold/hidden/fuel{ + dir = 1 + }, +/turf/simulated/wall/rshull, +/area/shuttle/sdf_corvette_wreck) +"VN" = ( +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/effect/floor_decal/industrial/warning/full, +/obj/machinery/atmospherics/pipe/tank/air{ + dir = 4 + }, +/turf/simulated/floor/tiled/techfloor{ + nitrogen = 0; + oxygen = 0 + }, +/area/shuttle/sdf_corvette_wreck) +"Wf" = ( +/obj/machinery/atmospherics/unary/engine{ + dir = 1 + }, +/turf/simulated/shuttle/plating/airless/carry, +/area/shuttle/sdf_corvette_wreck) +"Wy" = ( +/obj/structure/cable/green{ + d2 = 8; + icon_state = "0-8" + }, +/obj/effect/floor_decal/industrial/warning{ + dir = 4 + }, +/obj/machinery/power/pointdefense{ + id_tag = "sdfc_wreck_pd"; + name = "\improper twin-linked laser turret" + }, +/turf/simulated/floor/airless, +/area/shuttle/sdf_corvette_wreck) +"WA" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/fuel{ + dir = 4 + }, +/obj/machinery/door/firedoor/glass, +/obj/machinery/atmospherics/pipe/manifold/hidden{ + dir = 1 + }, +/turf/simulated/floor/tiled/techfloor{ + nitrogen = 0; + oxygen = 0 + }, +/area/shuttle/sdf_corvette_wreck) +"WR" = ( +/obj/structure/fuel_port/heavy{ + dir = 8; + pixel_x = -30 + }, +/obj/structure/lattice, +/obj/item/weapon/material/shard, +/turf/template_noop, +/area/shuttle/sdf_corvette_wreck) + +(1,1,1) = {" +KM +KM +KM +KM +KM +KM +KM +KM +KM +KM +KM +KM +KM +KM +KM +KM +KM +"} +(2,1,1) = {" +Lj +KM +KM +KM +KM +KM +KM +KM +QG +UB +UB +Vq +Vq +fX +nh +Wf +KM +"} +(3,1,1) = {" +KM +Hb +Vq +IY +IY +Vq +UB +Vq +dv +Vq +VN +Vq +dQ +hn +Hu +Wf +KM +"} +(4,1,1) = {" +KM +UB +Vq +ms +nr +Vq +hy +rX +tg +dG +TK +lJ +jK +JX +VI +Wf +KM +"} +(5,1,1) = {" +KM +eD +jS +Qn +zX +Vq +Oc +uD +mT +pu +cS +Vq +lI +Pl +Ms +RW +KM +"} +(6,1,1) = {" +KM +eD +Rb +kI +bn +wQ +zb +lN +xk +en +yA +lW +sG +Cg +WA +pG +KM +"} +(7,1,1) = {" +KM +Vq +Vq +Cq +Tf +Vq +nq +LM +pl +uw +zn +Vq +EN +KJ +wn +Wf +KM +"} +(8,1,1) = {" +KM +Eg +Fb +ri +Ly +Vq +PO +Fp +Oe +Vq +eT +Kj +bd +tt +ye +Wf +KM +"} +(9,1,1) = {" +KM +KM +Gc +KM +KM +WR +Eo +yN +Wy +Vq +Vq +Vq +Vq +Ib +cJ +Wf +KM +"} +(10,1,1) = {" +KM +KM +KM +KM +Lj +KM +KM +KM +KM +KM +KM +KM +KM +KM +KM +KM +KM +"} diff --git a/maps/offmap_vr/om_ships/sdf_corvettes.dm b/maps/offmap_vr/om_ships/sdf_corvettes.dm new file mode 100644 index 0000000000..0fbbac4b66 --- /dev/null +++ b/maps/offmap_vr/om_ships/sdf_corvettes.dm @@ -0,0 +1,141 @@ +// Compile in the map for CI testing if we're testing compileability of all the maps +#if MAP_TEST +#include "sdf_corvette.dmm" +#include "sdf_corvette_wreck.dmm" +#include "sdf_cutter.dmm" +#endif + +// Map template for spawning the shuttle +/datum/map_template/om_ships/sdf_corvette + name = "OM Ship - SDF Corvette (new Z)" + desc = "A small SDF patrol corvette." + mappath = 'sdf_corvette.dmm' + annihilate = TRUE + +/datum/map_template/om_ships/sdf_corvette_wreck + name = "OM Ship - SDF Corvette Wreck (new Z)" + desc = "A small SD patrol corvette. It seems to have had a bad day." + mappath = 'sdf_corvette_wreck.dmm' + annihilate = TRUE + +/datum/map_template/om_ships/sdf_corvette + name = "OM Ship - SDF Cutter (new Z)" + desc = "A small SDF cutter, outfitted with an ORB/OFD." + mappath = 'sdf_cutter.dmm' + annihilate = TRUE + +// The shuttle's area(s) +/area/shuttle/sdf_corvette + name = "\improper SDF Corvette" + icon_state = "green" + requires_power = 1 + has_gravity = 0 + +/area/shuttle/sdf_corvette_wreck + name = "\improper SDF Corvette Wreck" + icon_state = "green" + requires_power = 1 + has_gravity = 0 + +/area/shuttle/sdf_cutter + name = "\improper SDF Cutter" + icon_state = "green" + requires_power = 1 + has_gravity = 0 + +// The shuttle's 'shuttle' computer +/obj/machinery/computer/shuttle_control/explore/sdf_corvette + name = "short jump console" + shuttle_tag = "SDF Corvette" + req_one_access = list() + +/obj/machinery/computer/shuttle_control/explore/sdf_corvette_wreck + name = "short jump console" + shuttle_tag = "SDF Corvette Wreck" + req_one_access = list() + +/obj/machinery/computer/shuttle_control/explore/sdf_cutter + name = "short jump console" + shuttle_tag = "SDF Cutter" + req_one_access = list() + +// The 'shuttle' +/datum/shuttle/autodock/overmap/sdf_corvette + name = "SDF Corvette" + current_location = "omship_spawn_sdf_corvette" + docking_controller_tag = "sdfc_dock_con" + shuttle_area = list(/area/shuttle/sdf_corvette) + defer_initialisation = TRUE + fuel_consumption = 1 + ceiling_type = /turf/simulated/floor/reinforced/airless + +/datum/shuttle/autodock/overmap/sdf_corvette_wreck + name = "SDF Corvette Wreck" + current_location = "omship_spawn_sdf_corvette_wreck" + docking_controller_tag = "sdfc_wreck_dock_con" + shuttle_area = list(/area/shuttle/sdf_corvette_wreck) + defer_initialisation = TRUE + fuel_consumption = 1 + ceiling_type = /turf/simulated/floor/reinforced/airless + +/datum/shuttle/autodock/overmap/sdf_cutter + name = "SDF Cutter" + current_location = "omship_spawn_sdf_cutter" + docking_controller_tag = "sdf_cutter_docking" + shuttle_area = list(/area/shuttle/sdf_corvette) + defer_initialisation = TRUE + fuel_consumption = 1 + ceiling_type = /turf/simulated/floor/reinforced/airless + +// A shuttle lateloader landmark +/obj/effect/shuttle_landmark/shuttle_initializer/sdf_corvette + name = "SDF Corvette" + base_area = /area/space + base_turf = /turf/space + landmark_tag = "omship_spawn_sdf_corvette" + shuttle_type = /datum/shuttle/autodock/overmap/sdf_corvette + +/obj/effect/shuttle_landmark/shuttle_initializer/sdf_corvette_wreck + name = "SDF Corvette Wreck" + base_area = /area/space + base_turf = /turf/space + landmark_tag = "omship_spawn_sdf_corvette_wreck" + shuttle_type = /datum/shuttle/autodock/overmap/sdf_corvette_wreck + +/obj/effect/shuttle_landmark/shuttle_initializer/sdf_cutter + name = "SDF Cutter" + base_area = /area/space + base_turf = /turf/space + landmark_tag = "omship_spawn_sdf_cutter" + shuttle_type = /datum/shuttle/autodock/overmap/sdf_cutter + +// The 'ship' +/obj/effect/overmap/visitable/ship/landable/sdf_corvette + name = "SDF Corvette" + scanner_desc = @{"[i]Registration[/i]: SDV Naginata +[i]Class[/i]: Corvette +[i]Transponder[/i]: Transmitting (SDF), non-hostile +[b]Notice[/b]: System Defense Force Vessel, observe minimum distance"} + vessel_mass = 1000 + vessel_size = SHIP_SIZE_TINY + shuttle = "SDF Corvette" + +/obj/effect/overmap/visitable/ship/landable/sdf_corvette_wreck + name = "Wrecked SDF Corvette" + scanner_desc = @{"[i]Registration[/i]: SDV Bec de Corbin +[i]Class[/i]: Corvette +[i]Transponder[/i]: Not Transmitting +[b]Notice[/b]: Critical Damage Sustained"} + vessel_mass = 1000 + vessel_size = SHIP_SIZE_TINY + shuttle = "SDF Corvette Wreck" + +/obj/effect/overmap/visitable/ship/landable/sdf_cutter + name = "SDF Cutter" + scanner_desc = @{"[i]Registration[/i]: SDV Pike +[i]Class[/i]: Cutter +[i]Transponder[/i]: Transmitting (SDF), non-hostile +[b]Notice[/b]: System Defense Force Vessel, observe minimum distance"} + vessel_mass = 1000 + vessel_size = SHIP_SIZE_TINY + shuttle = "SDF Cutter" diff --git a/maps/offmap_vr/om_ships/sdf_cutter.dmm b/maps/offmap_vr/om_ships/sdf_cutter.dmm new file mode 100644 index 0000000000..ea8831cbaf --- /dev/null +++ b/maps/offmap_vr/om_ships/sdf_cutter.dmm @@ -0,0 +1,1143 @@ +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"bc" = ( +/obj/structure/bed/chair/bay/chair/padded/blue{ + dir = 8 + }, +/turf/simulated/floor/tiled/techmaint, +/area/shuttle/sdf_cutter) +"cs" = ( +/obj/machinery/atmospherics/pipe/tank/phoron{ + dir = 1 + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_cutter) +"cL" = ( +/turf/simulated/floor/tiled/techmaint, +/area/shuttle/sdf_cutter) +"dl" = ( +/obj/machinery/computer/shuttle_control/explore/sdf_cutter{ + dir = 1 + }, +/obj/structure/extinguisher_cabinet{ + dir = 4; + pixel_x = -30 + }, +/obj/machinery/light, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_cutter) +"dy" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/obj/machinery/atmospherics/pipe/simple/hidden/supply, +/obj/structure/cable/yellow{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/turf/simulated/floor/tiled/techmaint, +/area/shuttle/sdf_cutter) +"dM" = ( +/obj/structure/disposalpipe/segment, +/turf/simulated/wall/rshull, +/area/shuttle/sdf_cutter) +"dZ" = ( +/obj/effect/floor_decal/industrial/warning{ + dir = 1 + }, +/obj/structure/ship_munition/disperser_charge/explosive, +/obj/structure/ship_munition/disperser_charge/explosive, +/turf/simulated/floor/reinforced/airless, +/area/shuttle/sdf_cutter) +"eb" = ( +/obj/machinery/atmospherics/pipe/manifold/hidden/fuel{ + dir = 1 + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_cutter) +"ef" = ( +/obj/machinery/computer/ship/disperser, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_cutter) +"fh" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ + dir = 1 + }, +/obj/structure/handrail, +/obj/structure/cable/yellow{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/turf/simulated/floor/tiled/techmaint, +/area/shuttle/sdf_cutter) +"fi" = ( +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/cable/green{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/manifold/hidden/fuel{ + dir = 4 + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_cutter) +"fD" = ( +/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" + }, +/obj/machinery/light{ + dir = 4 + }, +/turf/simulated/floor/tiled/techmaint, +/area/shuttle/sdf_cutter) +"fE" = ( +/obj/structure/handrail{ + dir = 8 + }, +/turf/simulated/floor/reinforced/airless, +/area/shuttle/sdf_cutter) +"fN" = ( +/obj/machinery/computer/ship/engines, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_cutter) +"fX" = ( +/obj/structure/ship_munition/disperser_charge/explosive, +/obj/structure/ship_munition/disperser_charge/explosive, +/turf/simulated/floor/reinforced/airless, +/area/shuttle/sdf_cutter) +"fY" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/fuel{ + dir = 6 + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_cutter) +"gu" = ( +/obj/structure/handrail, +/turf/simulated/floor/reinforced/airless, +/area/shuttle/sdf_cutter) +"ie" = ( +/obj/structure/hull_corner{ + dir = 1 + }, +/turf/template_noop, +/area/shuttle/sdf_cutter) +"ig" = ( +/obj/structure/bed/chair/bay/chair/padded/blue{ + dir = 1 + }, +/turf/simulated/floor/tiled/techmaint, +/area/shuttle/sdf_cutter) +"ix" = ( +/obj/machinery/atmospherics/unary/vent_pump{ + dir = 8 + }, +/obj/structure/bed/pod, +/obj/structure/closet/walllocker/emerglocker/south, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_cutter) +"iZ" = ( +/obj/machinery/atmospherics/unary/vent_scrubber/on{ + dir = 8 + }, +/obj/machinery/alarm/alarms_hidden{ + dir = 8; + pixel_x = 26 + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_cutter) +"ly" = ( +/obj/structure/handrail{ + dir = 8 + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_cutter) +"lE" = ( +/obj/structure/hull_corner{ + dir = 4 + }, +/turf/template_noop, +/area/shuttle/sdf_cutter) +"my" = ( +/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ + dir = 4 + }, +/obj/effect/map_helper/airlock/sensor/int_sensor, +/obj/machinery/airlock_sensor{ + dir = 8; + pixel_x = 22 + }, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/light{ + dir = 4 + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_cutter) +"mZ" = ( +/obj/machinery/atmospherics/unary/vent_pump{ + dir = 4; + id_tag = "gecko_cargo_vent" + }, +/obj/effect/map_helper/airlock/atmos/chamber_pump, +/obj/structure/closet/walllocker/emerglocker/south, +/obj/structure/handrail{ + dir = 4 + }, +/obj/machinery/firealarm/alarms_hidden{ + dir = 8; + pixel_x = -26; + pixel_y = 5 + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_cutter) +"oq" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 5 + }, +/obj/structure/closet/walllocker/emerglocker/west, +/obj/structure/handrail{ + dir = 1 + }, +/obj/structure/fuel_port/heavy{ + dir = 1; + pixel_y = -30 + }, +/turf/simulated/floor/tiled/techmaint, +/area/shuttle/sdf_cutter) +"ow" = ( +/obj/machinery/computer/ship/sensors{ + dir = 4 + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_cutter) +"pr" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 5 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/turf/simulated/floor/tiled/techmaint, +/area/shuttle/sdf_cutter) +"pv" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/obj/machinery/alarm/alarms_hidden{ + dir = 1; + pixel_y = -26 + }, +/obj/machinery/light, +/turf/simulated/floor/tiled/techmaint, +/area/shuttle/sdf_cutter) +"pD" = ( +/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ + dir = 1 + }, +/obj/structure/handrail, +/obj/machinery/firealarm/alarms_hidden{ + pixel_y = 26 + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_cutter) +"pU" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/obj/structure/table/steel, +/obj/structure/closet/walllocker_double/generic_civ/west, +/obj/random/mre, +/obj/random/mre, +/obj/random/mre, +/obj/random/mre, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_cutter) +"pZ" = ( +/obj/structure/cable/green{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/fuel{ + dir = 6 + }, +/turf/simulated/floor/tiled/techmaint, +/area/shuttle/sdf_cutter) +"rA" = ( +/turf/template_noop, +/area/shuttle/sdf_cutter) +"rK" = ( +/obj/machinery/light, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_cutter) +"tH" = ( +/turf/simulated/wall/rshull, +/area/shuttle/sdf_cutter) +"tI" = ( +/obj/effect/floor_decal/industrial/warning{ + dir = 1 + }, +/obj/machinery/door/window/brigdoor/northleft, +/obj/structure/extinguisher_cabinet{ + dir = 4; + pixel_x = -30 + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_cutter) +"tO" = ( +/obj/machinery/atmospherics/unary/engine{ + dir = 1 + }, +/turf/simulated/floor/reinforced/airless, +/area/shuttle/sdf_cutter) +"ut" = ( +/obj/machinery/computer/ship/helm{ + req_one_access = list() + }, +/obj/machinery/firealarm/alarms_hidden{ + dir = 8; + pixel_x = -26; + pixel_y = 5 + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_cutter) +"uT" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/full, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/machinery/door/firedoor/border_only, +/turf/simulated/floor/reinforced/airless, +/area/shuttle/sdf_cutter) +"vy" = ( +/obj/machinery/atmospherics/unary/vent_pump{ + dir = 8 + }, +/obj/effect/map_helper/airlock/atmos/chamber_pump, +/obj/structure/handrail{ + dir = 8 + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_cutter) +"vR" = ( +/obj/machinery/door/firedoor/border_only, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/obj/machinery/door/airlock/voidcraft/vertical, +/turf/simulated/floor/tiled/techmaint, +/area/shuttle/sdf_cutter) +"wF" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 6 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply, +/turf/simulated/floor/tiled/techmaint, +/area/shuttle/sdf_cutter) +"xz" = ( +/obj/structure/bed/pod, +/obj/structure/closet/walllocker/emerglocker/north, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_cutter) +"xS" = ( +/obj/machinery/atmospherics/pipe/manifold/hidden/fuel{ + dir = 1 + }, +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_cutter) +"yo" = ( +/obj/structure/hull_corner/long_vert{ + dir = 9 + }, +/turf/template_noop, +/area/shuttle/sdf_cutter) +"zG" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 9 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/obj/structure/extinguisher_cabinet{ + dir = 1; + pixel_y = -28 + }, +/turf/simulated/floor/tiled/techmaint, +/area/shuttle/sdf_cutter) +"Ae" = ( +/obj/structure/handrail, +/obj/machinery/light{ + dir = 4 + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_cutter) +"Ak" = ( +/obj/structure/hull_corner{ + dir = 8 + }, +/turf/template_noop, +/area/shuttle/sdf_cutter) +"Au" = ( +/obj/machinery/atmospherics/unary/vent_pump{ + dir = 4; + id_tag = "gecko_cargo_vent" + }, +/obj/structure/handrail{ + dir = 4 + }, +/obj/machinery/alarm/alarms_hidden{ + dir = 4; + pixel_x = -26 + }, +/turf/simulated/floor/tiled/techmaint, +/area/shuttle/sdf_cutter) +"AS" = ( +/obj/structure/closet/walllocker/emerglocker/east, +/obj/structure/handrail{ + dir = 1 + }, +/obj/machinery/power/apc/alarms_hidden{ + pixel_y = -24 + }, +/obj/structure/cable/yellow{ + d2 = 8; + icon_state = "0-8" + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_cutter) +"CT" = ( +/obj/machinery/atmospherics/unary/vent_scrubber/on, +/obj/structure/bed/chair/bay/chair/padded/blue, +/obj/machinery/firealarm/alarms_hidden{ + dir = 8; + pixel_x = -26; + pixel_y = 5 + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_cutter) +"Do" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/obj/structure/extinguisher_cabinet{ + pixel_y = 28 + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_cutter) +"Ea" = ( +/obj/machinery/atmospherics/unary/vent_scrubber/on, +/obj/structure/closet/walllocker/emerglocker/east, +/obj/effect/floor_decal/industrial/warning/corner{ + dir = 1 + }, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/machinery/light{ + dir = 4 + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_cutter) +"Fm" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 10 + }, +/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/shuttle/sdf_cutter) +"Fs" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/fuel, +/obj/machinery/power/terminal{ + dir = 4 + }, +/obj/structure/cable/green, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_cutter) +"Fz" = ( +/obj/machinery/atmospherics/portables_connector{ + dir = 4 + }, +/obj/machinery/portable_atmospherics/canister/empty, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_cutter) +"FH" = ( +/obj/machinery/door/firedoor/border_only, +/obj/effect/map_helper/airlock/door/int_door, +/obj/machinery/door/airlock/voidcraft/vertical, +/turf/simulated/floor/tiled/techmaint, +/area/shuttle/sdf_cutter) +"FK" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 9 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 5 + }, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/simulated/floor/tiled/techmaint, +/area/shuttle/sdf_cutter) +"FL" = ( +/obj/machinery/door/window/southright{ + name = "shower door" + }, +/obj/machinery/shower{ + pixel_y = 16 + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_cutter) +"FP" = ( +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/machinery/atmospherics/pipe/manifold/hidden/fuel{ + dir = 1 + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_cutter) +"Gs" = ( +/obj/machinery/disperser/middle{ + dir = 1 + }, +/turf/simulated/floor/reinforced/airless, +/area/shuttle/sdf_cutter) +"Gv" = ( +/obj/machinery/atmospherics/pipe/tank/air/full{ + dir = 8 + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_cutter) +"HP" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/obj/structure/closet/walllocker/emerglocker/north, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_cutter) +"IG" = ( +/obj/structure/closet/walllocker/emerglocker/east, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_cutter) +"IJ" = ( +/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 5 + }, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/machinery/alarm/alarms_hidden{ + dir = 4; + pixel_x = -26 + }, +/turf/simulated/floor/tiled/techmaint, +/area/shuttle/sdf_cutter) +"Jy" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply, +/obj/structure/cable/green{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/hidden/fuel, +/obj/machinery/door/firedoor/border_only, +/obj/structure/grille, +/obj/structure/window/reinforced/full, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/structure/window/reinforced, +/turf/simulated/floor/reinforced/airless, +/area/shuttle/sdf_cutter) +"JB" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/full, +/obj/machinery/door/firedoor/border_only, +/turf/simulated/floor/reinforced/airless, +/area/shuttle/sdf_cutter) +"JK" = ( +/obj/machinery/atmospherics/unary/vent_pump{ + dir = 4; + id_tag = "gecko_cargo_vent" + }, +/obj/effect/map_helper/airlock/atmos/chamber_pump, +/obj/structure/closet/walllocker/emerglocker/north, +/turf/simulated/floor/tiled/techmaint, +/area/shuttle/sdf_cutter) +"JX" = ( +/obj/machinery/door/firedoor/border_only, +/obj/effect/map_helper/airlock/door/ext_door, +/obj/effect/map_helper/airlock/sensor/ext_sensor, +/obj/machinery/airlock_sensor{ + dir = 4; + pixel_x = 11; + pixel_y = 24 + }, +/obj/machinery/door/airlock/voidcraft/vertical, +/obj/machinery/atmospherics/pipe/simple/hidden/fuel{ + dir = 4 + }, +/obj/structure/cable/green{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/simulated/floor/tiled/techmaint, +/area/shuttle/sdf_cutter) +"Ko" = ( +/obj/machinery/disperser/back{ + dir = 1 + }, +/turf/simulated/floor/reinforced/airless, +/area/shuttle/sdf_cutter) +"Kp" = ( +/obj/structure/hull_corner/long_vert{ + dir = 5 + }, +/turf/template_noop, +/area/shuttle/sdf_cutter) +"KF" = ( +/obj/machinery/door/firedoor/border_only, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/obj/machinery/door/airlock/voidcraft/vertical, +/turf/simulated/floor/tiled/techmaint, +/area/shuttle/sdf_cutter) +"Lo" = ( +/obj/structure/disposaloutlet{ + dir = 1 + }, +/obj/structure/disposalpipe/trunk, +/turf/simulated/floor/reinforced/airless, +/area/shuttle/sdf_cutter) +"Ls" = ( +/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/turf/simulated/floor/tiled/techmaint, +/area/shuttle/sdf_cutter) +"Mh" = ( +/obj/effect/floor_decal/industrial/warning{ + dir = 1 + }, +/obj/structure/ship_munition/disperser_charge/emp, +/obj/structure/ship_munition/disperser_charge/emp, +/turf/simulated/floor/reinforced/airless, +/area/shuttle/sdf_cutter) +"Mw" = ( +/obj/machinery/door/firedoor/border_only, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/obj/machinery/atmospherics/pipe/simple/hidden/supply, +/obj/machinery/door/airlock/voidcraft, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/simulated/floor/tiled/techmaint, +/area/shuttle/sdf_cutter) +"Nk" = ( +/obj/machinery/shipsensors{ + dir = 1 + }, +/turf/simulated/floor/reinforced/airless, +/area/shuttle/sdf_cutter) +"OO" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/fuel, +/turf/simulated/wall/rshull, +/area/shuttle/sdf_cutter) +"Pf" = ( +/obj/machinery/atmospherics/pipe/manifold4w/hidden/supply, +/obj/structure/cable/green{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/machinery/atmospherics/pipe/simple/hidden/fuel{ + dir = 9 + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_cutter) +"PX" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/obj/structure/handrail, +/obj/structure/cable/green{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/machinery/atmospherics/pipe/simple/hidden/fuel{ + dir = 6 + }, +/obj/machinery/alarm/alarms_hidden{ + pixel_y = 26 + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_cutter) +"Qd" = ( +/obj/machinery/atmospherics/unary/vent_scrubber/on{ + dir = 1 + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_cutter) +"Qp" = ( +/obj/structure/toilet{ + dir = 4 + }, +/obj/structure/window/reinforced, +/obj/machinery/light{ + dir = 1 + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_cutter) +"RL" = ( +/obj/machinery/atmospherics/unary/vent_pump{ + dir = 1 + }, +/obj/structure/cable/yellow{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_cutter) +"Th" = ( +/obj/structure/bed/chair/bay/chair/padded/blue{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/turf/simulated/floor/tiled/techmaint, +/area/shuttle/sdf_cutter) +"TP" = ( +/obj/machinery/power/smes/buildable/point_of_interest, +/obj/machinery/light, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_cutter) +"Uh" = ( +/obj/structure/ship_munition/disperser_charge/emp, +/obj/structure/ship_munition/disperser_charge/emp, +/turf/simulated/floor/reinforced/airless, +/area/shuttle/sdf_cutter) +"UI" = ( +/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ + dir = 1 + }, +/obj/machinery/embedded_controller/radio/airlock/docking_port{ + id_tag = "sdf_cutter_docking"; + pixel_y = 24 + }, +/obj/machinery/light{ + dir = 1 + }, +/turf/simulated/floor/tiled/techmaint, +/area/shuttle/sdf_cutter) +"US" = ( +/obj/machinery/disposal/deliveryChute, +/obj/structure/disposalpipe/trunk{ + dir = 1 + }, +/turf/simulated/floor/reinforced/airless, +/area/shuttle/sdf_cutter) +"VA" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/fuel, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_cutter) +"VC" = ( +/obj/effect/shuttle_landmark/shuttle_initializer/sdf_cutter, +/obj/effect/overmap/visitable/ship/landable/sdf_cutter, +/obj/machinery/atmospherics/pipe/simple/hidden/fuel{ + dir = 4 + }, +/obj/structure/cable/green{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/airlock_sensor{ + dir = 1; + pixel_y = -22 + }, +/obj/effect/map_helper/airlock/sensor/chamber_sensor, +/turf/simulated/floor/tiled/techmaint, +/area/shuttle/sdf_cutter) +"VD" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/full, +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/machinery/door/firedoor/border_only, +/turf/simulated/floor/tiled/techfloor, +/area/shuttle/sdf_cutter) +"Wz" = ( +/obj/machinery/atmospherics/unary/vent_pump, +/turf/simulated/floor/tiled/techmaint, +/area/shuttle/sdf_cutter) +"Yz" = ( +/turf/template_noop, +/area/space) +"YC" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/full, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/machinery/door/firedoor/border_only, +/turf/simulated/floor/reinforced/airless, +/area/shuttle/sdf_cutter) +"Zl" = ( +/obj/machinery/disperser/front{ + dir = 1 + }, +/turf/simulated/floor/reinforced/airless, +/area/shuttle/sdf_cutter) + +(1,1,1) = {" +Yz +Yz +Yz +Yz +Yz +Yz +Yz +Yz +Yz +Yz +Yz +Yz +Yz +Yz +Yz +Yz +Yz +Yz +Yz +"} +(2,1,1) = {" +Yz +Yz +Nk +fE +tH +Yz +Yz +Yz +Yz +Yz +tH +fE +tH +Yz +Yz +Yz +Yz +Yz +Yz +"} +(3,1,1) = {" +Yz +tH +tH +tH +tH +tH +tH +tH +tH +tH +tH +tH +tH +tH +rA +Kp +Yz +Yz +Yz +"} +(4,1,1) = {" +Yz +Zl +Gs +Ko +Lo +dM +dM +US +tI +Au +Mh +Uh +tH +Fz +tH +tH +lE +Yz +Yz +"} +(5,1,1) = {" +Yz +tH +tH +VD +tH +ow +tH +tH +Ea +pr +dZ +fX +tH +pD +Qd +rK +tH +lE +Yz +"} +(6,1,1) = {" +Yz +uT +ef +ig +ut +bc +dl +tH +tH +vR +tH +tH +tH +Do +fY +VA +OO +tO +Yz +"} +(7,1,1) = {" +Yz +YC +JB +cL +Wz +wF +dy +Mw +IJ +Ls +oq +tH +fN +Th +eb +VA +OO +tO +Yz +"} +(8,1,1) = {" +Yz +Yz +tH +Ae +IG +iZ +AS +tH +fh +my +Fm +Mw +fD +FK +FP +cs +tH +gu +Yz +"} +(9,1,1) = {" +Yz +Yz +Ak +tH +tH +tH +tH +tH +KF +tH +FH +tH +tH +HP +xS +VA +OO +tO +Yz +"} +(10,1,1) = {" +Yz +Yz +Yz +Yz +tH +Qp +CT +pU +zG +tH +JK +mZ +tH +PX +fi +Fs +OO +tO +Yz +"} +(11,1,1) = {" +Yz +Yz +Yz +Yz +tH +FL +cL +cL +pv +tH +UI +pZ +Jy +Pf +RL +TP +tH +ie +Yz +"} +(12,1,1) = {" +Yz +Yz +Yz +Yz +Ak +tH +xz +ly +ix +tH +vy +VC +tH +Gv +tH +tH +ie +Yz +Yz +"} +(13,1,1) = {" +Yz +Yz +Yz +Yz +rA +Ak +tH +tH +tH +tH +tH +JX +tH +tH +rA +yo +Yz +Yz +Yz +"} +(14,1,1) = {" +Yz +Yz +Yz +Yz +Yz +Yz +Yz +Yz +Yz +Yz +Yz +Yz +Yz +Yz +Yz +Yz +Yz +Yz +Yz +"} diff --git a/maps/offmap_vr/talon/talon_v2.dm b/maps/offmap_vr/talon/talon_v2.dm index d4eee52aa2..94af256059 100644 --- a/maps/offmap_vr/talon/talon_v2.dm +++ b/maps/offmap_vr/talon/talon_v2.dm @@ -903,7 +903,7 @@ personally I recommend using the ship's boat if you need to evacuate, but if you /obj/random/medical, /obj/random/medical/lite, /obj/random/medical/lite, - /obj/structure/closet/crate/veymed //VM GRABBAG + /obj/structure/closet/crate/freezer/veymed //VM GRABBAG ), prob(10);list( /obj/random/firstaid, @@ -912,7 +912,14 @@ personally I recommend using the ship's boat if you need to evacuate, but if you /obj/random/firstaid, /obj/random/unidentified_medicine/fresh_medicine, /obj/random/unidentified_medicine/fresh_medicine, - /obj/structure/closet/crate/veymed //VM FAKS + /obj/structure/closet/crate/freezer/veymed //VM FAKS + ), + prob(5);list( + /obj/random/internal_organ, + /obj/random/internal_organ, + /obj/random/internal_organ, + /obj/random/internal_organ, + /obj/structure/closet/crate/freezer/veymed //VM ORGANSES ), prob(10);list( /obj/random/tech_supply/nofail, @@ -929,7 +936,7 @@ personally I recommend using the ship's boat if you need to evacuate, but if you /obj/random/medical/pillbottle, /obj/random/medical/lite, /obj/random/medical/lite, - /obj/structure/closet/crate/zenghu //ZENGHU GRABBAG + /obj/structure/closet/crate/freezer/zenghu //ZENGHU GRABBAG ), prob(10);list( /obj/random/medical/pillbottle, @@ -938,7 +945,7 @@ personally I recommend using the ship's boat if you need to evacuate, but if you /obj/random/medical/pillbottle, /obj/random/unidentified_medicine/fresh_medicine, /obj/random/unidentified_medicine/fresh_medicine, - /obj/structure/closet/crate/zenghu //ZENGHU PILLS + /obj/structure/closet/crate/freezer/zenghu //ZENGHU PILLS ), prob(10);list( /obj/item/device/toner, diff --git a/maps/offmap_vr/talon/talon_v2.dmm b/maps/offmap_vr/talon/talon_v2.dmm index 0159b5de22..a530b752a9 100644 --- a/maps/offmap_vr/talon/talon_v2.dmm +++ b/maps/offmap_vr/talon/talon_v2.dmm @@ -6926,7 +6926,6 @@ /area/talon_v2/crew_quarters/sec_room) "vG" = ( /obj/structure/extinguisher_cabinet{ - dir = 1; pixel_y = 32 }, /turf/simulated/floor/tiled/techfloor, @@ -6984,6 +6983,9 @@ /obj/machinery/light/small{ dir = 1 }, +/obj/structure/extinguisher_cabinet{ + pixel_y = 32 + }, /turf/simulated/floor/plating, /area/talon_v2/engineering/atmospherics) "vR" = ( @@ -11230,6 +11232,9 @@ /obj/machinery/atmospherics/unary/vent_scrubber/on{ dir = 8 }, +/obj/structure/extinguisher_cabinet{ + pixel_y = 32 + }, /turf/simulated/floor/carpet, /area/talon_v2/crew_quarters/mine_room) "JL" = ( @@ -14428,13 +14433,6 @@ /obj/effect/catwalk_plated/dark, /turf/simulated/floor/plating, /area/talon_v2/engineering/atmospherics) -"TH" = ( -/obj/structure/extinguisher_cabinet{ - dir = 4; - pixel_x = -30 - }, -/turf/simulated/wall/shull, -/area/talon_v2/crew_quarters/mine_room) "TJ" = ( /obj/machinery/mineral/stacking_unit_console{ pixel_y = -6; @@ -27662,7 +27660,7 @@ It jY Ym Um -TH +IB Ax Eu yU diff --git a/maps/stellar_delight/stellar_delight1.dmm b/maps/stellar_delight/stellar_delight1.dmm index 083413fd05..4938e34bf9 100644 --- a/maps/stellar_delight/stellar_delight1.dmm +++ b/maps/stellar_delight/stellar_delight1.dmm @@ -680,6 +680,17 @@ /obj/structure/shuttle/engine/propulsion, /turf/simulated/floor/reinforced, /area/stellardelight/deck1/exploshuttle) +"bp" = ( +/obj/effect/floor_decal/milspec/color/red/half{ + dir = 8 + }, +/obj/item/weapon/storage/box/evidence, +/obj/item/weapon/storage/box/evidence, +/obj/structure/closet/walllocker_double/security/west{ + name = "evidence storage cabinet" + }, +/turf/simulated/floor/tiled/dark, +/area/security/security_cell_hallway) "bq" = ( /obj/structure/table/bench/steel, /obj/effect/landmark/start/security, @@ -800,6 +811,13 @@ }, /turf/simulated/floor, /area/maintenance/stellardelight/deck1/starboardaft) +"bC" = ( +/obj/effect/floor_decal/milspec/color/red/half{ + dir = 4 + }, +/obj/structure/closet/walllocker_double/emergency_engi/east, +/turf/simulated/floor/tiled/dark, +/area/security/security_cell_hallway) "bD" = ( /obj/structure/lattice, /turf/space, @@ -1032,6 +1050,13 @@ "bZ" = ( /turf/simulated/floor, /area/maintenance/stellardelight/substation/civilian) +"ca" = ( +/obj/item/weapon/storage/briefcase/inflatable, +/obj/item/weapon/storage/briefcase/inflatable, +/obj/item/weapon/storage/briefcase/inflatable, +/obj/structure/closet/walllocker_double/engineering/north, +/turf/simulated/floor/tiled/eris/white/gray_platform, +/area/gateway) "cb" = ( /obj/structure/cable/green{ color = "#42038a"; @@ -1043,6 +1068,24 @@ }, /turf/simulated/floor/airless, /area/stellardelight/deck1/exterior) +"cc" = ( +/obj/fiftyspawner/glass, +/obj/fiftyspawner/glass, +/obj/fiftyspawner/glass, +/obj/fiftyspawner/rods, +/obj/fiftyspawner/rglass, +/obj/fiftyspawner/steel, +/obj/fiftyspawner/steel, +/obj/fiftyspawner/steel, +/obj/item/stack/material/plasteel{ + amount = 10 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 6 + }, +/obj/structure/closet/walllocker_double/engineering/north, +/turf/simulated/floor/tiled/eris/white/gray_platform, +/area/gateway) "cd" = ( /obj/machinery/camera/network/halls{ dir = 1 @@ -1253,6 +1296,36 @@ }, /turf/simulated/floor/tiled/steel_grid, /area/rnd/research) +"cx" = ( +/obj/item/weapon/storage/toolbox/mechanical{ + pixel_x = -2; + pixel_y = -1 + }, +/obj/item/device/multitool, +/obj/item/clothing/head/welding, +/obj/item/weapon/storage/belt/utility, +/obj/item/device/radio/off, +/obj/item/device/radio/off, +/obj/item/device/radio/off, +/obj/item/stack/cable_coil{ + pixel_x = 3; + pixel_y = -7 + }, +/obj/item/weapon/storage/toolbox/electrical{ + pixel_x = 1; + pixel_y = -1 + }, +/obj/item/device/assembly/signaler, +/obj/item/device/assembly/signaler, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/obj/structure/closet/walllocker_double/engineering/north, +/turf/simulated/floor/tiled/eris/white/gray_platform, +/area/gateway) "cy" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 @@ -1263,6 +1336,22 @@ }, /turf/simulated/floor/tiled/dark, /area/security/security_cell_hallway) +"cz" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 10 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 10 + }, +/obj/structure/closet/walllocker_double/emergency_engi/north, +/turf/simulated/floor/tiled/techmaint, +/area/stellardelight/deck1/port) "cA" = ( /obj/structure/cable/yellow{ icon_state = "4-8" @@ -1318,6 +1407,13 @@ }, /turf/simulated/floor/tiled/techmaint, /area/stellardelight/deck1/port) +"cH" = ( +/obj/effect/floor_decal/milspec/color/emerald/half{ + dir = 4 + }, +/obj/structure/closet/walllocker_double/emergency_engi/east, +/turf/simulated/floor/tiled/techmaint, +/area/stellardelight/deck1/starboard) "cI" = ( /obj/effect/floor_decal/steeldecal/steel_decals6{ dir = 6 @@ -1349,6 +1445,14 @@ }, /turf/simulated/floor/tiled/techmaint, /area/stellardelight/deck1/port) +"cL" = ( +/obj/structure/cable/white{ + icon_state = "1-2" + }, +/obj/structure/disposalpipe/segment, +/obj/structure/closet/walllocker_double/emergency_engi/west, +/turf/simulated/floor/tiled/techmaint, +/area/stellardelight/deck1/port) "cM" = ( /obj/structure/table/rack/shelf/steel, /obj/item/gunbox{ @@ -1381,10 +1485,45 @@ }, /turf/simulated/floor/tiled/techmaint, /area/stellardelight/deck1/port) +"cP" = ( +/obj/fiftyspawner/steel, +/obj/fiftyspawner/steel, +/obj/fiftyspawner/steel, +/obj/fiftyspawner/steel, +/obj/fiftyspawner/steel, +/obj/fiftyspawner/glass, +/obj/fiftyspawner/glass, +/obj/fiftyspawner/glass, +/obj/fiftyspawner/glass, +/obj/item/stack/material/plasteel{ + amount = 10 + }, +/obj/effect/floor_decal/industrial/warning, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 9 + }, +/obj/structure/closet/walllocker_double/science/east{ + name = "material sheets" + }, +/turf/simulated/floor/tiled/steel, +/area/assembly/robotics) "cQ" = ( /obj/machinery/mineral/unloading_machine, /turf/simulated/floor/tiled/eris/steel/cargo, /area/stellardelight/deck1/oreprocessing) +"cR" = ( +/obj/effect/floor_decal/industrial/warning, +/obj/item/device/defib_kit/jumper_kit, +/obj/item/weapon/storage/box/gloves, +/obj/item/weapon/storage/box/bodybags{ + pixel_x = -3; + pixel_y = -2 + }, +/obj/item/weapon/book/manual/robotics_manual, +/obj/item/weapon/book/manual/robotics_cyborgs, +/obj/structure/closet/walllocker_double/science/east, +/turf/simulated/floor/tiled/steel_dirty, +/area/assembly/robotics) "cS" = ( /obj/machinery/hologram/holopad, /turf/simulated/floor/tiled/steel_grid, @@ -1673,6 +1812,14 @@ /obj/effect/floor_decal/steeldecal/steel_decals4, /turf/simulated/floor/tiled/eris/white/bluecorner, /area/stellardelight/deck1/paramedic) +"ds" = ( +/obj/fiftyspawner/steel, +/obj/fiftyspawner/steel, +/obj/structure/closet/walllocker_double/science/north{ + name = "material sheets" + }, +/turf/simulated/floor/tiled/techfloor, +/area/rnd/workshop) "dt" = ( /obj/machinery/portable_atmospherics/canister/oxygen, /obj/machinery/firealarm/angled{ @@ -1695,9 +1842,12 @@ /turf/simulated/floor/tiled/techfloor, /area/stellardelight/deck1/researchserver) "dv" = ( -/obj/structure/closet/walllocker_double/east, -/turf/simulated/floor/carpet/purcarpet, -/area/stellardelight/deck1/dorms/dorm2) +/obj/machinery/atmospherics/unary/vent_scrubber/on{ + dir = 4 + }, +/obj/structure/closet/walllocker_double/generic_civ/west, +/turf/simulated/floor/carpet, +/area/stellardelight/deck1/dorms/dorm8) "dw" = ( /obj/structure/railing/grey{ dir = 8 @@ -1735,6 +1885,23 @@ }, /turf/simulated/floor, /area/maintenance/stellardelight/substation/medical) +"dz" = ( +/obj/item/weapon/weldingtool, +/obj/item/clothing/glasses/welding, +/obj/item/weapon/storage/box/lights/mixed, +/obj/item/device/multitool, +/obj/structure/sink/kitchen{ + dir = 4; + pixel_x = 11 + }, +/obj/machinery/firealarm/angled{ + dir = 4 + }, +/obj/structure/closet/walllocker_double/engineering/north{ + name = "xenobiology repair supplies" + }, +/turf/simulated/floor/tiled/steel_grid, +/area/rnd/xenobiology) "dA" = ( /obj/effect/floor_decal/industrial/warning{ dir = 10 @@ -1753,6 +1920,31 @@ }, /turf/simulated/floor/tiled/dark, /area/security/security_cell_hallway) +"dC" = ( +/obj/item/weapon/shovel, +/obj/item/weapon/shovel, +/obj/item/weapon/shovel, +/obj/item/weapon/shovel, +/obj/item/weapon/tool/wrench, +/obj/item/weapon/tool/wrench, +/obj/item/weapon/tool/wrench, +/obj/item/weapon/tool/wrench, +/obj/item/weapon/tool/crowbar, +/obj/item/weapon/tool/crowbar, +/obj/item/weapon/tool/crowbar, +/obj/item/weapon/tool/crowbar, +/obj/item/weapon/pickaxe, +/obj/item/weapon/pickaxe, +/obj/item/weapon/pickaxe, +/obj/item/weapon/pickaxe, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 5 + }, +/obj/structure/closet/walllocker_double/cargo/west{ + name = "mining tools" + }, +/turf/simulated/floor/tiled/eris/steel/cargo, +/area/stellardelight/deck1/miningequipment) "dD" = ( /obj/structure/table/rack/shelf/steel, /obj/machinery/atmospherics/pipe/simple/hidden/purple, @@ -1771,6 +1963,16 @@ }, /turf/simulated/floor/tiled/dark, /area/security/armoury) +"dE" = ( +/obj/item/device/suit_cooling_unit, +/obj/item/device/suit_cooling_unit, +/obj/item/device/suit_cooling_unit, +/obj/item/device/suit_cooling_unit, +/obj/structure/closet/walllocker_double/cargo/west{ + name = "suit cooling units" + }, +/turf/simulated/floor/tiled/eris/steel/cargo, +/area/stellardelight/deck1/miningequipment) "dF" = ( /obj/machinery/computer/security/xenobio, /obj/machinery/alarm/angled, @@ -1825,6 +2027,28 @@ }, /turf/simulated/floor/tiled/eris/steel/cargo, /area/stellardelight/deck1/miningequipment) +"dM" = ( +/obj/item/weapon/storage/box/syringes, +/obj/item/weapon/storage/box/beakers, +/obj/item/weapon/storage/box/gloves, +/obj/item/weapon/reagent_containers/glass/bucket, +/obj/item/weapon/reagent_containers/glass/bucket, +/obj/item/robot_parts/l_arm, +/obj/item/device/analyzer/plant_analyzer, +/obj/item/device/analyzer/plant_analyzer, +/obj/item/weapon/material/knife/machete/hatchet, +/obj/item/weapon/material/knife/machete/hatchet, +/obj/item/weapon/material/minihoe, +/obj/item/weapon/material/minihoe, +/obj/item/inflatable/door, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/obj/item/weapon/storage/box/botanydisk, +/obj/item/weapon/storage/box/botanydisk, +/obj/structure/closet/walllocker_double/science/west{ + name = "xenoflora supplies" + }, +/turf/simulated/floor/tiled/eris, +/area/rnd/xenobiology/xenoflora) "dN" = ( /obj/structure/closet/secure_closet/hydroponics/sci{ req_access = list(77) @@ -1946,6 +2170,19 @@ }, /turf/simulated/floor/tiled/monotile, /area/assembly/robotics) +"dX" = ( +/obj/structure/cable/green{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 8 + }, +/obj/structure/closet/walllocker_double/emergency_engi/north, +/turf/simulated/floor/tiled/techmaint, +/area/stellardelight/deck1/aft) "dY" = ( /obj/machinery/mineral/processing_unit, /turf/simulated/floor/tiled/eris/steel/cargo, @@ -2020,6 +2257,13 @@ /obj/machinery/alarm/angled, /turf/simulated/floor/tiled/eris/white/bluecorner, /area/stellardelight/deck1/paramedic) +"eg" = ( +/obj/machinery/atmospherics/unary/vent_scrubber/on{ + dir = 8 + }, +/obj/structure/closet/walllocker_double/generic_civ/east, +/turf/simulated/floor/carpet, +/area/stellardelight/deck1/dorms/dorm1) "eh" = ( /obj/machinery/door/firedoor/glass, /obj/machinery/door/window/brigdoor/southleft{ @@ -2336,6 +2580,10 @@ }, /turf/simulated/floor/tiled/milspec, /area/stellardelight/deck1/exploequipment) +"eK" = ( +/obj/structure/closet/walllocker_double/generic_civ/west, +/turf/simulated/floor/carpet/purcarpet, +/area/stellardelight/deck1/dorms/dorm7) "eL" = ( /obj/structure/mirror{ pixel_y = 38 @@ -2450,6 +2698,10 @@ }, /turf/simulated/floor/tiled/steel_grid, /area/rnd/xenobiology) +"eZ" = ( +/obj/structure/closet/walllocker_double/generic_civ/east, +/turf/simulated/floor/carpet/purcarpet, +/area/stellardelight/deck1/dorms/dorm2) "fa" = ( /obj/machinery/door/firedoor/glass, /obj/structure/cable/pink{ @@ -2509,6 +2761,20 @@ }, /turf/simulated/floor/tiled/white, /area/security/detectives_office) +"fe" = ( +/obj/item/device/camera, +/obj/item/weapon/folder/yellow, +/obj/item/weapon/pen, +/obj/structure/cable/green{ + color = "#42038a"; + icon_state = "1-2" + }, +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/obj/machinery/atmospherics/pipe/simple/hidden/supply, +/obj/structure/closet/walllocker_double/generic_civ/east, +/turf/simulated/floor/tiled/milspec, +/area/stellardelight/deck1/explobriefing) "ff" = ( /obj/machinery/conveyor{ dir = 8; @@ -3082,36 +3348,6 @@ /obj/structure/disposalpipe/segment, /turf/simulated/floor/tiled/techmaint, /area/stellardelight/deck1/port) -"gs" = ( -/obj/item/weapon/storage/toolbox/mechanical{ - pixel_x = -2; - pixel_y = -1 - }, -/obj/item/device/multitool, -/obj/item/clothing/head/welding, -/obj/item/weapon/storage/belt/utility, -/obj/item/device/radio/off, -/obj/item/device/radio/off, -/obj/item/device/radio/off, -/obj/item/stack/cable_coil{ - pixel_x = 3; - pixel_y = -7 - }, -/obj/item/weapon/storage/toolbox/electrical{ - pixel_x = 1; - pixel_y = -1 - }, -/obj/structure/closet/walllocker_double/north, -/obj/item/device/assembly/signaler, -/obj/item/device/assembly/signaler, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/turf/simulated/floor/tiled/eris/white/gray_platform, -/area/gateway) "gt" = ( /obj/structure/cable/green{ color = "#42038a"; @@ -3823,21 +4059,6 @@ }, /turf/simulated/floor/tiled/techmaint, /area/stellardelight/deck1/starboard) -"hO" = ( -/obj/item/weapon/weldingtool, -/obj/item/clothing/glasses/welding, -/obj/item/weapon/storage/box/lights/mixed, -/obj/structure/closet/walllocker_double/north, -/obj/item/device/multitool, -/obj/structure/sink/kitchen{ - dir = 4; - pixel_x = 11 - }, -/obj/machinery/firealarm/angled{ - dir = 4 - }, -/turf/simulated/floor/tiled/steel_grid, -/area/rnd/xenobiology) "hP" = ( /obj/structure/morgue{ dir = 2 @@ -4417,25 +4638,6 @@ }, /turf/simulated/floor, /area/maintenance/stellardelight/deck1/exploration) -"iV" = ( -/obj/structure/cable/white{ - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/structure/closet/walllocker_double/west{ - desc = "A wall mounted storage cabinet marked with a cross and warning icon. This seems to contain an assortment of emergency supplies."; - name = "Emergency Cabinet" - }, -/obj/item/device/radio, -/obj/item/device/radio, -/obj/item/device/radio, -/obj/item/weapon/storage/briefcase/inflatable, -/obj/item/weapon/tank/emergency/oxygen/engi, -/obj/item/weapon/tank/emergency/oxygen/engi, -/obj/item/clothing/mask/breath, -/obj/item/clothing/mask/breath, -/turf/simulated/floor/tiled/techmaint, -/area/stellardelight/deck1/port) "iW" = ( /obj/structure/cable/green{ icon_state = "4-8" @@ -5496,12 +5698,6 @@ dir = 4; pixel_x = -32 }, -/obj/structure/sign/directions{ - desc = "A direction sign, pointing out the way to the shuttle bay."; - name = "\improper Shuttle Bay"; - pixel_x = -32; - pixel_y = -6 - }, /obj/structure/sign/directions/janitor{ pixel_x = -32; pixel_y = -12 @@ -5509,6 +5705,10 @@ /obj/machinery/camera/network/halls{ dir = 4 }, +/obj/structure/sign/directions/shuttle_bay{ + pixel_x = -32; + pixel_y = -6 + }, /turf/simulated/floor/tiled/techmaint, /area/stellardelight/deck1/port) "lt" = ( @@ -8430,19 +8630,6 @@ }, /turf/simulated/floor/tiled/monotile, /area/assembly/robotics) -"rz" = ( -/obj/effect/floor_decal/industrial/warning, -/obj/structure/closet/walllocker_double/east, -/obj/item/device/defib_kit/jumper_kit, -/obj/item/weapon/storage/box/gloves, -/obj/item/weapon/storage/box/bodybags{ - pixel_x = -3; - pixel_y = -2 - }, -/obj/item/weapon/book/manual/robotics_manual, -/obj/item/weapon/book/manual/robotics_cyborgs, -/turf/simulated/floor/tiled/steel_dirty, -/area/assembly/robotics) "rA" = ( /obj/machinery/door/firedoor/glass, /obj/structure/cable/green{ @@ -8614,13 +8801,6 @@ }, /turf/simulated/floor/tiled/steel_ridged, /area/gateway) -"rS" = ( -/obj/structure/closet/walllocker_double/east{ - dir = 8; - pixel_x = -32 - }, -/turf/simulated/floor/carpet/purcarpet, -/area/stellardelight/deck1/dorms/dorm7) "rT" = ( /turf/simulated/floor/tiled/dark, /area/rnd/xenobiology) @@ -10797,33 +10977,6 @@ /obj/machinery/camera/network/research, /turf/simulated/floor/tiled/steel, /area/assembly/robotics) -"wL" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 10 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 10 - }, -/obj/structure/closet/walllocker_double/north{ - desc = "A wall mounted storage cabinet marked with a cross and warning icon. This seems to contain an assortment of emergency supplies."; - name = "Emergency Cabinet" - }, -/obj/item/device/radio, -/obj/item/device/radio, -/obj/item/device/radio, -/obj/item/weapon/storage/briefcase/inflatable, -/obj/item/weapon/tank/emergency/oxygen/engi, -/obj/item/weapon/tank/emergency/oxygen/engi, -/obj/item/clothing/mask/breath, -/obj/item/clothing/mask/breath, -/turf/simulated/floor/tiled/techmaint, -/area/stellardelight/deck1/port) "wM" = ( /obj/machinery/atmospherics/unary/vent_scrubber/on{ dir = 8 @@ -12006,20 +12159,6 @@ }, /turf/simulated/floor/tiled/techmaint, /area/stellardelight/deck1/starboard) -"zm" = ( -/obj/structure/closet/walllocker_double/east, -/obj/item/device/camera, -/obj/item/weapon/folder/yellow, -/obj/item/weapon/pen, -/obj/structure/cable/green{ - color = "#42038a"; - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/turf/simulated/floor/tiled/milspec, -/area/stellardelight/deck1/explobriefing) "zn" = ( /obj/structure/closet/secure_closet/paramedic, /obj/machinery/atmospherics/unary/vent_scrubber/on{ @@ -12122,12 +12261,6 @@ }, /turf/simulated/floor/tiled/eris/steel/cargo, /area/stellardelight/deck1/mining) -"zA" = ( -/obj/structure/closet/walllocker_double/north, -/obj/fiftyspawner/steel, -/obj/fiftyspawner/steel, -/turf/simulated/floor/tiled/techfloor, -/area/rnd/workshop) "zB" = ( /obj/machinery/door/firedoor/glass, /obj/structure/cable/pink{ @@ -14158,24 +14291,6 @@ "DS" = ( /turf/simulated/wall/bay/red, /area/prison/cell_block) -"DT" = ( -/obj/fiftyspawner/glass, -/obj/fiftyspawner/glass, -/obj/fiftyspawner/glass, -/obj/fiftyspawner/rods, -/obj/fiftyspawner/rglass, -/obj/fiftyspawner/steel, -/obj/fiftyspawner/steel, -/obj/fiftyspawner/steel, -/obj/item/stack/material/plasteel{ - amount = 10 - }, -/obj/structure/closet/walllocker_double/north, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 6 - }, -/turf/simulated/floor/tiled/eris/white/gray_platform, -/area/gateway) "DV" = ( /obj/machinery/suit_cycler/pilot, /obj/machinery/light, @@ -15858,16 +15973,6 @@ }, /turf/simulated/floor/tiled/milspec, /area/stellardelight/deck1/explobriefing) -"HT" = ( -/obj/machinery/atmospherics/unary/vent_scrubber/on{ - dir = 4 - }, -/obj/structure/closet/walllocker_double/east{ - dir = 8; - pixel_x = -32 - }, -/turf/simulated/floor/carpet, -/area/stellardelight/deck1/dorms/dorm8) "HV" = ( /obj/machinery/alarm/angled{ dir = 8 @@ -16480,29 +16585,6 @@ /obj/structure/low_wall/bay/reinforced/steel, /turf/simulated/floor, /area/stellardelight/deck1/dorms/dorm8) -"Ja" = ( -/obj/structure/closet/walllocker_double/west, -/obj/item/weapon/shovel, -/obj/item/weapon/shovel, -/obj/item/weapon/shovel, -/obj/item/weapon/shovel, -/obj/item/weapon/tool/wrench, -/obj/item/weapon/tool/wrench, -/obj/item/weapon/tool/wrench, -/obj/item/weapon/tool/wrench, -/obj/item/weapon/tool/crowbar, -/obj/item/weapon/tool/crowbar, -/obj/item/weapon/tool/crowbar, -/obj/item/weapon/tool/crowbar, -/obj/item/weapon/pickaxe, -/obj/item/weapon/pickaxe, -/obj/item/weapon/pickaxe, -/obj/item/weapon/pickaxe, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 5 - }, -/turf/simulated/floor/tiled/eris/steel/cargo, -/area/stellardelight/deck1/miningequipment) "Jb" = ( /obj/structure/disposalpipe/segment, /obj/machinery/atmospherics/pipe/manifold/hidden/supply{ @@ -16699,13 +16781,6 @@ /obj/structure/disposalpipe/segment, /turf/simulated/floor/tiled/techmaint, /area/stellardelight/deck1/port) -"JB" = ( -/obj/machinery/atmospherics/unary/vent_scrubber/on{ - dir = 8 - }, -/obj/structure/closet/walllocker_double/east, -/turf/simulated/floor/carpet, -/area/stellardelight/deck1/dorms/dorm1) "JC" = ( /obj/structure/table/rack{ dir = 8; @@ -17596,29 +17671,6 @@ }, /turf/simulated/floor, /area/maintenance/stellardelight/deck1/exploration) -"Lz" = ( -/obj/structure/closet/walllocker_double/east{ - dir = 8; - pixel_x = -32 - }, -/obj/item/weapon/storage/box/syringes, -/obj/item/weapon/storage/box/beakers, -/obj/item/weapon/storage/box/gloves, -/obj/item/weapon/reagent_containers/glass/bucket, -/obj/item/weapon/reagent_containers/glass/bucket, -/obj/item/robot_parts/l_arm, -/obj/item/device/analyzer/plant_analyzer, -/obj/item/device/analyzer/plant_analyzer, -/obj/item/weapon/material/knife/machete/hatchet, -/obj/item/weapon/material/knife/machete/hatchet, -/obj/item/weapon/material/minihoe, -/obj/item/weapon/material/minihoe, -/obj/item/inflatable/door, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/item/weapon/storage/box/botanydisk, -/obj/item/weapon/storage/box/botanydisk, -/turf/simulated/floor/tiled/eris, -/area/rnd/xenobiology/xenoflora) "LA" = ( /obj/structure/cable/pink{ icon_state = "1-8" @@ -17635,26 +17687,6 @@ /obj/machinery/hologram/holopad, /turf/simulated/floor/tiled/dark, /area/security/security_lockerroom) -"LB" = ( -/obj/fiftyspawner/steel, -/obj/fiftyspawner/steel, -/obj/fiftyspawner/steel, -/obj/fiftyspawner/steel, -/obj/fiftyspawner/steel, -/obj/fiftyspawner/glass, -/obj/fiftyspawner/glass, -/obj/fiftyspawner/glass, -/obj/fiftyspawner/glass, -/obj/item/stack/material/plasteel{ - amount = 10 - }, -/obj/structure/closet/walllocker_double/east, -/obj/effect/floor_decal/industrial/warning, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 9 - }, -/turf/simulated/floor/tiled/steel, -/area/assembly/robotics) "LC" = ( /obj/structure/cable/green{ icon_state = "4-8" @@ -19287,19 +19319,6 @@ /obj/random/trash_pile, /turf/simulated/floor, /area/maintenance/stellardelight/deck1/exploration) -"Pf" = ( -/obj/effect/floor_decal/milspec/color/red/half{ - dir = 8 - }, -/obj/structure/closet/walllocker_double/east{ - dir = 8; - name = "Evidence Storage"; - pixel_x = -32 - }, -/obj/item/weapon/storage/box/evidence, -/obj/item/weapon/storage/box/evidence, -/turf/simulated/floor/tiled/dark, -/area/security/security_cell_hallway) "Pg" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 8 @@ -19478,30 +19497,6 @@ }, /turf/simulated/floor/tiled/milspec, /area/stellardelight/deck1/exploration) -"PD" = ( -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/structure/closet/walllocker_double/north{ - desc = "A wall mounted storage cabinet marked with a cross and warning icon. This seems to contain an assortment of emergency supplies."; - name = "Emergency Cabinet" - }, -/obj/item/device/radio, -/obj/item/device/radio, -/obj/item/device/radio, -/obj/item/weapon/storage/briefcase/inflatable, -/obj/item/weapon/tank/emergency/oxygen/engi, -/obj/item/weapon/tank/emergency/oxygen/engi, -/obj/item/clothing/mask/breath, -/obj/item/clothing/mask/breath, -/turf/simulated/floor/tiled/techmaint, -/area/stellardelight/deck1/aft) "PE" = ( /obj/machinery/alarm/angled, /turf/simulated/floor/tiled/milspec, @@ -20480,13 +20475,6 @@ "RC" = ( /turf/simulated/wall/bay/red, /area/security/warden) -"RD" = ( -/obj/structure/closet/walllocker_double/north, -/obj/item/weapon/storage/briefcase/inflatable, -/obj/item/weapon/storage/briefcase/inflatable, -/obj/item/weapon/storage/briefcase/inflatable, -/turf/simulated/floor/tiled/eris/white/gray_platform, -/area/gateway) "RE" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -21012,16 +21000,14 @@ /obj/structure/cable/green{ icon_state = "1-8" }, -/obj/structure/sign/directions{ - desc = "A direction sign, pointing out the way to the shuttle bay."; - name = "\improper Shuttle Bay"; - pixel_x = 32 - }, /obj/structure/sign/directions/science{ dir = 6; pixel_x = 32; pixel_y = -6 }, +/obj/structure/sign/directions/shuttle_bay{ + pixel_x = 32 + }, /turf/simulated/floor/tiled/techmaint, /area/stellardelight/deck1/aft) "SL" = ( @@ -21057,9 +21043,7 @@ /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 8 }, -/obj/structure/sign/directions{ - desc = "A direction sign, pointing out the way to the shuttle bay."; - name = "\improper Shuttle Bay"; +/obj/structure/sign/directions/shuttle_bay{ pixel_y = -32 }, /turf/simulated/floor/tiled/techmaint, @@ -21553,10 +21537,8 @@ pixel_x = -32; pixel_y = 6 }, -/obj/structure/sign/directions{ - desc = "A direction sign, pointing out the way to the shuttle bay."; +/obj/structure/sign/directions/shuttle_bay{ dir = 10; - name = "\improper Shuttle Bay"; pixel_x = -32; pixel_y = -6 }, @@ -22080,24 +22062,6 @@ }, /turf/simulated/floor/tiled/techfloor, /area/rnd/workshop) -"UO" = ( -/obj/structure/closet/walllocker_double/east{ - desc = "A wall mounted storage cabinet marked with a cross and warning icon. This seems to contain an assortment of emergency supplies."; - name = "Emergency Cabinet" - }, -/obj/item/device/radio, -/obj/item/device/radio, -/obj/item/device/radio, -/obj/item/weapon/storage/briefcase/inflatable, -/obj/item/weapon/tank/emergency/oxygen/engi, -/obj/item/weapon/tank/emergency/oxygen/engi, -/obj/item/clothing/mask/breath, -/obj/item/clothing/mask/breath, -/obj/effect/floor_decal/milspec/color/red/half{ - dir = 4 - }, -/turf/simulated/floor/tiled/dark, -/area/security/security_cell_hallway) "UP" = ( /obj/machinery/light/small{ dir = 1 @@ -22294,24 +22258,6 @@ /obj/structure/low_wall/bay/reinforced/steel, /turf/simulated/floor, /area/maintenance/stellardelight/deck1/exploration) -"Vk" = ( -/obj/structure/closet/walllocker_double/east{ - desc = "A wall mounted storage cabinet marked with a cross and warning icon. This seems to contain an assortment of emergency supplies."; - name = "Emergency Cabinet" - }, -/obj/item/device/radio, -/obj/item/device/radio, -/obj/item/device/radio, -/obj/item/weapon/storage/briefcase/inflatable, -/obj/item/weapon/tank/emergency/oxygen/engi, -/obj/item/weapon/tank/emergency/oxygen/engi, -/obj/item/clothing/mask/breath, -/obj/item/clothing/mask/breath, -/obj/effect/floor_decal/milspec/color/emerald/half{ - dir = 4 - }, -/turf/simulated/floor/tiled/techmaint, -/area/stellardelight/deck1/starboard) "Vl" = ( /obj/machinery/door/window/brigdoor/eastleft{ name = "Slime Pen 6"; @@ -24302,14 +24248,6 @@ }, /turf/simulated/floor/tiled/techfloor, /area/stellardelight/deck1/starboard) -"Zm" = ( -/obj/structure/closet/walllocker_double/west, -/obj/item/device/suit_cooling_unit, -/obj/item/device/suit_cooling_unit, -/obj/item/device/suit_cooling_unit, -/obj/item/device/suit_cooling_unit, -/turf/simulated/floor/tiled/eris/steel/cargo, -/area/stellardelight/deck1/miningequipment) "Zn" = ( /obj/machinery/door/firedoor/glass, /obj/structure/window/bay/reinforced, @@ -31871,7 +31809,7 @@ ql TP CW Fx -zm +fe qk aC Fy @@ -32977,7 +32915,7 @@ Sa xC hR ke -iV +cL Wz re MI @@ -33390,7 +33328,7 @@ Je YF Vv Tc -rS +eK YF YF KF @@ -33426,8 +33364,8 @@ dl sS pR rn -Ja -Zm +dC +dE vq pR aI @@ -33662,7 +33600,7 @@ WB DY ZE Ku -RD +ca UY nD Ku @@ -33804,7 +33742,7 @@ Ku Ku Ku Ku -DT +cc ll nD YM @@ -34097,7 +34035,7 @@ kU ER rW lC -HT +dv ER EZ qX @@ -34213,7 +34151,7 @@ Ba wT wT wT -UO +bC yR wT QC @@ -34234,7 +34172,7 @@ LJ nD NR Ku -wL +cz Nf wS SH @@ -34949,7 +34887,7 @@ AQ bi HX Gu -JB +eg bi RI uw @@ -35224,7 +35162,7 @@ Ku Ku Ku Ku -gs +cx nD tb YM @@ -35345,7 +35283,7 @@ TE CM qG PO -Pf +bp wT wT wT @@ -35407,7 +35345,7 @@ cs LU Pz qD -PD +dX KX gQ HB @@ -35662,7 +35600,7 @@ Sz nf Wa QM -dv +eZ nf nf fr @@ -36099,7 +36037,7 @@ Wj Wj Wj Wj -Vk +cH WU tw Wj @@ -36820,7 +36758,7 @@ aD fs Ab aM -zA +ds Dx eo Dx @@ -36947,12 +36885,12 @@ dj sm aD JU -LB +cP nu yI af al -rz +cR ss aD bW @@ -36985,7 +36923,7 @@ wI Xt UF Rm -Lz +dM RR bj bD @@ -37957,7 +37895,7 @@ bD bD ym ym -hO +dz YW bc Dx diff --git a/maps/stellar_delight/stellar_delight2.dmm b/maps/stellar_delight/stellar_delight2.dmm index 3c45547994..8f78a1afe4 100644 --- a/maps/stellar_delight/stellar_delight2.dmm +++ b/maps/stellar_delight/stellar_delight2.dmm @@ -340,6 +340,17 @@ }, /turf/simulated/floor/tiled, /area/hydroponics) +"aH" = ( +/obj/effect/floor_decal/milspec/color/black/corner, +/obj/effect/floor_decal/milspec/color/silver/corner{ + dir = 4 + }, +/obj/structure/closet/hydrant{ + dir = 4; + pixel_x = 27 + }, +/turf/simulated/floor/tiled, +/area/stellardelight/deck2/fore) "aI" = ( /obj/structure/cable{ icon_state = "1-2" @@ -399,6 +410,19 @@ /obj/random/tech_supply, /turf/simulated/floor/tiled/eris/dark/orangecorner, /area/engineering/engine_eva) +"aP" = ( +/obj/effect/floor_decal/milspec/color/black/corner{ + dir = 1 + }, +/obj/effect/floor_decal/milspec/color/silver/corner{ + dir = 8 + }, +/obj/structure/closet/hydrant{ + dir = 8; + pixel_x = -27 + }, +/turf/simulated/floor/tiled, +/area/stellardelight/deck2/fore) "aQ" = ( /obj/structure/grille, /turf/simulated/floor/airless, @@ -602,12 +626,6 @@ pixel_x = 32; pixel_y = 6 }, -/obj/structure/sign/directions{ - desc = "A direction sign, pointing out the way to the shuttle bay."; - name = "\improper Shuttle Bay"; - pixel_x = 32; - pixel_y = -6 - }, /obj/structure/sign/directions/security{ pixel_x = 32; pixel_y = 12 @@ -619,6 +637,10 @@ /obj/structure/railing/grey{ dir = 4 }, +/obj/structure/sign/directions/shuttle_bay{ + pixel_x = 32; + pixel_y = -6 + }, /turf/simulated/floor/tiled/monotile, /area/stellardelight/deck2/aftport) "bn" = ( @@ -672,12 +694,6 @@ pixel_x = -32; pixel_y = 6 }, -/obj/structure/sign/directions{ - desc = "A direction sign, pointing out the way to the shuttle bay."; - name = "\improper Shuttle Bay"; - pixel_x = -32; - pixel_y = -6 - }, /obj/structure/sign/directions/security{ pixel_x = -32; pixel_y = 12 @@ -689,6 +705,10 @@ /obj/structure/railing/grey{ dir = 8 }, +/obj/structure/sign/directions/shuttle_bay{ + pixel_x = -32; + pixel_y = -6 + }, /turf/simulated/floor/tiled/monotile, /area/stellardelight/deck2/aftstarboard) "bs" = ( @@ -1776,24 +1796,13 @@ /turf/simulated/floor/grass, /area/hydroponics) "dG" = ( -/obj/item/device/radio, -/obj/item/device/radio, -/obj/item/device/radio, -/obj/item/weapon/storage/briefcase/inflatable, -/obj/item/weapon/tank/emergency/oxygen/engi, -/obj/item/weapon/tank/emergency/oxygen/engi, -/obj/item/clothing/mask/breath, -/obj/item/clothing/mask/breath, -/obj/structure/closet/walllocker_double/north{ - desc = "A wall mounted storage cabinet marked with a cross and warning icon. This seems to contain an assortment of emergency supplies."; - name = "Emergency Cabinet" - }, /obj/effect/floor_decal/emblem/stellardelight{ dir = 9 }, /obj/effect/floor_decal/steeldecal/steel_decals5{ dir = 1 }, +/obj/structure/closet/walllocker_double/emergency_engi/north, /turf/simulated/floor/tiled, /area/stellardelight/deck2/fore) "dH" = ( @@ -2166,16 +2175,11 @@ /area/bridge) "ex" = ( /obj/structure/closet/hydrant{ - pixel_x = -32 + dir = 4; + pixel_x = 27 }, -/obj/effect/floor_decal/milspec/color/black/corner{ - dir = 1 - }, -/obj/effect/floor_decal/milspec/color/silver/corner{ - dir = 8 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck2/fore) +/turf/simulated/floor/tiled/eris/white/bluecorner, +/area/stellardelight/deck2/triage) "ey" = ( /obj/machinery/door/firedoor/glass, /obj/structure/window/bay/reinforced, @@ -2675,6 +2679,40 @@ }, /turf/simulated/floor/tiled/eris/steel/brown_platform, /area/crew_quarters/bar) +"fC" = ( +/obj/effect/floor_decal/steeldecal/steel_decals5{ + dir = 4 + }, +/obj/structure/closet/hydrant{ + dir = 4; + pixel_x = 27 + }, +/turf/simulated/floor/tiled, +/area/stellardelight/deck2/starboard) +"fD" = ( +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/effect/floor_decal/steeldecal/steel_decals5{ + dir = 8 + }, +/obj/structure/closet/hydrant{ + dir = 8; + pixel_x = -27 + }, +/turf/simulated/floor/tiled, +/area/stellardelight/deck2/aftport) +"fE" = ( +/obj/item/weapon/storage/pill_bottle/dice_nerd, +/obj/item/weapon/storage/pill_bottle/dice, +/obj/item/weapon/storage/dicecup, +/obj/item/weapon/deck/cah, +/obj/item/weapon/deck/cah/black, +/obj/item/weapon/deck/cards, +/obj/item/weapon/deck/cards/casino, +/obj/structure/closet/walllocker_double/misc_civ/north, +/turf/simulated/floor/tiled/eris/dark/cargo, +/area/crew_quarters/recreation_area) "fF" = ( /obj/machinery/atmospherics/pipe/simple/hidden/cyan, /obj/structure/cable/white{ @@ -2699,6 +2737,46 @@ }, /turf/simulated/floor, /area/engineering/atmos/monitoring) +"fH" = ( +/obj/item/canvas, +/obj/item/canvas, +/obj/item/canvas, +/obj/item/canvas, +/obj/item/canvas, +/obj/item/canvas/nineteen_nineteen, +/obj/item/canvas/nineteen_nineteen, +/obj/item/canvas/nineteen_nineteen, +/obj/item/canvas/nineteen_nineteen, +/obj/item/canvas/nineteen_nineteen, +/obj/item/canvas/twentyfour_twentyfour, +/obj/item/canvas/twentyfour_twentyfour, +/obj/item/canvas/twentyfour_twentyfour, +/obj/item/canvas/twentyfour_twentyfour, +/obj/item/canvas/twentyfour_twentyfour, +/obj/item/canvas/twentythree_nineteen, +/obj/item/canvas/twentythree_nineteen, +/obj/item/canvas/twentythree_nineteen, +/obj/item/canvas/twentythree_nineteen, +/obj/item/canvas/twentythree_nineteen, +/obj/item/canvas/twentythree_twentythree, +/obj/item/canvas/twentythree_twentythree, +/obj/item/canvas/twentythree_twentythree, +/obj/item/canvas/twentythree_twentythree, +/obj/item/canvas/twentythree_twentythree, +/obj/structure/table/standard, +/obj/machinery/recharger, +/obj/machinery/atmospherics/unary/vent_pump/on, +/obj/machinery/light{ + dir = 4 + }, +/obj/item/paint_palette, +/obj/item/paint_palette, +/obj/item/paint_brush, +/obj/item/paint_brush, +/obj/effect/landmark/vines, +/obj/structure/closet/walllocker_double/misc_civ/north, +/turf/simulated/floor/tiled, +/area/storage/art) "fI" = ( /obj/effect/floor_decal/milspec/color/white/corner{ dir = 8 @@ -2727,6 +2805,24 @@ /obj/machinery/station_slot_machine, /turf/simulated/floor/tiled/eris/dark/cargo, /area/crew_quarters/recreation_area) +"fM" = ( +/obj/machinery/atmospherics/unary/vent_scrubber/on{ + dir = 8 + }, +/obj/structure/table/steel_reinforced, +/obj/machinery/photocopier/faxmachine{ + department = "Bridge" + }, +/obj/machinery/light/floortube{ + dir = 4; + pixel_x = 6 + }, +/obj/item/weapon/paper/dockingcodes/sd, +/obj/item/device/radio, +/obj/item/device/radio, +/obj/structure/closet/walllocker_double/command/east, +/turf/simulated/floor/tiled/eris/dark/monofloor, +/area/bridge) "fN" = ( /obj/machinery/door/firedoor/glass, /obj/structure/window/bay/reinforced, @@ -2787,6 +2883,17 @@ }, /turf/simulated/floor/tiled, /area/stellardelight/deck2/port) +"fS" = ( +/obj/structure/cable/blue{ + icon_state = "4-8" + }, +/obj/item/weapon/book/manual/command_guide, +/obj/item/weapon/book/manual/standard_operating_procedure, +/obj/item/weapon/book/manual/security_space_law, +/obj/item/weapon/book/manual/sd_guide, +/obj/structure/closet/walllocker_double/command/north, +/turf/simulated/floor/wood, +/area/crew_quarters/captain) "fT" = ( /obj/structure/table/reinforced, /obj/fiftyspawner/steel, @@ -2794,11 +2901,6 @@ /obj/fiftyspawner/steel, /obj/fiftyspawner/steel, /obj/fiftyspawner/steel, -/obj/structure/closet/walllocker_double/north{ - dir = 4; - pixel_x = 32; - pixel_y = 0 - }, /obj/fiftyspawner/wood, /obj/item/stack/material/glass/phoronrglass{ amount = 20 @@ -2810,6 +2912,9 @@ /obj/item/stack/material/plasteel{ amount = 30 }, +/obj/structure/closet/walllocker_double/engineering/east{ + name = "material sheets" + }, /turf/simulated/floor/tiled/eris/dark/orangecorner, /area/engineering/workshop) "fU" = ( @@ -2869,6 +2974,15 @@ /obj/machinery/smartfridge/sheets/persistent_lossy, /turf/simulated/floor/tiled/eris/steel/cargo, /area/quartermaster/storage) +"gc" = ( +/obj/structure/cable/cyan{ + icon_state = "1-2" + }, +/obj/item/weapon/book/manual/engineering_particle_accelerator, +/obj/item/weapon/book/manual/tesla_engine, +/obj/structure/closet/walllocker_double/engineering/west, +/turf/simulated/floor/tiled/eris/dark/techfloor_grid, +/area/engineering/engine_room) "gd" = ( /obj/machinery/door/firedoor/glass, /obj/machinery/atmospherics/pipe/simple/hidden/supply{ @@ -3048,6 +3162,15 @@ }, /turf/simulated/floor/reinforced/airless, /area/stellardelight/deck2/combustionworkshop) +"gt" = ( +/obj/item/weapon/storage/box/lights/mixed, +/obj/item/weapon/tape_roll, +/obj/item/weapon/storage/belt/utility, +/obj/item/device/multitool, +/obj/fiftyspawner/steel, +/obj/structure/closet/walllocker_double/cargo/east, +/turf/simulated/floor/tiled/eris/steel/cargo, +/area/quartermaster/storage) "gu" = ( /obj/machinery/firealarm/angled, /obj/item/device/defib_kit/loaded, @@ -3092,20 +3215,9 @@ /obj/effect/floor_decal/steeldecal/steel_decals5{ dir = 4 }, -/obj/structure/closet/walllocker_double/east{ - desc = "A wall mounted storage cabinet marked with a cross and warning icon. This seems to contain an assortment of emergency supplies."; - name = "Emergency Cabinet" - }, -/obj/item/device/radio, -/obj/item/device/radio, -/obj/item/device/radio, -/obj/item/weapon/storage/briefcase/inflatable, -/obj/item/weapon/tank/emergency/oxygen/engi, -/obj/item/weapon/tank/emergency/oxygen/engi, -/obj/item/clothing/mask/breath, -/obj/item/clothing/mask/breath, +/obj/structure/closet/walllocker_double/emergency_engi/east, /turf/simulated/floor/tiled, -/area/stellardelight/deck2/port) +/area/stellardelight/deck2/starboard) "gA" = ( /obj/structure/railing/grey{ dir = 4 @@ -3142,6 +3254,13 @@ }, /turf/simulated/floor/tiled/eris/dark/gray_platform, /area/bridge) +"gD" = ( +/obj/structure/table/reinforced, +/obj/random/powercell, +/obj/random/tech_supply, +/obj/item/device/t_scanner, +/turf/simulated/floor/tiled/eris/dark/orangecorner, +/area/engineering/workshop) "gE" = ( /obj/structure/cable{ icon_state = "1-8" @@ -3192,6 +3311,15 @@ }, /turf/simulated/floor/tiled/eris/white/bluecorner, /area/medical/reception) +"gI" = ( +/obj/machinery/atmospherics/pipe/simple/hidden{ + dir = 4 + }, +/obj/item/weapon/circuitboard/tesla_coil, +/obj/item/weapon/circuitboard/tesla_coil, +/obj/structure/closet/walllocker_double/engineering/north, +/turf/simulated/floor/tiled/eris/dark/orangecorner, +/area/engineering/engine_eva) "gJ" = ( /obj/structure/medical_stand, /turf/simulated/floor/tiled/white, @@ -3492,6 +3620,13 @@ }, /turf/simulated/floor/tiled/techfloor, /area/stellardelight/deck2/o2production) +"hv" = ( +/obj/effect/floor_decal/steeldecal/steel_decals5{ + dir = 4 + }, +/obj/structure/closet/walllocker_double/emergency_engi/east, +/turf/simulated/floor/tiled, +/area/stellardelight/deck2/port) "hw" = ( /obj/structure/table/standard, /obj/machinery/alarm/angled, @@ -3519,19 +3654,16 @@ /turf/simulated/floor/airless, /area/stellardelight/deck2/exterior) "hA" = ( -/obj/structure/closet/walllocker_double/south{ - dir = 2; - pixel_y = 30 +/obj/structure/closet/walllocker_double/emergency_engi/south, +/turf/simulated/floor/tiled/eris/white/cargo, +/area/stellardelight/deck2/triage) +"hB" = ( +/obj/effect/floor_decal/steeldecal/steel_decals5{ + dir = 4 }, -/obj/item/weapon/storage/pill_bottle/dice_nerd, -/obj/item/weapon/storage/pill_bottle/dice, -/obj/item/weapon/storage/dicecup, -/obj/item/weapon/deck/cah, -/obj/item/weapon/deck/cah/black, -/obj/item/weapon/deck/cards, -/obj/item/weapon/deck/cards/casino, -/turf/simulated/floor/tiled/eris/dark/cargo, -/area/crew_quarters/recreation_area) +/obj/structure/closet/walllocker_double/emergency_engi/east, +/turf/simulated/floor/tiled, +/area/stellardelight/deck2/fore) "hC" = ( /obj/structure/filingcabinet/chestdrawer{ name = "Medical Forms" @@ -3545,6 +3677,13 @@ /obj/effect/landmark/start/visitor, /turf/simulated/floor/carpet/turcarpet, /area/crew_quarters/recreation_area) +"hE" = ( +/obj/effect/floor_decal/milspec/color/green/half{ + dir = 8 + }, +/obj/structure/closet/walllocker_double/emergency_engi/west, +/turf/simulated/floor/tiled, +/area/stellardelight/deck2/fore) "hF" = ( /obj/machinery/vending/wallmed1{ dir = 1; @@ -3552,6 +3691,29 @@ }, /turf/simulated/floor/tiled/white, /area/medical/surgery2) +"hG" = ( +/obj/effect/floor_decal/industrial/outline, +/obj/effect/floor_decal/steeldecal/steel_decals9, +/obj/effect/floor_decal/steeldecal/steel_decals9{ + dir = 4 + }, +/obj/effect/floor_decal/steeldecal/steel_decals9{ + dir = 1 + }, +/obj/effect/floor_decal/steeldecal/steel_decals9{ + dir = 8 + }, +/obj/machinery/atmospherics/unary/vent_pump/on{ + dir = 1 + }, +/obj/machinery/disposal/wall/cleaner{ + dir = 4 + }, +/obj/structure/disposalpipe/trunk{ + dir = 1 + }, +/turf/simulated/floor/tiled/dark, +/area/crew_quarters/locker) "hH" = ( /obj/structure/cable/green{ icon_state = "1-2" @@ -3623,26 +3785,6 @@ /obj/structure/low_wall/bay/reinforced/steel, /turf/simulated/floor, /area/maintenance/stellardelight/deck2/portfore) -"hP" = ( -/obj/effect/floor_decal/industrial/outline, -/obj/effect/floor_decal/steeldecal/steel_decals9, -/obj/effect/floor_decal/steeldecal/steel_decals9{ - dir = 4 - }, -/obj/effect/floor_decal/steeldecal/steel_decals9{ - dir = 1 - }, -/obj/effect/floor_decal/steeldecal/steel_decals9{ - dir = 8 - }, -/obj/machinery/atmospherics/unary/vent_pump/on{ - dir = 1 - }, -/obj/machinery/disposal/wall/cleaner{ - dir = 4 - }, -/turf/simulated/floor/tiled/dark, -/area/crew_quarters/locker) "hQ" = ( /obj/structure/table/standard, /obj/item/weapon/storage/firstaid/surgery, @@ -3835,12 +3977,6 @@ /obj/structure/low_wall/bay/reinforced/white, /turf/simulated/floor, /area/medical/psych) -"iq" = ( -/obj/structure/closet/hydrant{ - pixel_x = 32 - }, -/turf/simulated/floor/tiled/eris/white/bluecorner, -/area/stellardelight/deck2/triage) "ir" = ( /obj/structure/cable/green{ icon_state = "1-2" @@ -4021,17 +4157,6 @@ }, /turf/simulated/floor, /area/stellardelight/deck2/starboardescape) -"iM" = ( -/obj/structure/cable/blue{ - icon_state = "4-8" - }, -/obj/item/weapon/book/manual/command_guide, -/obj/item/weapon/book/manual/standard_operating_procedure, -/obj/item/weapon/book/manual/security_space_law, -/obj/structure/closet/walllocker_double/north, -/obj/item/weapon/book/manual/sd_guide, -/turf/simulated/floor/wood, -/area/crew_quarters/captain) "iN" = ( /obj/machinery/door/firedoor/glass, /obj/machinery/door/airlock/angled_bay/standard/glass{ @@ -4177,6 +4302,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 +4564,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" = ( @@ -5515,18 +5640,16 @@ pixel_x = 32; pixel_y = 6 }, -/obj/structure/sign/directions{ - desc = "A direction sign, pointing out the way to the shuttle bay."; - dir = 1; - name = "\improper Shuttle Bay"; - pixel_x = 32; - pixel_y = -12 - }, /obj/structure/sign/directions/stairs_down{ dir = 1; pixel_x = 32; pixel_y = 12 }, +/obj/structure/sign/directions/shuttle_bay{ + dir = 1; + pixel_x = 32; + pixel_y = -12 + }, /turf/simulated/open, /area/stellardelight/deck2/fore) "lR" = ( @@ -6149,24 +6272,6 @@ /obj/machinery/hologram/holopad, /turf/simulated/floor/tiled/eris/dark/danger, /area/engineering/engine_room) -"nh" = ( -/obj/item/device/radio, -/obj/item/device/radio, -/obj/item/device/radio, -/obj/item/weapon/storage/briefcase/inflatable, -/obj/item/weapon/tank/emergency/oxygen/engi, -/obj/item/weapon/tank/emergency/oxygen/engi, -/obj/item/clothing/mask/breath, -/obj/item/clothing/mask/breath, -/obj/structure/closet/walllocker_double/west{ - desc = "A wall mounted storage cabinet marked with a cross and warning icon. This seems to contain an assortment of emergency supplies."; - name = "Emergency Cabinet" - }, -/obj/effect/floor_decal/milspec/color/green/half{ - dir = 8 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck2/fore) "ni" = ( /turf/simulated/wall/bay/r_wall/steel, /area/engineering/engine_room) @@ -6675,15 +6780,6 @@ }, /turf/simulated/floor/tiled/techfloor, /area/engineering/atmos/monitoring) -"or" = ( -/obj/structure/closet/walllocker_double/east, -/obj/item/weapon/storage/box/lights/mixed, -/obj/item/weapon/tape_roll, -/obj/item/weapon/storage/belt/utility, -/obj/item/device/multitool, -/obj/fiftyspawner/steel, -/turf/simulated/floor/tiled/eris/steel/cargo, -/area/quartermaster/storage) "os" = ( /obj/machinery/door/firedoor/glass/hidden/steel{ dir = 8 @@ -7052,15 +7148,6 @@ }, /turf/simulated/floor/tiled/eris/steel/brown_platform, /area/quartermaster/storage) -"pm" = ( -/obj/structure/closet/hydrant{ - pixel_x = 32 - }, -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 4 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck2/starboard) "pn" = ( /obj/machinery/alarm/angled{ dir = 4 @@ -7915,15 +8002,6 @@ /obj/effect/landmark/start/cargo, /turf/simulated/floor/tiled/eris/steel/cargo, /area/quartermaster/storage) -"rf" = ( -/obj/structure/cable/cyan{ - icon_state = "1-2" - }, -/obj/structure/closet/walllocker_double/west, -/obj/item/weapon/book/manual/engineering_particle_accelerator, -/obj/item/weapon/book/manual/tesla_engine, -/turf/simulated/floor/tiled/eris/dark/techfloor_grid, -/area/engineering/engine_room) "rg" = ( /obj/structure/bed/chair/sofa/corp/corner{ dir = 8 @@ -9723,17 +9801,6 @@ }, /turf/simulated/floor, /area/stellardelight/deck2/combustionworkshop) -"vm" = ( -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 4 - }, -/obj/structure/closet/walllocker_double/north{ - color = "#8da4a6" - }, -/obj/item/weapon/circuitboard/tesla_coil, -/obj/item/weapon/circuitboard/tesla_coil, -/turf/simulated/floor/tiled/eris/dark/orangecorner, -/area/engineering/engine_eva) "vn" = ( /obj/machinery/atmospherics/pipe/simple/hidden/yellow{ dir = 10 @@ -10815,24 +10882,6 @@ /obj/structure/low_wall/bay/reinforced/steel, /turf/simulated/floor, /area/stellardelight/deck2/combustionworkshop) -"xS" = ( -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 4 - }, -/obj/structure/closet/walllocker_double/east{ - desc = "A wall mounted storage cabinet marked with a cross and warning icon. This seems to contain an assortment of emergency supplies."; - name = "Emergency Cabinet" - }, -/obj/item/device/radio, -/obj/item/device/radio, -/obj/item/device/radio, -/obj/item/weapon/storage/briefcase/inflatable, -/obj/item/weapon/tank/emergency/oxygen/engi, -/obj/item/weapon/tank/emergency/oxygen/engi, -/obj/item/clothing/mask/breath, -/obj/item/clothing/mask/breath, -/turf/simulated/floor/tiled, -/area/stellardelight/deck2/fore) "xT" = ( /obj/structure/cable/green{ icon_state = "1-2" @@ -11183,18 +11232,6 @@ }, /turf/simulated/floor/tiled/eris/steel/cargo, /area/quartermaster/storage) -"yD" = ( -/obj/structure/closet/hydrant{ - pixel_x = -32 - }, -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 8 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck2/aftport) "yE" = ( /obj/structure/medical_stand, /turf/simulated/floor/tiled/eris/white/bluecorner, @@ -14104,29 +14141,6 @@ }, /turf/simulated/floor, /area/maintenance/stellardelight/deck2/portsolars) -"Fp" = ( -/obj/machinery/atmospherics/unary/vent_scrubber/on{ - dir = 8 - }, -/obj/structure/table/steel_reinforced, -/obj/machinery/photocopier/faxmachine{ - department = "Bridge" - }, -/obj/machinery/light/floortube{ - dir = 4; - pixel_x = 6 - }, -/obj/structure/closet/walllocker_double/north{ - color = "#8da4a6"; - dir = 4; - pixel_x = 32; - pixel_y = 0 - }, -/obj/item/weapon/paper/dockingcodes/sd, -/obj/item/device/radio, -/obj/item/device/radio, -/turf/simulated/floor/tiled/eris/dark/monofloor, -/area/bridge) "Fq" = ( /obj/structure/table/standard, /obj/item/device/healthanalyzer, @@ -14616,24 +14630,6 @@ }, /turf/simulated/floor/tiled, /area/stellardelight/deck2/fore) -"Gk" = ( -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 4 - }, -/obj/structure/closet/walllocker_double/east{ - desc = "A wall mounted storage cabinet marked with a cross and warning icon. This seems to contain an assortment of emergency supplies."; - name = "Emergency Cabinet" - }, -/obj/item/device/radio, -/obj/item/device/radio, -/obj/item/device/radio, -/obj/item/weapon/storage/briefcase/inflatable, -/obj/item/weapon/tank/emergency/oxygen/engi, -/obj/item/weapon/tank/emergency/oxygen/engi, -/obj/item/clothing/mask/breath, -/obj/item/clothing/mask/breath, -/turf/simulated/floor/tiled, -/area/stellardelight/deck2/starboard) "Gl" = ( /obj/machinery/light/small{ dir = 4 @@ -15746,14 +15742,6 @@ }, /turf/simulated/floor/airless, /area/engineering/engine_room) -"Iy" = ( -/obj/structure/table/reinforced, -/obj/random/powercell, -/obj/random/tech_supply, -/obj/structure/closet/walllocker_double/west, -/obj/item/device/t_scanner, -/turf/simulated/floor/tiled/eris/dark/orangecorner, -/area/engineering/workshop) "Iz" = ( /obj/item/stack/cable_coil/yellow, /turf/simulated/floor/airless, @@ -16622,48 +16610,6 @@ }, /turf/simulated/floor/tiled/eris/dark/orangecorner, /area/engineering/engine_eva) -"KC" = ( -/obj/structure/closet/walllocker_double{ - pixel_y = 28 - }, -/obj/item/canvas, -/obj/item/canvas, -/obj/item/canvas, -/obj/item/canvas, -/obj/item/canvas, -/obj/item/canvas/nineteen_nineteen, -/obj/item/canvas/nineteen_nineteen, -/obj/item/canvas/nineteen_nineteen, -/obj/item/canvas/nineteen_nineteen, -/obj/item/canvas/nineteen_nineteen, -/obj/item/canvas/twentyfour_twentyfour, -/obj/item/canvas/twentyfour_twentyfour, -/obj/item/canvas/twentyfour_twentyfour, -/obj/item/canvas/twentyfour_twentyfour, -/obj/item/canvas/twentyfour_twentyfour, -/obj/item/canvas/twentythree_nineteen, -/obj/item/canvas/twentythree_nineteen, -/obj/item/canvas/twentythree_nineteen, -/obj/item/canvas/twentythree_nineteen, -/obj/item/canvas/twentythree_nineteen, -/obj/item/canvas/twentythree_twentythree, -/obj/item/canvas/twentythree_twentythree, -/obj/item/canvas/twentythree_twentythree, -/obj/item/canvas/twentythree_twentythree, -/obj/item/canvas/twentythree_twentythree, -/obj/structure/table/standard, -/obj/machinery/recharger, -/obj/machinery/atmospherics/unary/vent_pump/on, -/obj/machinery/light{ - dir = 4 - }, -/obj/item/paint_palette, -/obj/item/paint_palette, -/obj/item/paint_brush, -/obj/item/paint_brush, -/obj/effect/landmark/vines, -/turf/simulated/floor/tiled, -/area/storage/art) "KD" = ( /obj/structure/cable/green{ icon_state = "1-2" @@ -19498,16 +19444,6 @@ }, /turf/simulated/floor/tiled/techmaint, /area/engineering/atmos/storage) -"QM" = ( -/obj/structure/closet/hydrant{ - pixel_x = 32 - }, -/obj/effect/floor_decal/milspec/color/black/corner, -/obj/effect/floor_decal/milspec/color/silver/corner{ - dir = 4 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck2/fore) "QN" = ( /obj/structure/extinguisher_cabinet{ dir = 4; @@ -22226,6 +22162,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" = ( @@ -23363,21 +23302,6 @@ /obj/machinery/atmospherics/unary/vent_scrubber/on, /turf/simulated/floor/tiled/techmaint, /area/storage/primary) -"ZB" = ( -/obj/item/device/radio, -/obj/item/device/radio, -/obj/item/device/radio, -/obj/item/weapon/storage/briefcase/inflatable, -/obj/item/weapon/tank/emergency/oxygen/engi, -/obj/item/weapon/tank/emergency/oxygen/engi, -/obj/item/clothing/mask/breath, -/obj/item/clothing/mask/breath, -/obj/structure/closet/walllocker_double/south{ - desc = "A wall mounted storage cabinet marked with a cross and warning icon. This seems to contain an assortment of emergency supplies."; - name = "Emergency Cabinet" - }, -/turf/simulated/floor/tiled/eris/white/cargo, -/area/stellardelight/deck2/triage) "ZC" = ( /obj/item/weapon/stool/padded{ dir = 8 @@ -31359,7 +31283,7 @@ Cj tP tU jd -gz +hv Bf NG cO @@ -31796,7 +31720,7 @@ HG bk Mc Mc -yD +fD SQ nX SQ @@ -31891,7 +31815,7 @@ zO Qe Qe Qe -nh +hE PZ GY Qe @@ -32172,7 +32096,7 @@ HR of cP yh -QM +aH Xe qo ek @@ -33065,7 +32989,7 @@ wz RQ Ze Eo -ZB +hA QP gu Kf @@ -33873,7 +33797,7 @@ EE KH zz nt -hA +fE Bp io io @@ -33917,7 +33841,7 @@ zD ik Ze og -ZB +hA QP sJ nJ @@ -33935,7 +33859,7 @@ HZ Nj NN ae -or +gt WE Ui BO @@ -34036,7 +33960,7 @@ Dh lo lB GW -Fp +fM rN VE oc @@ -34180,7 +34104,7 @@ gC rN rN rN -iM +fS uP IV IV @@ -34478,7 +34402,7 @@ fh MS NF qQ -iq +ex zX vf LV @@ -34728,7 +34652,7 @@ Tl pH eX Ga -ex +aP zs lS eV @@ -34929,7 +34853,7 @@ Lt Xf Lc kA -Iy +gD CL To jm @@ -35009,7 +34933,7 @@ FA Zr sj FU -xS +hB Zr vj pZ @@ -35295,7 +35219,7 @@ WZ CF wt hT -hP +hG fl ZA zm @@ -35900,10 +35824,10 @@ Tk yu IX Mk -Gk +gz LH Mk -pm +fC Mk XE lv @@ -35922,12 +35846,12 @@ Nm eo OF Oq -rf +gc RG lN is OF -vm +gI KB gX lK @@ -36012,7 +35936,7 @@ xK aw Dd mT -KC +fH Bi XD jj diff --git a/maps/stellar_delight/stellar_delight3.dmm b/maps/stellar_delight/stellar_delight3.dmm index bbf1f5d06e..fddeb0f20e 100644 --- a/maps/stellar_delight/stellar_delight3.dmm +++ b/maps/stellar_delight/stellar_delight3.dmm @@ -1,34429 +1,1689 @@ -//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE -"aa" = ( -/obj/effect/landmark{ - name = "morphspawn" - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/aftstarroom) -"ab" = ( -/obj/structure/railing/grey{ - dir = 8 - }, -/turf/simulated/floor/tiled/monotile, -/area/stellardelight/deck3/commandhall) -"ac" = ( -/obj/effect/landmark{ - name = "morphspawn" - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/maintenance/stellardelight/deck3/forestarroomb) -"ad" = ( -/turf/simulated/wall/bay/r_wall/blue, -/area/tcommsat/chamber) -"ae" = ( -/obj/structure/railing/grey{ - dir = 4 - }, -/turf/simulated/floor/tiled/monotile, -/area/stellardelight/deck3/commandhall) -"af" = ( -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/turf/simulated/floor/airless, -/area/stellardelight/deck3/exterior) -"ag" = ( -/turf/simulated/floor/tiled/monotile, -/area/stellardelight/deck3/aft) -"ah" = ( -/obj/structure/sign/directions/stairs_down{ - pixel_x = 32; - pixel_y = 18 - }, -/obj/structure/sign/directions/medical{ - pixel_x = 32; - pixel_y = 12 - }, -/obj/structure/sign/directions/engineering{ - pixel_x = 32; - pixel_y = 6 - }, -/obj/structure/sign/directions/cargo{ - pixel_x = 32 - }, -/obj/structure/railing/grey{ - dir = 4 - }, -/turf/simulated/floor/tiled/monotile, -/area/stellardelight/deck3/aft) -"ai" = ( -/obj/machinery/door/firedoor/glass, -/obj/structure/window/bay/reinforced, -/obj/structure/low_wall/bay/reinforced/steel, -/turf/simulated/floor, -/area/stellardelight/deck3/portdock) -"aj" = ( -/obj/effect/landmark/free_ai_shell, -/turf/simulated/floor/carpet/turcarpet, -/area/ai) -"ak" = ( -/obj/structure/sign/directions/stairs_down{ - pixel_x = -32; - pixel_y = 18 - }, -/obj/structure/sign/directions/medical{ - pixel_x = -32; - pixel_y = 12 - }, -/obj/structure/sign/directions/engineering{ - pixel_x = -32; - pixel_y = 6 - }, -/obj/structure/sign/directions/cargo{ - pixel_x = -32 - }, -/obj/structure/railing/grey{ - dir = 8 - }, -/turf/simulated/floor/tiled/monotile, -/area/stellardelight/deck3/aft) -"al" = ( -/obj/machinery/power/terminal{ - dir = 8 - }, -/obj/structure/cable{ - icon_state = "0-4" - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/substation/command) -"am" = ( -/obj/machinery/door/airlock/angled_bay/hatch{ - dir = 4; - name = "maintenance access"; - stripe_color = "#454545" - }, -/obj/machinery/door/firedoor/glass, -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/turf/simulated/floor/tiled/steel_ridged, -/area/maintenance/stellardelight/deck3/forestarrooma) -"an" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_cyborg_station) -"ao" = ( -/obj/machinery/computer/HolodeckControl{ - dir = 4 - }, -/obj/item/device/radio/intercom{ - dir = 8; - pixel_x = -24 - }, -/turf/simulated/floor/tiled, -/area/holodeck_control) -"ap" = ( -/obj/machinery/vending/altevian, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/forestarroomb) -"at" = ( -/obj/structure/table/darkglass, -/turf/simulated/floor/tiled/dark, -/area/lawoffice) -"aw" = ( -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/aftstarroom) -"aA" = ( -/turf/simulated/wall/bay/r_wall/steel, -/area/stellardelight/deck3/transitgateway) -"aB" = ( -/obj/machinery/door/firedoor/glass, -/obj/structure/window/bay/reinforced, -/obj/structure/low_wall/bay/reinforced/steel, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardcent) -"aD" = ( -/obj/structure/table/steel, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/forestarrooma) -"aG" = ( -/obj/machinery/atmospherics/unary/vent_scrubber/on{ - dir = 8 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"aH" = ( -/obj/machinery/account_database{ - dir = 8 - }, -/obj/structure/sign/painting/library_secure{ - pixel_x = 30 - }, -/turf/simulated/floor/tiled, -/area/crew_quarters/heads/hop) -"aJ" = ( -/obj/machinery/door/firedoor/glass, -/obj/structure/window/bay/reinforced, -/obj/structure/low_wall/bay/reinforced/steel, -/turf/simulated/floor, -/area/stellardelight/deck2/starboard) -"aK" = ( -/obj/structure/cable/blue{ - icon_state = "1-4" - }, -/obj/machinery/camera/network/command{ - dir = 10 - }, -/turf/simulated/floor/tiled, -/area/crew_quarters/heads/hop) -"aM" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 10 - }, -/turf/simulated/floor, -/area/stellardelight/deck2/central) -"aN" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 4 - }, -/obj/structure/cable/blue{ - icon_state = "1-2" - }, -/turf/simulated/open, -/area/stellardelight/deck2/starboard) -"aP" = ( -/obj/structure/bed/chair/shuttle{ - dir = 1 - }, -/obj/structure/closet/emergsuit_wall{ - dir = 1; - pixel_y = -32 - }, -/obj/machinery/alarm{ - dir = 4; - pixel_x = -28 - }, -/obj/effect/floor_decal/fancy_shuttle{ - fancy_shuttle_tag = "sdboat" - }, -/turf/simulated/floor/tiled, -/area/shuttle/sdboat/aft{ - base_turf = /turf/simulated/floor/reinforced/airless - }) -"aQ" = ( -/turf/simulated/floor/tiled/eris/dark/gray_platform, -/area/stellardelight/deck3/commandhall) -"aS" = ( -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/forestarrooma) -"aX" = ( -/obj/structure/sign/deck3{ - pixel_x = 32 - }, -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 4 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"ba" = ( -/obj/machinery/atmospherics/unary/vent_pump/on, -/obj/effect/landmark/vines, -/turf/simulated/open, -/area/stellardelight/deck2/fore) -"bb" = ( -/obj/effect/floor_decal/techfloor/orange{ - dir = 8 - }, -/obj/machinery/atmospherics/unary/vent_pump/on, -/turf/simulated/floor/tiled/techfloor, -/area/stellardelight/deck3/transitgateway) -"bd" = ( -/obj/structure/closet, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portaft) -"be" = ( -/obj/machinery/door/firedoor/glass/hidden/shuttle, -/obj/machinery/door/blast/shuttle/open{ - dir = 4; - id = "shuttleshutter" - }, -/obj/structure/window/fancy_shuttle{ - fancy_shuttle_tag = "sdboat" - }, -/turf/simulated/floor/reinforced/airless, -/area/shuttle/sdboat/fore{ - base_turf = /turf/simulated/floor/reinforced/airless - }) -"bg" = ( -/obj/machinery/door/firedoor/glass, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/door/airlock/angled_bay/standard/color{ - dir = 4; - door_color = "#323d80"; - fill_color = "#313866"; - id_tag = "hopdoor"; - name = "Head of Personnel"; - req_access = list(57); - stripe_color = "#a3d1d1" - }, -/turf/simulated/floor/tiled/steel_ridged, -/area/crew_quarters/heads/hop) -"bh" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/machinery/door/firedoor/glass, -/obj/machinery/door/airlock/angled_bay/hatch{ - dir = 4; - door_color = "#e6ab22"; - name = "Command Substation"; - req_one_access = list(10); - stripe_color = "#e6ab22" - }, -/turf/simulated/floor/tiled/steel_ridged, -/area/maintenance/stellardelight/deck3/starboardfore) -"bj" = ( -/obj/structure/flora/pottedplant/stoutbush, -/turf/simulated/floor/tiled/dark, -/area/lawoffice) -"bl" = ( -/obj/structure/lattice, -/obj/structure/cable/green{ - icon_state = "32-2" - }, -/obj/machinery/door/firedoor/glass, -/turf/simulated/open, -/area/maintenance/stellardelight/deck3/portcent) -"bm" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/structure/cable{ - icon_state = "1-4" - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/substation/command) -"bn" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 1 - }, -/turf/simulated/open, -/area/stellardelight/deck2/fore) -"bp" = ( -/obj/effect/floor_decal/industrial/warning{ - dir = 4 - }, -/obj/structure/cable/green{ - icon_state = "2-8" - }, -/turf/simulated/floor/airless, -/area/stellardelight/deck3/exterior) -"br" = ( -/obj/structure/lattice, -/obj/structure/cable{ - icon_state = "32-2" - }, -/obj/structure/disposalpipe/down, -/obj/machinery/door/firedoor/glass, -/turf/simulated/open, -/area/maintenance/stellardelight/deck3/starboardcent) -"bs" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 9 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai) -"bx" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/turf/simulated/floor/carpet/purcarpet, -/area/crew_quarters/heads/hor) -"by" = ( -/turf/simulated/wall/bay/r_wall/steel, -/area/maintenance/stellardelight/deck3/starboardaft) -"bB" = ( -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardcent) -"bC" = ( -/obj/structure/closet/crate, -/obj/random/maintenance, -/obj/random/maintenance, -/obj/random/maintenance, -/obj/random/maintenance, -/obj/random/maintenance, -/obj/random/maintenance/medical, -/obj/random/maintenance/medical, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portfore) -"bE" = ( -/turf/simulated/floor/glass/reinforced, -/area/stellardelight/deck3/commandhall) -"bI" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ - dir = 1 - }, -/obj/structure/cable/blue{ - icon_state = "2-4" - }, -/turf/simulated/open, -/area/stellardelight/deck2/fore) -"bJ" = ( -/obj/structure/table/steel, -/obj/item/weapon/flame/candle, -/turf/simulated/floor/tiled/techfloor/grid, -/area/maintenance/stellardelight/deck3/forestarrooma) -"bK" = ( -/obj/machinery/camera/network/command, -/turf/simulated/floor/bluegrid, -/area/ai) -"bL" = ( -/obj/machinery/media/jukebox/hacked, -/obj/machinery/status_display{ - pixel_y = 32 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai) -"bM" = ( -/obj/effect/floor_decal/emblem/nt1, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_upload) -"bO" = ( -/obj/structure/table/darkglass, -/obj/item/weapon/clipboard, -/obj/machinery/atmospherics/unary/vent_pump/on{ - dir = 1 - }, -/turf/simulated/floor/tiled/dark, -/area/lawoffice) -"bP" = ( -/obj/machinery/atmospherics/pipe/manifold/hidden, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portcent) -"bQ" = ( -/obj/structure/cable/blue{ - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_cyborg_station) -"bS" = ( -/obj/structure/cable{ - icon_state = "2-4" - }, -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 6 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 6 - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardcent) -"bT" = ( -/obj/machinery/door/firedoor/glass, -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/turf/simulated/floor, -/area/stellardelight/deck2/central) -"bU" = ( -/turf/simulated/wall/bay{ - desc = "It has a blue stripe! A huge chunk of metal used to seperate rooms."; - stripe_color = "#2e2aa1" - }, -/area/stellardelight/deck3/commandhall) -"bV" = ( -/obj/machinery/alarm/angled, -/turf/simulated/open, -/area/crew_quarters/bar) -"bW" = ( -/obj/structure/table/standard, -/obj/item/toy/plushie/ipc/toaster, -/obj/machinery/atmospherics/unary/vent_pump/on, -/turf/simulated/floor/bluegrid, -/area/ai_cyborg_station) -"bY" = ( -/obj/structure/table/woodentable, -/obj/machinery/door/blast/shutters{ - dir = 4; - id = "cafe"; - layer = 3.1; - name = "Cafe Shutters" - }, -/turf/simulated/floor/lino, -/area/stellardelight/deck3/cafe) -"bZ" = ( -/obj/machinery/ntnet_relay, -/turf/simulated/floor/tiled/dark{ - nitrogen = 100; - oxygen = 0; - temperature = 80 - }, -/area/tcommsat/chamber) -"ca" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/unary/vent_pump/on{ - dir = 1 - }, -/obj/effect/landmark/vines, -/turf/simulated/open, -/area/crew_quarters/bar) -"cb" = ( -/turf/simulated/wall/bay/r_wall/blue, -/area/crew_quarters/heads/chief) -"cc" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 6 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/tcommsat/computer) -"ch" = ( -/obj/machinery/vending/wardrobe/mimedrobe, -/turf/simulated/floor/carpet/bcarpet, -/area/stellardelight/deck3/clownmimeoffice) -"ci" = ( -/obj/machinery/door/firedoor/glass, -/obj/structure/cable/blue{ - icon_state = "4-8" - }, -/obj/machinery/door/airlock/angled_bay/secure{ - dir = 4; - name = "Robotic Storage"; - req_access = list(16) - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/turf/simulated/floor/tiled/steel_ridged, -/area/ai_cyborg_station) -"ck" = ( -/obj/structure/cable/green{ - icon_state = "2-8" - }, -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 10 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 10 - }, -/obj/structure/sign/painting/public{ - pixel_y = 30 - }, -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 1 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"cm" = ( -/obj/machinery/exonet_node{ - anchored = 1 - }, -/turf/simulated/floor/tiled/dark{ - nitrogen = 100; - oxygen = 0; - temperature = 80 - }, -/area/tcommsat/chamber) -"cn" = ( -/obj/structure/cable/green{ - icon_state = "2-8" - }, -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/obj/effect/floor_decal/fancy_shuttle{ - fancy_shuttle_tag = "sdboat" - }, -/turf/simulated/floor/tiled, -/area/shuttle/sdboat/aft{ - base_turf = /turf/simulated/floor/reinforced/airless - }) -"cp" = ( -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 4 - }, -/obj/machinery/light/small, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portaft) -"cq" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 1 - }, -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"cs" = ( -/obj/structure/bed/chair{ - dir = 8 - }, -/turf/simulated/floor/glass/reinforced, -/area/stellardelight/deck3/aft) -"ct" = ( -/obj/machinery/door/firedoor/glass, -/obj/structure/cable/blue{ - icon_state = "4-8" - }, -/obj/machinery/door/airlock/angled_bay/secure{ - dir = 4; - name = "AI Storage"; - req_access = list(16) - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/turf/simulated/floor/tiled/steel_ridged, -/area/ai_cyborg_station) -"cu" = ( -/obj/structure/sign/directions/evac{ - pixel_x = -32 - }, -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 8 - }, -/obj/structure/flora/pottedplant/smalltree, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"cw" = ( -/obj/structure/cable/blue{ - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_upload) -"cx" = ( -/obj/machinery/computer/timeclock/premade/north, -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 1 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"cy" = ( -/obj/machinery/recharge_station, -/obj/structure/closet/emergsuit_wall{ - pixel_y = 29 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/starboarddock) -"cz" = ( -/obj/structure/cable{ - icon_state = "1-8" - }, -/turf/simulated/wall/bay/r_wall/blue, -/area/ai_cyborg_station) -"cA" = ( -/obj/structure/bed/chair{ - dir = 8 - }, -/obj/machinery/light, -/turf/simulated/floor/glass/reinforced, -/area/stellardelight/deck3/aft) -"cH" = ( -/obj/machinery/power/apc/angled{ - dir = 8; - name = "night shift APC"; - nightshift_setting = 2 - }, -/obj/structure/cable/green{ - icon_state = "0-4" - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/foreportroomb) -"cI" = ( -/obj/effect/floor_decal/techfloor{ - dir = 8 - }, -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/turf/simulated/floor/tiled/techfloor, -/area/stellardelight/deck3/cryo) -"cK" = ( -/obj/structure/cable/green{ - icon_state = "2-4" - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portfore) -"cL" = ( -/obj/structure/cable/blue{ - icon_state = "1-2" - }, -/obj/structure/cable/blue{ - icon_state = "2-4" - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardfore) -"cO" = ( -/obj/machinery/holoplant, -/obj/machinery/atmospherics/unary/vent_scrubber/on{ - dir = 8 - }, -/obj/machinery/status_display{ - pixel_x = 32 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/tcommsat/computer) -"cP" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/turf/simulated/floor/tiled, -/area/crew_quarters/heads/hop) -"cS" = ( -/obj/machinery/atmospherics/unary/vent_pump/on{ - dir = 8 - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portcent) -"cW" = ( -/obj/machinery/atmospherics/unary/vent_pump{ - external_pressure_bound = 140; - external_pressure_bound_default = 140; - icon_state = "map_vent_out"; - pressure_checks = 0; - pressure_checks_default = 0; - use_power = 1 - }, -/turf/simulated/floor/bluegrid{ - name = "Mainframe Base"; - nitrogen = 100; - oxygen = 0; - temperature = 80 - }, -/area/tcommsat/chamber) -"cY" = ( -/obj/machinery/telecomms/broadcaster/preset_right/sd, -/turf/simulated/floor/tiled/dark{ - nitrogen = 100; - oxygen = 0; - temperature = 80 - }, -/area/tcommsat/chamber) -"cZ" = ( -/obj/machinery/light/small{ - dir = 8 - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/foreportrooma) -"db" = ( -/obj/structure/lattice, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 4 - }, -/turf/simulated/open, -/area/stellardelight/deck2/starboard) -"df" = ( -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 1 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/starboarddock) -"dh" = ( -/obj/effect/floor_decal/industrial/warning/corner{ - dir = 8 - }, -/turf/simulated/floor/airless, -/area/stellardelight/deck3/exterior) -"dj" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 1 - }, -/obj/effect/floor_decal/steeldecal/steel_decals_central5{ - dir = 1; - pixel_y = 1 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"dk" = ( -/obj/machinery/atmospherics/unary/vent_pump/high_volume{ - dir = 4; - frequency = 1379; - id_tag = "starmaint_airpump" - }, -/obj/machinery/camera/network/civilian, -/turf/simulated/floor/airless, -/area/maintenance/stellardelight/deck3/starboardcent) -"dn" = ( -/obj/item/device/radio/intercom{ - dir = 8; - pixel_x = -24 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_server_room) -"do" = ( -/obj/machinery/papershredder, -/turf/simulated/floor/tiled, -/area/crew_quarters/heads/hop) -"dr" = ( -/obj/machinery/light{ - dir = 4 - }, -/obj/machinery/atmospherics/unary/vent_pump/on{ - dir = 8 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"du" = ( -/obj/machinery/door/firedoor/glass, -/obj/machinery/door/airlock/angled_bay/hatch{ - dir = 4; - name = "maintenance access"; - stripe_color = "#454545" - }, -/obj/structure/cable/blue{ - icon_state = "4-8" - }, -/turf/simulated/floor/tiled/steel_ridged, -/area/maintenance/stellardelight/deck3/forestarrooma) -"dw" = ( -/obj/structure/cable/green{ - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 1 - }, -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/portdock) -"dx" = ( -/turf/simulated/wall/bay/steel, -/area/maintenance/stellardelight/deck3/forestarroomb) -"dy" = ( -/obj/effect/floor_decal/industrial/warning, -/obj/structure/cable/blue{ - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/manifold4w/hidden/supply, -/turf/simulated/floor/tiled/techfloor/grid, -/area/tcommsat/computer) -"dB" = ( -/obj/effect/floor_decal/industrial/warning/corner{ - dir = 4 - }, -/obj/structure/cable/green{ - icon_state = "1-4" - }, -/turf/simulated/floor/airless, -/area/stellardelight/deck3/exterior) -"dD" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 6 - }, -/turf/simulated/floor/carpet, -/area/crew_quarters/heads/hos) -"dE" = ( -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portaft) -"dF" = ( -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/obj/effect/floor_decal/emblem/nt1, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 4 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"dH" = ( -/obj/structure/table/steel_reinforced, -/obj/machinery/recharger{ - pixel_y = 4 - }, -/obj/machinery/light, -/turf/simulated/floor/tiled/dark, -/area/crew_quarters/heads/hos) -"dL" = ( -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/obj/structure/table/steel, -/turf/simulated/floor/tiled/techfloor/grid, -/area/maintenance/stellardelight/deck3/foreportroomb) -"dM" = ( -/obj/structure/closet/firecloset, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portaft) -"dN" = ( -/obj/machinery/door/firedoor/glass, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/door/airlock/angled_bay/hatch{ - name = "maintenance access"; - stripe_color = "#454545" - }, -/turf/simulated/floor/tiled/steel_ridged, -/area/crew_quarters/bar) -"dQ" = ( -/obj/machinery/door/firedoor/glass/hidden/shuttle, -/obj/machinery/door/blast/shuttle/open{ - id = "shuttleshutter" - }, -/obj/structure/window/fancy_shuttle{ - fancy_shuttle_tag = "sdboat" - }, -/turf/simulated/floor/reinforced/airless, -/area/shuttle/sdboat/aft{ - base_turf = /turf/simulated/floor/reinforced/airless - }) -"dS" = ( -/obj/machinery/camera/network/command{ - dir = 4 - }, -/obj/machinery/atmospherics/unary/vent_pump/on{ - dir = 4 - }, -/turf/simulated/floor/carpet/turcarpet, -/area/ai) -"dT" = ( -/obj/machinery/light/small{ - dir = 8 - }, -/turf/simulated/open, -/area/stellardelight/deck2/port) -"dU" = ( -/turf/simulated/wall/bay/blue, -/area/lawoffice) -"dV" = ( -/obj/effect/floor_decal/industrial/warning/corner{ - dir = 8 - }, -/obj/machinery/holoplant, -/obj/machinery/atmospherics/unary/vent_pump/on{ - dir = 8 - }, -/obj/machinery/light_switch{ - dir = 8; - pixel_x = 24 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/tcommsat/computer) -"dY" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/turf/simulated/floor/carpet, -/area/crew_quarters/heads/hos) -"dZ" = ( -/obj/machinery/light_switch{ - dir = 8; - pixel_x = 24; - pixel_y = 24 - }, -/turf/simulated/floor/tiled/dark, -/area/lawoffice) -"ea" = ( -/obj/structure/table/bench/padded, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/turf/simulated/floor/wood, -/area/stellardelight/deck3/cafe) -"eb" = ( -/obj/machinery/atmospherics/unary/vent_pump/high_volume{ - dir = 4; - frequency = 1379; - id_tag = "starmaint_airpump" - }, -/turf/simulated/floor/airless, -/area/maintenance/stellardelight/deck3/starboardcent) -"ed" = ( -/obj/structure/closet, -/obj/random/firstaid, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portaft) -"eg" = ( -/obj/machinery/porta_turret/ai_defense, -/obj/structure/cable/blue{ - icon_state = "1-2" - }, -/turf/simulated/floor/bluegrid, -/area/ai) -"eh" = ( -/obj/structure/cable/green{ - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ - dir = 8 - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portcent) -"ei" = ( -/obj/machinery/light{ - dir = 4 - }, -/turf/simulated/floor/tiled/steel_grid, -/area/stellardelight/deck3/aft) -"ej" = ( -/obj/effect/floor_decal/techfloor/orange{ - dir = 1 - }, -/obj/structure/closet/emergsuit_wall{ - pixel_y = 29 - }, -/turf/simulated/floor/tiled/techfloor, -/area/stellardelight/deck3/transitgateway) -"ek" = ( -/obj/machinery/camera/network/halls{ - dir = 8 - }, -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 4 - }, -/obj/machinery/atmospherics/unary/vent_scrubber/on{ - dir = 8 - }, -/obj/structure/cable{ - icon_state = "1-8" - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/portdock) -"el" = ( -/obj/machinery/pda_multicaster/prebuilt, -/turf/simulated/floor/tiled/dark{ - nitrogen = 100; - oxygen = 0; - temperature = 80 - }, -/area/tcommsat/chamber) -"em" = ( -/obj/structure/cable/blue{ - icon_state = "4-8" - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/forestarrooma) -"en" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 1 - }, -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"eo" = ( -/obj/machinery/power/apc/angled{ - dir = 4 - }, -/obj/structure/cable/blue{ - icon_state = "0-2" - }, -/turf/simulated/floor/bluegrid{ - name = "Mainframe Base"; - nitrogen = 100; - oxygen = 0; - temperature = 80 - }, -/area/tcommsat/chamber) -"ep" = ( -/obj/structure/cable{ - icon_state = "2-4" - }, -/turf/simulated/floor, -/area/ai_cyborg_station) -"et" = ( -/obj/effect/floor_decal/industrial/warning{ - dir = 8 - }, -/obj/machinery/light/small, -/turf/simulated/floor/airless, -/area/stellardelight/deck3/portdock) -"eu" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/turf/simulated/floor/bluegrid, -/area/ai) -"ev" = ( -/obj/machinery/door/firedoor/glass, -/obj/structure/cable/blue{ - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/door/airlock/angled_bay/standard/color{ - dir = 4; - door_color = "#323d80"; - fill_color = "#313866"; - id_tag = "rddoor"; - name = "Research Director"; - req_access = list(30); - stripe_color = "#5a19a8" - }, -/turf/simulated/floor/tiled/steel_ridged, -/area/crew_quarters/heads/hor) -"ew" = ( -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/obj/structure/cable/green{ - icon_state = "2-8" - }, -/turf/simulated/floor/airless, -/area/stellardelight/deck3/exterior) -"ex" = ( -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/obj/machinery/light{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 1 - }, -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 8 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/starboarddock) -"ey" = ( -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/maintenance/stellardelight/deck3/foreportroomb) -"ez" = ( -/obj/machinery/door/firedoor/glass, -/obj/machinery/door/airlock/angled_bay/double{ - name = "maintenance access"; - stripe_color = "#454545" - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardfore) -"eC" = ( -/obj/machinery/telecomms/receiver/preset_right/sd, -/turf/simulated/floor/tiled/dark{ - nitrogen = 100; - oxygen = 0; - temperature = 80 - }, -/area/tcommsat/chamber) -"eD" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 5 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 5 - }, -/turf/simulated/floor/tiled, -/area/crew_quarters/heads/hop) -"eE" = ( -/obj/machinery/alarm/angled{ - dir = 4 - }, -/obj/structure/table/rack, -/obj/random/maintenance, -/obj/random/drinkbottle, -/obj/random/snack, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/forestarroomb) -"eF" = ( -/obj/structure/table/rack, -/obj/random/maintenance, -/obj/random/maintenance, -/obj/random/maintenance/clean, -/obj/random/maintenance/clean, -/obj/random/maintenance/engineering, -/obj/random/maintenance/medical, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portfore) -"eI" = ( -/obj/structure/cable/green{ - icon_state = "1-4" - }, -/turf/simulated/wall/bay/r_wall/steel, -/area/crew_quarters/bar) -"eJ" = ( -/turf/simulated/wall/fancy_shuttle/nondense{ - fancy_shuttle_tag = "sdboat" - }, -/area/shuttle/sdboat/fore{ - base_turf = /turf/simulated/floor/reinforced/airless - }) -"eK" = ( -/obj/machinery/atmospherics/unary/vent_pump{ - external_pressure_bound = 0; - external_pressure_bound_default = 0; - icon_state = "map_vent_in"; - initialize_directions = 1; - internal_pressure_bound = 4000; - internal_pressure_bound_default = 4000; - pressure_checks = 2; - pressure_checks_default = 2; - pump_direction = 0; - use_power = 1 - }, -/turf/simulated/floor/bluegrid{ - name = "Mainframe Base"; - nitrogen = 100; - oxygen = 0; - temperature = 80 - }, -/area/tcommsat/chamber) -"eL" = ( -/obj/machinery/atmospherics/unary/vent_pump/on{ - dir = 4 - }, -/obj/machinery/camera/network/command{ - dir = 4 - }, -/turf/simulated/floor/tiled/eris/dark/gray_platform, -/area/stellardelight/deck3/commandhall) -"eN" = ( -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 4 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"eP" = ( -/obj/machinery/door/firedoor/glass, -/obj/machinery/door/airlock/angled_bay/standard/color/common{ - dir = 4; - name = "Holodeck" - }, -/turf/simulated/floor/tiled/steel_ridged, -/area/holodeck_control) -"eQ" = ( -/obj/machinery/atmospherics/unary/vent_scrubber/on{ - dir = 1 - }, -/turf/simulated/open, -/area/stellardelight/deck2/starboard) -"eR" = ( -/obj/structure/table/steel, -/turf/simulated/floor/tiled/techfloor/grid, -/area/maintenance/stellardelight/deck3/forestarrooma) -"eS" = ( -/obj/structure/cable/blue{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_cyborg_station) -"eU" = ( -/obj/structure/table/woodentable, -/obj/machinery/door/blast/shutters{ - dir = 2; - id = "cafe"; - layer = 3.1; - name = "Cafe Shutters" - }, -/turf/simulated/floor/lino, -/area/stellardelight/deck3/cafe) -"eV" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/unary/vent_pump/on{ - dir = 8 - }, -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/turf/simulated/open, -/area/crew_quarters/bar) -"eX" = ( -/obj/structure/cable/green{ - icon_state = "1-8" - }, -/turf/simulated/floor/airless, -/area/stellardelight/deck3/exterior) -"eY" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/turf/simulated/open, -/area/stellardelight/deck2/starboard) -"fa" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/turf/simulated/floor/carpet/oracarpet, -/area/crew_quarters/heads/chief) -"fb" = ( -/obj/structure/cable/blue{ - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_server_room) -"fd" = ( -/obj/item/weapon/reagent_containers/food/drinks/cup{ - pixel_x = 8; - pixel_y = 8 - }, -/obj/item/weapon/reagent_containers/food/drinks/cup{ - pixel_x = -4; - pixel_y = 8 - }, -/obj/item/weapon/reagent_containers/food/drinks/cup{ - pixel_x = 8; - pixel_y = -4 - }, -/obj/item/weapon/reagent_containers/food/drinks/cup{ - pixel_x = -4; - pixel_y = -4 - }, -/obj/item/weapon/reagent_containers/food/drinks/cup{ - pixel_x = 8 - }, -/obj/item/weapon/reagent_containers/food/drinks/cup{ - pixel_x = -4 - }, -/obj/item/weapon/reagent_containers/food/drinks/cup{ - pixel_x = 8; - pixel_y = 12 - }, -/obj/item/weapon/reagent_containers/food/drinks/cup{ - pixel_x = -4; - pixel_y = 12 - }, -/obj/structure/table/woodentable, -/obj/item/weapon/hand_labeler, -/obj/machinery/alarm/angled, -/obj/machinery/status_display{ - pixel_x = -32 - }, -/turf/simulated/floor/lino, -/area/stellardelight/deck3/cafe) -"ff" = ( -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 4 - }, -/obj/machinery/door/firedoor/glass, -/obj/machinery/door/airlock/angled_bay/hatch{ - dir = 4; - name = "maintenance access"; - stripe_color = "#454545" - }, -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/turf/simulated/floor/tiled/steel_ridged, -/area/maintenance/stellardelight/deck3/starboardaft) -"fg" = ( -/obj/structure/handrail{ - dir = 1 - }, -/obj/machinery/alarm{ - dir = 1; - pixel_y = -28 - }, -/obj/effect/floor_decal/fancy_shuttle{ - fancy_shuttle_tag = "sdboat" - }, -/turf/simulated/floor/tiled, -/area/shuttle/sdboat/aft{ - base_turf = /turf/simulated/floor/reinforced/airless - }) -"fh" = ( -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/obj/structure/cable/green{ - icon_state = "2-8" - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/maintenance/stellardelight/deck3/foreportroomb) -"fj" = ( -/obj/structure/table/woodentable, -/obj/item/toy/figure/clown, -/obj/item/weapon/pen/crayon/marker/rainbow, -/obj/item/weapon/pen/crayon/rainbow, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/unary/vent_pump/on{ - dir = 4 - }, -/turf/simulated/floor/carpet/gaycarpet, -/area/stellardelight/deck3/clownmimeoffice) -"fk" = ( -/obj/machinery/telecomms/server/presets/common, -/turf/simulated/floor/tiled/dark{ - nitrogen = 100; - oxygen = 0; - temperature = 80 - }, -/area/tcommsat/chamber) -"fs" = ( -/obj/structure/cable/green{ - icon_state = "2-8" - }, -/turf/simulated/wall/bay/r_wall/steel, -/area/crew_quarters/bar) -"fv" = ( -/obj/machinery/holoplant, -/obj/machinery/power/apc/angled{ - dir = 4 - }, -/obj/structure/cable/blue{ - icon_state = "0-8" - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_upload) -"fz" = ( -/obj/effect/floor_decal/techfloor/orange, -/obj/effect/landmark{ - name = "JoinLateGateway" - }, -/turf/simulated/floor/tiled/techfloor, -/area/stellardelight/deck3/transitgateway) -"fD" = ( -/obj/structure/table/rack, -/obj/random/maintenance, -/obj/random/maintenance/engineering, -/obj/random/maintenance/engineering, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/forestarroomb) -"fE" = ( -/obj/structure/lattice, -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/supply, -/turf/simulated/open, -/area/stellardelight/deck2/starboard) -"fG" = ( -/obj/structure/cable/green{ - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 9 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 9 - }, -/obj/machinery/atmospherics/pipe/manifold/hidden{ - dir = 1 - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portcent) -"fM" = ( -/obj/machinery/power/terminal{ - dir = 8 - }, -/obj/structure/cable, -/turf/simulated/floor, -/area/ai_cyborg_station) -"fO" = ( -/obj/structure/cable/blue{ - icon_state = "2-4" - }, -/obj/machinery/light{ - dir = 1 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/turf/simulated/floor/tiled, -/area/crew_quarters/heads/hop) -"fP" = ( -/obj/machinery/space_heater, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portaft) -"fS" = ( -/turf/simulated/wall/bay/steel, -/area/crew_quarters/heads/hop) -"fT" = ( -/obj/machinery/light_switch{ - dir = 4; - pixel_x = -24; - pixel_y = 24 - }, -/turf/simulated/floor/tiled/dark, -/area/lawoffice) -"fW" = ( -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 1 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/starboarddock) -"gb" = ( -/obj/structure/table/steel_reinforced, -/obj/item/weapon/folder/red_hos, -/turf/simulated/floor/carpet, -/area/crew_quarters/heads/hos) -"gc" = ( -/obj/machinery/atmospherics/unary/vent_pump/high_volume{ - dir = 4; - frequency = 1379; - id_tag = "portmaint_airpump" - }, -/turf/simulated/floor/airless, -/area/maintenance/stellardelight/deck3/portcent) -"gg" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/unary/vent_scrubber/on{ - dir = 8 - }, -/obj/effect/mouse_hole_spawner{ - dir = 4 - }, -/turf/simulated/open, -/area/crew_quarters/bar) -"gh" = ( -/obj/machinery/telecomms/server/presets/command, -/turf/simulated/floor/tiled/dark{ - nitrogen = 100; - oxygen = 0; - temperature = 80 - }, -/area/tcommsat/chamber) -"gi" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/fuel, -/turf/simulated/wall/fancy_shuttle{ - fancy_shuttle_tag = "sdboat" - }, -/area/shuttle/sdboat/aft{ - base_turf = /turf/simulated/floor/reinforced/airless - }) -"gj" = ( -/obj/structure/table/rack/shelf, -/obj/item/weapon/disk/nifsoft/compliance, -/obj/random/contraband, -/obj/random/contraband, -/obj/random/contraband, -/obj/random/maintenance, -/obj/random/maintenance, -/obj/random/maintenance, -/obj/random/maintenance, -/obj/random/maintenance, -/obj/random/snack, -/turf/simulated/floor/tiled/techfloor/grid, -/area/maintenance/stellardelight/deck3/foreportroomb) -"gk" = ( -/obj/structure/table/woodentable, -/obj/random/paicard, -/turf/simulated/floor/wood, -/area/stellardelight/deck3/cafe) -"gl" = ( -/obj/structure/bed/chair/shuttle{ - dir = 1 - }, -/obj/structure/closet/emergsuit_wall{ - pixel_y = 32 - }, -/obj/effect/floor_decal/fancy_shuttle{ - fancy_shuttle_tag = "sdboat" - }, -/turf/simulated/floor/tiled, -/area/shuttle/sdboat/aft{ - base_turf = /turf/simulated/floor/reinforced/airless - }) -"gm" = ( -/obj/structure/lattice, -/obj/structure/cable/blue{ - icon_state = "4-8" - }, -/turf/simulated/open, -/area/stellardelight/deck2/fore) -"gq" = ( -/obj/effect/floor_decal/spline/plain{ - dir = 4 - }, -/obj/structure/closet/hydrant{ - pixel_y = 28 - }, -/turf/simulated/floor/lino, -/area/stellardelight/deck3/cafe) -"gs" = ( -/obj/machinery/requests_console/preset/rd{ - pixel_x = 30 - }, -/turf/simulated/floor/carpet/purcarpet, -/area/crew_quarters/heads/hor) -"gw" = ( -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/obj/structure/cable/green{ - icon_state = "1-4" - }, -/turf/simulated/floor/airless, -/area/stellardelight/deck3/exterior) -"gx" = ( -/obj/item/device/radio, -/obj/item/device/radio, -/obj/item/device/radio, -/obj/item/weapon/storage/briefcase/inflatable, -/obj/item/weapon/tank/emergency/oxygen/engi, -/obj/item/weapon/tank/emergency/oxygen/engi, -/obj/item/clothing/mask/breath, -/obj/item/clothing/mask/breath, -/obj/structure/closet/walllocker_double/south{ - desc = "A wall mounted storage cabinet marked with a cross and warning icon. This seems to contain an assortment of emergency supplies."; - name = "Emergency Cabinet" - }, -/turf/simulated/floor, -/area/stellardelight/deck2/fore) -"gy" = ( -/obj/structure/closet/secure_closet/engineering_chief, -/obj/item/device/radio/intercom{ - dir = 1; - name = "Station Intercom (General)"; - pixel_y = 24 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/item/device/retail_scanner/engineering, -/turf/simulated/floor/tiled, -/area/crew_quarters/heads/chief) -"gA" = ( -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/structure/cable/green{ - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 8 - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portcent) -"gB" = ( -/obj/machinery/power/pointdefense{ - id_tag = "sd_pd" - }, -/obj/effect/floor_decal/industrial/warning/full, -/obj/structure/cable/green{ - icon_state = "0-4" - }, -/obj/structure/cable/green{ - icon_state = "0-8" - }, -/turf/simulated/floor/airless, -/area/stellardelight/deck3/exterior) -"gE" = ( -/obj/structure/table/darkglass, -/obj/item/weapon/stamp/denied{ - pixel_x = 6; - pixel_y = 6 - }, -/obj/item/weapon/stamp/internalaffairs, -/turf/simulated/floor/carpet/blue2, -/area/lawoffice) -"gG" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/turf/simulated/open, -/area/stellardelight/deck2/fore) -"gH" = ( -/turf/simulated/floor, -/area/ai_cyborg_station) -"gJ" = ( -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/obj/structure/cable/green{ - icon_state = "2-8" - }, -/obj/structure/cable/green{ - icon_state = "2-4" - }, -/turf/simulated/floor/airless, -/area/stellardelight/deck3/exterior) -"gL" = ( -/obj/item/weapon/bedsheet/hosdouble, -/obj/structure/bed/double/padded, -/obj/structure/curtain/black{ - color = "#631915" - }, -/obj/effect/landmark/start/hos, -/turf/simulated/floor/carpet, -/area/crew_quarters/heads/hos) -"gM" = ( -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 1 - }, -/turf/simulated/wall/bay/r_wall/steel, -/area/stellardelight/deck3/aft) -"gN" = ( -/obj/structure/cable/blue{ - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ - dir = 1 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai) -"gO" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/supply, -/obj/structure/cable/blue{ - icon_state = "4-8" - }, -/turf/simulated/open, -/area/stellardelight/deck2/fore) -"gQ" = ( -/obj/machinery/power/smes/buildable{ - charge = 5e+006; - input_attempt = 1; - input_level = 200000; - output_level = 200000 - }, -/obj/structure/window/reinforced{ - dir = 1 - }, -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/structure/cable/cyan{ - icon_state = "0-4" - }, -/obj/machinery/light{ - dir = 8 - }, -/turf/simulated/floor/bluegrid, -/area/ai) -"gR" = ( -/obj/effect/floor_decal/techfloor/orange{ - dir = 6 - }, -/obj/machinery/light{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/turf/simulated/floor/tiled/techfloor, -/area/stellardelight/deck3/transitgateway) -"gS" = ( -/obj/structure/cable/cyan{ - icon_state = "2-8" - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai) -"gU" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/black{ - dir = 5 - }, -/turf/simulated/floor/bluegrid{ - name = "Mainframe Base"; - nitrogen = 100; - oxygen = 0; - temperature = 80 - }, -/area/tcommsat/chamber) -"gV" = ( -/obj/machinery/door/firedoor/glass, -/obj/machinery/door/airlock/angled_bay/double/glass{ - name = "glass airlock" - }, -/obj/structure/cable{ - icon_state = "1-2" - }, -/turf/simulated/floor/tiled/steel_ridged, -/area/stellardelight/deck3/aft) -"gW" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/black{ - dir = 10 - }, -/turf/simulated/floor/bluegrid{ - name = "Mainframe Base"; - nitrogen = 100; - oxygen = 0; - temperature = 80 - }, -/area/tcommsat/chamber) -"gY" = ( -/obj/structure/closet/walllocker_double/south{ - desc = "A wall mounted storage cabinet marked with a cross and warning icon. This seems to contain an assortment of emergency supplies."; - name = "Emergency Cabinet" - }, -/obj/structure/lattice, -/turf/simulated/open, -/area/stellardelight/deck2/port) -"hb" = ( -/obj/structure/cable/green{ - icon_state = "1-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/turf/simulated/floor/wood, -/area/stellardelight/deck3/cafe) -"hc" = ( -/obj/machinery/requests_console/preset/hos{ - pixel_x = -30 - }, -/turf/simulated/floor/carpet, -/area/crew_quarters/heads/hos) -"hd" = ( -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portaft) -"he" = ( -/obj/machinery/button/remote/airlock{ - id = "readingroom1"; - name = "Room 1 Lock"; - pixel_y = 24; - specialfunctions = 4 - }, -/obj/machinery/button/remote/blast_door{ - id = "readingroom1"; - name = "Window Lockdown"; - pixel_x = -10; - pixel_y = 24 - }, -/turf/simulated/floor/carpet, -/area/stellardelight/deck3/readingroom) -"hf" = ( -/obj/structure/sign/warning/docking_area{ - pixel_x = -32 - }, -/turf/simulated/floor/reinforced/airless, -/area/stellardelight/deck3/exterior) -"hg" = ( -/obj/effect/fancy_shuttle/sd_shuttle{ - dir = 1; - fancy_shuttle_tag = "sdboat" - }, -/obj/effect/fancy_shuttle_floor_preview/sd_shuttle{ - dir = 1 - }, -/turf/simulated/wall/fancy_shuttle{ - fancy_shuttle_tag = "sdboat" - }, -/area/shuttle/sdboat/aft{ - base_turf = /turf/simulated/floor/reinforced/airless - }) -"hj" = ( -/obj/machinery/portable_atmospherics/hydroponics, -/turf/simulated/floor/tiled/techfloor/grid, -/area/maintenance/stellardelight/deck3/foreportroomb) -"hk" = ( -/obj/effect/floor_decal/industrial/warning, -/obj/structure/sign/warning/docking_area{ - pixel_y = 32 - }, -/turf/simulated/floor/airless, -/area/stellardelight/deck3/exterior) -"hp" = ( -/obj/structure/table/glass, -/obj/machinery/computer/med_data/laptop{ - dir = 4; - pixel_y = 6 - }, -/turf/simulated/floor/carpet/tealcarpet, -/area/crew_quarters/heads/cmo) -"hr" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/substation/command) -"ht" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_upload) -"hu" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/turf/simulated/floor/carpet/blue2, -/area/lawoffice) -"hw" = ( -/obj/machinery/telecomms/processor/preset_one, -/turf/simulated/floor/tiled/dark{ - nitrogen = 100; - oxygen = 0; - temperature = 80 - }, -/area/tcommsat/chamber) -"hy" = ( -/obj/machinery/atmospherics/pipe/simple/hidden, -/turf/simulated/floor/airless, -/area/maintenance/stellardelight/deck3/starboardcent) -"hz" = ( -/obj/structure/cable/blue{ - icon_state = "1-2" - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/maintenance/stellardelight/deck3/forestarroomb) -"hB" = ( -/obj/structure/cable{ - icon_state = "1-2" - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardcent) -"hC" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/turf/simulated/open, -/area/stellardelight/deck2/fore) -"hD" = ( -/turf/simulated/wall/bay/r_wall/steel, -/area/maintenance/stellardelight/deck3/foreportrooma) -"hE" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/door/firedoor/glass, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardcent) -"hF" = ( -/obj/machinery/holoplant, -/obj/machinery/light_switch{ - dir = 8; - pixel_x = 24 - }, -/turf/simulated/floor/bluegrid, -/area/ai_cyborg_station) -"hG" = ( -/obj/structure/sign/poster{ - dir = 4 - }, -/turf/simulated/floor, -/area/stellardelight/deck2/port) -"hK" = ( -/obj/machinery/light{ - dir = 4 - }, -/obj/machinery/atmospherics/unary/vent_scrubber/on{ - dir = 8 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_upload) -"hN" = ( -/obj/machinery/door/firedoor/glass, -/obj/structure/window/bay/reinforced, -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/obj/structure/low_wall/bay/reinforced/steel, -/turf/simulated/floor, -/area/stellardelight/deck3/portdock) -"hO" = ( -/obj/machinery/power/breakerbox/activated{ - RCon_tag = "Command Substation Bypass" - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/substation/command) -"hP" = ( -/obj/structure/lattice, -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/structure/cable{ - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/supply, -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers, -/turf/simulated/open, -/area/stellardelight/deck2/starboard) -"hQ" = ( -/turf/simulated/wall/bay/r_wall/steel, -/area/maintenance/stellardelight/deck3/aftstarroom) -"hR" = ( -/obj/structure/cable/green{ - icon_state = "1-8" - }, -/obj/effect/floor_decal/fancy_shuttle{ - fancy_shuttle_tag = "sdboat" - }, -/turf/simulated/floor/tiled, -/area/shuttle/sdboat/aft{ - base_turf = /turf/simulated/floor/reinforced/airless - }) -"hT" = ( -/obj/structure/cable/blue{ - icon_state = "4-8" - }, -/turf/simulated/wall/bay/r_wall/steel, -/area/maintenance/stellardelight/deck3/starboardfore) -"hU" = ( -/obj/structure/sign/painting/library_secure{ - pixel_x = 30 - }, -/turf/simulated/floor/carpet/purcarpet, -/area/crew_quarters/heads/hor) -"hX" = ( -/turf/simulated/floor/carpet/oracarpet, -/area/crew_quarters/heads/chief) -"hY" = ( -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/turf/simulated/floor, -/area/stellardelight/deck2/port) -"hZ" = ( -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 4 - }, -/obj/structure/sign/vacuum{ - pixel_x = 32; - plane = -34 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/starboarddock) -"ib" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/black{ - dir = 9 - }, -/turf/simulated/floor/bluegrid{ - name = "Mainframe Base"; - nitrogen = 100; - oxygen = 0; - temperature = 80 - }, -/area/tcommsat/chamber) -"ie" = ( -/obj/structure/closet/walllocker_double/south{ - desc = "A wall mounted storage cabinet marked with a cross and warning icon. This seems to contain an assortment of emergency supplies."; - name = "Emergency Cabinet" - }, -/turf/simulated/open, -/area/stellardelight/deck2/starboard) -"if" = ( -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardaft) -"ii" = ( -/turf/simulated/floor, -/area/maintenance/stellardelight/substation/command) -"ij" = ( -/obj/structure/bed/chair/office/dark{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 6 - }, -/turf/simulated/floor/tiled, -/area/crew_quarters/heads/hop) -"il" = ( -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/foreportrooma) -"im" = ( -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/obj/structure/cable/green{ - icon_state = "1-8" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/effect/floor_decal/steeldecal/steel_decals4{ - dir = 9 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"in" = ( -/turf/simulated/wall/bay/r_wall/blue, -/area/crew_quarters/heads/hop) -"ip" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, -/turf/simulated/floor/carpet/gaycarpet, -/area/stellardelight/deck3/clownmimeoffice) -"ir" = ( -/obj/structure/cable/blue{ - icon_state = "4-8" - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/maintenance/stellardelight/deck3/forestarroomb) -"is" = ( -/obj/machinery/door/firedoor/glass, -/obj/machinery/door/airlock/angled_bay/secure{ - name = "AI/Telecoms"; - req_access = list(16) - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/turf/simulated/floor/tiled/steel_ridged, -/area/ai_upload) -"iv" = ( -/obj/machinery/alarm/angled{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 9 - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardaft) -"iw" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/obj/effect/floor_decal/fancy_shuttle{ - fancy_shuttle_tag = "sdboat" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/fuel{ - dir = 4 - }, -/turf/simulated/floor/tiled, -/area/shuttle/sdboat/aft{ - base_turf = /turf/simulated/floor/reinforced/airless - }) -"iy" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/turf/simulated/floor/tiled/monotile, -/area/stellardelight/deck3/commandhall) -"iz" = ( -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/obj/structure/bed/chair/sofa/corp/right{ - dir = 4 - }, -/obj/effect/landmark{ - name = "morphspawn" - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portfore) -"iC" = ( -/obj/structure/cryofeed{ - dir = 4 - }, -/obj/effect/floor_decal/corner_techfloor_grid{ - dir = 5 - }, -/obj/effect/floor_decal/corner_techfloor_grid{ - dir = 10 - }, -/turf/simulated/floor/tiled/techfloor, -/area/stellardelight/deck3/cryo) -"iE" = ( -/obj/machinery/door/firedoor/glass, -/obj/machinery/door/airlock/angled_bay/hatch{ - door_color = "#e6ab22"; - name = "Shield Generator"; - req_access = null; - req_one_access = list(11,24); - stripe_color = "#e6ab22" - }, -/turf/simulated/floor/tiled/steel_ridged, -/area/stellardelight/deck3/commandhall) -"iI" = ( -/obj/structure/cable/blue{ - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/structure/closet/emergsuit_wall{ - dir = 4; - pixel_x = 27 - }, -/turf/simulated/floor/tiled/eris/dark/gray_platform, -/area/stellardelight/deck3/commandhall) -"iJ" = ( -/obj/machinery/cryopod/robot, -/obj/machinery/light{ - dir = 8 - }, -/turf/simulated/floor/bluegrid, -/area/ai_cyborg_station) -"iK" = ( -/obj/machinery/power/terminal{ - dir = 1 - }, -/obj/structure/cable/blue{ - icon_state = "0-2" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 6 - }, -/obj/item/device/radio/intercom{ - dir = 8; - pixel_x = -24 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai) -"iL" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/turf/simulated/floor/tiled/techfloor/grid, -/area/tcommsat/computer) -"iN" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/turf/simulated/open, -/area/crew_quarters/bar) -"iP" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/turf/simulated/floor/tiled, -/area/crew_quarters/heads/hop) -"iQ" = ( -/obj/machinery/light/small{ - dir = 8 - }, -/turf/simulated/open, -/area/stellardelight/deck2/fore) -"iR" = ( -/obj/structure/cable/cyan{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/unary/vent_scrubber/on{ - dir = 8 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai) -"iS" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardaft) -"iV" = ( -/obj/structure/railing/grey{ - dir = 4 - }, -/turf/simulated/open, -/area/stellardelight/deck3/commandhall) -"iW" = ( -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/effect/floor_decal/steeldecal/steel_decals4{ - dir = 8 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"iY" = ( -/obj/machinery/power/pointdefense{ - id_tag = "sd_pd" - }, -/obj/effect/floor_decal/industrial/warning/full, -/obj/structure/cable/blue, -/turf/simulated/floor/airless, -/area/stellardelight/deck3/exterior) -"iZ" = ( -/obj/effect/floor_decal/industrial/warning{ - dir = 4 - }, -/obj/machinery/light/small, -/turf/simulated/floor/airless, -/area/stellardelight/deck3/starboarddock) -"ja" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 6 - }, -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/turf/simulated/open, -/area/crew_quarters/bar) -"jc" = ( -/obj/machinery/computer/ship/sensors/adv, -/obj/effect/floor_decal/fancy_shuttle{ - fancy_shuttle_tag = "sdboat" - }, -/turf/simulated/floor/tiled, -/area/shuttle/sdboat/fore{ - base_turf = /turf/simulated/floor/reinforced/airless - }) -"jd" = ( -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/transitgateway) -"jg" = ( -/obj/machinery/door/firedoor/glass, -/obj/structure/window/bay/reinforced, -/obj/structure/low_wall/bay/reinforced/steel, -/turf/simulated/floor, -/area/stellardelight/deck3/starboarddock) -"jh" = ( -/obj/structure/closet/secure_closet/hop2, -/obj/machinery/atmospherics/unary/vent_pump/on{ - dir = 8 - }, -/obj/machinery/alarm/angled{ - dir = 8; - pixel_x = 30 - }, -/turf/simulated/floor/tiled, -/area/crew_quarters/heads/hop) -"jl" = ( -/obj/item/weapon/book/manual/command_guide, -/obj/item/weapon/book/manual/command_guide, -/obj/item/weapon/book/manual/standard_operating_procedure, -/obj/item/weapon/book/manual/standard_operating_procedure, -/obj/item/weapon/book/manual/security_space_law, -/obj/item/weapon/book/manual/security_space_law, -/obj/structure/closet/walllocker_double/east, -/turf/simulated/floor/tiled/dark, -/area/lawoffice) -"jm" = ( -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/obj/structure/table/woodentable, -/obj/machinery/door/blast/shutters{ - dir = 2; - id = "cafe"; - layer = 3.1; - name = "Cafe Shutters" - }, -/turf/simulated/floor/lino, -/area/stellardelight/deck3/cafe) -"jn" = ( -/obj/machinery/door/firedoor/glass, -/obj/structure/cable/blue{ - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/door/airlock/angled_bay/standard/color{ - dir = 4; - door_color = "#323d80"; - fill_color = "#858585"; - id_tag = "cedoor"; - name = "Chief Engineer"; - req_access = list(56); - stripe_color = "#e6ab22" - }, -/turf/simulated/floor/tiled/steel_ridged, -/area/crew_quarters/heads/chief) -"jo" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/effect/mouse_hole_spawner{ - dir = 8 - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardaft) -"jp" = ( -/obj/structure/closet, -/obj/random/contraband, -/obj/random/maintenance, -/obj/random/maintenance, -/obj/random/maintenance/cargo, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/aftstarroom) -"jy" = ( -/obj/structure/window/bay/reinforced, -/obj/structure/low_wall/bay/reinforced/steel, -/obj/machinery/door/firedoor/glass, -/obj/machinery/door/blast/angled/open{ - dir = 4; - id = "clownmimeoffice" - }, -/turf/simulated/floor, -/area/stellardelight/deck3/clownmimeoffice) -"jC" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/turf/simulated/open, -/area/crew_quarters/bar) -"jD" = ( -/obj/structure/bed/double/padded, -/obj/item/weapon/bedsheet/hopdouble, -/obj/structure/curtain/black, -/obj/effect/landmark/start/hop, -/obj/machinery/requests_console{ - announcementConsole = 1; - department = "Bridge"; - departmentType = 5; - name = "Bridge RC"; - pixel_y = 28 - }, -/turf/simulated/floor/tiled, -/area/crew_quarters/heads/hop) -"jE" = ( -/obj/machinery/light{ - dir = 1 - }, -/turf/simulated/floor/bluegrid{ - name = "Mainframe Base"; - nitrogen = 100; - oxygen = 0; - temperature = 80 - }, -/area/tcommsat/chamber) -"jK" = ( -/obj/machinery/alarm/angled{ - dir = 4 - }, -/turf/simulated/floor/tiled/eris/dark/gray_platform, -/area/stellardelight/deck3/commandhall) -"jL" = ( -/obj/structure/lattice, -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 8 - }, -/turf/simulated/open, -/area/stellardelight/deck2/port) -"jM" = ( -/obj/item/modular_computer/console/preset/command, -/obj/structure/sign/poster{ - dir = 4 - }, -/obj/machinery/newscaster{ - pixel_y = 28 - }, -/turf/simulated/floor/tiled/techfloor, -/area/crew_quarters/heads/hor) -"jO" = ( -/obj/machinery/station_map{ - dir = 4; - pixel_x = -32 - }, -/turf/simulated/floor/tiled/eris/dark/gray_platform, -/area/stellardelight/deck3/commandhall) -"jP" = ( -/obj/machinery/alarm/angled, -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 1 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"jT" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 8 - }, -/turf/simulated/open, -/area/stellardelight/deck2/port) -"jV" = ( -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/obj/machinery/light{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 1 - }, -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 4 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/portdock) -"jY" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/turf/simulated/open, -/area/stellardelight/deck2/central) -"ka" = ( -/obj/structure/table/darkglass, -/obj/item/weapon/storage/briefcase{ - pixel_x = -2; - pixel_y = -5 - }, -/turf/simulated/floor/tiled/dark, -/area/lawoffice) -"kb" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/black{ - dir = 4 - }, -/obj/structure/cable/blue{ - icon_state = "4-8" - }, -/turf/simulated/floor/bluegrid{ - name = "Mainframe Base"; - nitrogen = 100; - oxygen = 0; - temperature = 80 - }, -/area/tcommsat/chamber) -"kc" = ( -/obj/machinery/telecomms/server/presets/medical, -/turf/simulated/floor/tiled/dark{ - nitrogen = 100; - oxygen = 0; - temperature = 80 - }, -/area/tcommsat/chamber) -"ki" = ( -/obj/machinery/door/firedoor/glass, -/obj/structure/window/bay/reinforced, -/obj/structure/low_wall/bay/reinforced/steel, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portaft) -"kj" = ( -/obj/structure/lattice, -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 4 - }, -/turf/simulated/open, -/area/stellardelight/deck2/starboard) -"kk" = ( -/obj/effect/floor_decal/industrial/warning/corner{ - dir = 4 - }, -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/turf/simulated/floor/airless, -/area/stellardelight/deck3/exterior) -"kl" = ( -/obj/machinery/keycard_auth{ - pixel_y = 28 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 10 - }, -/obj/machinery/alarm/angled{ - dir = 8 - }, -/turf/simulated/floor/tiled, -/area/crew_quarters/heads/chief) -"ko" = ( -/obj/structure/cable/green{ - icon_state = "2-8" - }, -/turf/simulated/floor/airless, -/area/stellardelight/deck3/exterior) -"kp" = ( -/obj/structure/cable{ - icon_state = "2-8" - }, -/obj/machinery/alarm/angled, -/turf/simulated/floor, -/area/maintenance/stellardelight/substation/command) -"kr" = ( -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 8 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"ks" = ( -/obj/machinery/telecomms/server/presets/security, -/turf/simulated/floor/tiled/dark{ - nitrogen = 100; - oxygen = 0; - temperature = 80 - }, -/area/tcommsat/chamber) -"kt" = ( -/obj/machinery/light{ - dir = 8 - }, -/turf/simulated/floor/tiled/steel_grid, -/area/stellardelight/deck3/aft) -"ku" = ( -/obj/structure/barricade/cutout/mime, -/turf/simulated/floor/carpet/bcarpet, -/area/stellardelight/deck3/clownmimeoffice) -"kw" = ( -/obj/machinery/light{ - dir = 8 - }, -/turf/simulated/floor/bluegrid{ - name = "Mainframe Base"; - nitrogen = 100; - oxygen = 0; - temperature = 80 - }, -/area/tcommsat/chamber) -"ky" = ( -/obj/structure/closet/walllocker_double/north, -/obj/item/device/megaphone, -/obj/item/weapon/book/manual/standard_operating_procedure, -/obj/item/weapon/book/manual/command_guide, -/obj/structure/table/reinforced, -/obj/item/weapon/folder/red, -/obj/machinery/atmospherics/unary/vent_scrubber/on{ - dir = 8 - }, -/turf/simulated/floor/carpet, -/area/crew_quarters/heads/hop) -"kz" = ( -/obj/machinery/airlock_sensor/airlock_exterior/shuttle{ - dir = 6; - pixel_x = 7; - pixel_y = 26 - }, -/obj/effect/map_helper/airlock/sensor/ext_sensor, -/obj/effect/map_helper/airlock/door/ext_door, -/obj/machinery/door/firedoor/glass, -/obj/machinery/door/airlock/glass_external, -/obj/effect/floor_decal/fancy_shuttle{ - fancy_shuttle_tag = "sdboat" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/fuel{ - dir = 10 - }, -/obj/structure/cable{ - icon_state = "4-8" - }, -/turf/simulated/floor/tiled, -/area/shuttle/sdboat/aft{ - base_turf = /turf/simulated/floor/reinforced/airless - }) -"kB" = ( -/obj/machinery/porta_turret/ai_defense, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 5 - }, -/turf/simulated/floor/bluegrid, -/area/ai) -"kF" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 10 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/tcommsat/computer) -"kN" = ( -/obj/structure/sign/painting/library_secure{ - pixel_x = 30 - }, -/obj/structure/closet/secure_closet/hop, -/obj/item/clothing/glasses/omnihud, -/obj/item/weapon/paper/dockingcodes/sd, -/obj/item/device/retail_scanner/command, -/obj/item/weapon/storage/box/PDAs, -/turf/simulated/floor/tiled, -/area/crew_quarters/heads/hop) -"kO" = ( -/obj/machinery/door/firedoor/glass, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/turf/simulated/floor, -/area/stellardelight/deck2/fore) -"kP" = ( -/turf/simulated/wall/bay/r_wall/steel, -/area/maintenance/stellardelight/deck3/portfore) -"kQ" = ( -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/turf/simulated/wall/bay/r_wall/steel, -/area/maintenance/stellardelight/deck3/foreportrooma) -"kT" = ( -/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 10 - }, -/turf/simulated/floor/tiled, -/area/crew_quarters/heads/hop) -"kU" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/turf/simulated/open, -/area/crew_quarters/bar) -"kV" = ( -/obj/structure/bed/chair/office/dark{ - dir = 8 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/maintenance/stellardelight/deck3/foreportroomb) -"kW" = ( -/obj/machinery/camera/network/halls{ - dir = 4 - }, -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 8 - }, -/obj/machinery/atmospherics/unary/vent_scrubber/on{ - dir = 4 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/starboarddock) -"kX" = ( -/obj/structure/cable/blue{ - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ - dir = 8 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_cyborg_station) -"kY" = ( -/obj/effect/floor_decal/techfloor{ - dir = 10 - }, -/obj/effect/landmark{ - name = "JoinLateCryo" - }, -/obj/machinery/camera/network/civilian{ - dir = 1 - }, -/turf/simulated/floor/tiled/techfloor, -/area/stellardelight/deck3/cryo) -"kZ" = ( -/obj/structure/handrail{ - dir = 1 - }, -/obj/machinery/airlock_sensor{ - dir = 8; - pixel_x = 29; - pixel_y = 2 - }, -/obj/effect/map_helper/airlock/sensor/int_sensor, -/obj/effect/floor_decal/fancy_shuttle{ - fancy_shuttle_tag = "sdboat" - }, -/obj/structure/closet/emergsuit_wall{ - dir = 1; - pixel_y = -32 - }, -/turf/simulated/floor/tiled, -/area/shuttle/sdboat/aft{ - base_turf = /turf/simulated/floor/reinforced/airless - }) -"la" = ( -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 1 - }, -/obj/effect/floor_decal/steeldecal/steel_decals4{ - dir = 9 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/effect/floor_decal/shuttles, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/portdock) -"lc" = ( -/obj/structure/fuel_port{ - dir = 8; - pixel_x = -32 - }, -/obj/effect/floor_decal/fancy_shuttle{ - fancy_shuttle_tag = "sdboat" - }, -/obj/machinery/atmospherics/binary/pump/fuel{ - dir = 1 - }, -/turf/simulated/floor/tiled, -/area/shuttle/sdboat/aft{ - base_turf = /turf/simulated/floor/reinforced/airless - }) -"le" = ( -/obj/structure/railing/grey{ - dir = 8 - }, -/obj/structure/railing/grey, -/turf/simulated/open, -/area/maintenance/stellardelight/deck3/starboardaft) -"lh" = ( -/obj/machinery/door/firedoor/glass, -/obj/machinery/door/airlock/angled_bay/hatch{ - dir = 4; - name = "maintenance access"; - stripe_color = "#454545" - }, -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/turf/simulated/floor/tiled/steel_ridged, -/area/maintenance/stellardelight/deck3/foreportroomb) -"li" = ( -/obj/machinery/telecomms/hub/preset/sd, -/turf/simulated/floor/tiled/dark{ - nitrogen = 100; - oxygen = 0; - temperature = 80 - }, -/area/tcommsat/chamber) -"lj" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 6 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 6 - }, -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/turf/simulated/open, -/area/stellardelight/deck2/fore) -"lk" = ( -/obj/structure/filingcabinet/medical, -/obj/machinery/status_display{ - pixel_y = 32 - }, -/turf/simulated/floor/tiled/eris/white/cargo, -/area/crew_quarters/heads/cmo) -"lm" = ( -/obj/machinery/light{ - dir = 8 - }, -/obj/machinery/atmospherics/unary/vent_pump/on{ - dir = 4 - }, -/obj/structure/closet/emcloset, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"lo" = ( -/obj/machinery/telecomms/server/presets/engineering, -/turf/simulated/floor/tiled/dark{ - nitrogen = 100; - oxygen = 0; - temperature = 80 - }, -/area/tcommsat/chamber) -"lq" = ( -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/aftstarroom) -"lt" = ( -/obj/structure/bed/chair, -/obj/machinery/atmospherics/unary/vent_pump/on, -/obj/structure/sign/poster{ - dir = 1 - }, -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 1 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"lu" = ( -/obj/machinery/camera/network/command, -/obj/machinery/atmospherics/unary/vent_scrubber/on{ - dir = 4 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_cyborg_station) -"lv" = ( -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/light/small{ - dir = 1 - }, -/obj/effect/floor_decal/steeldecal/steel_decals4{ - dir = 1 - }, -/obj/effect/floor_decal/steeldecal/steel_decals4{ - dir = 6 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"lw" = ( -/obj/machinery/telecomms/server/presets/science, -/turf/simulated/floor/tiled/dark{ - nitrogen = 100; - oxygen = 0; - temperature = 80 - }, -/area/tcommsat/chamber) -"lx" = ( -/obj/machinery/telecomms/processor/preset_two, -/turf/simulated/floor/tiled/dark{ - nitrogen = 100; - oxygen = 0; - temperature = 80 - }, -/area/tcommsat/chamber) -"lA" = ( -/obj/structure/table/rack, -/obj/random/contraband, -/obj/random/maintenance, -/obj/random/maintenance/engineering, -/obj/random/maintenance/engineering, -/turf/simulated/floor/tiled/techfloor/grid, -/area/maintenance/stellardelight/deck3/forestarroomb) -"lB" = ( -/obj/machinery/door/firedoor/glass, -/obj/machinery/door/airlock/glass, -/obj/effect/floor_decal/fancy_shuttle{ - fancy_shuttle_tag = "sdboat" - }, -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/turf/simulated/floor/tiled, -/area/shuttle/sdboat/aft{ - base_turf = /turf/simulated/floor/reinforced/airless - }) -"lC" = ( -/obj/machinery/power/apc/angled{ - dir = 4 - }, -/obj/structure/cable/green{ - icon_state = "0-8" - }, -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 4 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/starboarddock) -"lD" = ( -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/obj/effect/landmark/start/bartender, -/turf/simulated/floor/lino, -/area/stellardelight/deck3/cafe) -"lE" = ( -/obj/machinery/telecomms/bus/preset_two/sd, -/turf/simulated/floor/tiled/dark{ - nitrogen = 100; - oxygen = 0; - temperature = 80 - }, -/area/tcommsat/chamber) -"lF" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/universal, -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardaft) -"lH" = ( -/obj/machinery/telecomms/server/presets/service/sd, -/turf/simulated/floor/tiled/dark{ - nitrogen = 100; - oxygen = 0; - temperature = 80 - }, -/area/tcommsat/chamber) -"lJ" = ( -/obj/structure/cable/green{ - icon_state = "2-4" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 1 - }, -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"lL" = ( -/obj/structure/cable/blue{ - icon_state = "1-2" - }, -/obj/machinery/light{ - dir = 4 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_cyborg_station) -"lP" = ( -/obj/structure/table/woodentable, -/obj/item/device/radio/intercom{ - dir = 4; - name = "Station Intercom (General)"; - pixel_x = 24 - }, -/obj/machinery/atmospherics/unary/vent_scrubber/on{ - dir = 8 - }, -/turf/simulated/floor/carpet/turcarpet, -/area/ai) -"lQ" = ( -/obj/machinery/light, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai) -"lT" = ( -/obj/effect/floor_decal/techfloor/orange{ - dir = 4 - }, -/obj/machinery/atmospherics/unary/vent_scrubber/on, -/obj/machinery/alarm/angled{ - dir = 8 - }, -/turf/simulated/floor/tiled/techfloor, -/area/stellardelight/deck3/transitgateway) -"lU" = ( -/obj/machinery/door/firedoor/glass, -/obj/machinery/door/airlock/angled_bay/standard/color{ - dir = 4; - door_color = "#9c9c9c"; - fill_color = "#5c5c5c"; - id_tag = "readingroom1"; - name = "Room 1"; - stripe_color = "#89bd66" - }, -/turf/simulated/floor/tiled/steel_ridged, -/area/stellardelight/deck3/readingroom) -"lV" = ( -/obj/machinery/light/small{ - dir = 8 - }, -/turf/simulated/floor/carpet/bcarpet, -/area/stellardelight/deck3/clownmimeoffice) -"lY" = ( -/obj/machinery/atmospherics/unary/vent_scrubber/on{ - dir = 1 - }, -/turf/simulated/open, -/area/stellardelight/deck2/central) -"ma" = ( -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/obj/machinery/door/firedoor/glass, -/obj/machinery/door/airlock/angled_bay/external/glass{ - dir = 4; - frequency = 1379; - id_tag = "portmaint_exterior"; - locked = 1; - name = "Exterior Airlock" - }, -/turf/simulated/floor/tiled/steel_ridged, -/area/maintenance/stellardelight/deck3/portcent) -"mb" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 9 - }, -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/portdock) -"md" = ( -/obj/machinery/button/remote/airlock{ - id = "readingroom3"; - name = "Room 3 Lock"; - pixel_y = 24; - specialfunctions = 4 - }, -/obj/machinery/button/remote/blast_door{ - id = "readingroom3"; - name = "Window Lockdown"; - pixel_x = -10; - pixel_y = 24 - }, -/turf/simulated/floor/carpet, -/area/stellardelight/deck3/readingroom) -"me" = ( -/turf/simulated/wall/bay/r_wall/steel, -/area/maintenance/stellardelight/deck3/starboardcent) -"mf" = ( -/obj/effect/shuttle_landmark/premade/sd/deck3/portairlock, -/turf/space, -/area/space) -"mg" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/turf/simulated/open, -/area/stellardelight/deck2/central) -"mh" = ( -/obj/structure/table/steel_reinforced, -/obj/item/device/radio/intercom{ - dir = 4; - pixel_x = 1; - pixel_y = 1 - }, -/obj/structure/closet/emergsuit_wall{ - dir = 1; - pixel_y = -32 - }, -/obj/machinery/alarm{ - pixel_y = 28 - }, -/obj/machinery/light{ - dir = 4 - }, -/obj/effect/floor_decal/fancy_shuttle{ - fancy_shuttle_tag = "sdboat" - }, -/turf/simulated/floor/tiled, -/area/shuttle/sdboat/fore{ - base_turf = /turf/simulated/floor/reinforced/airless - }) -"mi" = ( -/obj/machinery/shipsensors/fancy_shuttle, -/turf/simulated/wall/fancy_shuttle/nondense{ - fancy_shuttle_tag = "sdboat" - }, -/area/shuttle/sdboat/fore{ - base_turf = /turf/simulated/floor/reinforced/airless - }) -"mj" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/structure/cable/blue{ - icon_state = "4-8" - }, -/turf/simulated/open, -/area/stellardelight/deck2/fore) -"mm" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers, -/obj/structure/cable/green{ - icon_state = "1-8" - }, -/turf/simulated/floor, -/area/stellardelight/deck2/fore) -"mn" = ( -/obj/effect/floor_decal/techfloor{ - dir = 4 - }, -/obj/effect/landmark{ - name = "JoinLateCryo" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/turf/simulated/floor/tiled/techfloor, -/area/stellardelight/deck3/cryo) -"mo" = ( -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/door/firedoor/glass, -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 1 - }, -/turf/simulated/floor/tiled/steel_ridged, -/area/stellardelight/deck3/starboarddock) -"mp" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/manifold/hidden/supply, -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 1 - }, -/obj/structure/cable/blue{ - icon_state = "4-8" - }, -/turf/simulated/open, -/area/stellardelight/deck2/fore) -"mq" = ( -/obj/structure/bed/chair{ - dir = 4 - }, -/obj/machinery/alarm/angled{ - dir = 4 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/starboarddock) -"mr" = ( -/obj/structure/table/bench/padded, -/obj/effect/landmark/start/visitor, -/turf/simulated/floor/wood, -/area/stellardelight/deck3/cafe) -"ms" = ( -/obj/structure/reagent_dispensers/watertank, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portfore) -"mv" = ( -/obj/effect/map_helper/airlock/atmos/pump_out_external, -/obj/machinery/atmospherics/unary/vent_pump/high_volume{ - dir = 1; - frequency = 1380; - id_tag = "sdboat_docker_pump_out_external" - }, -/turf/simulated/wall/fancy_shuttle/low{ - fancy_shuttle_tag = "sdboat" - }, -/area/shuttle/sdboat/aft{ - base_turf = /turf/simulated/floor/reinforced/airless - }) -"mA" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 6 - }, -/turf/simulated/floor/bluegrid, -/area/ai) -"mC" = ( -/obj/machinery/telecomms/server/presets/supply, -/obj/machinery/atmospherics/pipe/simple/hidden/black, -/turf/simulated/floor/tiled/dark{ - nitrogen = 100; - oxygen = 0; - temperature = 80 - }, -/area/tcommsat/chamber) -"mD" = ( -/obj/structure/table/steel_reinforced, -/obj/machinery/photocopier/faxmachine{ - department = "Head of Security" - }, -/turf/simulated/floor/tiled/dark, -/area/crew_quarters/heads/hos) -"mF" = ( -/turf/simulated/floor/carpet/bcarpet, -/area/stellardelight/deck3/clownmimeoffice) -"mI" = ( -/obj/structure/cable/blue{ - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 9 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/light_switch{ - dir = 4; - pixel_x = -24; - pixel_y = 24 - }, -/turf/simulated/floor/tiled/eris/white/cargo, -/area/crew_quarters/heads/cmo) -"mK" = ( -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/machinery/light/small{ - dir = 8 - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ - dir = 8 - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardaft) -"mM" = ( -/obj/structure/cable/green{ - icon_state = "1-4" - }, -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/turf/simulated/floor/airless, -/area/stellardelight/deck3/exterior) -"mO" = ( -/obj/structure/table/alien{ - name = "fancy table" - }, -/obj/machinery/computer/skills{ - dir = 4; - pixel_y = 6 - }, -/turf/simulated/floor/carpet/purcarpet, -/area/crew_quarters/heads/hor) -"mQ" = ( -/obj/machinery/door/firedoor/glass, -/obj/structure/window/bay/reinforced, -/obj/structure/low_wall/bay/reinforced/steel, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portfore) -"mR" = ( -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/forestarrooma) -"mS" = ( -/obj/structure/lattice, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/turf/simulated/open, -/area/stellardelight/deck2/starboard) -"mT" = ( -/obj/machinery/space_heater, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardcent) -"mX" = ( -/obj/structure/bed/chair{ - dir = 4 - }, -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 8 - }, -/obj/structure/cable{ - icon_state = "1-2" - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/portdock) -"na" = ( -/obj/machinery/door/firedoor/glass, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/structure/cable/blue{ - icon_state = "4-8" - }, -/turf/simulated/floor, -/area/stellardelight/deck2/fore) -"nd" = ( -/obj/structure/cable/blue{ - icon_state = "4-8" - }, -/obj/machinery/light, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai) -"ne" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/turf/simulated/open, -/area/stellardelight/deck2/fore) -"nf" = ( -/obj/structure/cable/blue{ - icon_state = "4-8" - }, -/obj/machinery/door/firedoor/glass, -/obj/machinery/door/airlock/angled_bay/external/glass{ - dir = 4; - frequency = 1379; - id_tag = "starmaint_exterior"; - locked = 1; - name = "Exterior Airlock" - }, -/turf/simulated/floor/tiled/steel_ridged, -/area/maintenance/stellardelight/deck3/starboardcent) -"nh" = ( -/obj/effect/floor_decal/industrial/warning{ - dir = 8 - }, -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/turf/simulated/floor/airless, -/area/stellardelight/deck3/exterior) -"nj" = ( -/obj/machinery/door/firedoor/glass, -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/door/airlock/angled_bay/hatch{ - dir = 4; - name = "maintenance access"; - stripe_color = "#454545" - }, -/turf/simulated/floor/tiled/steel_ridged, -/area/stellardelight/deck3/cafe) -"nk" = ( -/obj/machinery/light, -/obj/structure/table/bench/padded, -/obj/effect/landmark/start/visitor, -/turf/simulated/floor/wood, -/area/stellardelight/deck3/cafe) -"nm" = ( -/obj/machinery/telecomms/server/presets/unused, -/turf/simulated/floor/tiled/dark{ - nitrogen = 100; - oxygen = 0; - temperature = 80 - }, -/area/tcommsat/chamber) -"np" = ( -/obj/structure/cable/blue{ - icon_state = "1-2" - }, -/obj/machinery/camera/network/command{ - dir = 4 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai) -"nr" = ( -/obj/effect/floor_decal/techfloor/orange{ - dir = 5 - }, -/obj/structure/closet/emergsuit_wall{ - pixel_y = 29 - }, -/obj/structure/closet/emergsuit_wall{ - dir = 4; - pixel_x = 27 - }, -/turf/simulated/floor/tiled/techfloor, -/area/stellardelight/deck3/transitgateway) -"ns" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 6 - }, -/turf/simulated/floor/carpet/oracarpet, -/area/crew_quarters/heads/chief) -"nt" = ( -/obj/machinery/status_display{ - pixel_x = 32 - }, -/turf/simulated/floor/tiled/monotile, -/area/stellardelight/deck3/commandhall) -"nu" = ( -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ - dir = 4 - }, -/obj/structure/cable/blue{ - icon_state = "4-8" - }, -/obj/machinery/alarm/angled{ - dir = 8 - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardcent) -"nv" = ( -/obj/item/weapon/reagent_containers/glass/bucket/wood, -/obj/structure/closet/crate, -/obj/item/weapon/material/minihoe, -/obj/item/seeds/reishimycelium, -/obj/item/seeds/random, -/obj/item/seeds/random, -/obj/item/seeds/random, -/obj/item/seeds/random, -/obj/item/seeds/random, -/obj/item/seeds/ambrosiavulgarisseed, -/turf/simulated/floor/tiled/techfloor/grid, -/area/maintenance/stellardelight/deck3/foreportroomb) -"nw" = ( -/obj/machinery/door/firedoor/glass, -/obj/machinery/door/airlock/angled_bay/double{ - dir = 8; - name = "maintenance access"; - stripe_color = "#454545" - }, -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 4 - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portcent) -"nx" = ( -/turf/simulated/open, -/area/stellardelight/deck2/central) -"nz" = ( -/obj/machinery/camera/network/civilian{ - dir = 1 - }, -/turf/simulated/floor/wood, -/area/stellardelight/deck3/cafe) -"nB" = ( -/obj/machinery/door/firedoor/glass, -/obj/machinery/door/airlock/angled_bay/external/glass{ - dir = 4; - frequency = 1380; - id_tag = null; - locked = 1; - name = "Docking Port Airlock" - }, -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 4 - }, -/obj/effect/map_helper/airlock/door/int_door, -/obj/machinery/access_button{ - command = "cycle_interior"; - dir = 4; - frequency = 1380; - master_tag = "sd_escape_starboard"; - pixel_y = 32; - req_one_access = list(13) - }, -/turf/simulated/floor/tiled/steel_ridged, -/area/stellardelight/deck3/starboarddock) -"nC" = ( -/obj/machinery/telecomms/bus/preset_four, -/turf/simulated/floor/tiled/dark{ - nitrogen = 100; - oxygen = 0; - temperature = 80 - }, -/area/tcommsat/chamber) -"nD" = ( -/obj/machinery/power/apc/angled{ - dir = 4; - name = "night shift APC"; - nightshift_setting = 2 - }, -/obj/structure/cable{ - icon_state = "0-8" - }, -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/obj/structure/table/rack, -/obj/random/contraband, -/obj/random/maintenance/clean, -/obj/random/maintenance, -/obj/random/maintenance/engineering, -/obj/random/maintenance/engineering, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardaft) -"nF" = ( -/obj/structure/table/woodentable, -/obj/machinery/atmospherics/unary/vent_scrubber/on{ - dir = 1 - }, -/obj/item/device/radio/intercom{ - dir = 8; - pixel_x = -24 - }, -/turf/simulated/floor/wood, -/area/stellardelight/deck3/cafe) -"nH" = ( -/obj/structure/table/steel_reinforced, -/obj/item/device/flashlight/lamp/green{ - pixel_x = -4; - pixel_y = 12 - }, -/obj/item/weapon/stamp/hos, -/obj/item/weapon/book/manual/sd_guide, -/turf/simulated/floor/carpet, -/area/crew_quarters/heads/hos) -"nL" = ( -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 8 - }, -/obj/machinery/item_bank{ - dir = 4; - pixel_x = -26 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"nM" = ( -/obj/structure/cable/blue{ - icon_state = "1-2" - }, -/obj/item/device/radio/intercom{ - dir = 8; - pixel_x = -24 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai) -"nN" = ( -/obj/machinery/cryopod/robot, -/turf/simulated/floor/bluegrid, -/area/ai_cyborg_station) -"nO" = ( -/obj/structure/closet/crate, -/obj/random/contraband, -/obj/random/maintenance, -/obj/random/maintenance, -/obj/random/maintenance, -/obj/random/maintenance, -/obj/random/maintenance, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/foreportrooma) -"nP" = ( -/turf/simulated/wall/bay/purple, -/area/crew_quarters/heads/hor) -"nS" = ( -/obj/machinery/hologram/holopad, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_server_room) -"nT" = ( -/obj/machinery/smartfridge/drinks, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/aftstarroom) -"nV" = ( -/obj/structure/table/rack, -/obj/random/contraband, -/obj/random/maintenance, -/obj/random/maintenance, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portaft) -"nW" = ( -/turf/simulated/wall/bay/steel, -/area/stellardelight/deck3/cafe) -"nX" = ( -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/maintenance/stellardelight/deck3/foreportroomb) -"nZ" = ( -/obj/machinery/door/firedoor/glass/hidden/steel{ - dir = 2 - }, -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 1 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"ob" = ( -/obj/structure/lattice, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/supply, -/turf/simulated/open, -/area/stellardelight/deck2/port) -"od" = ( -/obj/machinery/atmospherics/unary/vent_pump/high_volume{ - dir = 8; - frequency = 1379; - id_tag = "starmaint_airpump" - }, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/simulated/floor/airless, -/area/maintenance/stellardelight/deck3/starboardcent) -"og" = ( -/obj/structure/bed/chair{ - dir = 4 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/maintenance/stellardelight/deck3/foreportrooma) -"ok" = ( -/obj/structure/lattice, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 4 - }, -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/turf/simulated/open, -/area/stellardelight/deck2/starboard) -"ol" = ( -/obj/structure/table/alien{ - name = "fancy table" - }, -/obj/item/weapon/stamp/rd, -/obj/item/weapon/book/manual/sd_guide, -/turf/simulated/floor/carpet/purcarpet, -/area/crew_quarters/heads/hor) -"op" = ( -/obj/structure/cable/green{ - icon_state = "1-4" - }, -/obj/structure/cable/green{ - icon_state = "1-8" - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portcent) -"oq" = ( -/obj/effect/landmark/arrivals, -/turf/simulated/floor/glass/reinforced, -/area/stellardelight/deck3/aft) -"os" = ( -/obj/machinery/door/firedoor/glass, -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 6 - }, -/obj/machinery/door/airlock/angled_bay/external/glass{ - frequency = 1380; - id_tag = null; - locked = 1; - name = "Docking Port Airlock" - }, -/obj/effect/map_helper/airlock/door/int_door, -/obj/machinery/access_button{ - command = "cycle_interior"; - dir = 1; - frequency = 1380; - master_tag = "sd_escape_center_right"; - pixel_x = 32; - req_one_access = list(13) - }, -/turf/simulated/floor/tiled/steel_ridged, -/area/stellardelight/deck3/aft) -"ou" = ( -/obj/machinery/atmospherics/unary/vent_pump/high_volume{ - dir = 1; - frequency = 1380; - id_tag = null - }, -/obj/machinery/embedded_controller/radio/airlock/docking_port_multi{ - dir = 8; - frequency = 1380; - id_tag = "sd_escape_center_right"; - master_tag = "escape_dock"; - pixel_x = 24; - req_one_access = list(13); - tag_airpump = null; - tag_chamber_sensor = null; - tag_exterior_door = null; - tag_interior_door = null - }, -/obj/machinery/airlock_sensor{ - dir = 4; - frequency = 1380; - id_tag = null; - pixel_x = -25 - }, -/obj/effect/map_helper/airlock/atmos/chamber_pump, -/obj/effect/map_helper/airlock/sensor/chamber_sensor, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"ov" = ( -/obj/structure/closet/crate/bin{ - anchored = 1 - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/forestarroomb) -"ow" = ( -/turf/simulated/open, -/area/stellardelight/deck2/starboard) -"oy" = ( -/obj/machinery/door/firedoor/glass/hidden/steel, -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 4 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"oA" = ( -/obj/machinery/telecomms/processor/preset_four, -/turf/simulated/floor/tiled/dark{ - nitrogen = 100; - oxygen = 0; - temperature = 80 - }, -/area/tcommsat/chamber) -"oC" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/supply, -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardcent) -"oD" = ( -/obj/item/modular_computer/console/preset/command, -/obj/structure/sign/poster{ - dir = 4 - }, -/obj/machinery/newscaster{ - pixel_y = 28 - }, -/turf/simulated/floor/tiled/eris/white/cargo, -/area/crew_quarters/heads/cmo) -"oE" = ( -/obj/machinery/hologram/holopad, -/turf/simulated/floor/wood, -/area/stellardelight/deck3/readingroom) -"oI" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/zpipe/down/scrubbers{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/zpipe/down/supply{ - dir = 4 - }, -/obj/machinery/door/firedoor/glass, -/turf/simulated/open, -/area/maintenance/stellardelight/deck3/portcent) -"oM" = ( -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/obj/machinery/light/small{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portaft) -"oN" = ( -/obj/machinery/teleport/hub{ - dir = 2 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_cyborg_station) -"oO" = ( -/obj/machinery/door/firedoor/glass, -/obj/structure/cable{ - icon_state = "1-2" - }, -/turf/simulated/floor/tiled/steel_ridged, -/area/stellardelight/deck3/portdock) -"oP" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/turf/simulated/open, -/area/crew_quarters/bar) -"oR" = ( -/obj/machinery/newscaster/security_unit{ - pixel_x = -32; - pixel_y = 32 - }, -/obj/item/device/radio/intercom/locked/ai_private{ - dir = 4; - pixel_x = 32 - }, -/obj/item/device/radio/intercom{ - broadcasting = 1; - dir = 8; - name = "Common Channel"; - pixel_x = -21 - }, -/obj/item/device/radio/intercom{ - dir = 1; - name = "Station Intercom (General)"; - pixel_y = 21 - }, -/obj/machinery/requests_console/preset/ai{ - pixel_x = 32; - pixel_y = 32 - }, -/obj/effect/landmark/start/ai, -/turf/simulated/floor/bluegrid, -/area/ai) -"oS" = ( -/obj/structure/cryofeed, -/obj/effect/floor_decal/corner_techfloor_grid{ - dir = 5 - }, -/obj/effect/floor_decal/corner_techfloor_grid{ - dir = 10 - }, -/turf/simulated/floor/tiled/techfloor, -/area/stellardelight/deck3/cryo) -"oT" = ( -/obj/structure/cable/blue{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 4 - }, -/obj/item/device/radio/intercom{ - dir = 4; - pixel_x = 24 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_cyborg_station) -"oU" = ( -/obj/machinery/atmospherics/unary/vent_pump/on{ - dir = 8 - }, -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 4 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/starboarddock) -"oV" = ( -/obj/machinery/atmospherics/unary/vent_pump/on{ - dir = 4 - }, -/obj/machinery/camera/network/halls{ - dir = 4 - }, -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 8 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"oW" = ( -/turf/simulated/open, -/area/stellardelight/deck2/port) -"oX" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/structure/cable/blue{ - icon_state = "1-2" - }, -/turf/simulated/open, -/area/stellardelight/deck2/fore) -"oY" = ( -/obj/machinery/door/firedoor/glass, -/obj/structure/cable/blue{ - icon_state = "1-2" - }, -/obj/machinery/door/airlock/angled_bay/hatch{ - name = "Telecoms Control Room"; - req_access = list(61) - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/turf/simulated/floor/tiled/steel_ridged, -/area/tcommsat/computer) -"oZ" = ( -/turf/simulated/wall/bay/steel, -/area/stellardelight/deck3/readingroom) -"pb" = ( -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 1 - }, -/obj/effect/floor_decal/steeldecal/steel_decals4{ - dir = 5 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"pc" = ( -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"pd" = ( -/obj/machinery/power/apc/angled{ - dir = 8 - }, -/obj/structure/cable/blue{ - icon_state = "0-2" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/turf/simulated/floor/tiled/eris/white/cargo, -/area/crew_quarters/heads/cmo) -"pf" = ( -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/obj/structure/cable/green{ - icon_state = "1-8" - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portfore) -"pk" = ( -/obj/structure/table/steel, -/obj/random/drinkbottle, -/turf/simulated/floor/tiled/techfloor/grid, -/area/maintenance/stellardelight/deck3/foreportrooma) -"pl" = ( -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 4 - }, -/obj/item/device/radio/intercom{ - dir = 4; - pixel_x = 24 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/starboarddock) -"pm" = ( -/obj/structure/table/darkglass, -/obj/item/device/radio/intercom{ - dir = 1; - name = "Station Intercom (General)"; - pixel_y = 24 - }, -/obj/item/device/flashlight/lamp/green{ - pixel_x = -5; - pixel_y = -5 - }, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen/blade/red{ - pixel_x = -2; - pixel_y = -2 - }, -/obj/item/weapon/pen, -/obj/item/weapon/pen/blue{ - pixel_x = 2; - pixel_y = 3 - }, -/obj/machinery/atmospherics/unary/vent_scrubber/on{ - dir = 8 - }, -/turf/simulated/floor/tiled/dark, -/area/lawoffice) -"po" = ( -/obj/machinery/atmospherics/unary/vent_pump/on{ - dir = 4 - }, -/obj/structure/flora/pottedplant/decorative, -/turf/simulated/floor/tiled/eris/dark/gray_platform, -/area/stellardelight/deck3/commandhall) -"pp" = ( -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 1 - }, -/turf/simulated/floor/wood, -/area/stellardelight/deck3/cafe) -"pq" = ( -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/forestarrooma) -"pt" = ( -/obj/structure/cable{ - icon_state = "1-8" - }, -/obj/structure/cable{ - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 9 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 9 - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardcent) -"px" = ( -/obj/machinery/telecomms/processor/preset_three, -/turf/simulated/floor/tiled/dark{ - nitrogen = 100; - oxygen = 0; - temperature = 80 - }, -/area/tcommsat/chamber) -"pz" = ( -/obj/machinery/door/firedoor/glass, -/obj/machinery/door/airlock/angled_bay/hatch{ - name = "maintenance access"; - stripe_color = "#454545" - }, -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/turf/simulated/floor/tiled/steel_ridged, -/area/maintenance/stellardelight/deck3/aftstarroom) -"pA" = ( -/obj/structure/bed/double/padded, -/obj/item/weapon/bedsheet/cosmosdouble{ - icon_state = "dobulesheetcosmos" - }, -/obj/machinery/camera/network/command, -/turf/simulated/floor/carpet/turcarpet, -/area/ai) -"pB" = ( -/obj/structure/bed/chair, -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 1 - }, -/obj/item/device/radio/intercom{ - dir = 1; - pixel_y = 24 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"pC" = ( -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 9 - }, -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 1 - }, -/obj/structure/sign/warning/evac{ - pixel_x = 32 - }, -/obj/effect/landmark{ - name = "lightsout" - }, -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 4 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/portdock) -"pE" = ( -/obj/machinery/light/small{ - dir = 8 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/maintenance/stellardelight/deck3/forestarrooma) -"pG" = ( -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 1 - }, -/obj/effect/floor_decal/steeldecal/steel_decals4{ - dir = 4 - }, -/obj/effect/floor_decal/shuttles/right, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/starboarddock) -"pK" = ( -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 4 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"pL" = ( -/obj/structure/table/steel, -/obj/random/snack, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/forestarrooma) -"pN" = ( -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/foreportroomb) -"pO" = ( -/obj/machinery/power/apc/angled{ - dir = 4 - }, -/obj/structure/cable/blue{ - icon_state = "0-2" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/turf/simulated/floor/tiled/dark, -/area/crew_quarters/heads/hos) -"pS" = ( -/obj/structure/cable/blue{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/alarm/angled{ - dir = 8 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_cyborg_station) -"pT" = ( -/obj/effect/floor_decal/industrial/warning{ - dir = 4 - }, -/turf/simulated/floor/airless, -/area/stellardelight/deck3/exterior) -"pV" = ( -/obj/machinery/keycard_auth{ - pixel_y = 28 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 6 - }, -/obj/machinery/alarm/angled{ - dir = 4 - }, -/turf/simulated/floor/tiled/techfloor, -/area/crew_quarters/heads/hor) -"pW" = ( -/obj/structure/cable/blue{ - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/tcommsat/computer) -"pX" = ( -/obj/machinery/door/firedoor/glass, -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/machinery/door/airlock/angled_bay/hatch{ - door_color = "#323d80"; - name = "maintenance access"; - req_one_access = list(16); - stripe_color = "#323d80" - }, -/turf/simulated/floor/tiled/steel_ridged, -/area/ai_cyborg_station) -"pY" = ( -/obj/machinery/telecomms/bus/preset_three, -/turf/simulated/floor/tiled/dark{ - nitrogen = 100; - oxygen = 0; - temperature = 80 - }, -/area/tcommsat/chamber) -"qb" = ( -/obj/machinery/power/pointdefense{ - id_tag = "sd_pd" - }, -/obj/effect/floor_decal/industrial/warning/full, -/obj/structure/cable/blue{ - icon_state = "0-2" - }, -/turf/simulated/floor/airless, -/area/stellardelight/deck3/exterior) -"qc" = ( -/obj/structure/table/bench/padded, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/turf/simulated/floor/wood, -/area/stellardelight/deck3/cafe) -"qd" = ( -/obj/effect/landmark{ - name = "JoinLateCyborg" - }, -/obj/effect/landmark/start/cyborg, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_cyborg_station) -"qe" = ( -/obj/machinery/door/firedoor/glass, -/obj/machinery/door/airlock/angled_bay/external/glass{ - dir = 4; - frequency = 1380; - id_tag = null; - locked = 1; - name = "Docking Port Airlock" - }, -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 4 - }, -/obj/effect/map_helper/airlock/door/int_door, -/obj/machinery/access_button{ - command = "cycle_interior"; - dir = 8; - frequency = 1380; - master_tag = "sd_escape_port"; - pixel_y = 32; - req_one_access = list(13) - }, -/turf/simulated/floor/tiled/steel_ridged, -/area/stellardelight/deck3/portdock) -"qf" = ( -/obj/structure/cable{ - icon_state = "1-4" - }, -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/structure/cable{ - icon_state = "1-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardcent) -"qg" = ( -/obj/structure/table/glass, -/obj/machinery/light/small{ - dir = 4 - }, -/obj/random/contraband, -/obj/random/snack, -/turf/simulated/floor/wood, -/area/stellardelight/deck3/readingroom) -"qi" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/turf/simulated/open, -/area/stellardelight/deck2/fore) -"qn" = ( -/obj/machinery/porta_turret/stationary, -/turf/simulated/floor/bluegrid{ - name = "Mainframe Base"; - nitrogen = 100; - oxygen = 0; - temperature = 80 - }, -/area/tcommsat/chamber) -"qp" = ( -/turf/simulated/open, -/area/crew_quarters/bar) -"qq" = ( -/turf/simulated/wall/bay/r_wall/blue, -/area/tcommsat/computer) -"qs" = ( -/obj/structure/table/rack, -/obj/random/maintenance/clean, -/obj/random/maintenance/clean, -/obj/random/maintenance/clean, -/obj/random/maintenance/clean, -/obj/random/maintenance/security, -/obj/random/maintenance/security, -/obj/random/maintenance/security, -/obj/random/drinkbottle, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/forestarrooma) -"qv" = ( -/obj/structure/cable/cyan{ - icon_state = "4-8" - }, -/obj/machinery/door/airlock/angled_bay/hatch{ - dir = 4; - door_color = "#323d80"; - id_tag = "AICore"; - id_tint = null; - locked = 1; - name = "AI Core"; - req_one_access = list(16); - stripe_color = "#323d80" - }, -/turf/simulated/floor/tiled/steel_ridged, -/area/ai) -"qx" = ( -/obj/structure/table/glass, -/turf/simulated/floor/wood, -/area/stellardelight/deck3/readingroom) -"qy" = ( -/obj/structure/cable/blue{ - icon_state = "4-8" - }, -/turf/simulated/floor/airless, -/area/stellardelight/deck3/exterior) -"qz" = ( -/turf/simulated/floor/reinforced{ - name = "Holodeck Projector Floor" - }, -/area/holodeck/alphadeck) -"qA" = ( -/obj/machinery/turretid/stun{ - check_synth = 1; - control_area = /area/ai; - name = "AI Chamber turret control"; - pixel_x = -30; - pixel_y = -24 - }, -/obj/machinery/flasher{ - id = "AI"; - pixel_x = -24; - pixel_y = 25 - }, -/obj/machinery/hologram/holopad, -/obj/structure/cable/cyan{ - icon_state = "2-8" - }, -/turf/simulated/floor/bluegrid, -/area/ai) -"qC" = ( -/obj/structure/table/glass, -/turf/simulated/floor/carpet, -/area/stellardelight/deck3/readingroom) -"qE" = ( -/obj/effect/floor_decal/industrial/warning{ - dir = 4 - }, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/simulated/floor/airless, -/area/stellardelight/deck3/starboarddock) -"qF" = ( -/turf/simulated/open, -/area/stellardelight/deck2/fore) -"qK" = ( -/obj/effect/landmark{ - name = "lightsout" - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_cyborg_station) -"qL" = ( -/obj/structure/sign/warning/docking_area{ - pixel_x = 32 - }, -/turf/simulated/floor/airless, -/area/stellardelight/deck3/exterior) -"qM" = ( -/obj/structure/table/steel, -/obj/random/firstaid, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/foreportrooma) -"qN" = ( -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 1 - }, -/obj/effect/floor_decal/steeldecal/steel_decals4{ - dir = 8 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"qO" = ( -/obj/machinery/door/firedoor/glass, -/obj/structure/cable/blue{ - icon_state = "1-2" - }, -/obj/machinery/door/airlock/angled_bay/hatch{ - door_color = "#323d80"; - name = "maintenance access"; - req_one_access = list(16); - stripe_color = "#323d80" - }, -/turf/simulated/floor/tiled/steel_ridged, -/area/ai_cyborg_station) -"qP" = ( -/obj/structure/lattice, -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/turf/simulated/open, -/area/stellardelight/deck2/port) -"qQ" = ( -/obj/machinery/porta_turret/stationary, -/obj/structure/cable/blue{ - icon_state = "2-4" - }, -/turf/simulated/floor/bluegrid{ - name = "Mainframe Base"; - nitrogen = 100; - oxygen = 0; - temperature = 80 - }, -/area/tcommsat/chamber) -"qS" = ( -/obj/machinery/light/small, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardaft) -"qU" = ( -/obj/machinery/light{ - dir = 4 - }, -/obj/structure/cable/blue{ - icon_state = "1-8" - }, -/turf/simulated/floor/bluegrid{ - name = "Mainframe Base"; - nitrogen = 100; - oxygen = 0; - temperature = 80 - }, -/area/tcommsat/chamber) -"qW" = ( -/obj/machinery/door/firedoor/glass, -/obj/machinery/door/airlock/angled_bay/hatch{ - dir = 4; - name = "maintenance access"; - stripe_color = "#454545" - }, -/obj/structure/cable/blue{ - icon_state = "4-8" - }, -/turf/simulated/floor/tiled/steel_ridged, -/area/maintenance/stellardelight/deck3/forestarroomb) -"qX" = ( -/obj/random/vendorfood, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"qY" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 5 - }, -/obj/structure/reagent_dispensers/fueltank, -/obj/machinery/alarm/angled{ - dir = 4 - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardaft) -"qZ" = ( -/obj/structure/filingcabinet/chestdrawer, -/obj/machinery/power/apc/angled{ - dir = 4 - }, -/obj/structure/cable/blue{ - icon_state = "0-8" - }, -/turf/simulated/floor/tiled, -/area/crew_quarters/heads/hop) -"rb" = ( -/obj/effect/floor_decal/emblem/nt3, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_upload) -"rc" = ( -/turf/simulated/wall/bay/r_wall/blue, -/area/stellardelight/deck3/commandhall) -"rg" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/turf/simulated/floor/wood, -/area/stellardelight/deck3/cafe) -"rh" = ( -/obj/machinery/cryopod{ - dir = 4 - }, -/obj/effect/floor_decal/corner_techfloor_grid{ - dir = 10 - }, -/obj/effect/floor_decal/corner_techfloor_grid{ - dir = 5 - }, -/turf/simulated/floor/tiled/techfloor, -/area/stellardelight/deck3/cryo) -"ri" = ( -/obj/structure/handrail, -/obj/effect/map_helper/airlock/atmos/chamber_pump, -/obj/effect/floor_decal/fancy_shuttle{ - fancy_shuttle_tag = "sdboat" - }, -/obj/machinery/atmospherics/unary/vent_pump/high_volume{ - dir = 4 - }, -/turf/simulated/floor/tiled, -/area/shuttle/sdboat/aft{ - base_turf = /turf/simulated/floor/reinforced/airless - }) -"rj" = ( -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/foreportroomb) -"rl" = ( -/obj/structure/sign/painting/library_secure{ - pixel_x = -30 - }, -/turf/simulated/floor/carpet/blue2, -/area/lawoffice) -"rm" = ( -/obj/effect/floor_decal/techfloor{ - dir = 5 - }, -/obj/effect/landmark{ - name = "JoinLateCryo" - }, -/obj/machinery/atmospherics/unary/vent_pump/on, -/obj/machinery/computer/cryopod{ - pixel_x = 32; - pixel_y = 32 - }, -/obj/item/device/radio/intercom{ - dir = 1; - pixel_y = 24 - }, -/turf/simulated/floor/tiled/techfloor, -/area/stellardelight/deck3/cryo) -"rn" = ( -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/turf/simulated/floor/tiled/techfloor, -/area/stellardelight/deck3/transitgateway) -"rp" = ( -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/obj/machinery/door/firedoor/glass, -/obj/machinery/atmospherics/pipe/simple/hidden, -/obj/machinery/access_button{ - command = "cycle_interior"; - frequency = 1379; - master_tag = "portmaint_airlock"; - name = "interior access button"; - pixel_x = 32; - req_access = null; - req_one_access = list(13) - }, -/obj/machinery/door/airlock/angled_bay/external/glass{ - frequency = 1379; - id_tag = "portmaint_interior"; - locked = 1; - name = "Exterior Airlock" - }, -/turf/simulated/floor/tiled/steel_ridged, -/area/maintenance/stellardelight/deck3/portcent) -"rq" = ( -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/aftstarroom) -"rr" = ( -/obj/machinery/atmospherics/unary/vent_pump/high_volume{ - dir = 4; - frequency = 1380; - id_tag = null - }, -/obj/machinery/embedded_controller/radio/airlock/docking_port_multi{ - frequency = 1380; - id_tag = "sd_escape_starboard"; - master_tag = "escape_dock"; - pixel_y = 30; - req_one_access = list(13); - tag_airpump = null; - tag_chamber_sensor = null; - tag_exterior_door = null; - tag_interior_door = null - }, -/obj/machinery/airlock_sensor{ - frequency = 1380; - id_tag = null; - pixel_y = -25 - }, -/obj/effect/map_helper/airlock/atmos/chamber_pump, -/obj/effect/map_helper/airlock/sensor/chamber_sensor, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/starboarddock) -"rs" = ( -/obj/machinery/atmospherics/pipe/manifold/hidden/black{ - dir = 1 - }, -/obj/machinery/hologram/holopad, -/turf/simulated/floor/bluegrid{ - name = "Mainframe Base"; - nitrogen = 100; - oxygen = 0; - temperature = 80 - }, -/area/tcommsat/chamber) -"rw" = ( -/obj/structure/closet/walllocker_double/west, -/obj/item/weapon/book/manual/command_guide, -/obj/item/weapon/book/manual/command_guide, -/obj/item/weapon/book/manual/standard_operating_procedure, -/obj/item/weapon/book/manual/standard_operating_procedure, -/obj/item/weapon/book/manual/security_space_law, -/obj/item/weapon/book/manual/security_space_law, -/turf/simulated/floor/tiled/dark, -/area/lawoffice) -"rx" = ( -/turf/simulated/wall/bay/white, -/area/crew_quarters/heads/cmo) -"rA" = ( -/obj/structure/table/reinforced, -/obj/machinery/computer/skills, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/turf/simulated/floor/tiled, -/area/crew_quarters/heads/hop) -"rB" = ( -/obj/machinery/door/airlock/angled_bay/hatch{ - dir = 4; - door_color = "#323d80"; - id_tag = "AICore"; - id_tint = null; - locked = 1; - name = "AI Core"; - req_one_access = list(16); - stripe_color = "#323d80" - }, -/turf/simulated/floor/tiled/steel_ridged, -/area/ai) -"rH" = ( -/obj/structure/lattice, -/obj/structure/cable/blue{ - icon_state = "32-8" - }, -/obj/structure/disposalpipe/down{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/zpipe/down/supply, -/obj/machinery/atmospherics/pipe/zpipe/down/scrubbers, -/obj/machinery/door/firedoor/glass, -/turf/simulated/open, -/area/maintenance/stellardelight/deck3/starboardcent) -"rL" = ( -/turf/simulated/floor/lino, -/area/stellardelight/deck3/cafe) -"rN" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 10 - }, -/turf/simulated/floor/bluegrid, -/area/ai) -"rS" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/turf/simulated/open, -/area/stellardelight/deck2/port) -"rW" = ( -/obj/effect/mouse_hole_spawner{ - dir = 4 - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portfore) -"rX" = ( -/obj/effect/floor_decal/fancy_shuttle{ - fancy_shuttle_tag = "sdboat" - }, -/obj/machinery/light{ - dir = 1 - }, -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/turf/simulated/floor/tiled, -/area/shuttle/sdboat/aft{ - base_turf = /turf/simulated/floor/reinforced/airless - }) -"rZ" = ( -/obj/machinery/atmospherics/unary/vent_pump/on{ - dir = 4 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai) -"sa" = ( -/obj/effect/map_helper/airlock/door/int_door, -/obj/machinery/door/firedoor/glass, -/obj/machinery/door/airlock/glass_external, -/obj/effect/floor_decal/fancy_shuttle{ - fancy_shuttle_tag = "sdboat" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/fuel{ - dir = 4 - }, -/obj/structure/cable{ - icon_state = "4-8" - }, -/turf/simulated/floor/tiled, -/area/shuttle/sdboat/aft{ - base_turf = /turf/simulated/floor/reinforced/airless - }) -"sb" = ( -/obj/machinery/door/firedoor/glass, -/obj/structure/cable/blue{ - icon_state = "1-2" - }, -/obj/machinery/door/airlock/angled_bay/secure{ - name = "AI Storage"; - req_access = list(16) - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/turf/simulated/floor/tiled/steel_ridged, -/area/ai_cyborg_station) -"sc" = ( -/turf/simulated/wall/bay/r_wall/blue, -/area/ai) -"sd" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/structure/cable/blue{ - icon_state = "1-2" - }, -/turf/simulated/open, -/area/stellardelight/deck2/fore) -"sf" = ( -/obj/machinery/light{ - dir = 8 - }, -/turf/simulated/floor/tiled/eris/dark/gray_platform, -/area/stellardelight/deck3/commandhall) -"si" = ( -/obj/structure/table/woodentable, -/obj/machinery/chemical_dispenser/bar_coffee/full{ - pixel_y = 8 - }, -/obj/structure/sign/painting/library_secure{ - pixel_y = 30 - }, -/turf/simulated/floor/lino, -/area/stellardelight/deck3/cafe) -"sj" = ( -/obj/machinery/power/apc/angled{ - dir = 4; - name = "night shift APC"; - nightshift_setting = 2 - }, -/obj/structure/closet, -/obj/random/maintenance, -/obj/random/maintenance, -/obj/random/maintenance, -/obj/random/maintenance, -/obj/random/maintenance, -/obj/structure/cable/blue{ - icon_state = "0-2" - }, -/obj/random/snack, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/forestarrooma) -"sl" = ( -/obj/machinery/atmospherics/unary/vent_pump{ - dir = 8; - external_pressure_bound = 140; - external_pressure_bound_default = 140; - icon_state = "map_vent_out"; - pressure_checks = 0; - pressure_checks_default = 0; - use_power = 1 - }, -/turf/simulated/floor/bluegrid{ - name = "Mainframe Base"; - nitrogen = 100; - oxygen = 0; - temperature = 80 - }, -/area/tcommsat/chamber) -"sn" = ( -/obj/structure/lattice, -/obj/structure/cable{ - icon_state = "1-2" - }, -/turf/simulated/open, -/area/stellardelight/deck2/starboard) -"sr" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 6 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai) -"ss" = ( -/obj/machinery/door/firedoor/glass, -/obj/machinery/door/airlock/angled_bay/external/glass{ - dir = 4; - frequency = 1380; - id_tag = null; - locked = 1; - name = "Docking Port Airlock" - }, -/obj/effect/map_helper/airlock/door/int_door, -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 4 - }, -/obj/machinery/access_button{ - command = "cycle_interior"; - dir = 4; - frequency = 1380; - master_tag = "sd_port_landing"; - pixel_y = 32; - req_one_access = list(13) - }, -/obj/structure/cable{ - icon_state = "4-8" - }, -/turf/simulated/floor/tiled/steel_ridged, -/area/stellardelight/deck3/portdock) -"st" = ( -/obj/structure/bed/chair/sofa/corp/right{ - dir = 8 - }, -/obj/machinery/light/small{ - dir = 4 - }, -/mob/living/simple_mob/animal/passive/fox/syndicate/aipet, -/turf/simulated/floor/carpet/turcarpet, -/area/ai) -"su" = ( -/obj/machinery/power/apc/angled{ - dir = 8 - }, -/obj/structure/cable/blue{ - icon_state = "0-4" - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/tcommsat/computer) -"sx" = ( -/obj/machinery/door/firedoor/glass, -/turf/simulated/floor, -/area/stellardelight/deck2/central) -"sz" = ( -/obj/machinery/door/firedoor/glass, -/obj/machinery/door/airlock/angled_bay/hatch{ - dir = 4; - door_color = "#e6ab22"; - name = "Shield Generator"; - req_access = null; - req_one_access = list(11,24); - stripe_color = "#e6ab22" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/turf/simulated/floor/tiled/steel_ridged, -/area/stellardelight/deck2/central) -"sA" = ( -/obj/structure/bed/chair{ - dir = 4 - }, -/turf/simulated/floor/carpet/purcarpet, -/area/crew_quarters/heads/hor) -"sC" = ( -/obj/machinery/computer/mecha{ - dir = 1 - }, -/turf/simulated/floor/tiled/techfloor, -/area/crew_quarters/heads/hor) -"sE" = ( -/obj/effect/shuttle_landmark/premade/sd/deck3/starboardlanding, -/turf/space, -/area/space) -"sI" = ( -/obj/structure/table/standard, -/obj/random/paicard, -/obj/machinery/atmospherics/unary/vent_scrubber/on, -/turf/simulated/floor/bluegrid, -/area/ai_cyborg_station) -"sJ" = ( -/obj/machinery/atmospherics/unary/vent_scrubber/on{ - dir = 8 - }, -/turf/simulated/open, -/area/stellardelight/deck2/fore) -"sK" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/black{ - dir = 4 - }, -/turf/simulated/floor/bluegrid{ - name = "Mainframe Base"; - nitrogen = 100; - oxygen = 0; - temperature = 80 - }, -/area/tcommsat/chamber) -"sM" = ( -/turf/simulated/floor/reinforced/airless, -/area/stellardelight/deck3/exterior) -"sN" = ( -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/structure/cable/green{ - icon_state = "1-4" - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portcent) -"sO" = ( -/turf/simulated/floor, -/area/stellardelight/deck2/fore) -"sP" = ( -/obj/structure/cable/green{ - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 1 - }, -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/starboarddock) -"sQ" = ( -/obj/structure/table/standard, -/obj/item/weapon/aiModule/reset, -/obj/machinery/alarm{ - dir = 4; - pixel_x = -28 - }, -/obj/structure/sign/warning/secure_area{ - pixel_y = 32 - }, -/turf/simulated/floor/bluegrid, -/area/ai_cyborg_station) -"sR" = ( -/obj/structure/cable/blue{ - icon_state = "4-8" - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/forestarroomb) -"sU" = ( -/obj/machinery/atmospherics/unary/vent_scrubber/on{ - dir = 8 - }, -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 4 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"sX" = ( -/obj/structure/closet/crate, -/obj/random/maintenance, -/obj/random/maintenance, -/obj/random/maintenance, -/obj/random/maintenance, -/obj/random/maintenance, -/obj/random/maintenance/security, -/obj/random/maintenance/security, -/obj/random/drinkbottle, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portfore) -"sZ" = ( -/obj/structure/cable{ - icon_state = "1-2" - }, -/turf/simulated/wall/bay/r_wall/blue, -/area/maintenance/stellardelight/deck3/portaft) -"tb" = ( -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 4 - }, -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 4 - }, -/obj/effect/floor_decal/steeldecal/steel_decals_central5{ - dir = 4 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/starboarddock) -"tc" = ( -/obj/structure/cable/blue{ - icon_state = "1-4" - }, -/obj/effect/mouse_hole_spawner{ - dir = 8 - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardfore) -"tg" = ( -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/obj/structure/disposalpipe/junction{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 4 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"th" = ( -/turf/simulated/wall/bay/r_wall/blue, -/area/ai_cyborg_station) -"tk" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 4 - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardaft) -"tn" = ( -/obj/machinery/light_switch{ - dir = 8; - pixel_x = 24 - }, -/turf/simulated/floor/carpet/turcarpet, -/area/ai) -"tp" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 10 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 10 - }, -/obj/random/trash_pile, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portcent) -"tq" = ( -/obj/machinery/camera/network/command{ - dir = 9 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai) -"tu" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/obj/structure/closet/crate, -/obj/random/contraband, -/obj/random/maintenance, -/obj/random/maintenance/clean, -/obj/random/maintenance/clean, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/aftstarroom) -"ty" = ( -/obj/machinery/computer/teleporter, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_cyborg_station) -"tz" = ( -/obj/machinery/recharge_station, -/turf/simulated/floor/bluegrid, -/area/ai_upload) -"tC" = ( -/obj/structure/sign/vacuum, -/turf/simulated/wall/bay/r_wall/steel, -/area/maintenance/stellardelight/deck3/starboardcent) -"tF" = ( -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/obj/structure/frame, -/turf/simulated/floor/tiled/techfloor/grid, -/area/maintenance/stellardelight/deck3/forestarrooma) -"tG" = ( -/obj/machinery/light, -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 1 - }, -/obj/effect/floor_decal/steeldecal/steel_decals5, -/obj/structure/cable{ - icon_state = "4-8" - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"tH" = ( -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 9 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/transitgateway) -"tJ" = ( -/obj/machinery/atmospherics/unary/vent_scrubber/on{ - dir = 8 - }, -/obj/machinery/light{ - dir = 1 - }, -/obj/structure/flora/pottedplant/decorative, -/turf/simulated/floor/tiled/eris/dark/gray_platform, -/area/stellardelight/deck3/commandhall) -"tK" = ( -/obj/effect/floor_decal/industrial/warning{ - dir = 4 - }, -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/obj/structure/cable/green{ - icon_state = "1-8" - }, -/turf/simulated/floor/airless, -/area/stellardelight/deck3/exterior) -"tL" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/black{ - dir = 4 - }, -/obj/structure/cable/blue{ - icon_state = "1-8" - }, -/turf/simulated/floor/bluegrid{ - name = "Mainframe Base"; - nitrogen = 100; - oxygen = 0; - temperature = 80 - }, -/area/tcommsat/chamber) -"tO" = ( -/obj/structure/table/steel_reinforced, -/obj/item/device/taperecorder{ - pixel_x = 10 - }, -/obj/item/weapon/reagent_containers/food/drinks/flask/barflask{ - pixel_x = -9; - pixel_y = -2 - }, -/obj/item/device/radio/off, -/turf/simulated/floor/tiled/dark, -/area/crew_quarters/heads/hos) -"tQ" = ( -/obj/structure/table/standard, -/obj/item/weapon/aiModule/freeform, -/obj/machinery/light{ - dir = 1 - }, -/turf/simulated/floor/bluegrid, -/area/ai_cyborg_station) -"tR" = ( -/obj/machinery/door/firedoor/glass, -/obj/machinery/door/airlock/angled_bay/external/glass{ - dir = 4; - frequency = 1380; - id_tag = null; - locked = 1; - name = "Docking Port Airlock" - }, -/obj/effect/map_helper/airlock/door/ext_door, -/obj/machinery/access_button{ - command = "cycle_exterior"; - dir = 4; - frequency = 1380; - master_tag = "sd_escape_port"; - pixel_y = 32; - req_one_access = list(13) - }, -/turf/simulated/floor/tiled/steel_ridged, -/area/stellardelight/deck3/portdock) -"tT" = ( -/obj/structure/cable/blue{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/turf/simulated/floor/tiled/eris/dark/gray_platform, -/area/stellardelight/deck3/commandhall) -"tV" = ( -/obj/machinery/atmospherics/unary/vent_scrubber/on{ - dir = 1 - }, -/turf/simulated/open, -/area/stellardelight/deck2/fore) -"tW" = ( -/obj/machinery/atmospherics/portables_connector{ - dir = 4 - }, -/obj/machinery/portable_atmospherics/canister/air/airlock{ - start_pressure = 4559.63 - }, -/turf/simulated/floor, -/area/tcommsat/computer) -"tX" = ( -/obj/structure/bed/chair/sofa/corp/left{ - dir = 8 - }, -/turf/simulated/floor/bluegrid, -/area/ai) -"tZ" = ( -/turf/simulated/floor/carpet/purcarpet, -/area/crew_quarters/heads/hor) -"ub" = ( -/obj/item/modular_computer/console/preset/command, -/obj/structure/sign/poster{ - dir = 8 - }, -/obj/machinery/newscaster/security_unit{ - pixel_y = 28 - }, -/turf/simulated/floor/tiled/dark, -/area/crew_quarters/heads/hos) -"uc" = ( -/obj/machinery/teleport/station{ - dir = 2 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_cyborg_station) -"uf" = ( -/obj/structure/lattice, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/turf/simulated/open, -/area/stellardelight/deck2/port) -"ui" = ( -/obj/machinery/portable_atmospherics/canister/phoron, -/obj/effect/floor_decal/fancy_shuttle{ - fancy_shuttle_tag = "sdboat" - }, -/obj/machinery/atmospherics/portables_connector/fuel{ - dir = 1 - }, -/obj/machinery/door/window/southleft{ - dir = 1; - req_one_access = list(11,67) - }, -/turf/simulated/floor/tiled, -/area/shuttle/sdboat/aft{ - base_turf = /turf/simulated/floor/reinforced/airless - }) -"uj" = ( -/turf/simulated/wall/bay/r_wall/blue, -/area/crew_quarters/heads/hor) -"uk" = ( -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 8 - }, -/obj/item/device/radio/intercom{ - dir = 8; - pixel_x = -24 - }, -/obj/structure/cable{ - icon_state = "1-2" - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/portdock) -"ul" = ( -/obj/structure/cable/blue{ - icon_state = "2-8" - }, -/obj/structure/cable/blue{ - icon_state = "1-2" - }, -/obj/structure/cable/blue{ - icon_state = "1-8" - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardfore) -"un" = ( -/obj/structure/cable/green{ - icon_state = "2-4" - }, -/turf/simulated/floor/airless, -/area/stellardelight/deck3/exterior) -"uq" = ( -/turf/simulated/wall/bay/r_wall/steel, -/area/stellardelight/deck3/starboarddock) -"ur" = ( -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/turf/simulated/wall/bay/r_wall/steel, -/area/maintenance/stellardelight/deck3/starboardaft) -"us" = ( -/obj/machinery/light{ - dir = 4 - }, -/turf/simulated/floor/bluegrid, -/area/ai) -"ut" = ( -/obj/structure/cable/blue{ - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/unary/vent_pump/on{ - dir = 4 - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardcent) -"uv" = ( -/obj/machinery/atmospherics/pipe/manifold/hidden/black, -/obj/structure/cable/blue{ - icon_state = "2-4" - }, -/turf/simulated/floor/bluegrid{ - name = "Mainframe Base"; - nitrogen = 100; - oxygen = 0; - temperature = 80 - }, -/area/tcommsat/chamber) -"uw" = ( -/obj/machinery/atmospherics/pipe/manifold/hidden{ - dir = 1 - }, -/obj/structure/cable/blue{ - icon_state = "1-2" - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/tcommsat/computer) -"uz" = ( -/obj/effect/floor_decal/techfloor{ - dir = 4 - }, -/obj/effect/landmark{ - name = "JoinLateCryo" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/turf/simulated/floor/tiled/techfloor, -/area/stellardelight/deck3/cryo) -"uB" = ( -/obj/machinery/door/firedoor/glass, -/obj/structure/window/bay/reinforced, -/obj/machinery/atmospherics/pipe/simple/hidden/black, -/obj/structure/low_wall/bay/reinforced/blue, -/turf/simulated/floor, -/area/tcommsat/computer) -"uD" = ( -/obj/structure/closet/firecloset, -/obj/random/maintenance, -/obj/random/maintenance/cargo, -/obj/random/maintenance/clean, -/obj/random/drinkbottle, -/obj/random/drinkbottle, -/obj/random/drinkbottle, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/aftstarroom) -"uE" = ( -/obj/structure/table/rack, -/obj/random/contraband, -/obj/random/maintenance, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/forestarroomb) -"uH" = ( -/obj/structure/cable/blue{ - icon_state = "2-8" - }, -/obj/structure/cable/blue{ - icon_state = "4-8" - }, -/turf/simulated/floor/airless, -/area/stellardelight/deck3/exterior) -"uI" = ( -/obj/structure/cable/blue{ - icon_state = "1-4" - }, -/turf/simulated/floor/bluegrid, -/area/ai) -"uJ" = ( -/obj/structure/closet/firecloset, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portcent) -"uM" = ( -/obj/machinery/alarm/angled, -/obj/structure/table/woodentable, -/obj/item/device/flashlight/lamp/clown{ - pixel_x = -4; - pixel_y = 6 - }, -/obj/item/weapon/bikehorn{ - pixel_x = -2; - pixel_y = 2 - }, -/obj/item/weapon/stamp/clown{ - pixel_x = 6; - pixel_y = 9 - }, -/turf/simulated/floor/wood, -/area/stellardelight/deck3/clownmimeoffice) -"uQ" = ( -/obj/machinery/alarm/angled{ - dir = 8 - }, -/obj/machinery/computer/shuttle_control/explore/sdboat{ - dir = 8 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_server_room) -"uT" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/structure/cable/blue{ - icon_state = "2-8" - }, -/turf/simulated/floor/tiled/techfloor, -/area/ai_cyborg_station) -"uU" = ( -/obj/machinery/door/firedoor/glass, -/obj/machinery/door/airlock/angled_bay/standard/color{ - dir = 4; - door_color = "#9c9c9c"; - fill_color = "#5c5c5c"; - id_tag = "readingroom3"; - name = "Room 3"; - stripe_color = "#89bd66" - }, -/turf/simulated/floor/tiled/steel_ridged, -/area/stellardelight/deck3/readingroom) -"uV" = ( -/obj/machinery/computer/robotics{ - dir = 1 - }, -/turf/simulated/floor/tiled/techfloor, -/area/crew_quarters/heads/hor) -"uW" = ( -/obj/effect/floor_decal/corner_techfloor_grid{ - dir = 5 - }, -/obj/effect/floor_decal/corner_techfloor_grid{ - dir = 10 - }, -/obj/machinery/light/floortube{ - dir = 4; - pixel_x = 2 - }, -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/turf/simulated/floor/tiled/techfloor, -/area/stellardelight/deck3/cryo) -"uX" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/turf/simulated/floor, -/area/stellardelight/deck2/starboard) -"uY" = ( -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/manifold/hidden{ - dir = 8 - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardaft) -"uZ" = ( -/obj/structure/cable/blue{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/camera/network/command{ - dir = 4 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_server_room) -"va" = ( -/obj/effect/floor_decal/industrial/warning{ - dir = 8 - }, -/obj/structure/cable/green{ - icon_state = "2-4" - }, -/turf/simulated/floor/airless, -/area/stellardelight/deck3/exterior) -"vb" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 10 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 9 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ai_cyborg_station) -"ve" = ( -/obj/structure/closet/walllocker_double/east, -/turf/simulated/floor/tiled, -/area/crew_quarters/heads/chief) -"vf" = ( -/obj/structure/table/reinforced, -/obj/machinery/photocopier/faxmachine{ - department = "Chief Engineer's Office" - }, -/turf/simulated/floor/tiled, -/area/crew_quarters/heads/chief) -"vh" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ - dir = 1 - }, -/turf/simulated/floor/wood, -/area/stellardelight/deck3/cafe) -"vi" = ( -/turf/simulated/floor/carpet/tealcarpet, -/area/crew_quarters/heads/cmo) -"vo" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 5 - }, -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/starboarddock) -"vq" = ( -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/turf/simulated/wall/bay/r_wall/steel, -/area/maintenance/stellardelight/deck3/portaft) -"vr" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/fuel{ - dir = 9 - }, -/turf/simulated/wall/fancy_shuttle{ - fancy_shuttle_tag = "sdboat" - }, -/area/shuttle/sdboat/aft{ - base_turf = /turf/simulated/floor/reinforced/airless - }) -"vt" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/structure/cable{ - icon_state = "2-4" - }, -/turf/simulated/floor, -/area/stellardelight/deck2/central) -"vv" = ( -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/obj/effect/floor_decal/emblem/nt2, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/manifold/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 4 - }, -/obj/effect/landmark{ - name = "lightsout" - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"vw" = ( -/obj/structure/sign/department/shield, -/turf/simulated/wall/bay/r_wall/blue, -/area/stellardelight/deck3/commandhall) -"vy" = ( -/obj/machinery/atmospherics/portables_connector{ - dir = 1 - }, -/obj/machinery/portable_atmospherics/canister/air/airlock, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardaft) -"vA" = ( -/obj/machinery/power/apc/angled{ - dir = 1; - name = "night shift APC"; - nightshift_setting = 2 - }, -/obj/structure/cable/green{ - icon_state = "0-4" - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portaft) -"vE" = ( -/obj/effect/shuttle_landmark{ - base_area = /area/stellardelight/deck3/exterior; - base_turf = /turf/simulated/floor/reinforced/airless; - docking_controller = "sd_starboard_landing"; - landmark_tag = "starboard_shuttlepad"; - name = "Starboard Shuttlepad" - }, -/turf/simulated/floor/reinforced/airless, -/area/stellardelight/deck3/exterior) -"vF" = ( -/obj/structure/lattice, -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/turf/simulated/open, -/area/stellardelight/deck2/fore) -"vG" = ( -/obj/effect/floor_decal/steeldecal/steel_decals4{ - dir = 8 - }, -/obj/structure/cable{ - icon_state = "1-8" - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"vI" = ( -/obj/structure/bed/chair{ - dir = 8 - }, -/obj/machinery/light{ - dir = 4 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/portdock) -"vJ" = ( -/obj/structure/bed/chair{ - dir = 8 - }, -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 4 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/starboarddock) -"vN" = ( -/obj/machinery/computer/telecomms/monitor{ - dir = 8; - network = "tcommsat" - }, -/obj/machinery/light{ - dir = 4 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/tcommsat/computer) -"vO" = ( -/obj/machinery/door/firedoor/glass, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/structure/cable/blue{ - icon_state = "1-2" - }, -/obj/machinery/door/airlock/angled_bay/hatch{ - door_color = "#323d80"; - name = "maintenance access"; - req_one_access = list(19,38); - stripe_color = "#323d80" - }, -/turf/simulated/floor/tiled/steel_ridged, -/area/stellardelight/deck3/commandhall) -"vP" = ( -/obj/structure/bed/chair{ - dir = 8 - }, -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 4 - }, -/obj/structure/sign/nanotrasen{ - pixel_x = 32 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/starboarddock) -"vQ" = ( -/obj/structure/cable/green{ - icon_state = "2-8" - }, -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/turf/simulated/floor/airless, -/area/stellardelight/deck3/exterior) -"vS" = ( -/obj/structure/cable/blue{ - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/supply, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_cyborg_station) -"vT" = ( -/obj/machinery/holoplant, -/obj/machinery/status_display{ - pixel_x = -32 - }, -/turf/simulated/floor/bluegrid, -/area/ai_cyborg_station) -"vX" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/effect/map_helper/airlock/atmos/chamber_pump, -/obj/effect/floor_decal/fancy_shuttle{ - fancy_shuttle_tag = "sdboat" - }, -/obj/machinery/atmospherics/unary/vent_pump/high_volume{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/fuel{ - dir = 4 - }, -/turf/simulated/floor/tiled, -/area/shuttle/sdboat/aft{ - base_turf = /turf/simulated/floor/reinforced/airless - }) -"wa" = ( -/obj/machinery/door/firedoor/glass, -/obj/structure/window/bay/reinforced, -/obj/structure/low_wall/bay/reinforced/steel, -/turf/simulated/floor, -/area/stellardelight/deck2/port) -"wc" = ( -/obj/machinery/atmospherics/unary/vent_pump/on{ - dir = 8 - }, -/obj/effect/landmark/vermin, -/turf/simulated/open, -/area/stellardelight/deck2/starboard) -"wd" = ( -/obj/structure/table/standard, -/obj/item/weapon/aiModule/oxygen, -/obj/item/weapon/aiModule/oneHuman, -/obj/item/weapon/aiModule/purge, -/obj/item/weapon/aiModule/antimov, -/obj/item/weapon/aiModule/teleporterOffline, -/obj/machinery/alarm/angled{ - dir = 8 - }, -/turf/simulated/floor/bluegrid, -/area/ai_cyborg_station) -"we" = ( -/obj/machinery/power/pointdefense{ - id_tag = "sd_pd" - }, -/obj/effect/floor_decal/industrial/warning/full, -/obj/structure/cable/blue{ - icon_state = "0-8" - }, -/turf/simulated/floor/airless, -/area/stellardelight/deck3/exterior) -"wg" = ( -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 4 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"wm" = ( -/obj/machinery/atmospherics/unary/vent_pump/high_volume{ - dir = 8; - frequency = 1380; - id_tag = null - }, -/obj/machinery/embedded_controller/radio/airlock/docking_port{ - frequency = 1380; - id_tag = "sd_starboard_landing"; - pixel_y = 29 - }, -/obj/effect/map_helper/airlock/atmos/chamber_pump, -/obj/effect/map_helper/airlock/sensor/chamber_sensor, -/obj/machinery/airlock_sensor{ - frequency = 1380; - id_tag = null; - pixel_y = -25 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/starboarddock) -"wo" = ( -/obj/structure/table/standard, -/obj/item/weapon/aiModule/asimov, -/obj/item/weapon/aiModule/freeformcore, -/obj/item/weapon/aiModule/corp, -/obj/item/weapon/aiModule/paladin, -/obj/item/weapon/aiModule/robocop, -/obj/structure/cable/blue, -/obj/machinery/power/apc/angled{ - dir = 8 - }, -/turf/simulated/floor/bluegrid, -/area/ai_cyborg_station) -"wq" = ( -/obj/structure/bed/chair{ - dir = 8 - }, -/turf/simulated/floor/carpet, -/area/crew_quarters/heads/hos) -"wr" = ( -/obj/machinery/computer/ship/engines/adv, -/obj/effect/floor_decal/fancy_shuttle{ - fancy_shuttle_tag = "sdboat" - }, -/turf/simulated/floor/tiled, -/area/shuttle/sdboat/fore{ - base_turf = /turf/simulated/floor/reinforced/airless - }) -"wt" = ( -/obj/machinery/door/firedoor/glass, -/obj/structure/window/bay/reinforced, -/obj/machinery/door/blast/angled/open{ - dir = 4; - id = "readingroom2" - }, -/obj/structure/low_wall/bay/reinforced/steel, -/turf/simulated/floor, -/area/stellardelight/deck3/readingroom) -"wv" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_cyborg_station) -"ww" = ( -/obj/machinery/atmospherics/portables_connector{ - dir = 8 - }, -/obj/machinery/portable_atmospherics/canister/air/airlock, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardaft) -"wy" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 4 - }, -/obj/structure/cable/blue{ - icon_state = "1-2" - }, -/turf/simulated/open, -/area/stellardelight/deck2/fore) -"wA" = ( -/obj/machinery/alarm/angled{ - dir = 4 - }, -/turf/simulated/floor/bluegrid, -/area/ai_upload) -"wG" = ( -/obj/machinery/alarm/angled{ - dir = 8 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai) -"wK" = ( -/obj/effect/floor_decal/techfloor/orange{ - dir = 1 - }, -/obj/item/device/radio/intercom{ - dir = 1; - pixel_y = 24 - }, -/turf/simulated/floor/tiled/techfloor, -/area/stellardelight/deck3/transitgateway) -"wM" = ( -/turf/simulated/floor/airless, -/area/maintenance/stellardelight/deck3/starboardcent) -"wN" = ( -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_cyborg_station) -"wP" = ( -/obj/machinery/atmospherics/unary/vent_scrubber/on, -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 1 - }, -/obj/machinery/station_map{ - pixel_y = 32 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"wQ" = ( -/obj/structure/cable/blue{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ - dir = 4 - }, -/turf/simulated/floor/tiled/eris/dark/gray_platform, -/area/stellardelight/deck3/commandhall) -"wR" = ( -/obj/structure/lattice, -/obj/structure/cable{ - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 10 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 10 - }, -/turf/simulated/open, -/area/stellardelight/deck2/starboard) -"wS" = ( -/obj/machinery/holoplant, -/turf/simulated/floor/bluegrid, -/area/ai) -"wV" = ( -/obj/structure/cable/blue{ - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/structure/closet/emergsuit_wall{ - dir = 8; - pixel_x = -27 - }, -/turf/simulated/floor/tiled/eris/dark/gray_platform, -/area/stellardelight/deck3/commandhall) -"wW" = ( -/obj/structure/cable/green{ - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/camera/network/civilian{ - dir = 1 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/transitgateway) -"wY" = ( -/obj/machinery/light, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/turf/simulated/floor/tiled, -/area/crew_quarters/heads/hop) -"wZ" = ( -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 6 - }, -/turf/simulated/wall/fancy_shuttle{ - fancy_shuttle_tag = "sdboat" - }, -/area/shuttle/sdboat/aft{ - base_turf = /turf/simulated/floor/reinforced/airless - }) -"xb" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/obj/structure/closet/crate, -/obj/random/contraband, -/obj/random/contraband, -/obj/random/maintenance/clean, -/obj/random/maintenance/clean, -/obj/random/maintenance/clean, -/obj/random/maintenance/engineering, -/obj/random/maintenance/engineering, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/foreportrooma) -"xd" = ( -/obj/structure/lattice, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/turf/simulated/open, -/area/stellardelight/deck2/port) -"xe" = ( -/obj/machinery/light{ - dir = 4 - }, -/obj/machinery/atmospherics/unary/vent_scrubber/on{ - dir = 8 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_server_room) -"xf" = ( -/obj/structure/handrail{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden, -/obj/effect/floor_decal/fancy_shuttle{ - fancy_shuttle_tag = "sdboat" - }, -/turf/simulated/floor/tiled, -/area/shuttle/sdboat/aft{ - base_turf = /turf/simulated/floor/reinforced/airless - }) -"xg" = ( -/obj/machinery/door/firedoor/glass, -/obj/structure/window/bay/reinforced, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/low_wall/bay/reinforced/blue, -/turf/simulated/floor, -/area/crew_quarters/heads/hop) -"xh" = ( -/obj/machinery/light{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/turf/simulated/floor/bluegrid, -/area/ai) -"xi" = ( -/obj/structure/cable/green{ - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 5 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 5 - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portaft) -"xj" = ( -/obj/structure/table/standard, -/obj/item/weapon/aiModule/consuming_eradicator, -/obj/item/weapon/aiModule/guard_dog, -/obj/item/weapon/aiModule/pleasurebot, -/obj/item/weapon/aiModule/protective_shell, -/obj/item/weapon/aiModule/scientific_pursuer, -/obj/machinery/atmospherics/unary/vent_pump/on{ - dir = 1 - }, -/turf/simulated/floor/bluegrid, -/area/ai_cyborg_station) -"xm" = ( -/obj/structure/cable/blue{ - icon_state = "1-2" - }, -/turf/simulated/floor/airless, -/area/stellardelight/deck3/exterior) -"xo" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, -/turf/simulated/floor/wood, -/area/stellardelight/deck3/clownmimeoffice) -"xp" = ( -/turf/simulated/floor/wood, -/area/stellardelight/deck3/clownmimeoffice) -"xu" = ( -/obj/machinery/door/airlock/angled_bay/external/glass{ - dir = 4; - frequency = 1379; - id_tag = "starmaint_exterior"; - locked = 1; - name = "Exterior Airlock" - }, -/obj/machinery/door/firedoor/glass, -/obj/machinery/access_button{ - command = "cycle_exterior"; - frequency = 1379; - master_tag = "starmaint_airlock"; - name = "exterior access button"; - pixel_y = 32; - req_access = null; - req_one_access = list(13) - }, -/turf/simulated/floor/tiled/steel_ridged, -/area/maintenance/stellardelight/deck3/starboardcent) -"xv" = ( -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/turf/simulated/floor/wood, -/area/stellardelight/deck3/readingroom) -"xw" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/structure/cable/blue{ - icon_state = "1-2" - }, -/turf/simulated/floor/tiled/eris/dark/gray_platform, -/area/stellardelight/deck3/commandhall) -"xy" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 6 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 6 - }, -/turf/simulated/floor/tiled/monotile, -/area/stellardelight/deck3/commandhall) -"xz" = ( -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/unary/freezer{ - dir = 1; - icon_state = "freezer_1"; - set_temperature = 73; - use_power = 1 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/tcommsat/computer) -"xA" = ( -/obj/structure/sign/warning/evac{ - pixel_x = 32; - pixel_y = -32 - }, -/obj/effect/floor_decal/steeldecal/steel_decals5, -/obj/structure/cable{ - icon_state = "4-8" - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"xB" = ( -/obj/machinery/atmospherics/binary/passive_gate/on{ - dir = 8 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/tcommsat/computer) -"xC" = ( -/obj/machinery/atmospherics/unary/vent_scrubber/on{ - dir = 8 - }, -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 4 - }, -/obj/effect/landmark/vermin, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/starboarddock) -"xE" = ( -/obj/structure/closet, -/obj/random/firstaid, -/obj/random/maintenance, -/obj/random/maintenance/cargo, -/obj/random/maintenance/cargo, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/aftstarroom) -"xH" = ( -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardcent) -"xI" = ( -/obj/machinery/door/firedoor/glass, -/obj/structure/window/bay/reinforced, -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/obj/structure/low_wall/bay/reinforced/steel, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/foreportroomb) -"xL" = ( -/turf/simulated/wall/fancy_shuttle/low{ - fancy_shuttle_tag = "sdboat" - }, -/area/shuttle/sdboat/aft{ - base_turf = /turf/simulated/floor/reinforced/airless - }) -"xM" = ( -/obj/structure/bed/chair/office/dark{ - dir = 4 - }, -/obj/effect/landmark/start/iaa, -/turf/simulated/floor/carpet/blue2, -/area/lawoffice) -"xN" = ( -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/maintenance/stellardelight/deck3/forestarrooma) -"xO" = ( -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 8 - }, -/obj/effect/floor_decal/steeldecal/steel_decals4{ - dir = 8 - }, -/obj/structure/cable{ - icon_state = "1-2" - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"xP" = ( -/turf/simulated/floor/tiled/techfloor/grid, -/area/maintenance/stellardelight/deck3/foreportroomb) -"xR" = ( -/obj/machinery/atmospherics/unary/vent_pump/on, -/turf/simulated/open, -/area/stellardelight/deck2/starboard) -"xS" = ( -/obj/structure/bed/chair/office/dark{ - dir = 4 - }, -/obj/effect/landmark/start/hos, -/turf/simulated/floor/carpet, -/area/crew_quarters/heads/hos) -"xT" = ( -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portaft) -"xU" = ( -/obj/structure/cable/blue{ - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/turf/simulated/floor/tiled/eris/dark/gray_platform, -/area/stellardelight/deck3/commandhall) -"xW" = ( -/obj/machinery/door/firedoor/glass, -/turf/simulated/floor/tiled/steel_ridged, -/area/stellardelight/deck3/aft) -"xY" = ( -/turf/simulated/floor/carpet/blue2, -/area/lawoffice) -"xZ" = ( -/turf/simulated/floor/wood, -/area/stellardelight/deck3/cafe) -"ya" = ( -/obj/machinery/button/remote/blast_door{ - id = "shuttleshutter"; - name = "Shutter Control"; - pixel_x = 17; - pixel_y = 27 - }, -/obj/structure/cable/green{ - icon_state = "2-8" - }, -/obj/effect/floor_decal/fancy_shuttle{ - fancy_shuttle_tag = "sdboat" - }, -/turf/simulated/floor/tiled, -/area/shuttle/sdboat/fore{ - base_turf = /turf/simulated/floor/reinforced/airless - }) -"yb" = ( -/obj/structure/sign/deck3{ - pixel_x = 32 - }, -/obj/machinery/atmospherics/unary/vent_scrubber/on{ - dir = 1 - }, -/turf/simulated/floor/tiled/monotile, -/area/stellardelight/deck3/commandhall) -"yc" = ( -/obj/machinery/atmospherics/pipe/manifold/hidden, -/obj/structure/cable/blue{ - icon_state = "1-2" - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/tcommsat/computer) -"yd" = ( -/obj/structure/cable/green{ - icon_state = "1-4" - }, -/turf/simulated/floor/airless, -/area/stellardelight/deck3/exterior) -"ye" = ( -/obj/structure/dogbed, -/mob/living/simple_mob/animal/passive/dog/corgi/Lisa, -/turf/simulated/floor/tiled, -/area/crew_quarters/heads/hop) -"yf" = ( -/obj/machinery/door/firedoor/glass, -/obj/machinery/door/airlock/angled_bay/double{ - dir = 8; - name = "maintenance access"; - stripe_color = "#454545" - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardcent) -"yi" = ( -/obj/structure/cable/blue{ - icon_state = "1-2" - }, -/obj/structure/cable/blue, -/obj/machinery/power/sensor{ - name = "Powernet Sensor - Command Subgrid"; - name_tag = "Command Subgrid" - }, -/obj/machinery/power/apc/angled{ - dir = 8 - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/substation/command) -"yj" = ( -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 9 - }, -/turf/simulated/wall/bay/r_wall/steel, -/area/stellardelight/deck3/aft) -"ym" = ( -/obj/structure/table/rack, -/obj/random/maintenance, -/obj/random/maintenance/clean, -/obj/random/maintenance/engineering, -/obj/random/maintenance/security, -/obj/random/contraband, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardfore) -"yo" = ( -/obj/structure/cable/blue{ - icon_state = "1-2" - }, -/turf/simulated/floor/tiled, -/area/crew_quarters/heads/hop) -"yp" = ( -/obj/structure/cable/blue{ - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 9 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 9 - }, -/obj/machinery/computer/cryopod/robot{ - pixel_x = 32 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_cyborg_station) -"yq" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/turf/simulated/floor/wood, -/area/stellardelight/deck3/readingroom) -"ys" = ( -/obj/machinery/atm{ - pixel_y = 30 - }, -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 1 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"yt" = ( -/obj/effect/floor_decal/steeldecal/steel_decals4{ - dir = 4 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"yw" = ( -/obj/effect/floor_decal/techfloor/orange{ - dir = 9 - }, -/obj/structure/closet/emergsuit_wall{ - pixel_y = 29 - }, -/obj/structure/closet/emergsuit_wall{ - dir = 8; - pixel_x = -27 - }, -/turf/simulated/floor/tiled/techfloor, -/area/stellardelight/deck3/transitgateway) -"yy" = ( -/obj/machinery/door/firedoor/glass, -/obj/structure/window/bay/reinforced, -/obj/structure/cable/blue{ - icon_state = "4-8" - }, -/obj/structure/low_wall/bay/reinforced/steel, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/forestarroomb) -"yB" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/turf/simulated/floor/carpet/tealcarpet, -/area/crew_quarters/heads/cmo) -"yC" = ( -/obj/machinery/power/apc/angled{ - dir = 4 - }, -/obj/structure/cable/blue, -/turf/simulated/floor/tiled/dark, -/area/lawoffice) -"yE" = ( -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 4 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/tcommsat/computer) -"yF" = ( -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/door/firedoor/glass, -/obj/machinery/door/airlock/angled_bay/double/glass{ - name = "glass airlock" - }, -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 1 - }, -/turf/simulated/floor/tiled/steel_ridged, -/area/stellardelight/deck3/portdock) -"yH" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, -/turf/simulated/wall/bay/r_wall/blue, -/area/ai_cyborg_station) -"yI" = ( -/obj/item/weapon/folder{ - pixel_x = -4 - }, -/obj/item/weapon/folder/blue{ - pixel_x = 5 - }, -/obj/item/weapon/folder/red{ - pixel_y = 3 - }, -/obj/item/weapon/folder/yellow, -/obj/structure/table/darkglass, -/obj/machinery/light, -/turf/simulated/floor/tiled/dark, -/area/lawoffice) -"yJ" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 10 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 10 - }, -/turf/simulated/floor/tiled/monotile, -/area/stellardelight/deck3/commandhall) -"yM" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/door/firedoor/glass, -/obj/machinery/door/airlock/angled_bay/standard/color{ - door_color = "#323d80"; - fill_color = "#313866"; - name = "Head of Personnel"; - req_access = list(57); - stripe_color = "#a3d1d1" - }, -/turf/simulated/floor/tiled/steel_ridged, -/area/crew_quarters/heads/hop) -"yP" = ( -/obj/structure/sign/warning/falling{ - pixel_x = 32 - }, -/turf/simulated/open, -/area/stellardelight/deck2/starboard) -"yR" = ( -/obj/machinery/door/firedoor/glass, -/obj/structure/window/bay/reinforced, -/obj/structure/low_wall/bay/reinforced/steel, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portcent) -"yS" = ( -/obj/machinery/door/firedoor/glass, -/obj/machinery/access_button{ - command = "cycle_exterior"; - dir = 4; - frequency = 1380; - master_tag = "sd_starboard_landing"; - pixel_y = 32; - req_one_access = list(13) - }, -/obj/machinery/door/airlock/angled_bay/external/glass{ - dir = 4; - frequency = 1380; - id_tag = null; - locked = 1; - name = "Docking Port Airlock" - }, -/obj/effect/map_helper/airlock/door/ext_door, -/turf/simulated/floor/tiled/steel_ridged, -/area/stellardelight/deck3/starboarddock) -"yV" = ( -/obj/machinery/light{ - dir = 8 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_cyborg_station) -"yW" = ( -/obj/effect/floor_decal/industrial/warning{ - dir = 4 - }, -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/turf/simulated/floor/airless, -/area/stellardelight/deck3/exterior) -"yY" = ( -/obj/structure/table/steel, -/obj/random/maintenance/clean, -/turf/simulated/floor/tiled/techfloor/grid, -/area/maintenance/stellardelight/deck3/foreportroomb) -"yZ" = ( -/obj/machinery/door/airlock/angled_bay/hatch{ - name = "maintenance access"; - stripe_color = "#454545" - }, -/turf/simulated/floor/tiled/steel_ridged, -/area/stellardelight/deck3/readingroom) -"za" = ( -/obj/machinery/cryopod/robot/door/gateway, -/turf/simulated/floor/tiled/techfloor, -/area/stellardelight/deck3/transitgateway) -"zb" = ( -/obj/machinery/atmospherics/pipe/manifold4w/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/manifold4w/hidden/supply, -/obj/structure/cable/blue{ - icon_state = "1-4" - }, -/obj/structure/cable/blue{ - icon_state = "1-8" - }, -/obj/structure/cable/blue{ - icon_state = "2-4" - }, -/obj/structure/cable/blue{ - icon_state = "2-8" - }, -/obj/structure/cable/blue{ - icon_state = "1-2" - }, -/obj/structure/cable/blue{ - icon_state = "4-8" - }, -/turf/simulated/floor/tiled/eris/dark/gray_platform, -/area/stellardelight/deck3/commandhall) -"zf" = ( -/obj/structure/cable/blue{ - icon_state = "1-2" - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardfore) -"zg" = ( -/obj/structure/cable/blue{ - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_upload) -"zi" = ( -/obj/effect/floor_decal/emblem/nt2, -/obj/structure/cable/blue{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 4 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_upload) -"zk" = ( -/obj/effect/landmark{ - name = "droppod_landing" - }, -/turf/space, -/area/space) -"zm" = ( -/obj/structure/cable/blue{ - icon_state = "4-8" - }, -/obj/structure/table/reinforced, -/obj/machinery/photocopier/faxmachine{ - department = "Head of Personnel's Office" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/unary/vent_scrubber/on{ - dir = 8 - }, -/obj/machinery/alarm/angled, -/turf/simulated/floor/tiled, -/area/crew_quarters/heads/hop) -"zn" = ( -/obj/machinery/door/firedoor/glass, -/obj/structure/window/bay/reinforced, -/obj/structure/low_wall/bay/reinforced/blue, -/turf/simulated/floor, -/area/tcommsat/computer) -"zo" = ( -/obj/structure/bed/chair{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/turf/simulated/floor/carpet/blue2, -/area/lawoffice) -"zp" = ( -/obj/machinery/light/small{ - dir = 8 - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/foreportroomb) -"zr" = ( -/obj/machinery/cryopod, -/obj/effect/floor_decal/corner_techfloor_grid{ - dir = 5 - }, -/obj/effect/floor_decal/corner_techfloor_grid{ - dir = 10 - }, -/turf/simulated/floor/tiled/techfloor, -/area/stellardelight/deck3/cryo) -"zt" = ( -/obj/structure/table/steel, -/obj/random/contraband, -/obj/random/maintenance/clean, -/turf/simulated/floor/tiled/techfloor/grid, -/area/maintenance/stellardelight/deck3/foreportroomb) -"zv" = ( -/obj/item/weapon/bedsheet/rddouble, -/obj/structure/bed/double/padded, -/obj/structure/curtain/black{ - color = "#361447" - }, -/obj/effect/landmark/start/rd, -/turf/simulated/floor/carpet/purcarpet, -/area/crew_quarters/heads/hor) -"zw" = ( -/obj/machinery/embedded_controller/radio/airlock/airlock_controller{ - dir = 8; - id_tag = "portmaint_airlock"; - pixel_x = 24; - req_access = null; - req_one_access = list(13); - tag_airpump = "portmaint_airpump"; - tag_chamber_sensor = "portmaint_sensor"; - tag_exterior_door = "portmaint_exterior"; - tag_interior_door = "portmaint_interior" - }, -/turf/simulated/floor/airless, -/area/maintenance/stellardelight/deck3/portcent) -"zy" = ( -/obj/machinery/camera/network/halls{ - dir = 8 - }, -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 4 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"zz" = ( -/turf/simulated/wall/bay/steel, -/area/stellardelight/deck3/commandhall) -"zA" = ( -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/structure/table/steel, -/obj/random/maintenance/engineering, -/obj/random/maintenance/security, -/obj/random/maintenance/clean, -/obj/random/maintenance, -/obj/random/contraband, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardfore) -"zB" = ( -/obj/structure/cable/blue{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/effect/landmark{ - name = "lightsout" - }, -/turf/simulated/floor/tiled/eris/dark/gray_platform, -/area/stellardelight/deck3/commandhall) -"zC" = ( -/obj/item/toy/figure/mime, -/obj/item/weapon/pen/crayon/marker/mime, -/obj/item/weapon/pen/crayon/mime, -/obj/structure/table/woodentable, -/obj/machinery/atmospherics/unary/vent_scrubber/on{ - dir = 4 - }, -/turf/simulated/floor/carpet/bcarpet, -/area/stellardelight/deck3/clownmimeoffice) -"zD" = ( -/obj/structure/cable/blue{ - icon_state = "1-2" - }, -/obj/effect/floor_decal/industrial/warning{ - dir = 1 - }, -/obj/structure/sign/warning/secure_area{ - pixel_x = -32 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_server_room) -"zE" = ( -/obj/structure/table/bench/padded, -/obj/effect/landmark/start/commandsecretary, -/turf/simulated/floor/wood, -/area/stellardelight/deck3/cafe) -"zF" = ( -/obj/structure/cable{ - icon_state = "0-4" - }, -/obj/machinery/power/apc/angled{ - dir = 8 - }, -/turf/simulated/floor/carpet/bcarpet, -/area/stellardelight/deck3/clownmimeoffice) -"zH" = ( -/obj/structure/cable/green{ - icon_state = "2-8" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ - dir = 4 - }, -/turf/simulated/floor, -/area/stellardelight/deck2/port) -"zI" = ( -/obj/structure/cable/green{ - icon_state = "1-4" - }, -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 6 - }, -/obj/effect/floor_decal/arrivals, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"zJ" = ( -/obj/effect/floor_decal/techfloor{ - dir = 9 - }, -/obj/effect/landmark{ - name = "JoinLateCryo" - }, -/obj/machinery/alarm/angled{ - pixel_x = -32; - pixel_y = 19 - }, -/obj/structure/closet/emergsuit_wall{ - pixel_y = 29 - }, -/turf/simulated/floor/tiled/techfloor, -/area/stellardelight/deck3/cryo) -"zL" = ( -/obj/structure/cable{ - icon_state = "1-4" - }, -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 5 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 5 - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardcent) -"zM" = ( -/obj/effect/landmark{ - name = "JoinLateCyborg" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/effect/landmark/start/cyborg, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_cyborg_station) -"zN" = ( -/turf/simulated/wall/bay/r_wall/blue, -/area/crew_quarters/heads/hos) -"zQ" = ( -/obj/structure/table/steel, -/obj/item/device/flashlight/lamp, -/turf/simulated/floor/tiled/techfloor/grid, -/area/maintenance/stellardelight/deck3/foreportrooma) -"zS" = ( -/obj/structure/handrail{ - dir = 1 - }, -/obj/machinery/power/apc{ - pixel_y = -28; - req_access = null; - req_one_access = list(11,67) - }, -/obj/structure/cable/green, -/obj/effect/floor_decal/fancy_shuttle{ - fancy_shuttle_tag = "sdboat" - }, -/turf/simulated/floor/tiled, -/area/shuttle/sdboat/aft{ - base_turf = /turf/simulated/floor/reinforced/airless - }) -"zV" = ( -/obj/structure/cable/green{ - icon_state = "1-4" - }, -/obj/structure/closet/crate, -/obj/random/contraband, -/obj/random/maintenance, -/obj/random/snack, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/aftstarroom) -"zW" = ( -/obj/structure/lattice, -/obj/structure/sign/warning/falling{ - pixel_y = 32 - }, -/turf/simulated/open, -/area/stellardelight/deck2/fore) -"zX" = ( -/turf/simulated/wall/bay/r_wall/steel, -/area/stellardelight/deck3/readingroom) -"zY" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/universal{ - dir = 8 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/tcommsat/computer) -"Ae" = ( -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/turf/simulated/floor/airless, -/area/stellardelight/deck3/exterior) -"Af" = ( -/obj/structure/closet/crate/bin{ - anchored = 1 - }, -/obj/machinery/atmospherics/unary/vent_scrubber/on, -/turf/simulated/floor/wood, -/area/stellardelight/deck3/readingroom) -"Ai" = ( -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/obj/effect/landmark{ - name = "maint_pred" - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/maintenance/stellardelight/deck3/forestarrooma) -"Aj" = ( -/obj/item/device/camera, -/obj/item/device/camera_film, -/obj/item/device/taperecorder, -/obj/item/device/tape/random, -/obj/item/device/tape/random, -/obj/item/weapon/storage/secure/briefcase, -/obj/structure/closet/walllocker_double/east, -/turf/simulated/floor/carpet/blue2, -/area/lawoffice) -"Al" = ( -/obj/machinery/power/apc/angled{ - dir = 4; - name = "night shift APC"; - nightshift_setting = 2 - }, -/obj/structure/cable/green{ - icon_state = "0-8" - }, -/obj/structure/table/rack, -/obj/random/maintenance, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/aftstarroom) -"Am" = ( -/obj/machinery/power/apc/angled{ - dir = 4; - req_access = list(19,43,67) - }, -/obj/structure/cable/green{ - icon_state = "0-2" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/atmospherics/unary/vent_pump/on, -/turf/simulated/floor/wood, -/area/stellardelight/deck3/readingroom) -"An" = ( -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 10 - }, -/turf/simulated/floor/carpet, -/area/crew_quarters/heads/hop) -"Ap" = ( -/obj/structure/cable{ - icon_state = "1-4" - }, -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ - dir = 8 - }, -/obj/structure/cable{ - icon_state = "4-8" - }, -/turf/simulated/floor, -/area/stellardelight/deck2/starboard) -"Aq" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 10 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/turf/simulated/floor/tiled/techfloor/grid, -/area/tcommsat/computer) -"As" = ( -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 5 - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardaft) -"At" = ( -/obj/structure/table/glass, -/obj/item/device/flashlight/lamp/green, -/turf/simulated/floor/carpet, -/area/stellardelight/deck3/readingroom) -"Av" = ( -/obj/effect/floor_decal/techfloor{ - dir = 6 - }, -/obj/effect/landmark{ - name = "JoinLateCryo" - }, -/obj/machinery/atmospherics/unary/vent_scrubber/on{ - dir = 1 - }, -/turf/simulated/floor/tiled/techfloor, -/area/stellardelight/deck3/cryo) -"Aw" = ( -/obj/machinery/camera/network/command{ - dir = 9 - }, -/turf/simulated/floor/tiled/eris/dark/gray_platform, -/area/stellardelight/deck3/commandhall) -"Ax" = ( -/obj/machinery/holoplant, -/turf/simulated/floor/bluegrid, -/area/ai_cyborg_station) -"Ay" = ( -/obj/structure/table/steel, -/obj/random/maintenance/engineering, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/forestarrooma) -"Az" = ( -/obj/item/weapon/camera_assembly, -/obj/item/weapon/camera_assembly, -/obj/item/weapon/camera_assembly, -/obj/item/weapon/camera_assembly, -/obj/item/weapon/camera_assembly, -/obj/item/weapon/camera_assembly, -/obj/structure/closet/crate{ - name = "Camera Assembly Crate" - }, -/obj/machinery/light{ - dir = 8 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_cyborg_station) -"AD" = ( -/obj/structure/handrail, -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 10 - }, -/obj/machinery/embedded_controller/radio/airlock/docking_port{ - frequency = 1380; - id_tag = "sdboat_docker"; - pixel_x = 5; - pixel_y = 25 - }, -/obj/machinery/airlock_sensor{ - dir = 8; - frequency = 1380; - id_tag = null; - pixel_x = 25; - pixel_y = 2 - }, -/obj/effect/map_helper/airlock/sensor/chamber_sensor, -/obj/effect/floor_decal/fancy_shuttle{ - fancy_shuttle_tag = "sdboat" - }, -/turf/simulated/floor/tiled, -/area/shuttle/sdboat/aft{ - base_turf = /turf/simulated/floor/reinforced/airless - }) -"AE" = ( -/obj/structure/table/glass, -/obj/machinery/atmospherics/unary/vent_pump/on{ - dir = 1 - }, -/turf/simulated/floor/tiled/eris/white/cargo, -/area/crew_quarters/heads/cmo) -"AH" = ( -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 4 - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardcent) -"AK" = ( -/obj/random/trash_pile, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardaft) -"AP" = ( -/obj/machinery/power/apc/angled{ - dir = 4 - }, -/obj/structure/cable/blue{ - icon_state = "0-2" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/turf/simulated/floor/tiled, -/area/crew_quarters/heads/chief) -"AQ" = ( -/obj/structure/closet/crate, -/obj/random/contraband, -/obj/random/contraband, -/obj/random/maintenance, -/obj/random/maintenance, -/obj/random/maintenance, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/forestarrooma) -"AS" = ( -/obj/machinery/computer/telecomms/server{ - dir = 8; - network = "tcommsat" - }, -/obj/machinery/alarm/angled{ - dir = 8 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/tcommsat/computer) -"AT" = ( -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/door/firedoor/glass, -/obj/machinery/door/airlock/angled_bay/double{ - name = "maintenance access"; - stripe_color = "#454545" - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardaft) -"AU" = ( -/obj/machinery/light/small, -/obj/machinery/atmospherics/unary/vent_scrubber/on{ - dir = 1 - }, -/obj/structure/bed/chair{ - dir = 8 - }, -/turf/simulated/floor, -/area/stellardelight/deck2/central) -"AX" = ( -/obj/structure/table/reinforced, -/obj/machinery/recharger{ - pixel_y = 6 - }, -/turf/simulated/floor/tiled, -/area/crew_quarters/heads/hop) -"AY" = ( -/obj/machinery/door/firedoor/glass/hidden/steel{ - dir = 8 - }, -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 4 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"AZ" = ( -/obj/machinery/porta_turret, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_upload) -"Ba" = ( -/obj/structure/closet/walllocker_double/east, -/obj/item/weapon/book/manual/command_guide, -/obj/item/weapon/book/manual/standard_operating_procedure, -/obj/item/weapon/book/manual/security_space_law, -/turf/simulated/floor/tiled/dark, -/area/crew_quarters/heads/hos) -"Bb" = ( -/obj/structure/bed/chair/bay/comfy/blue{ - dir = 1 - }, -/obj/structure/panic_button/small{ - pixel_x = -29; - pixel_y = 30 - }, -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/obj/effect/floor_decal/fancy_shuttle{ - fancy_shuttle_tag = "sdboat" - }, -/turf/simulated/floor/tiled, -/area/shuttle/sdboat/fore{ - base_turf = /turf/simulated/floor/reinforced/airless - }) -"Bd" = ( -/obj/machinery/alarm/angled{ - dir = 8 - }, -/obj/structure/bookcase, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/turf/simulated/floor/wood, -/area/stellardelight/deck3/readingroom) -"Be" = ( -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 4 - }, -/obj/effect/floor_decal/steeldecal/steel_decals_central5{ - dir = 4 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"Bg" = ( -/obj/machinery/door/firedoor/glass, -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/machinery/door/airlock/angled_bay/hatch{ - dir = 4; - name = "maintenance access"; - stripe_color = "#454545" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/turf/simulated/floor/tiled/steel_ridged, -/area/maintenance/stellardelight/deck3/starboardaft) -"Bj" = ( -/obj/machinery/message_server, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_server_room) -"Bk" = ( -/obj/machinery/computer/aiupload{ - dir = 4 - }, -/obj/machinery/light{ - dir = 8 - }, -/obj/machinery/atmospherics/unary/vent_scrubber/on{ - dir = 4 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_upload) -"Bl" = ( -/obj/machinery/atmospherics/unary/vent_pump/high_volume{ - dir = 8; - id_tag = null - }, -/obj/machinery/embedded_controller/radio/airlock/airlock_controller{ - frequency = 1380; - id_tag = "tcommsairlock"; - pixel_y = 24; - req_one_access = list(61) - }, -/obj/effect/map_helper/airlock/atmos/chamber_pump, -/obj/effect/map_helper/airlock/sensor/chamber_sensor, -/obj/machinery/airlock_sensor{ - dir = 8; - pixel_x = 25 - }, -/turf/simulated/floor, -/area/tcommsat/computer) -"Bm" = ( -/obj/structure/closet/emcloset, -/obj/random/drinkbottle, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portaft) -"Bn" = ( -/obj/effect/landmark{ - name = "maint_pred" - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/aftstarroom) -"Bp" = ( -/turf/simulated/wall/bay/r_wall/steel, -/area/maintenance/stellardelight/substation/command) -"Bq" = ( -/obj/machinery/status_display{ - pixel_y = 32 - }, -/turf/simulated/floor/tiled/dark, -/area/lawoffice) -"Br" = ( -/obj/structure/table/alien{ - name = "fancy table" - }, -/obj/machinery/photocopier/faxmachine{ - department = "Research Director's Office" - }, -/turf/simulated/floor/tiled/techfloor, -/area/crew_quarters/heads/hor) -"Bs" = ( -/obj/machinery/computer/borgupload{ - dir = 8 - }, -/obj/machinery/light{ - dir = 4 - }, -/obj/machinery/atmospherics/unary/vent_pump/on{ - dir = 8 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_upload) -"Bt" = ( -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/turf/simulated/floor/wood, -/area/stellardelight/deck3/cafe) -"Bz" = ( -/obj/machinery/door/firedoor/glass, -/obj/structure/cable/blue{ - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/door/airlock/angled_bay/standard/color{ - dir = 4; - door_color = "#323d80"; - fill_color = "#313866"; - id_tag = "cmodoor"; - name = "Chief Medical Officer"; - req_access = list(40); - stripe_color = "#ffffff" - }, -/turf/simulated/floor/tiled/steel_ridged, -/area/crew_quarters/heads/cmo) -"BA" = ( -/obj/machinery/door/firedoor/glass, -/obj/machinery/door/airlock/angled_bay/external/glass{ - dir = 4; - frequency = 1380; - id_tag = null; - locked = 1; - name = "Docking Port Airlock" - }, -/obj/effect/map_helper/airlock/door/ext_door, -/obj/machinery/access_button{ - command = "cycle_exterior"; - dir = 8; - frequency = 1380; - master_tag = "sd_port_landing"; - pixel_y = 32; - req_one_access = list(13) - }, -/obj/structure/cable{ - icon_state = "4-8" - }, -/turf/simulated/floor/tiled/steel_ridged, -/area/stellardelight/deck3/portdock) -"BB" = ( -/obj/machinery/door/firedoor/glass, -/obj/structure/window/bay/reinforced, -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 1 - }, -/obj/structure/low_wall/bay/reinforced/steel, -/turf/simulated/floor, -/area/stellardelight/deck3/aft) -"BC" = ( -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 6 - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 6 - }, -/obj/structure/cable/green{ - icon_state = "2-4" - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"BF" = ( -/obj/structure/cable/blue{ - icon_state = "1-2" - }, -/obj/machinery/door/firedoor/glass, -/obj/machinery/door/airlock/angled_bay/hatch{ - door_color = "#e6ab22"; - name = "Command Substation"; - req_one_access = list(10); - stripe_color = "#e6ab22" - }, -/turf/simulated/floor/tiled/steel_ridged, -/area/maintenance/stellardelight/substation/command) -"BG" = ( -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/obj/structure/table/rack, -/obj/random/maintenance/clean, -/obj/random/maintenance, -/obj/random/maintenance/engineering, -/obj/random/maintenance/research, -/obj/random/maintenance/research, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardaft) -"BH" = ( -/turf/simulated/floor/carpet, -/area/crew_quarters/heads/hos) -"BJ" = ( -/obj/machinery/door/firedoor/glass, -/obj/machinery/door/airlock/angled_bay/double/glass{ - name = "glass airlock" - }, -/turf/simulated/floor/tiled/steel_ridged, -/area/stellardelight/deck3/starboarddock) -"BK" = ( -/obj/structure/cable/blue{ - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/turf/simulated/floor/tiled/eris/dark/gray_platform, -/area/stellardelight/deck3/commandhall) -"BL" = ( -/obj/machinery/atmospherics/unary/vent_scrubber/on{ - dir = 1 - }, -/turf/simulated/open, -/area/stellardelight/deck2/port) -"BM" = ( -/obj/structure/sign/painting/library_secure{ - pixel_x = -30 - }, -/turf/simulated/floor/carpet/oracarpet, -/area/crew_quarters/heads/chief) -"BQ" = ( -/obj/structure/cable/blue{ - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 9 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/light_switch{ - dir = 4; - pixel_x = -24; - pixel_y = 24 - }, -/turf/simulated/floor/tiled/techfloor, -/area/crew_quarters/heads/hor) -"BR" = ( -/obj/machinery/atmospherics/unary/vent_pump/high_volume{ - dir = 1; - frequency = 1380; - id_tag = null - }, -/obj/machinery/embedded_controller/radio/airlock/docking_port_multi{ - dir = 4; - frequency = 1380; - id_tag = "sd_escape_center_left"; - master_tag = "escape_dock"; - pixel_x = -24; - req_one_access = list(13); - tag_airpump = null; - tag_chamber_sensor = null; - tag_exterior_door = null; - tag_interior_door = null - }, -/obj/machinery/airlock_sensor{ - dir = 8; - frequency = 1380; - id_tag = null; - pixel_x = 25 - }, -/obj/effect/map_helper/airlock/atmos/chamber_pump, -/obj/effect/map_helper/airlock/sensor/chamber_sensor, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"BV" = ( -/obj/structure/bed/chair{ - dir = 8 - }, -/obj/machinery/alarm/angled{ - dir = 8 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/portdock) -"BW" = ( -/obj/machinery/power/terminal{ - dir = 1 - }, -/obj/structure/cable{ - icon_state = "0-4" - }, -/obj/effect/floor_decal/fancy_shuttle{ - fancy_shuttle_tag = "sdboat" - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/fuel{ - dir = 1 - }, -/turf/simulated/floor/tiled, -/area/shuttle/sdboat/aft{ - base_turf = /turf/simulated/floor/reinforced/airless - }) -"BY" = ( -/obj/machinery/newscaster{ - layer = 3.3; - pixel_x = -27 - }, -/turf/simulated/floor/carpet/blue2, -/area/lawoffice) -"BZ" = ( -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/door/firedoor/glass, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portaft) -"Cb" = ( -/obj/machinery/atmospherics/unary/vent_pump/on{ - dir = 4 - }, -/obj/effect/landmark/vermin, -/turf/simulated/open, -/area/stellardelight/deck2/fore) -"Cc" = ( -/obj/machinery/door/firedoor/glass, -/obj/machinery/door/airlock/angled_bay/hatch{ - dir = 4; - name = "maintenance access"; - stripe_color = "#454545" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 4 - }, -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/turf/simulated/floor/tiled/steel_ridged, -/area/stellardelight/deck3/aft) -"Cd" = ( -/obj/structure/table/woodentable, -/obj/machinery/atmospherics/unary/vent_pump/on{ - dir = 1 - }, -/turf/simulated/floor/wood, -/area/stellardelight/deck3/cafe) -"Ce" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/turf/simulated/floor/carpet/turcarpet, -/area/ai) -"Cf" = ( -/obj/machinery/door/firedoor/glass, -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/obj/machinery/door/airlock/angled_bay/hatch{ - dir = 4; - name = "maintenance access"; - stripe_color = "#454545" - }, -/turf/simulated/floor/tiled/steel_ridged, -/area/maintenance/stellardelight/deck3/portcent) -"Cn" = ( -/obj/structure/cable/blue{ - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 5 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 5 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai) -"Co" = ( -/obj/machinery/button/remote/airlock{ - id = "readingroom2"; - name = "Room 2 Lock"; - pixel_y = 24; - specialfunctions = 4 - }, -/obj/machinery/button/remote/blast_door{ - id = "readingroom2"; - name = "Window Lockdown"; - pixel_x = -10; - pixel_y = 24 - }, -/turf/simulated/floor/carpet, -/area/stellardelight/deck3/readingroom) -"Cp" = ( -/obj/machinery/door/firedoor/glass, -/turf/simulated/floor, -/area/stellardelight/deck2/fore) -"Cu" = ( -/obj/machinery/power/apc/angled{ - dir = 1 - }, -/obj/structure/cable/green{ - icon_state = "0-8" - }, -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 1 - }, -/obj/random/vendorfood, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"Cw" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 10 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 10 - }, -/obj/structure/cable/blue{ - icon_state = "2-8" - }, -/obj/structure/cable/blue{ - icon_state = "2-4" - }, -/turf/simulated/open, -/area/stellardelight/deck2/fore) -"Cx" = ( -/obj/effect/shuttle_landmark{ - base_area = /area/stellardelight/deck3/exterior; - base_turf = /turf/simulated/floor/reinforced/airless; - docking_controller = "escape_dock"; - landmark_tag = "escape_station"; - name = "Ship Arrivals" - }, -/turf/simulated/floor/reinforced/airless, -/area/stellardelight/deck3/exterior) -"Cy" = ( -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/obj/structure/cable/green{ - icon_state = "1-8" - }, -/obj/structure/cable/green{ - icon_state = "2-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/manifold4w/hidden/supply, -/obj/machinery/atmospherics/pipe/manifold4w/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/manifold/hidden{ - dir = 4 - }, -/obj/effect/floor_decal/arrivals/right, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"Cz" = ( -/obj/structure/lattice, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/manifold/hidden/supply, -/turf/simulated/open, -/area/stellardelight/deck2/port) -"CA" = ( -/obj/machinery/door/firedoor/glass, -/obj/structure/window/bay/reinforced, -/obj/machinery/door/blast/angled/open{ - dir = 2; - id = "barlockdown" - }, -/obj/structure/low_wall/bay/reinforced/steel, -/turf/simulated/floor, -/area/crew_quarters/bar) -"CC" = ( -/turf/simulated/wall/bay/r_wall/steel, -/area/stellardelight/deck3/clownmimeoffice) -"CD" = ( -/obj/machinery/atmospherics/unary/vent_pump/high_volume{ - dir = 8; - frequency = 1380; - id_tag = null - }, -/obj/machinery/embedded_controller/radio/airlock/docking_port_multi{ - frequency = 1380; - id_tag = "sd_escape_port"; - master_tag = "escape_dock"; - pixel_y = 30; - req_one_access = list(13); - tag_airpump = null; - tag_chamber_sensor = null; - tag_exterior_door = null; - tag_interior_door = null - }, -/obj/machinery/airlock_sensor{ - frequency = 1380; - id_tag = null; - pixel_y = -25 - }, -/obj/effect/map_helper/airlock/atmos/chamber_pump, -/obj/effect/map_helper/airlock/sensor/chamber_sensor, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/portdock) -"CG" = ( -/obj/machinery/blackbox_recorder, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_server_room) -"CH" = ( -/obj/machinery/light/small{ - dir = 8 - }, -/obj/structure/cable{ - icon_state = "4-8" - }, -/turf/simulated/floor, -/area/stellardelight/deck2/starboard) -"CJ" = ( -/obj/structure/lattice, -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/turf/simulated/open, -/area/stellardelight/deck2/starboard) -"CK" = ( -/obj/machinery/door/firedoor/glass, -/obj/structure/window/bay/reinforced, -/obj/structure/low_wall/bay/reinforced/steel, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardaft) -"CO" = ( -/obj/effect/overmap/visitable/ship/stellar_delight, -/turf/space, -/area/space) -"CP" = ( -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 4 - }, -/obj/effect/floor_decal/arrivals/right, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"CR" = ( -/obj/structure/bed/chair{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 6 - }, -/obj/machinery/newscaster{ - pixel_y = 28 - }, -/turf/simulated/floor/carpet, -/area/crew_quarters/heads/hop) -"CS" = ( -/obj/structure/lattice, -/turf/simulated/open, -/area/stellardelight/deck2/port) -"CT" = ( -/obj/structure/cable/blue{ - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ - dir = 1 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_cyborg_station) -"CU" = ( -/obj/machinery/door/firedoor/glass, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/turf/simulated/floor, -/area/stellardelight/deck2/fore) -"CV" = ( -/obj/structure/bed/chair, -/obj/structure/sign/painting/public{ - pixel_y = 30 - }, -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 1 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"CY" = ( -/obj/effect/floor_decal/techfloor{ - dir = 8 - }, -/obj/effect/landmark{ - name = "JoinLateCryo" - }, -/turf/simulated/floor/tiled/techfloor, -/area/stellardelight/deck3/cryo) -"Dd" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/turf/simulated/open, -/area/crew_quarters/bar) -"De" = ( -/obj/structure/cable{ - icon_state = "2-4" - }, -/turf/simulated/wall/bay/r_wall/blue, -/area/ai_cyborg_station) -"Df" = ( -/obj/machinery/door/firedoor/glass, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/structure/cable/blue{ - icon_state = "1-2" - }, -/turf/simulated/floor, -/area/stellardelight/deck2/fore) -"Dh" = ( -/obj/machinery/computer/message_monitor{ - dir = 1 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_server_room) -"Di" = ( -/obj/effect/floor_decal/industrial/warning{ - dir = 1 - }, -/obj/structure/cable/green{ - icon_state = "2-4" - }, -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/turf/simulated/floor/airless, -/area/stellardelight/deck3/exterior) -"Dk" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/structure/reagent_dispensers/watertank, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardaft) -"Dn" = ( -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 4 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/starboarddock) -"Dp" = ( -/obj/random/trash_pile, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portfore) -"Ds" = ( -/obj/machinery/hologram/holopad, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_cyborg_station) -"Du" = ( -/obj/machinery/vending/wardrobe/clowndrobe, -/turf/simulated/floor/carpet/gaycarpet, -/area/stellardelight/deck3/clownmimeoffice) -"Dw" = ( -/obj/machinery/hologram/holopad, -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ - dir = 1 - }, -/turf/simulated/floor/carpet/geo, -/area/ai) -"Dy" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/black, -/turf/simulated/floor/bluegrid{ - name = "Mainframe Base"; - nitrogen = 100; - oxygen = 0; - temperature = 80 - }, -/area/tcommsat/chamber) -"DC" = ( -/turf/simulated/wall/bay/steel, -/area/maintenance/stellardelight/deck3/foreportroomb) -"DD" = ( -/obj/machinery/door/firedoor/glass, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/door/airlock/angled_bay/standard/glass{ - name = "maintenance access" - }, -/turf/simulated/floor/tiled/steel_ridged, -/area/stellardelight/deck2/port) -"DE" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardcent) -"DH" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 5 - }, -/obj/structure/cable/green{ - icon_state = "1-4" - }, -/turf/simulated/open, -/area/crew_quarters/bar) -"DI" = ( -/obj/machinery/power/apc/angled{ - dir = 8 - }, -/obj/structure/cable/blue{ - icon_state = "0-2" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/turf/simulated/floor/tiled/techfloor, -/area/crew_quarters/heads/hor) -"DL" = ( -/obj/structure/cable/blue{ - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_server_room) -"DM" = ( -/obj/structure/table/steel, -/turf/simulated/floor/tiled/techfloor/grid, -/area/maintenance/stellardelight/deck3/foreportrooma) -"DN" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 9 - }, -/turf/simulated/floor/tiled, -/area/crew_quarters/heads/hop) -"DO" = ( -/obj/structure/closet/hydrant{ - pixel_y = 28 - }, -/obj/structure/dogbed{ - name = "catslug bed" - }, -/mob/living/simple_mob/vore/alienanimals/catslug/tulidaan, -/turf/simulated/floor/wood, -/area/stellardelight/deck3/readingroom) -"DP" = ( -/obj/effect/floor_decal/industrial/warning/corner, -/obj/structure/cable/blue{ - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/tcommsat/computer) -"DQ" = ( -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardfore) -"DT" = ( -/obj/structure/railing/grey, -/obj/structure/railing/grey{ - dir = 4 - }, -/turf/simulated/open, -/area/maintenance/stellardelight/deck3/portaft) -"DV" = ( -/obj/structure/cable/blue{ - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/turf/simulated/wall/bay/blue, -/area/lawoffice) -"DW" = ( -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/machinery/button/remote/blast_door{ - dir = 8; - id = "clownmimeoffice"; - name = "Window Lockdown"; - pixel_x = 23; - pixel_y = 7 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 10 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 10 - }, -/turf/simulated/floor/carpet/gaycarpet, -/area/stellardelight/deck3/clownmimeoffice) -"DY" = ( -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/foreportrooma) -"DZ" = ( -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ - dir = 4 - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardcent) -"Ec" = ( -/turf/simulated/wall/bay/steel, -/area/stellardelight/deck3/clownmimeoffice) -"Ed" = ( -/turf/simulated/wall/bay/r_wall/steel, -/area/stellardelight/deck3/aft) -"Ee" = ( -/obj/machinery/atmospherics/pipe/manifold/hidden/black{ - dir = 1 - }, -/turf/simulated/floor/bluegrid{ - name = "Mainframe Base"; - nitrogen = 100; - oxygen = 0; - temperature = 80 - }, -/area/tcommsat/chamber) -"Ef" = ( -/turf/simulated/floor/tiled/techfloor/grid, -/area/maintenance/stellardelight/deck3/forestarroomb) -"Eg" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 9 - }, -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/obj/machinery/camera/network/halls{ - dir = 1 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/portdock) -"Eh" = ( -/obj/effect/floor_decal/techfloor{ - dir = 4 - }, -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 10 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 9 - }, -/turf/simulated/floor/tiled/techfloor, -/area/stellardelight/deck3/cryo) -"Ei" = ( -/obj/structure/cable/green{ - icon_state = "1-4" - }, -/obj/random/trash_pile, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portcent) -"El" = ( -/obj/effect/landmark{ - name = "carpspawn" - }, -/turf/space, -/area/space) -"En" = ( -/obj/effect/floor_decal/industrial/warning/corner{ - dir = 1 - }, -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/turf/simulated/floor/airless, -/area/stellardelight/deck3/exterior) -"Es" = ( -/obj/effect/shuttle_landmark/premade/sd/deck3/portlanding, -/turf/space, -/area/space) -"Et" = ( -/obj/structure/closet/secure_closet/hos, -/obj/item/device/radio/intercom{ - dir = 1; - name = "Station Intercom (General)"; - pixel_y = 24 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/turf/simulated/floor/tiled/dark, -/area/crew_quarters/heads/hos) -"Eu" = ( -/turf/simulated/wall/bay/r_wall/blue, -/area/stellardelight/deck2/port) -"Ev" = ( -/obj/structure/cable/blue{ - icon_state = "1-4" - }, -/obj/structure/cable/blue{ - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardcent) -"Ex" = ( -/obj/structure/bed/chair/bay/comfy/blue{ - dir = 1 - }, -/obj/effect/floor_decal/fancy_shuttle{ - fancy_shuttle_tag = "sdboat" - }, -/turf/simulated/floor/tiled, -/area/shuttle/sdboat/fore{ - base_turf = /turf/simulated/floor/reinforced/airless - }) -"EE" = ( -/obj/structure/table/rack{ - dir = 8; - layer = 2.9 - }, -/obj/item/weapon/rig/ce/equipped, -/obj/item/clothing/mask/breath, -/obj/item/clothing/shoes/magboots/adv, -/turf/simulated/floor/tiled, -/area/crew_quarters/heads/chief) -"EF" = ( -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 4 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"EH" = ( -/obj/structure/table/steel, -/turf/simulated/floor/tiled/techfloor/grid, -/area/maintenance/stellardelight/deck3/foreportroomb) -"EI" = ( -/obj/machinery/atmospherics/unary/vent_pump/high_volume{ - dir = 8; - frequency = 1379; - id_tag = "portmaint_airpump" - }, -/turf/simulated/floor/airless, -/area/maintenance/stellardelight/deck3/portcent) -"EJ" = ( -/turf/simulated/wall/bay/r_wall/blue, -/area/crew_quarters/heads/cmo) -"EL" = ( -/obj/machinery/door/airlock/angled_bay/hatch{ - frequency = null; - id_tag = null; - locked = 1; - name = "Telecoms Server Access"; - req_access = list(61); - stripe_color = "#ffd863" - }, -/obj/machinery/door/firedoor/glass, -/obj/structure/cable/blue{ - icon_state = "1-2" - }, -/obj/machinery/access_button{ - command = "cycle_exterior"; - dir = 1; - frequency = 1380; - master_tag = "tcommsairlock"; - pixel_x = -32; - req_one_access = list(61) - }, -/obj/effect/map_helper/airlock/door/ext_door, -/turf/simulated/floor/tiled/steel_ridged, -/area/tcommsat/computer) -"EN" = ( -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 4 - }, -/obj/effect/floor_decal/steeldecal/steel_decals_central5{ - dir = 4 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"EO" = ( -/obj/structure/sign/nanotrasen{ - pixel_y = 30 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 6 - }, -/turf/simulated/floor/tiled/dark, -/area/lawoffice) -"ER" = ( -/turf/simulated/floor/tiled/steel_grid, -/area/stellardelight/deck3/aft) -"ET" = ( -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/simple/hidden, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardaft) -"EU" = ( -/obj/structure/cable/blue{ - icon_state = "2-8" - }, -/turf/simulated/floor/airless, -/area/stellardelight/deck3/exterior) -"EV" = ( -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/obj/structure/cable/green{ - icon_state = "2-8" - }, -/turf/simulated/floor/airless, -/area/stellardelight/deck3/exterior) -"EW" = ( -/obj/structure/cable/blue{ - icon_state = "1-4" - }, -/obj/structure/cable/blue{ - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/supply, -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers, -/turf/simulated/floor/tiled/eris/dark/gray_platform, -/area/stellardelight/deck3/commandhall) -"EX" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/fuel{ - dir = 10 - }, -/turf/simulated/wall/fancy_shuttle{ - fancy_shuttle_tag = "sdboat" - }, -/area/shuttle/sdboat/aft{ - base_turf = /turf/simulated/floor/reinforced/airless - }) -"EY" = ( -/obj/structure/table/reinforced, -/obj/machinery/computer/skills{ - dir = 8; - pixel_y = 6 - }, -/turf/simulated/floor/carpet/oracarpet, -/area/crew_quarters/heads/chief) -"EZ" = ( -/turf/simulated/wall/bay/r_wall/steel, -/area/maintenance/stellardelight/deck3/forestarroomb) -"Fb" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/turf/simulated/open, -/area/crew_quarters/bar) -"Fc" = ( -/obj/structure/closet/walllocker_double/west, -/obj/item/device/taperecorder{ - pixel_x = -3 - }, -/obj/item/weapon/circuitboard/aicore{ - pixel_x = -2; - pixel_y = 4 - }, -/obj/item/weapon/circuitboard/teleporter, -/turf/simulated/floor/tiled/techfloor, -/area/crew_quarters/heads/hor) -"Fe" = ( -/obj/machinery/hologram/holopad, -/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 8 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_upload) -"Ff" = ( -/obj/structure/bed/chair, -/obj/machinery/atmospherics/unary/vent_scrubber/on, -/obj/machinery/alarm/angled, -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 1 - }, -/obj/effect/landmark/vermin, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"Fg" = ( -/obj/machinery/door/firedoor/glass, -/obj/structure/cable/blue{ - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/door/airlock/angled_bay/standard/color{ - dir = 4; - door_color = "#323d80"; - fill_color = "#854a44"; - id_tag = "hosdoor"; - name = "Head of Security"; - req_access = list(58); - stripe_color = "#d27428" - }, -/turf/simulated/floor/tiled/steel_ridged, -/area/crew_quarters/heads/hos) -"Fh" = ( -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_server_room) -"Fj" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/supply, -/obj/structure/cable/blue{ - icon_state = "4-8" - }, -/turf/simulated/floor, -/area/stellardelight/deck2/fore) -"Fm" = ( -/obj/machinery/atmospherics/unary/vent_pump/high_volume{ - dir = 8; - frequency = 1379; - id_tag = "portmaint_airpump" - }, -/obj/machinery/camera/network/civilian, -/turf/simulated/floor/airless, -/area/maintenance/stellardelight/deck3/portcent) -"Fr" = ( -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/turf/simulated/floor/tiled/monotile, -/area/stellardelight/deck3/commandhall) -"Ft" = ( -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ - dir = 8 - }, -/turf/simulated/floor, -/area/stellardelight/deck2/port) -"Fv" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/turf/simulated/floor/tiled/techfloor/grid, -/area/tcommsat/computer) -"Fy" = ( -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/turf/simulated/floor/airless, -/area/maintenance/stellardelight/deck3/portcent) -"FC" = ( -/obj/machinery/alarm/angled{ - dir = 8 - }, -/obj/structure/cable/blue{ - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/turf/simulated/floor/tiled/dark, -/area/lawoffice) -"FD" = ( -/obj/machinery/door/firedoor/glass, -/obj/structure/window/bay/reinforced, -/obj/structure/low_wall/bay/reinforced/steel, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/forestarroomb) -"FE" = ( -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/forestarroomb) -"FG" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 5 - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portaft) -"FH" = ( -/obj/machinery/power/pointdefense{ - id_tag = "sd_pd" - }, -/obj/effect/floor_decal/industrial/warning/full, -/obj/structure/cable/green{ - icon_state = "0-2" - }, -/turf/simulated/floor/airless, -/area/stellardelight/deck3/exterior) -"FI" = ( -/obj/effect/floor_decal/industrial/warning/corner{ - dir = 1 - }, -/obj/structure/cable/green{ - icon_state = "1-8" - }, -/turf/simulated/floor/airless, -/area/stellardelight/deck3/exterior) -"FL" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/structure/cable/blue{ - icon_state = "1-2" - }, -/turf/simulated/open, -/area/stellardelight/deck2/starboard) -"FM" = ( -/obj/structure/bed/chair/comfy/brown{ - dir = 1 - }, -/turf/simulated/floor/tiled/eris/white/cargo, -/area/crew_quarters/heads/cmo) -"FO" = ( -/obj/structure/bed/psych{ - name = "couch" - }, -/turf/simulated/floor/tiled/eris/white/cargo, -/area/crew_quarters/heads/cmo) -"FR" = ( -/obj/effect/floor_decal/techfloor/orange, -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/turf/simulated/floor/tiled/techfloor, -/area/stellardelight/deck3/transitgateway) -"FS" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/universal{ - dir = 8 - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portaft) -"FU" = ( -/obj/structure/cable/blue{ - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_cyborg_station) -"FW" = ( -/obj/machinery/power/apc/angled{ - dir = 8; - name = "night shift APC"; - nightshift_setting = 2 - }, -/obj/structure/cable/green{ - icon_state = "0-2" - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/foreportrooma) -"FY" = ( -/obj/structure/closet, -/obj/random/maintenance, -/obj/random/maintenance, -/obj/random/maintenance, -/obj/random/maintenance, -/obj/random/maintenance, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/foreportrooma) -"Ga" = ( -/obj/structure/cable/cyan{ - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/turf/simulated/floor/bluegrid, -/area/ai) -"Gc" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 10 - }, -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardaft) -"Ge" = ( -/obj/structure/table/standard, -/obj/item/weapon/aiModule/nanotrasen, -/obj/machinery/camera/network/command, -/obj/machinery/atmospherics/unary/vent_scrubber/on, -/turf/simulated/floor/bluegrid, -/area/ai_cyborg_station) -"Gf" = ( -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/obj/machinery/atmospherics/unary/vent_scrubber/on, -/obj/machinery/alarm/angled, -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 1 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"Gg" = ( -/obj/structure/sink{ - dir = 8; - pixel_x = -12; - pixel_y = -3 - }, -/turf/simulated/floor/lino, -/area/stellardelight/deck3/cafe) -"Gh" = ( -/obj/structure/cable/blue{ - icon_state = "1-2" - }, -/obj/structure/cable/blue{ - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_upload) -"Gi" = ( -/obj/structure/table/rack, -/obj/item/weapon/rig/hazmat/equipped, -/obj/machinery/light, -/turf/simulated/floor/tiled/techfloor, -/area/crew_quarters/heads/hor) -"Gj" = ( -/turf/simulated/floor/tiled/monotile, -/area/stellardelight/deck3/commandhall) -"Gk" = ( -/turf/simulated/wall/bay/r_wall/blue, -/area/maintenance/stellardelight/deck3/portaft) -"Gl" = ( -/obj/structure/bed/chair/office/dark{ - dir = 8 - }, -/obj/effect/landmark/start/cmo, -/turf/simulated/floor/carpet/tealcarpet, -/area/crew_quarters/heads/cmo) -"Gm" = ( -/obj/structure/cable/blue{ - icon_state = "0-2" - }, -/obj/structure/cable/blue, -/obj/machinery/power/smes/buildable{ - RCon_tag = "Substation - Command"; - output_attempt = 0 - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/substation/command) -"Go" = ( -/obj/structure/cable/green{ - icon_state = "2-4" - }, -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/turf/simulated/floor/airless, -/area/stellardelight/deck3/exterior) -"Gq" = ( -/obj/structure/cable{ - icon_state = "2-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 10 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 10 - }, -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 10 - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardaft) -"Gv" = ( -/obj/structure/sign/deck3{ - pixel_x = -32 - }, -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 8 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"GB" = ( -/obj/item/weapon/reagent_containers/food/drinks/shaker, -/obj/item/weapon/reagent_containers/glass/rag, -/obj/structure/table/rack, -/obj/random/donkpocketbox, -/turf/simulated/floor/tiled/techfloor/grid, -/area/maintenance/stellardelight/deck3/forestarroomb) -"GD" = ( -/obj/structure/cable/blue{ - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 5 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/tcommsat/computer) -"GE" = ( -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/door/firedoor/glass, -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 1 - }, -/turf/simulated/floor/tiled/steel_ridged, -/area/stellardelight/deck3/aft) -"GF" = ( -/obj/structure/cable/green{ - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/hidden, -/turf/simulated/floor/airless, -/area/maintenance/stellardelight/deck3/portcent) -"GH" = ( -/obj/item/device/radio/intercom{ - dir = 8; - pixel_x = -24 - }, -/turf/simulated/floor/wood, -/area/stellardelight/deck3/readingroom) -"GJ" = ( -/obj/structure/cable/blue{ - icon_state = "1-4" - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/forestarrooma) -"GP" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/turf/simulated/floor/bluegrid, -/area/ai) -"GQ" = ( -/turf/simulated/wall/bay/red, -/area/crew_quarters/heads/hos) -"GR" = ( -/obj/machinery/requests_console/preset/cmo{ - pixel_x = 30 - }, -/turf/simulated/floor/carpet/tealcarpet, -/area/crew_quarters/heads/cmo) -"GS" = ( -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/door/firedoor/glass, -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 4 - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portcent) -"GT" = ( -/obj/effect/floor_decal/industrial/warning{ - dir = 8 - }, -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/obj/structure/cable/green{ - icon_state = "1-4" - }, -/turf/simulated/floor/airless, -/area/stellardelight/deck3/exterior) -"GU" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_server_room) -"GV" = ( -/obj/structure/closet/walllocker_double/south{ - desc = "A wall mounted storage cabinet marked with a cross and warning icon. This seems to contain an assortment of emergency supplies."; - name = "Emergency Cabinet" - }, -/obj/structure/lattice, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/turf/simulated/open, -/area/stellardelight/deck2/port) -"GW" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/book/manual/supermatter_engine, -/obj/item/device/radio{ - pixel_x = -4 - }, -/obj/item/device/megaphone, -/obj/machinery/light, -/turf/simulated/floor/tiled, -/area/crew_quarters/heads/chief) -"Ha" = ( -/obj/structure/bed/double/padded, -/obj/item/weapon/bedsheet/cedouble, -/obj/structure/curtain/black{ - color = "#945112" - }, -/obj/effect/landmark/start/ce, -/turf/simulated/floor/carpet/oracarpet, -/area/crew_quarters/heads/chief) -"Hc" = ( -/obj/structure/cable/blue{ - icon_state = "1-2" - }, -/obj/structure/cable/blue, -/obj/machinery/power/sensor{ - name = "Powernet Sensor - AI/Telecomms Subgrid"; - name_tag = "AI/Telecomms Subgrid" - }, -/obj/machinery/power/apc/angled{ - dir = 8 - }, -/turf/simulated/floor, -/area/ai_cyborg_station) -"Hd" = ( -/obj/machinery/atmospherics/unary/vent_scrubber/on{ - dir = 4 - }, -/obj/structure/closet/firecloset, -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 8 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"He" = ( -/obj/machinery/door/firedoor/glass, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/turf/simulated/floor, -/area/stellardelight/deck2/central) -"Hf" = ( -/obj/machinery/atmospherics/unary/vent_pump/on, -/turf/simulated/open, -/area/stellardelight/deck2/fore) -"Hg" = ( -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 8 - }, -/obj/structure/sign/vacuum{ - pixel_x = -32; - plane = -34 - }, -/obj/structure/cable{ - icon_state = "1-2" - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/portdock) -"Hh" = ( -/obj/structure/cable/blue{ - icon_state = "4-8" - }, -/obj/machinery/airlock_sensor{ - dir = 4; - id_tag = "starmaint_sensor"; - pixel_x = -24; - req_access = list(13) - }, -/turf/simulated/floor/airless, -/area/maintenance/stellardelight/deck3/starboardcent) -"Hi" = ( -/obj/machinery/atmospherics/unary/vent_pump/on{ - dir = 8 - }, -/obj/item/device/radio/intercom{ - dir = 4; - pixel_x = 24 - }, -/obj/structure/closet/emergsuit_wall{ - pixel_y = 29 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"Hk" = ( -/obj/machinery/alarm/angled{ - dir = 8 - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portfore) -"Hm" = ( -/obj/structure/closet/emcloset, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portcent) -"Ho" = ( -/obj/structure/table/steel, -/obj/random/contraband, -/obj/random/maintenance, -/obj/random/maintenance, -/obj/random/maintenance/clean, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/aftstarroom) -"Hq" = ( -/obj/structure/sign/warning/falling{ - pixel_y = 32 - }, -/turf/simulated/open, -/area/stellardelight/deck2/fore) -"Hs" = ( -/turf/simulated/wall/bay/orange, -/area/crew_quarters/heads/chief) -"Ht" = ( -/obj/machinery/atmospherics/unary/vent_pump{ - dir = 4; - external_pressure_bound = 0; - external_pressure_bound_default = 0; - icon_state = "map_vent_in"; - initialize_directions = 1; - internal_pressure_bound = 4000; - internal_pressure_bound_default = 4000; - pressure_checks = 2; - pressure_checks_default = 2; - pump_direction = 0; - use_power = 1 - }, -/turf/simulated/floor/bluegrid{ - name = "Mainframe Base"; - nitrogen = 100; - oxygen = 0; - temperature = 80 - }, -/area/tcommsat/chamber) -"Hu" = ( -/obj/effect/floor_decal/industrial/warning{ - dir = 8 - }, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/simulated/floor/airless, -/area/stellardelight/deck3/portdock) -"Hv" = ( -/obj/structure/sign/painting/library_secure{ - pixel_x = 30 - }, -/turf/simulated/floor/carpet/blue2, -/area/lawoffice) -"Hw" = ( -/obj/structure/sign/painting/public{ - pixel_y = 30 - }, -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 1 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"Hx" = ( -/obj/structure/cable/green{ - icon_state = "1-8" - }, -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/turf/simulated/floor/airless, -/area/stellardelight/deck3/exterior) -"HA" = ( -/obj/structure/cable/cyan, -/obj/machinery/button/remote/blast_door{ - desc = "A remote control-switch for the AI core maintenance door."; - dir = 4; - id = "AICore"; - name = "AI Maintenance Hatch"; - pixel_x = -25; - pixel_y = -5; - req_access = list(16) - }, -/obj/machinery/light, -/obj/machinery/holoplant, -/obj/machinery/power/apc/angled{ - dir = 4 - }, -/turf/simulated/floor/bluegrid, -/area/ai) -"HB" = ( -/obj/effect/floor_decal/spline/plain{ - dir = 4 - }, -/obj/structure/table/bench/marble, -/turf/simulated/floor/lino, -/area/stellardelight/deck3/cafe) -"HF" = ( -/obj/structure/cable/green{ - icon_state = "2-4" - }, -/obj/structure/table/rack, -/obj/random/maintenance/clean, -/obj/random/maintenance, -/obj/random/maintenance, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardaft) -"HH" = ( -/obj/structure/closet/emcloset, -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 8 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"HL" = ( -/obj/structure/cable{ - icon_state = "2-8" - }, -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardcent) -"HN" = ( -/obj/structure/cable/blue{ - icon_state = "1-2" - }, -/obj/machinery/light{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_cyborg_station) -"HO" = ( -/obj/structure/cable/green{ - icon_state = "1-4" - }, -/turf/simulated/wall/bay/r_wall/steel, -/area/maintenance/stellardelight/deck3/foreportrooma) -"HP" = ( -/obj/machinery/door/firedoor/glass, -/obj/structure/window/bay/reinforced, -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/obj/structure/low_wall/bay/reinforced/steel, -/turf/simulated/floor, -/area/stellardelight/deck3/starboarddock) -"HQ" = ( -/obj/machinery/door/airlock/angled_bay/standard/color{ - door_color = "#9c9c9c"; - fill_color = "#5c5c5c"; - id_tag = null; - name = "Reading Rooms"; - stripe_color = "#89bd66" - }, -/obj/machinery/door/firedoor/glass, -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/turf/simulated/floor/tiled/steel_ridged, -/area/stellardelight/deck3/readingroom) -"HR" = ( -/obj/structure/table/steel, -/obj/random/contraband, -/obj/machinery/chemical_dispenser/bar_coffee/full{ - pixel_y = 8 - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/foreportrooma) -"HS" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 9 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 9 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai) -"HT" = ( -/obj/structure/cable/blue{ - icon_state = "1-2" - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_cyborg_station) -"HV" = ( -/obj/structure/cable/green{ - icon_state = "1-4" - }, -/obj/effect/landmark{ - name = "morphspawn" - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/maintenance/stellardelight/deck3/forestarrooma) -"HW" = ( -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ - dir = 4 - }, -/obj/structure/cable/blue{ - icon_state = "1-2" - }, -/turf/simulated/floor/tiled/eris/dark/gray_platform, -/area/stellardelight/deck3/commandhall) -"HX" = ( -/obj/machinery/light{ - dir = 8 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/tcommsat/computer) -"HY" = ( -/obj/structure/table/rack, -/obj/random/contraband, -/obj/random/maintenance, -/obj/random/maintenance, -/obj/random/snack, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portaft) -"HZ" = ( -/obj/structure/lattice, -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 5 - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 1 - }, -/turf/simulated/open, -/area/stellardelight/deck2/central) -"Ia" = ( -/turf/simulated/wall/fancy_shuttle/nondense{ - fancy_shuttle_tag = "sdboat" - }, -/area/shuttle/sdboat/aft{ - base_turf = /turf/simulated/floor/reinforced/airless - }) -"Ib" = ( -/obj/machinery/alarm/angled{ - dir = 4 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/maintenance/stellardelight/deck3/forestarrooma) -"Ie" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/manifold/hidden/supply, -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 1 - }, -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/turf/simulated/open, -/area/stellardelight/deck2/fore) -"Ig" = ( -/obj/structure/lattice, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/turf/simulated/open, -/area/stellardelight/deck2/port) -"Ii" = ( -/turf/simulated/wall/bay/r_wall/steel, -/area/holodeck_control) -"Ij" = ( -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/obj/effect/landmark{ - name = "maint_pred" - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/maintenance/stellardelight/deck3/foreportroomb) -"Il" = ( -/obj/machinery/photocopier, -/turf/simulated/floor/tiled, -/area/crew_quarters/heads/hop) -"Im" = ( -/obj/effect/landmark/tram, -/turf/simulated/floor/glass/reinforced, -/area/stellardelight/deck3/aft) -"In" = ( -/obj/structure/cable{ - icon_state = "1-8" - }, -/obj/random/trash_pile, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardcent) -"Io" = ( -/obj/structure/cable/blue{ - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardcent) -"Ir" = ( -/obj/structure/bed/chair/shuttle{ - dir = 1 - }, -/obj/machinery/light{ - dir = 4 - }, -/obj/effect/floor_decal/fancy_shuttle{ - fancy_shuttle_tag = "sdboat" - }, -/turf/simulated/floor/tiled, -/area/shuttle/sdboat/aft{ - base_turf = /turf/simulated/floor/reinforced/airless - }) -"It" = ( -/obj/effect/floor_decal/steeldecal/steel_decals4{ - dir = 5 - }, -/obj/structure/cable{ - icon_state = "2-4" - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"Iu" = ( -/obj/machinery/holoplant, -/turf/simulated/floor/bluegrid, -/area/ai_server_room) -"Iz" = ( -/obj/effect/floor_decal/industrial/warning, -/turf/simulated/floor/airless, -/area/stellardelight/deck3/exterior) -"IC" = ( -/obj/machinery/computer/station_alert/all, -/obj/machinery/status_display{ - pixel_y = 32 - }, -/turf/simulated/floor/tiled, -/area/crew_quarters/heads/chief) -"ID" = ( -/obj/machinery/atmospherics/unary/vent_pump/on{ - dir = 8 - }, -/obj/effect/landmark/vines, -/turf/simulated/open, -/area/stellardelight/deck2/fore) -"IG" = ( -/obj/structure/cable/blue{ - icon_state = "4-8" - }, -/obj/structure/cable/blue{ - icon_state = "1-8" - }, -/obj/structure/cable/blue{ - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_cyborg_station) -"IH" = ( -/obj/structure/lattice, -/obj/structure/cable/green{ - icon_state = "1-4" - }, -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 5 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 5 - }, -/turf/simulated/open, -/area/stellardelight/deck2/port) -"II" = ( -/obj/structure/sign/nanotrasen{ - pixel_y = 30 - }, -/obj/machinery/camera/network/command, -/obj/structure/flora/pottedplant/stoutbush, -/turf/simulated/floor/tiled/monotile, -/area/stellardelight/deck3/commandhall) -"IK" = ( -/obj/effect/floor_decal/industrial/warning{ - dir = 1 - }, -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/turf/simulated/floor/airless, -/area/stellardelight/deck3/exterior) -"IN" = ( -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/structure/cable/green{ - icon_state = "2-8" - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portaft) -"IO" = ( -/obj/structure/lattice, -/obj/structure/cable/green{ - icon_state = "1-4" - }, -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 5 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 5 - }, -/obj/machinery/light/small, -/turf/simulated/open, -/area/stellardelight/deck2/port) -"IP" = ( -/obj/structure/table/steel, -/obj/random/contraband, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portfore) -"IQ" = ( -/obj/machinery/porta_turret/ai_defense, -/turf/simulated/floor/bluegrid, -/area/ai) -"IR" = ( -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 8 - }, -/obj/structure/cable{ - icon_state = "1-2" - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/portdock) -"IS" = ( -/obj/machinery/door/firedoor/glass, -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/machinery/door/airlock/angled_bay/hatch{ - name = "Clown and Mime Office"; - req_one_access = list(138,136); - stripe_color = "#454545" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/turf/simulated/floor, -/area/stellardelight/deck3/clownmimeoffice) -"IU" = ( -/obj/machinery/hologram/holopad, -/obj/structure/sign/warning/secure_area{ - pixel_y = 32 - }, -/turf/simulated/floor/bluegrid, -/area/ai) -"IV" = ( -/obj/machinery/atmospherics/unary/vent_scrubber/on{ - dir = 4 - }, -/turf/simulated/open, -/area/stellardelight/deck2/fore) -"IW" = ( -/obj/machinery/status_display{ - pixel_x = 32 - }, -/obj/structure/closet/emcloset, -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 4 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"IY" = ( -/obj/machinery/airlock_sensor{ - dir = 8; - id_tag = "portmaint_sensor"; - pixel_x = 24; - req_access = list(13) - }, -/turf/simulated/floor/airless, -/area/maintenance/stellardelight/deck3/portcent) -"IZ" = ( -/obj/structure/cable{ - icon_state = "1-2" - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"Ja" = ( -/obj/machinery/door/airlock/angled_bay/external/glass{ - frequency = 1379; - id_tag = "starmaint_interior"; - locked = 1; - name = "Exterior Airlock" - }, -/obj/machinery/door/firedoor/glass, -/obj/machinery/access_button{ - command = "cycle_interior"; - frequency = 1379; - master_tag = "starmaint_airlock"; - name = "interior access button"; - pixel_x = 32; - req_access = null; - req_one_access = list(13) - }, -/obj/machinery/atmospherics/pipe/simple/hidden, -/turf/simulated/floor/tiled/steel_ridged, -/area/maintenance/stellardelight/deck3/starboardcent) -"Jc" = ( -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/obj/effect/landmark{ - name = "morphspawn" - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/maintenance/stellardelight/deck3/foreportroomb) -"Jd" = ( -/obj/structure/closet/lawcloset, -/obj/structure/sign/poster{ - dir = 8 - }, -/obj/machinery/newscaster{ - pixel_y = 28 - }, -/turf/simulated/floor/tiled/dark, -/area/lawoffice) -"Jg" = ( -/obj/machinery/light{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 6 - }, -/turf/simulated/floor/bluegrid, -/area/ai) -"Jh" = ( -/turf/space, -/area/space) -"Ji" = ( -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/obj/structure/cable/green{ - icon_state = "0-2" - }, -/obj/machinery/power/apc/angled{ - dir = 8; - name = "night shift APC"; - nightshift_setting = 2 - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portfore) -"Jj" = ( -/obj/structure/sign/painting/library_secure{ - pixel_x = 30 - }, -/turf/simulated/floor/carpet/tealcarpet, -/area/crew_quarters/heads/cmo) -"Jk" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/transitgateway) -"Jm" = ( -/obj/structure/barricade/cutout/clown, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/turf/simulated/floor/wood, -/area/stellardelight/deck3/clownmimeoffice) -"Jn" = ( -/obj/machinery/door/firedoor/glass, -/obj/machinery/door/airlock/angled_bay/hatch{ - dir = 4; - name = "maintenance access"; - stripe_color = "#454545" - }, -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/turf/simulated/floor/tiled/steel_ridged, -/area/maintenance/stellardelight/deck3/foreportrooma) -"Jo" = ( -/obj/machinery/light{ - dir = 4 - }, -/obj/structure/bed/chair{ - dir = 8 - }, -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 4 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/starboarddock) -"Js" = ( -/obj/structure/table/darkglass, -/obj/item/device/radio/intercom{ - dir = 1; - name = "Station Intercom (General)"; - pixel_y = 24 - }, -/obj/item/device/flashlight/lamp/green{ - pixel_x = 5; - pixel_y = -5 - }, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen/blade/red{ - pixel_x = -2; - pixel_y = -2 - }, -/obj/item/weapon/pen, -/obj/item/weapon/pen/blue{ - pixel_x = 2; - pixel_y = 3 - }, -/obj/machinery/atmospherics/unary/vent_scrubber/on{ - dir = 4 - }, -/turf/simulated/floor/tiled/dark, -/area/lawoffice) -"Ju" = ( -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/turf/simulated/floor, -/area/stellardelight/deck2/port) -"Jv" = ( -/obj/machinery/computer/aifixer, -/obj/machinery/status_display{ - pixel_y = 32 - }, -/turf/simulated/floor/tiled/techfloor, -/area/crew_quarters/heads/hor) -"Jx" = ( -/turf/simulated/wall/bay/r_wall/steel, -/area/maintenance/stellardelight/deck3/forestarrooma) -"Jz" = ( -/obj/machinery/door/firedoor/glass, -/obj/structure/cable/blue{ - icon_state = "1-2" - }, -/obj/machinery/door/airlock/angled_bay/secure{ - name = "AI Core"; - req_access = list(16) - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/turf/simulated/floor/tiled/steel_ridged, -/area/ai) -"JA" = ( -/obj/machinery/door/firedoor/glass, -/obj/machinery/door/airlock/angled_bay/external/glass{ - frequency = 1380; - id_tag = null; - locked = 1; - name = "Docking Port Airlock" - }, -/obj/effect/map_helper/airlock/door/ext_door, -/obj/machinery/access_button{ - command = "cycle_exterior"; - frequency = 1380; - master_tag = "sd_escape_center_left"; - pixel_x = -32; - req_one_access = list(13) - }, -/turf/simulated/floor/tiled/steel_ridged, -/area/stellardelight/deck3/aft) -"JE" = ( -/obj/machinery/power/apc/angled{ - dir = 1 - }, -/obj/structure/cable/green{ - icon_state = "0-2" - }, -/obj/structure/table/woodentable, -/obj/item/weapon/reagent_containers/food/drinks/glass2/square{ - pixel_x = 8; - pixel_y = 8 - }, -/obj/item/weapon/reagent_containers/food/drinks/glass2/square{ - pixel_x = 8; - pixel_y = 8 - }, -/obj/item/weapon/reagent_containers/food/drinks/glass2/square{ - pixel_x = 8; - pixel_y = 8 - }, -/obj/item/weapon/reagent_containers/glass/rag, -/turf/simulated/floor/lino, -/area/stellardelight/deck3/cafe) -"JJ" = ( -/obj/machinery/computer/aifixer, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_cyborg_station) -"JK" = ( -/obj/structure/cable{ - icon_state = "1-2" - }, -/turf/simulated/floor, -/area/ai_cyborg_station) -"JO" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_cyborg_station) -"JP" = ( -/obj/machinery/door/firedoor/glass, -/obj/structure/cable/blue{ - icon_state = "1-2" - }, -/obj/machinery/door/airlock/angled_bay/secure{ - name = "AI Upload"; - req_access = list(16) - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/turf/simulated/floor/tiled/steel_ridged, -/area/ai_upload) -"JQ" = ( -/obj/structure/cable/blue{ - icon_state = "1-2" - }, -/obj/machinery/turretid/stun{ - control_area = /area/ai_upload; - name = "AI Upload turret control"; - pixel_x = -32; - pixel_y = 30 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_upload) -"JR" = ( -/obj/machinery/light{ - dir = 8 - }, -/obj/structure/bed/chair{ - dir = 4 - }, -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 8 - }, -/obj/structure/cable{ - icon_state = "2-4" - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/portdock) -"JS" = ( -/obj/machinery/embedded_controller/radio/docking_port_multi{ - child_names_txt = "Port;Center Left;Center Right;Starboard"; - child_tags_txt = "sd_escape_port;sd_escape_center_left;sd_escape_center_right;sd_escape_starboard"; - dir = 1; - frequency = 1380; - id_tag = "escape_dock"; - pixel_y = -18; - req_one_access = list(13) - }, -/obj/effect/landmark/arrivals, -/turf/simulated/floor/glass/reinforced, -/area/stellardelight/deck3/aft) -"JU" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/rcd, -/obj/item/weapon/rcd_ammo, -/obj/item/weapon/rcd_ammo, -/obj/item/weapon/rcd_ammo, -/obj/item/weapon/rcd_ammo, -/turf/simulated/floor/tiled, -/area/crew_quarters/heads/chief) -"JW" = ( -/obj/random/trash_pile, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portaft) -"JY" = ( -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/obj/structure/bed/chair{ - dir = 8 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/maintenance/stellardelight/deck3/foreportroomb) -"JZ" = ( -/obj/effect/floor_decal/spline/plain, -/obj/structure/table/bench/marble, -/obj/machinery/light{ - dir = 8 - }, -/turf/simulated/floor/lino, -/area/stellardelight/deck3/cafe) -"Kb" = ( -/obj/structure/bed/chair{ - dir = 4 - }, -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 8 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/starboarddock) -"Ke" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/fuel{ - dir = 6 - }, -/turf/simulated/wall/fancy_shuttle{ - fancy_shuttle_tag = "sdboat" - }, -/area/shuttle/sdboat/aft{ - base_turf = /turf/simulated/floor/reinforced/airless - }) -"Kf" = ( -/obj/machinery/atmospherics/unary/vent_pump/on{ - dir = 1 - }, -/obj/effect/floor_decal/steeldecal/steel_decals5, -/obj/machinery/camera/network/halls{ - dir = 1 - }, -/obj/structure/cable{ - icon_state = "4-8" - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"Kg" = ( -/obj/structure/cable/green{ - icon_state = "2-4" - }, -/obj/structure/bed/chair/sofa/corp/left{ - dir = 4 - }, -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/obj/move_trader_landmark{ - dir = 4; - trader_type = /obj/trader/general - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portfore) -"Ki" = ( -/obj/machinery/computer/ship/navigation/telescreen{ - pixel_x = 32 - }, -/obj/machinery/power/shield_generator/charged, -/obj/structure/cable, -/turf/simulated/floor, -/area/stellardelight/deck2/central) -"Kj" = ( -/obj/machinery/computer/shuttle_control/explore/sdboat{ - dir = 4 - }, -/obj/machinery/light{ - dir = 8 - }, -/obj/machinery/power/apc{ - pixel_y = -28; - req_access = null; - req_one_access = list(11,67) - }, -/obj/structure/cable/green{ - icon_state = "0-4" - }, -/obj/effect/floor_decal/fancy_shuttle{ - fancy_shuttle_tag = "sdboat" - }, -/turf/simulated/floor/tiled, -/area/shuttle/sdboat/fore{ - base_turf = /turf/simulated/floor/reinforced/airless - }) -"Kk" = ( -/obj/structure/table/steel, -/obj/random/maintenance/clean, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/aftstarroom) -"Ko" = ( -/obj/effect/landmark/tram, -/obj/machinery/camera/network/halls{ - dir = 1 - }, -/turf/simulated/floor/glass/reinforced, -/area/stellardelight/deck3/aft) -"Kq" = ( -/obj/structure/table/rack, -/obj/random/maintenance, -/obj/random/maintenance, -/obj/random/maintenance/engineering, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardfore) -"Kr" = ( -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/turf/simulated/wall/bay/r_wall/steel, -/area/maintenance/stellardelight/deck3/forestarrooma) -"Ks" = ( -/obj/structure/cable/blue{ - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/turf/simulated/floor, -/area/stellardelight/deck2/starboard) -"Kt" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/universal, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardaft) -"Kv" = ( -/obj/structure/bed/chair{ - dir = 4 - }, -/obj/structure/closet/emergsuit_wall{ - dir = 8; - pixel_x = -27 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/starboarddock) -"Kw" = ( -/obj/machinery/light{ - dir = 4 - }, -/obj/machinery/atmospherics/unary/vent_scrubber/on{ - dir = 8 - }, -/turf/simulated/floor/tiled/eris/dark/gray_platform, -/area/stellardelight/deck3/commandhall) -"Kx" = ( -/obj/structure/cable/blue{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_cyborg_station) -"Ky" = ( -/obj/structure/bed/chair{ - dir = 4 - }, -/obj/machinery/light, -/turf/simulated/floor/glass/reinforced, -/area/stellardelight/deck3/aft) -"Kz" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/structure/closet/emcloset, -/obj/random/contraband, -/obj/random/maintenance/research, -/obj/random/maintenance/research, -/obj/random/maintenance/research, -/obj/random/maintenance/research, -/obj/random/maintenance/research, -/obj/random/maintenance/research, -/obj/random/maintenance/cargo, -/obj/random/mre, -/obj/random/mre, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardaft) -"KD" = ( -/obj/machinery/atmospherics/pipe/manifold/hidden{ - dir = 1 - }, -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardaft) -"KF" = ( -/obj/machinery/atmospherics/unary/vent_pump/on{ - dir = 8 - }, -/turf/simulated/open, -/area/stellardelight/deck2/fore) -"KG" = ( -/obj/structure/table/alien{ - name = "fancy table" - }, -/obj/item/weapon/cartridge/signal/science, -/obj/item/weapon/cartridge/signal/science, -/obj/item/clothing/glasses/welding/superior, -/obj/machinery/atmospherics/unary/vent_pump/on{ - dir = 1 - }, -/turf/simulated/floor/tiled/techfloor, -/area/crew_quarters/heads/hor) -"KH" = ( -/obj/structure/cable/blue{ - icon_state = "1-2" - }, -/obj/machinery/camera/network/command{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai) -"KI" = ( -/turf/simulated/floor/wood, -/area/stellardelight/deck3/readingroom) -"KJ" = ( -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardaft) -"KL" = ( -/obj/machinery/power/apc/angled{ - dir = 8 - }, -/obj/structure/cable/green{ - icon_state = "0-4" - }, -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 8 - }, -/obj/structure/cable{ - icon_state = "1-2" - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/portdock) -"KM" = ( -/obj/machinery/alarm/angled{ - dir = 4 - }, -/turf/simulated/floor/carpet/turcarpet, -/area/ai) -"KQ" = ( -/obj/structure/cable/green{ - icon_state = "2-8" - }, -/obj/structure/reagent_dispensers/fueltank, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portfore) -"KS" = ( -/obj/structure/cable/blue{ - icon_state = "4-8" - }, -/obj/structure/cable/blue{ - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/manifold4w/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/manifold4w/hidden/supply, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_upload) -"KT" = ( -/obj/machinery/atmospherics/unary/vent_scrubber/on{ - dir = 4 - }, -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 8 - }, -/obj/structure/cable{ - icon_state = "1-2" - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/portdock) -"KU" = ( -/obj/machinery/camera/network/command, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_cyborg_station) -"KV" = ( -/obj/structure/table/steel, -/obj/random/contraband, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/forestarrooma) -"KW" = ( -/obj/machinery/door/firedoor/glass, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portfore) -"KY" = ( -/obj/structure/cable/blue{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 5 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai) -"Lb" = ( -/obj/structure/cable{ - icon_state = "1-8" - }, -/obj/structure/cable{ - icon_state = "1-2" - }, -/turf/simulated/floor, -/area/ai_cyborg_station) -"Ld" = ( -/obj/machinery/atmospherics/portables_connector{ - dir = 4 - }, -/obj/machinery/portable_atmospherics/canister/air/airlock, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardaft) -"Le" = ( -/obj/machinery/atmospherics/unary/vent_scrubber/on, -/obj/structure/flora/pottedplant/minitree, -/obj/structure/cable{ - icon_state = "1-2" - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"Lf" = ( -/obj/structure/sign/warning/falling{ - pixel_x = -32 - }, -/turf/simulated/open, -/area/stellardelight/deck2/starboard) -"Lh" = ( -/obj/machinery/hologram/holopad, -/obj/structure/cable/blue{ - icon_state = "4-8" - }, -/obj/structure/cable/blue{ - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/camera/network/telecom{ - dir = 1 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/tcommsat/computer) -"Li" = ( -/obj/move_trader_landmark{ - dir = 8; - trader_type = /obj/trader/general - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardaft) -"Lm" = ( -/obj/random/paicard, -/obj/structure/table/glass, -/obj/machinery/camera/network/civilian{ - dir = 8 - }, -/obj/random/coin/sometimes, -/turf/simulated/floor/wood, -/area/stellardelight/deck3/readingroom) -"Ln" = ( -/obj/structure/cable{ - icon_state = "1-2" - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardfore) -"Lo" = ( -/obj/effect/mouse_hole_spawner{ - dir = 4 - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portaft) -"Lr" = ( -/obj/effect/shuttle_landmark/premade/sd/deck3/starboardairlock, -/turf/space, -/area/space) -"Lv" = ( -/obj/structure/bed/chair{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/turf/simulated/floor/carpet/blue2, -/area/lawoffice) -"Lw" = ( -/obj/effect/floor_decal/spline/plain, -/obj/structure/table/bench/marble, -/turf/simulated/floor/lino, -/area/stellardelight/deck3/cafe) -"Lx" = ( -/obj/effect/landmark{ - name = "JoinLateCyborg" - }, -/obj/machinery/camera/network/command{ - dir = 10 - }, -/obj/effect/landmark/start/cyborg, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_cyborg_station) -"Ly" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 5 - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardaft) -"Lz" = ( -/obj/machinery/newscaster{ - pixel_x = 30 - }, -/turf/simulated/floor/tiled/eris/dark/gray_platform, -/area/stellardelight/deck3/commandhall) -"LC" = ( -/obj/machinery/holoplant, -/obj/structure/sign/warning/secure_area{ - pixel_y = 32 - }, -/obj/machinery/camera/network/command{ - dir = 9 - }, -/turf/simulated/floor/bluegrid, -/area/ai_upload) -"LD" = ( -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/structure/cable/green{ - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 5 - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portaft) -"LI" = ( -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 8 - }, -/obj/effect/floor_decal/steeldecal/steel_decals4{ - dir = 9 - }, -/obj/effect/floor_decal/shuttles, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/starboarddock) -"LJ" = ( -/obj/structure/cable/green{ - icon_state = "1-8" - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/foreportrooma) -"LK" = ( -/obj/structure/table/bench/padded, -/obj/structure/sign/painting/public{ - pixel_y = -30 - }, -/obj/machinery/alarm/angled{ - dir = 4 - }, -/turf/simulated/floor/wood, -/area/stellardelight/deck3/cafe) -"LO" = ( -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/obj/effect/floor_decal/fancy_shuttle{ - fancy_shuttle_tag = "sdboat" - }, -/turf/simulated/floor/tiled, -/area/shuttle/sdboat/aft{ - base_turf = /turf/simulated/floor/reinforced/airless - }) -"LP" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 4 - }, -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 4 - }, -/obj/effect/floor_decal/steeldecal/steel_decals_central5{ - dir = 4 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"LQ" = ( -/obj/machinery/atmospherics/unary/vent_pump/on{ - dir = 8 - }, -/obj/structure/closet/emergsuit_wall{ - dir = 4; - pixel_x = 27 - }, -/obj/effect/landmark/vines, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/starboarddock) -"LR" = ( -/obj/machinery/atmospherics/unary/vent_pump/high_volume{ - dir = 8; - frequency = 1379; - id_tag = "starmaint_airpump" - }, -/turf/simulated/floor/airless, -/area/maintenance/stellardelight/deck3/starboardcent) -"LS" = ( -/obj/machinery/door/firedoor/glass, -/obj/machinery/door/airlock/angled_bay/hatch{ - name = "maintenance access"; - stripe_color = "#454545" - }, -/turf/simulated/floor/tiled/steel_ridged, -/area/holodeck_control) -"LT" = ( -/obj/machinery/door/firedoor/glass, -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/door/airlock/angled_bay/hatch{ - dir = 4; - name = "maintenance access"; - stripe_color = "#454545" - }, -/turf/simulated/floor/tiled/steel_ridged, -/area/maintenance/stellardelight/deck3/portaft) -"LV" = ( -/obj/structure/table/steel, -/obj/machinery/chemical_dispenser/bar_soft/full, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/forestarrooma) -"LW" = ( -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/obj/structure/cable/green{ - icon_state = "1-8" - }, -/turf/simulated/floor/airless, -/area/stellardelight/deck3/exterior) -"LY" = ( -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardaft) -"Mc" = ( -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/obj/structure/ladder, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/forestarrooma) -"Mg" = ( -/obj/item/device/camera, -/obj/item/device/camera_film, -/obj/item/device/taperecorder, -/obj/item/device/tape/random, -/obj/item/device/tape/random, -/obj/item/weapon/storage/secure/briefcase, -/obj/structure/closet/walllocker_double/west, -/turf/simulated/floor/carpet/blue2, -/area/lawoffice) -"Mi" = ( -/obj/effect/floor_decal/corner_techfloor_grid{ - dir = 5 - }, -/obj/effect/floor_decal/corner_techfloor_grid{ - dir = 10 - }, -/obj/machinery/power/apc/angled{ - dir = 4 - }, -/obj/structure/cable/green{ - icon_state = "0-8" - }, -/turf/simulated/floor/tiled/techfloor, -/area/stellardelight/deck3/cryo) -"Mk" = ( -/obj/structure/lattice, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 8 - }, -/turf/simulated/open, -/area/stellardelight/deck2/port) -"Ml" = ( -/obj/structure/table/darkglass, -/obj/item/weapon/stamp/denied{ - pixel_x = -6; - pixel_y = 6 - }, -/obj/item/weapon/stamp/internalaffairs, -/turf/simulated/floor/carpet/blue2, -/area/lawoffice) -"Mo" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/machinery/atmospherics/unary/vent_pump/high_volume{ - dir = 4; - frequency = 1380; - id_tag = null - }, -/obj/effect/map_helper/airlock/atmos/chamber_pump, -/obj/effect/map_helper/airlock/sensor/chamber_sensor, -/obj/machinery/airlock_sensor{ - frequency = 1380; - id_tag = null; - pixel_y = -25 - }, -/obj/machinery/embedded_controller/radio/airlock/docking_port{ - frequency = 1380; - id_tag = "sd_port_landing"; - pixel_y = 29 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/portdock) -"Mp" = ( -/obj/machinery/power/breakerbox/activated{ - RCon_tag = "AI/Telecomms Substation Bypass" - }, -/turf/simulated/floor, -/area/ai_cyborg_station) -"Mr" = ( -/obj/structure/bed/double/padded, -/obj/item/weapon/bedsheet/clowndouble, -/obj/structure/curtain/black{ - color = "#361447" - }, -/turf/simulated/floor/carpet/gaycarpet, -/area/stellardelight/deck3/clownmimeoffice) -"Ms" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/stamp/hop, -/obj/item/weapon/paper_bin{ - pixel_x = -3; - pixel_y = 7 - }, -/obj/item/weapon/pen/multi, -/obj/item/device/flashlight/lamp/green{ - pixel_x = 3; - pixel_y = 18 - }, -/obj/item/weapon/book/manual/sd_guide, -/turf/simulated/floor/carpet, -/area/crew_quarters/heads/hop) -"Mu" = ( -/obj/structure/cable{ - icon_state = "0-2" - }, -/obj/machinery/power/apc/angled{ - dir = 4; - name = "night shift APC"; - nightshift_setting = 2 - }, -/obj/structure/table/steel, -/obj/random/maintenance/medical, -/obj/random/maintenance/medical, -/obj/random/maintenance/security, -/obj/random/maintenance/clean, -/obj/random/maintenance, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardfore) -"Mv" = ( -/obj/machinery/atmospherics/unary/vent_pump/on{ - dir = 4 - }, -/obj/effect/landmark/vines, -/turf/simulated/open, -/area/stellardelight/deck2/fore) -"Mw" = ( -/obj/machinery/atmospherics/pipe/manifold/hidden{ - dir = 1 - }, -/turf/simulated/floor/airless, -/area/maintenance/stellardelight/deck3/starboardcent) -"Mx" = ( -/obj/effect/floor_decal/steeldecal/steel_decals5, -/obj/structure/cable{ - icon_state = "4-8" - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"My" = ( -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portcent) -"MA" = ( -/obj/structure/cable{ - icon_state = "2-4" - }, -/turf/simulated/wall/bay/r_wall/blue, -/area/maintenance/stellardelight/deck3/portaft) -"MB" = ( -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 10 - }, -/obj/random/trash_pile, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardaft) -"MC" = ( -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/obj/effect/floor_decal/emblem/nt3, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 4 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"ME" = ( -/obj/structure/sign/poster{ - dir = 1 - }, -/obj/random/vendordrink, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"MF" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 6 - }, -/turf/simulated/floor, -/area/stellardelight/deck2/central) -"MG" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 10 - }, -/turf/simulated/floor/carpet/purcarpet, -/area/crew_quarters/heads/hor) -"MH" = ( -/obj/structure/table/steel, -/obj/random/maintenance/clean, -/obj/random/snack, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/aftstarroom) -"MI" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 5 - }, -/turf/simulated/floor/tiled, -/area/crew_quarters/heads/hop) -"MJ" = ( -/obj/machinery/pointdefense_control{ - id_tag = "sd_pd" - }, -/turf/simulated/floor/bluegrid, -/area/ai_server_room) -"MK" = ( -/obj/machinery/light/small{ - dir = 8 - }, -/turf/simulated/floor/carpet/turcarpet, -/area/ai) -"MN" = ( -/obj/structure/closet/secure_closet/hos2, -/obj/item/clothing/accessory/permit/gun, -/obj/item/clothing/accessory/permit/gun, -/obj/item/clothing/accessory/permit/gun, -/obj/item/clothing/accessory/permit/gun, -/obj/item/clothing/accessory/permit/gun, -/obj/machinery/atmospherics/unary/vent_pump/on{ - dir = 1 - }, -/obj/item/device/retail_scanner/security, -/obj/item/device/ticket_printer, -/turf/simulated/floor/tiled/dark, -/area/crew_quarters/heads/hos) -"MO" = ( -/obj/structure/cable/blue{ - icon_state = "4-8" - }, -/turf/simulated/floor/bluegrid{ - name = "Mainframe Base"; - nitrogen = 100; - oxygen = 0; - temperature = 80 - }, -/area/tcommsat/chamber) -"MP" = ( -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/obj/structure/cable/green{ - icon_state = "1-8" - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/foreportrooma) -"MR" = ( -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portcent) -"MU" = ( -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 4 - }, -/obj/effect/floor_decal/arrivals, -/obj/structure/cable{ - icon_state = "1-2" - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"MV" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 10 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai) -"MW" = ( -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 9 - }, -/obj/structure/cable/green{ - icon_state = "2-8" - }, -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardaft) -"MX" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/effect/floor_decal/fancy_shuttle{ - fancy_shuttle_tag = "sdboat" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/fuel{ - dir = 4 - }, -/turf/simulated/floor/tiled, -/area/shuttle/sdboat/aft{ - base_turf = /turf/simulated/floor/reinforced/airless - }) -"MZ" = ( -/obj/machinery/alarm/angled{ - dir = 8 - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/foreportroomb) -"Nc" = ( -/obj/effect/floor_decal/corner_techfloor_grid{ - dir = 5 - }, -/obj/effect/floor_decal/corner_techfloor_grid{ - dir = 10 - }, -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/turf/simulated/floor/tiled/techfloor, -/area/stellardelight/deck3/cryo) -"Nd" = ( -/obj/machinery/atmospherics/unary/vent_pump/on{ - dir = 4 - }, -/obj/effect/landmark/vines, -/turf/simulated/open, -/area/stellardelight/deck2/port) -"Ne" = ( -/obj/structure/cable{ - icon_state = "1-8" - }, -/obj/structure/cable{ - icon_state = "1-4" - }, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 9 - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ - dir = 4 - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardaft) -"Nf" = ( -/obj/machinery/light{ - dir = 4 - }, -/turf/simulated/floor/tiled/monotile, -/area/stellardelight/deck3/commandhall) -"Nh" = ( -/obj/structure/cable/blue{ - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/simulated/floor, -/area/stellardelight/deck2/starboard) -"Ni" = ( -/obj/structure/bed/chair{ - dir = 4 - }, -/obj/machinery/light{ - dir = 8 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/starboarddock) -"Nj" = ( -/obj/structure/cable/blue{ - icon_state = "1-2" - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/forestarrooma) -"Nk" = ( -/obj/structure/bed/chair{ - dir = 4 - }, -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 8 - }, -/obj/structure/sign/nanotrasen{ - pixel_x = -32 - }, -/obj/structure/cable{ - icon_state = "1-2" - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/portdock) -"Nm" = ( -/obj/machinery/light_switch{ - dir = 8; - pixel_x = 24 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_server_room) -"Nq" = ( -/obj/structure/bed/chair{ - dir = 8 - }, -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 4 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/portdock) -"Ns" = ( -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portfore) -"Nx" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 5 - }, -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/obj/machinery/camera/network/halls{ - dir = 1 - }, -/obj/effect/floor_decal/steeldecal/steel_decals5, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/starboarddock) -"Ny" = ( -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/manifold/hidden{ - dir = 4 - }, -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 8 - }, -/obj/effect/floor_decal/steeldecal/steel_decals_central5{ - dir = 8 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/starboarddock) -"Nz" = ( -/obj/structure/table/rack, -/obj/random/contraband, -/obj/random/maintenance, -/obj/random/maintenance, -/obj/random/maintenance, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/forestarrooma) -"NE" = ( -/obj/structure/table/rack, -/obj/random/contraband, -/obj/random/maintenance, -/obj/random/maintenance, -/obj/random/maintenance, -/obj/random/maintenance, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portaft) -"NF" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/turf/simulated/open, -/area/crew_quarters/bar) -"NG" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/foreportroomb) -"NI" = ( -/obj/structure/lattice, -/obj/structure/cable/green{ - icon_state = "2-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 10 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 10 - }, -/turf/simulated/open, -/area/stellardelight/deck2/port) -"NJ" = ( -/obj/machinery/door/firedoor/glass, -/obj/machinery/door/airlock/angled_bay/standard/color{ - dir = 4; - door_color = "#9c9c9c"; - fill_color = "#5c5c5c"; - id_tag = "readingroom2"; - name = "Room 2"; - stripe_color = "#89bd66" - }, -/turf/simulated/floor/tiled/steel_ridged, -/area/stellardelight/deck3/readingroom) -"NK" = ( -/obj/structure/sign/vacuum, -/turf/simulated/wall/bay/r_wall/steel, -/area/maintenance/stellardelight/deck3/portcent) -"NL" = ( -/turf/simulated/floor/airless, -/area/stellardelight/deck3/exterior) -"NN" = ( -/obj/machinery/door/firedoor/glass, -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/door/airlock/angled_bay/hatch{ - dir = 4; - name = "maintenance access"; - stripe_color = "#454545" - }, -/turf/simulated/floor/tiled/steel_ridged, -/area/stellardelight/deck3/aft) -"NO" = ( -/obj/structure/table/reinforced, -/obj/item/device/flashlight/lamp, -/obj/item/device/radio/intercom{ - dir = 1; - frequency = 1357; - name = "station intercom (Engineering)"; - pixel_y = 24 - }, -/obj/machinery/atmospherics/unary/vent_scrubber/on{ - dir = 4 - }, -/obj/item/clothing/glasses/welding/superior, -/obj/item/clothing/glasses/meson, -/turf/simulated/floor/tiled, -/area/crew_quarters/heads/chief) -"NP" = ( -/obj/machinery/camera/network/command{ - dir = 9 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai) -"NQ" = ( -/obj/machinery/door/firedoor/glass, -/obj/machinery/access_button{ - command = "cycle_exterior"; - frequency = 1379; - master_tag = "portmaint_airlock"; - name = "exterior access button"; - pixel_y = 32; - req_access = null; - req_one_access = list(13) - }, -/obj/machinery/door/airlock/angled_bay/external/glass{ - dir = 4; - frequency = 1379; - id_tag = "portmaint_exterior"; - locked = 1; - name = "Exterior Airlock" - }, -/turf/simulated/floor/tiled/steel_ridged, -/area/maintenance/stellardelight/deck3/portcent) -"NR" = ( -/obj/machinery/door/firedoor/glass, -/obj/machinery/door/airlock/angled_bay/double{ - name = "maintenance access"; - stripe_color = "#454545" - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portaft) -"NS" = ( -/obj/machinery/atmospherics/unary/engine/fancy_shuttle{ - dir = 1 - }, -/turf/simulated/wall/fancy_shuttle{ - fancy_shuttle_tag = "sdboat" - }, -/area/shuttle/sdboat/aft{ - base_turf = /turf/simulated/floor/reinforced/airless - }) -"NT" = ( -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 8 - }, -/obj/effect/floor_decal/steeldecal/steel_decals_central5{ - dir = 8 - }, -/turf/simulated/floor/tiled, -/area/holodeck_control) -"NU" = ( -/obj/machinery/alarm/angled{ - dir = 4 - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/aftstarroom) -"NW" = ( -/obj/structure/bed/chair/office/light{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_cyborg_station) -"NX" = ( -/obj/machinery/door/firedoor/glass, -/obj/machinery/access_button{ - command = "cycle_interior"; - dir = 8; - frequency = 1380; - master_tag = "sd_starboard_landing"; - pixel_y = 32; - req_one_access = list(13) - }, -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 4 - }, -/obj/machinery/door/airlock/angled_bay/external/glass{ - dir = 4; - frequency = 1380; - id_tag = null; - locked = 1; - name = "Docking Port Airlock" - }, -/obj/effect/map_helper/airlock/door/int_door, -/turf/simulated/floor/tiled/steel_ridged, -/area/stellardelight/deck3/starboarddock) -"NZ" = ( -/obj/item/weapon/bedsheet/mimedouble, -/obj/structure/bed/double/padded, -/obj/structure/curtain/black, -/turf/simulated/floor/carpet/bcarpet, -/area/stellardelight/deck3/clownmimeoffice) -"Oa" = ( -/obj/machinery/door/firedoor/glass, -/obj/structure/sign/poster{ - dir = 8 - }, -/turf/simulated/floor, -/area/stellardelight/deck2/fore) -"Ob" = ( -/obj/effect/floor_decal/techfloor/orange{ - dir = 10 - }, -/obj/machinery/light{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/turf/simulated/floor/tiled/techfloor, -/area/stellardelight/deck3/transitgateway) -"Oc" = ( -/obj/structure/sign/warning/docking_area{ - pixel_x = 32 - }, -/turf/simulated/floor/reinforced/airless, -/area/stellardelight/deck3/exterior) -"Od" = ( -/turf/simulated/floor/airless, -/area/maintenance/stellardelight/deck3/portcent) -"Oe" = ( -/obj/machinery/holoplant, -/obj/machinery/atmospherics/unary/vent_pump/on{ - dir = 4 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/tcommsat/computer) -"Of" = ( -/obj/machinery/status_display{ - pixel_x = -32 - }, -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 8 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"Og" = ( -/obj/machinery/recharge_station, -/obj/structure/closet/emergsuit_wall{ - pixel_y = 29 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/portdock) -"Oj" = ( -/obj/machinery/telecomms/bus/preset_one, -/turf/simulated/floor/tiled/dark{ - nitrogen = 100; - oxygen = 0; - temperature = 80 - }, -/area/tcommsat/chamber) -"Ol" = ( -/turf/simulated/wall/durasteel, -/area/ai) -"Oo" = ( -/obj/machinery/alarm/angled{ - dir = 8 - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/foreportrooma) -"Op" = ( -/obj/machinery/power/pointdefense{ - id_tag = "sd_pd" - }, -/obj/effect/floor_decal/industrial/warning/full, -/obj/structure/cable/green{ - icon_state = "0-8" - }, -/turf/simulated/floor/airless, -/area/stellardelight/deck3/exterior) -"Oq" = ( -/obj/structure/bed/chair{ - dir = 4 - }, -/turf/simulated/floor/glass/reinforced, -/area/stellardelight/deck3/aft) -"Or" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 1 - }, -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/obj/machinery/hologram/holopad, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/portdock) -"Ot" = ( -/obj/structure/bed/chair/office/dark{ - dir = 8 - }, -/obj/effect/landmark/start/rd, -/turf/simulated/floor/carpet/purcarpet, -/area/crew_quarters/heads/hor) -"Ou" = ( -/obj/item/device/radio/beacon, -/obj/effect/floor_decal/steeldecal/steel_decals5, -/obj/structure/cable{ - icon_state = "4-8" - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"Ov" = ( -/obj/machinery/light, -/obj/machinery/atmospherics/unary/vent_pump/on{ - dir = 1 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_server_room) -"Ow" = ( -/obj/machinery/door/firedoor/glass, -/obj/structure/cable/blue{ - icon_state = "4-8" - }, -/obj/machinery/door/airlock/angled_bay/secure{ - dir = 4; - name = "Telecoms Access"; - req_one_access = list(16,17,61) - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/turf/simulated/floor/tiled/steel_ridged, -/area/ai_server_room) -"Ox" = ( -/obj/structure/cable/blue{ - icon_state = "1-2" - }, -/obj/structure/cable/blue{ - icon_state = "2-8" - }, -/turf/simulated/floor/airless, -/area/stellardelight/deck3/exterior) -"Oy" = ( -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/door/window{ - req_one_access = list(25) - }, -/turf/simulated/floor/lino, -/area/stellardelight/deck3/cafe) -"Oz" = ( -/obj/machinery/door/firedoor/glass, -/obj/structure/window/bay/reinforced, -/obj/structure/low_wall/bay/reinforced/steel, -/turf/simulated/floor, -/area/stellardelight/deck3/cafe) -"OA" = ( -/obj/structure/cable{ - icon_state = "1-2" - }, -/turf/simulated/wall/bay/r_wall/blue, -/area/ai_cyborg_station) -"OC" = ( -/obj/machinery/atmospherics/pipe/simple/hidden, -/obj/machinery/door/airlock/angled_bay/hatch{ - frequency = null; - id_tag = null; - locked = 1; - name = "Telecoms Server Access"; - req_access = list(61); - stripe_color = "#ffd863" - }, -/obj/machinery/door/firedoor/glass, -/obj/structure/cable/blue{ - icon_state = "1-2" - }, -/obj/machinery/access_button{ - command = "cycle_interior"; - frequency = 1380; - master_tag = "tcommsairlock"; - pixel_x = 32; - req_one_access = list(61) - }, -/obj/effect/map_helper/airlock/door/int_door, -/turf/simulated/floor/tiled/steel_ridged, -/area/tcommsat/computer) -"OD" = ( -/obj/structure/table/rack/steel, -/obj/machinery/door/window/brigdoor/eastleft{ - dir = 1; - name = "Protosuit Storage"; - req_access = list(58) - }, -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/item/clothing/mask/breath, -/obj/item/weapon/tank/oxygen, -/obj/item/device/suit_cooling_unit, -/obj/item/clothing/shoes/magboots, -/obj/item/clothing/suit/space/void/security/prototype, -/obj/item/clothing/head/helmet/space/void/security/prototype, -/obj/structure/window/reinforced, -/turf/simulated/floor/tiled/dark, -/area/crew_quarters/heads/hos) -"OE" = ( -/obj/machinery/atmospherics/unary/vent_scrubber/on{ - dir = 4 - }, -/turf/simulated/open, -/area/stellardelight/deck2/starboard) -"OF" = ( -/obj/effect/landmark{ - name = "morphspawn" - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/foreportrooma) -"OG" = ( -/obj/machinery/atmospherics/unary/vent_scrubber/on{ - dir = 4 - }, -/obj/effect/mouse_hole_spawner{ - dir = 8 - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardcent) -"OI" = ( -/obj/structure/cable/blue{ - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ - dir = 8 - }, -/obj/structure/cable/blue{ - icon_state = "1-4" - }, -/turf/simulated/floor, -/area/stellardelight/deck2/starboard) -"OJ" = ( -/obj/structure/cable/blue{ - icon_state = "1-4" - }, -/turf/simulated/floor/airless, -/area/stellardelight/deck3/exterior) -"OK" = ( -/obj/structure/closet/lawcloset, -/obj/structure/sign/poster{ - dir = 4 - }, -/obj/machinery/newscaster{ - pixel_y = 28 - }, -/turf/simulated/floor/tiled/dark, -/area/lawoffice) -"OM" = ( -/obj/structure/cable/blue{ - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/table/rack/shelf, -/obj/random/contraband, -/obj/random/maintenance, -/obj/random/maintenance/medical, -/obj/random/maintenance/medical, -/obj/random/maintenance/engineering, -/obj/random/maintenance/security, -/obj/random/maintenance/security, -/obj/random/snack, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardcent) -"ON" = ( -/obj/structure/cable/blue{ - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/hidden, -/turf/simulated/floor/airless, -/area/maintenance/stellardelight/deck3/starboardcent) -"OP" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 6 - }, -/turf/simulated/open, -/area/crew_quarters/bar) -"OQ" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/turf/simulated/open, -/area/crew_quarters/bar) -"OR" = ( -/obj/machinery/power/apc/angled{ - dir = 4; - name = "night shift APC"; - nightshift_setting = 2 - }, -/obj/structure/cable/blue{ - icon_state = "0-8" - }, -/obj/structure/table/rack, -/obj/random/maintenance, -/obj/random/maintenance/engineering, -/obj/random/maintenance/engineering, -/turf/simulated/floor/tiled/techfloor/grid, -/area/maintenance/stellardelight/deck3/forestarroomb) -"OS" = ( -/obj/machinery/computer/drone_control{ - dir = 4 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_cyborg_station) -"OU" = ( -/turf/simulated/wall/bay/r_wall/steel, -/area/stellardelight/deck3/cryo) -"OV" = ( -/obj/structure/closet/walllocker_double/west, -/turf/simulated/floor/tiled/eris/white/cargo, -/area/crew_quarters/heads/cmo) -"OX" = ( -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portcent) -"OY" = ( -/obj/machinery/atmospherics/unary/vent_pump/on{ - dir = 8 - }, -/obj/effect/landmark/vines, -/turf/simulated/open, -/area/stellardelight/deck2/starboard) -"Pa" = ( -/obj/structure/lattice, -/turf/simulated/open, -/area/stellardelight/deck2/starboard) -"Pc" = ( -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/supply, -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 4 - }, -/obj/machinery/hologram/holopad, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"Pd" = ( -/obj/machinery/door/firedoor/glass, -/obj/structure/cable/blue{ - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/door/airlock/angled_bay/hatch{ - dir = 4; - name = "maintenance access"; - stripe_color = "#454545" - }, -/turf/simulated/floor/tiled/steel_ridged, -/area/maintenance/stellardelight/deck3/starboardcent) -"Pe" = ( -/obj/machinery/keycard_auth{ - pixel_y = 28 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 10 - }, -/obj/machinery/alarm/angled{ - dir = 8 - }, -/turf/simulated/floor/tiled/dark, -/area/crew_quarters/heads/hos) -"Pj" = ( -/obj/structure/cable/blue{ - icon_state = "1-2" - }, -/obj/machinery/hologram/holopad, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_upload) -"Pl" = ( -/obj/machinery/door/firedoor/glass, -/obj/machinery/door/airlock/glass{ - name = "Starstuff Cockpit"; - req_one_access = list(67) - }, -/obj/effect/floor_decal/fancy_shuttle{ - fancy_shuttle_tag = "sdboat" - }, -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/turf/simulated/floor/tiled, -/area/shuttle/sdboat/fore{ - base_turf = /turf/simulated/floor/reinforced/airless - }) -"Pm" = ( -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/turf/simulated/floor, -/area/stellardelight/deck2/port) -"Po" = ( -/obj/structure/sign/nanotrasen{ - pixel_y = 30 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 10 - }, -/turf/simulated/floor/tiled/dark, -/area/lawoffice) -"Pp" = ( -/obj/effect/landmark/start/clown, -/turf/simulated/floor/carpet/gaycarpet, -/area/stellardelight/deck3/clownmimeoffice) -"Pq" = ( -/obj/structure/bed/chair{ - dir = 8 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/maintenance/stellardelight/deck3/foreportrooma) -"Ps" = ( -/obj/machinery/space_heater, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/forestarroomb) -"Px" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 9 - }, -/obj/machinery/computer/cryopod/gateway{ - pixel_x = 32 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/transitgateway) -"PA" = ( -/obj/machinery/atmospherics/unary/vent_scrubber/on{ - dir = 1 - }, -/obj/effect/floor_decal/steeldecal/steel_decals5, -/obj/machinery/camera/network/halls{ - dir = 1 - }, -/obj/structure/cable{ - icon_state = "4-8" - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"PB" = ( -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 4 - }, -/turf/simulated/wall/fancy_shuttle{ - fancy_shuttle_tag = "sdboat" - }, -/area/shuttle/sdboat/aft{ - base_turf = /turf/simulated/floor/reinforced/airless - }) -"PC" = ( -/obj/machinery/alarm/angled{ - dir = 4 - }, -/obj/structure/cable/blue{ - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/turf/simulated/floor/tiled/dark, -/area/lawoffice) -"PD" = ( -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 1 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/portdock) -"PE" = ( -/obj/structure/sign/department/ai{ - pixel_y = 32 - }, -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 1 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"PJ" = ( -/obj/machinery/door/firedoor/glass, -/obj/machinery/door/window/northleft{ - dir = 8; - icon_state = "right"; - name = "Reception Window" - }, -/obj/machinery/door/window/brigdoor/eastright{ - name = "Head of Personnel's Desk"; - req_access = list(57) - }, -/obj/structure/cable/green{ - icon_state = "1-8" - }, -/obj/machinery/door/blast/shutters{ - dir = 8; - id = "hop_office_desk"; - layer = 3.1; - name = "HoP's Shutters" - }, -/obj/structure/table/reinforced, -/turf/simulated/floor/tiled, -/area/crew_quarters/heads/hop) -"PL" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/supply, -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers, -/turf/simulated/floor/tiled/monotile, -/area/stellardelight/deck3/commandhall) -"PR" = ( -/obj/structure/table/glass, -/obj/item/device/flashlight/lamp/green{ - pixel_x = -4; - pixel_y = 12 - }, -/obj/item/weapon/stamp/cmo, -/obj/item/weapon/book/manual/sd_guide, -/turf/simulated/floor/carpet/tealcarpet, -/area/crew_quarters/heads/cmo) -"PT" = ( -/obj/effect/floor_decal/industrial/warning{ - dir = 8 - }, -/turf/simulated/floor/airless, -/area/stellardelight/deck3/exterior) -"PV" = ( -/obj/structure/cable/green{ - icon_state = "2-8" - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/foreportrooma) -"PW" = ( -/obj/effect/landmark{ - name = "JoinLateCyborg" - }, -/obj/machinery/atmospherics/unary/vent_pump/on{ - dir = 1 - }, -/obj/effect/landmark/start/cyborg, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_cyborg_station) -"PX" = ( -/obj/structure/closet/emcloset, -/obj/structure/sign/painting/public{ - pixel_x = 30 - }, -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 4 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"Qe" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/hidden{ - dir = 4 - }, -/obj/effect/overmap/visitable/ship/landable/sd_boat, -/obj/effect/shuttle_landmark/shuttle_initializer/sdboat, -/obj/effect/floor_decal/fancy_shuttle{ - fancy_shuttle_tag = "sdboat" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/fuel{ - dir = 4 - }, -/turf/simulated/floor/tiled, -/area/shuttle/sdboat/aft{ - base_turf = /turf/simulated/floor/reinforced/airless - }) -"Qf" = ( -/obj/structure/bed/chair/office/dark{ - dir = 4 - }, -/obj/effect/landmark/start/ce, -/turf/simulated/floor/carpet/oracarpet, -/area/crew_quarters/heads/chief) -"Qh" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/fuel{ - dir = 5 - }, -/turf/simulated/wall/fancy_shuttle{ - fancy_shuttle_tag = "sdboat" - }, -/area/shuttle/sdboat/aft{ - base_turf = /turf/simulated/floor/reinforced/airless - }) -"Qi" = ( -/obj/structure/sign/painting/public{ - pixel_x = -30 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/turf/simulated/floor/wood, -/area/stellardelight/deck3/cafe) -"Qm" = ( -/obj/structure/cable/blue{ - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_server_room) -"Qn" = ( -/obj/structure/window/reinforced{ - dir = 8; - pixel_x = -4 - }, -/turf/simulated/open, -/area/stellardelight/deck3/aft) -"Qo" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/light_switch{ - pixel_y = 25 - }, -/turf/simulated/floor/tiled, -/area/crew_quarters/heads/hop) -"Qp" = ( -/turf/simulated/wall/bay/r_wall/steel, -/area/crew_quarters/bar) -"Qs" = ( -/obj/structure/cable/cyan{ - icon_state = "1-2" - }, -/obj/machinery/light{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 10 - }, -/turf/simulated/floor/bluegrid, -/area/ai) -"Qu" = ( -/obj/structure/sink/kitchen{ - pixel_y = 22 - }, -/obj/machinery/light{ - dir = 4 - }, -/obj/machinery/alarm/angled{ - dir = 4 - }, -/turf/simulated/floor/tiled/monotile, -/area/holodeck_control) -"Qv" = ( -/obj/structure/table/rack, -/obj/random/contraband, -/obj/random/maintenance, -/obj/random/maintenance, -/obj/random/maintenance/cargo, -/obj/random/maintenance/clean, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/aftstarroom) -"Qx" = ( -/obj/machinery/door/firedoor/glass/hidden/steel{ - dir = 1 - }, -/obj/effect/floor_decal/steeldecal/steel_decals5, -/obj/structure/cable{ - icon_state = "4-8" - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"QB" = ( -/obj/structure/railing/grey{ - dir = 8 - }, -/turf/simulated/open, -/area/stellardelight/deck3/commandhall) -"QC" = ( -/obj/machinery/camera/network/telecom, -/turf/simulated/floor/bluegrid{ - name = "Mainframe Base"; - nitrogen = 100; - oxygen = 0; - temperature = 80 - }, -/area/tcommsat/chamber) -"QE" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 9 - }, -/turf/simulated/floor/tiled/monotile, -/area/stellardelight/deck3/commandhall) -"QF" = ( -/obj/machinery/atmospherics/unary/vent_pump/on{ - dir = 4 - }, -/turf/simulated/open, -/area/stellardelight/deck2/port) -"QG" = ( -/obj/structure/cable/blue{ - icon_state = "1-2" - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai) -"QI" = ( -/obj/item/device/radio/intercom{ - dir = 8; - pixel_x = -24 - }, -/turf/simulated/floor/bluegrid, -/area/ai_cyborg_station) -"QJ" = ( -/obj/machinery/door/firedoor/glass, -/obj/machinery/door/airlock/angled_bay/external/glass{ - frequency = 1380; - id_tag = null; - locked = 1; - name = "Docking Port Airlock" - }, -/obj/effect/map_helper/airlock/door/ext_door, -/obj/machinery/access_button{ - command = "cycle_exterior"; - frequency = 1380; - master_tag = "sd_escape_center_right"; - pixel_x = 32; - req_one_access = list(13) - }, -/turf/simulated/floor/tiled/steel_ridged, -/area/stellardelight/deck3/aft) -"QK" = ( -/obj/structure/bed/chair/comfy/brown{ - dir = 8 - }, -/obj/machinery/alarm/angled{ - dir = 8 - }, -/turf/simulated/floor/carpet, -/area/stellardelight/deck3/readingroom) -"QL" = ( -/obj/structure/cable/blue{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_cyborg_station) -"QP" = ( -/obj/structure/cable/blue{ - icon_state = "1-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/structure/cable/blue{ - icon_state = "1-4" - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardcent) -"QS" = ( -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/manifold4w/hidden, -/turf/simulated/floor/airless, -/area/maintenance/stellardelight/deck3/portcent) -"QT" = ( -/obj/machinery/door/firedoor/glass, -/obj/machinery/door/airlock/angled_bay/standard/glass{ - door_color = "#323d80"; - name = "Command Offices"; - req_access = null; - req_one_access = list(19,38); - stripe_color = "#f7d35c" - }, -/turf/simulated/floor/tiled/steel_ridged, -/area/stellardelight/deck3/commandhall) -"QV" = ( -/obj/structure/cable/blue{ - icon_state = "2-8" - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardfore) -"QW" = ( -/obj/structure/cable{ - icon_state = "2-8" - }, -/turf/simulated/floor/carpet/gaycarpet, -/area/stellardelight/deck3/clownmimeoffice) -"QZ" = ( -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 4 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/starboarddock) -"Rc" = ( -/obj/machinery/porta_turret/ai_defense, -/obj/structure/cable/cyan{ - icon_state = "1-2" - }, -/turf/simulated/floor/bluegrid, -/area/ai) -"Rd" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/black{ - dir = 6 - }, -/turf/simulated/floor/bluegrid{ - name = "Mainframe Base"; - nitrogen = 100; - oxygen = 0; - temperature = 80 - }, -/area/tcommsat/chamber) -"Rg" = ( -/obj/structure/lattice, -/turf/simulated/open, -/area/maintenance/stellardelight/deck3/forestarroomb) -"Rh" = ( -/obj/structure/cable/green{ - icon_state = "1-8" - }, -/turf/simulated/wall/bay/r_wall/steel, -/area/maintenance/stellardelight/deck3/forestarrooma) -"Ri" = ( -/obj/structure/cable/blue{ - icon_state = "1-2" - }, -/obj/random/trash_pile, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardfore) -"Rj" = ( -/obj/machinery/door/firedoor/glass, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/door/airlock/angled_bay/standard/glass{ - name = "maintenance access" - }, -/obj/structure/cable/blue{ - icon_state = "1-2" - }, -/turf/simulated/floor/tiled/steel_ridged, -/area/stellardelight/deck2/starboard) -"Rl" = ( -/obj/structure/disposalpipe/sortjunction/flipped{ - dir = 4; - name = "Command Offices"; - sortType = "Command Offices" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/effect/landmark{ - name = "lightsout" - }, -/turf/simulated/floor/tiled/monotile, -/area/stellardelight/deck3/commandhall) -"Rn" = ( -/obj/machinery/door/firedoor/glass, -/obj/structure/window/bay/reinforced, -/obj/structure/low_wall/bay/reinforced/blue, -/turf/simulated/floor, -/area/crew_quarters/heads/hop) -"Ro" = ( -/obj/machinery/door/firedoor/glass, -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/door/airlock/angled_bay/standard/glass/common{ - dir = 4; - name = "Long-Range Teleporter Access" - }, -/turf/simulated/floor/tiled/steel_ridged, -/area/stellardelight/deck3/transitgateway) -"Rq" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardaft) -"Ru" = ( -/obj/machinery/holoplant, -/obj/machinery/camera/network/command{ - dir = 4 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_upload) -"Rv" = ( -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"Rw" = ( -/obj/machinery/door/firedoor/glass/hidden/shuttle, -/obj/structure/window/fancy_shuttle{ - fancy_shuttle_tag = "sdboat" - }, -/turf/simulated/floor/reinforced/airless, -/area/shuttle/sdboat/aft{ - base_turf = /turf/simulated/floor/reinforced/airless - }) -"Rx" = ( -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/obj/structure/cable/green{ - icon_state = "2-4" - }, -/turf/simulated/floor/airless, -/area/stellardelight/deck3/exterior) -"Rz" = ( -/obj/structure/lattice, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 9 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 9 - }, -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 4 - }, -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/turf/simulated/open, -/area/stellardelight/deck2/starboard) -"RE" = ( -/turf/simulated/wall/bay/r_wall/steel, -/area/maintenance/stellardelight/deck3/starboardfore) -"RG" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/turf/simulated/open, -/area/stellardelight/deck2/starboard) -"RH" = ( -/obj/effect/floor_decal/techfloor/orange{ - dir = 1 - }, -/obj/machinery/power/apc/angled{ - dir = 1 - }, -/obj/structure/cable/green{ - icon_state = "0-2" - }, -/turf/simulated/floor/tiled/techfloor, -/area/stellardelight/deck3/transitgateway) -"RI" = ( -/turf/simulated/open, -/area/stellardelight/deck3/aft) -"RK" = ( -/obj/machinery/door/firedoor/glass, -/obj/structure/cable{ - icon_state = "1-2" - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardfore) -"RL" = ( -/turf/simulated/wall/bay/r_wall/steel, -/area/maintenance/stellardelight/deck3/foreportroomb) -"RM" = ( -/obj/structure/cable/green{ - icon_state = "1-8" - }, -/obj/machinery/atmospherics/unary/vent_scrubber/on{ - dir = 8 - }, -/obj/effect/mouse_hole_spawner{ - dir = 4 - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portcent) -"RN" = ( -/obj/structure/sign/directions/evac{ - pixel_x = 32 - }, -/obj/structure/closet/firecloset, -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 4 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"RQ" = ( -/obj/structure/table/standard, -/obj/machinery/atmospherics/unary/vent_pump/on{ - dir = 1 - }, -/turf/simulated/floor/bluegrid, -/area/ai_cyborg_station) -"RT" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/machinery/door/firedoor/glass, -/obj/machinery/door/airlock/angled_bay/hatch{ - dir = 4; - door_color = "#e6ab22"; - name = "Shield Generator"; - req_access = null; - req_one_access = list(11,24); - stripe_color = "#e6ab22" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/turf/simulated/floor/tiled/steel_ridged, -/area/stellardelight/deck2/central) -"RW" = ( -/obj/machinery/portable_atmospherics/canister/air, -/obj/machinery/atmospherics/portables_connector{ - dir = 1 - }, -/obj/machinery/door/window/southright{ - dir = 1; - req_one_access = list(11,67) - }, -/obj/effect/floor_decal/fancy_shuttle{ - fancy_shuttle_tag = "sdboat" - }, -/turf/simulated/floor/tiled, -/area/shuttle/sdboat/aft{ - base_turf = /turf/simulated/floor/reinforced/airless - }) -"RX" = ( -/turf/simulated/wall/bay/steel, -/area/stellardelight/deck2/central) -"RY" = ( -/obj/structure/bed/chair/shuttle{ - dir = 1 - }, -/obj/machinery/light{ - dir = 8 - }, -/obj/effect/floor_decal/fancy_shuttle{ - fancy_shuttle_tag = "sdboat" - }, -/turf/simulated/floor/tiled, -/area/shuttle/sdboat/aft{ - base_turf = /turf/simulated/floor/reinforced/airless - }) -"RZ" = ( -/obj/structure/cable/blue{ - icon_state = "1-2" - }, -/obj/structure/sign/warning/caution{ - desc = "This secure area is guarded by LETHAL LASER TURRETS. Authorized personnel ONLY."; - name = "\improper WARNING: LETHAL TURRETS AHEAD"; - pixel_x = -32 - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_server_room) -"Sb" = ( -/turf/simulated/floor/tiled/techfloor/grid, -/area/maintenance/stellardelight/deck3/forestarrooma) -"Se" = ( -/obj/effect/floor_decal/industrial/warning/corner, -/turf/simulated/floor/airless, -/area/stellardelight/deck3/exterior) -"Sf" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 9 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"Sh" = ( -/obj/structure/closet/crate/bin{ - anchored = 1 - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/foreportrooma) -"Sk" = ( -/obj/structure/table/standard, -/obj/item/weapon/phone{ - pixel_x = 3; - pixel_y = 11 - }, -/obj/machinery/atmospherics/unary/vent_scrubber/on{ - dir = 8 - }, -/obj/machinery/alarm/angled{ - dir = 8 - }, -/turf/simulated/floor/bluegrid, -/area/ai_cyborg_station) -"Sl" = ( -/obj/structure/sign/warning/evac{ - pixel_x = -32; - pixel_y = -32 - }, -/obj/effect/floor_decal/steeldecal/steel_decals5, -/obj/structure/cable{ - icon_state = "4-8" - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"Sm" = ( -/obj/structure/cable/blue{ - icon_state = "1-2" - }, -/turf/simulated/floor/bluegrid{ - name = "Mainframe Base"; - nitrogen = 100; - oxygen = 0; - temperature = 80 - }, -/area/tcommsat/chamber) -"Sn" = ( -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 4 - }, -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 8 - }, -/obj/effect/floor_decal/steeldecal/steel_decals_central5{ - dir = 8 - }, -/obj/structure/cable{ - icon_state = "1-8" - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/portdock) -"Sp" = ( -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/foreportrooma) -"Sw" = ( -/obj/machinery/alarm/angled{ - dir = 8 - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portaft) -"Sz" = ( -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portcent) -"SA" = ( -/obj/structure/table/darkglass, -/obj/machinery/computer/skills{ - dir = 8; - pixel_y = 6 - }, -/turf/simulated/floor/carpet/blue2, -/area/lawoffice) -"SB" = ( -/obj/machinery/requests_console/preset/ce{ - pixel_x = -30 - }, -/turf/simulated/floor/carpet/oracarpet, -/area/crew_quarters/heads/chief) -"SC" = ( -/obj/structure/sign/warning/docking_area{ - pixel_y = 32 - }, -/turf/simulated/floor/reinforced/airless, -/area/stellardelight/deck3/exterior) -"SD" = ( -/obj/machinery/atmospherics/portables_connector{ - dir = 8 - }, -/obj/machinery/portable_atmospherics/canister/air/airlock, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portcent) -"SE" = ( -/obj/machinery/newscaster{ - layer = 3.3; - pixel_x = 27 - }, -/turf/simulated/floor/carpet/blue2, -/area/lawoffice) -"SF" = ( -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 1 - }, -/obj/item/device/radio/intercom{ - dir = 1; - pixel_y = 24 - }, -/obj/machinery/vending/nifsoft_shop, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"SJ" = ( -/obj/machinery/door/firedoor/glass/hidden/shuttle, -/obj/structure/window/fancy_shuttle{ - fancy_shuttle_tag = "sdboat" - }, -/turf/simulated/floor/reinforced/airless, -/area/shuttle/sdboat/fore{ - base_turf = /turf/simulated/floor/reinforced/airless - }) -"SK" = ( -/obj/structure/lattice, -/turf/space, -/area/space) -"SL" = ( -/obj/machinery/recharge_station, -/turf/simulated/floor/bluegrid, -/area/ai_cyborg_station) -"SN" = ( -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 1 - }, -/obj/effect/floor_decal/steeldecal/steel_decals4{ - dir = 5 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"SP" = ( -/obj/structure/table/glass, -/obj/machinery/photocopier/faxmachine{ - department = "CMO's Office" - }, -/turf/simulated/floor/tiled/eris/white/cargo, -/area/crew_quarters/heads/cmo) -"SQ" = ( -/obj/machinery/disposal/wall{ - dir = 8 - }, -/obj/structure/disposalpipe/trunk{ - dir = 8 - }, -/turf/simulated/floor/tiled/monotile, -/area/stellardelight/deck3/commandhall) -"SR" = ( -/obj/machinery/door/firedoor/glass, -/obj/structure/window/bay/reinforced, -/obj/structure/low_wall/bay/reinforced/steel, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/foreportrooma) -"ST" = ( -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 1 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/portdock) -"SU" = ( -/obj/structure/table/bench/padded, -/obj/structure/sign/painting/public{ - pixel_y = -30 - }, -/turf/simulated/floor/wood, -/area/stellardelight/deck3/cafe) -"SV" = ( -/obj/structure/cable/blue{ - icon_state = "4-8" - }, -/turf/simulated/floor/airless, -/area/maintenance/stellardelight/deck3/starboardcent) -"SZ" = ( -/obj/machinery/power/apc/angled{ - dir = 4 - }, -/obj/structure/cable/blue{ - icon_state = "0-8" - }, -/turf/simulated/floor/tiled/eris/dark/gray_platform, -/area/stellardelight/deck3/commandhall) -"Ta" = ( -/obj/machinery/door/firedoor/glass, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/door/airlock/angled_bay/hatch{ - name = "maintenance access"; - stripe_color = "#454545" - }, -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/turf/simulated/floor/tiled/steel_ridged, -/area/crew_quarters/bar) -"Tc" = ( -/obj/structure/bed/chair{ - dir = 8 - }, -/obj/structure/closet/emergsuit_wall{ - dir = 4; - pixel_x = 27 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/portdock) -"Td" = ( -/obj/structure/table/rack/shelf, -/obj/random/contraband, -/obj/random/contraband, -/obj/random/maintenance, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/forestarroomb) -"Te" = ( -/obj/effect/landmark/map_data/stellar_delight, -/turf/space, -/area/space) -"Tf" = ( -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/door/firedoor/glass, -/obj/machinery/door/airlock/angled_bay/double/glass{ - name = "glass airlock" - }, -/turf/simulated/floor/tiled/steel_ridged, -/area/stellardelight/deck3/aft) -"Ti" = ( -/obj/structure/cable/blue{ - icon_state = "1-2" - }, -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/forestarrooma) -"Tj" = ( -/obj/structure/table/reinforced, -/obj/machinery/button/remote/blast_door{ - desc = "A remote control-switch for shutters."; - dir = 4; - id = "hop_office_desk"; - layer = 3.3; - name = "Desk Privacy Shutter"; - pixel_x = -4; - pixel_y = 4 - }, -/obj/machinery/atmospherics/unary/vent_pump/on{ - dir = 1 - }, -/turf/simulated/floor/tiled, -/area/crew_quarters/heads/hop) -"Tk" = ( -/obj/machinery/door/firedoor/glass, -/obj/structure/window/bay/reinforced, -/obj/structure/cable/blue{ - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/low_wall/bay/reinforced/blue, -/turf/simulated/floor, -/area/crew_quarters/heads/hop) -"Tl" = ( -/obj/structure/bed/chair/office/dark{ - dir = 8 - }, -/obj/item/device/radio/intercom{ - dir = 1; - name = "Station Intercom (General)"; - pixel_y = 24 - }, -/obj/effect/landmark/start/hop, -/turf/simulated/floor/carpet, -/area/crew_quarters/heads/hop) -"Tm" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/turf/simulated/floor/tiled/monotile, -/area/stellardelight/deck3/commandhall) -"Tn" = ( -/obj/structure/cable/blue{ - icon_state = "1-2" - }, -/turf/simulated/floor, -/area/ai_cyborg_station) -"To" = ( -/obj/machinery/keycard_auth{ - pixel_y = 28 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 6 - }, -/obj/machinery/alarm/angled{ - dir = 4 - }, -/turf/simulated/floor/tiled/eris/white/cargo, -/area/crew_quarters/heads/cmo) -"Tp" = ( -/obj/structure/table/glass, -/obj/machinery/light, -/turf/simulated/floor/tiled/eris/white/cargo, -/area/crew_quarters/heads/cmo) -"Tr" = ( -/obj/machinery/drone_fabricator, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_cyborg_station) -"Ts" = ( -/obj/structure/cable/blue{ - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/power/apc/angled{ - cell_type = /obj/item/weapon/cell/super; - dir = 8; - name = "night shift APC"; - nightshift_setting = 2 - }, -/obj/structure/cable/blue, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardcent) -"Tv" = ( -/obj/machinery/door/firedoor/glass, -/obj/structure/cable/blue{ - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/door/airlock/angled_bay/standard/color{ - dir = 4; - door_color = "#9fccc7"; - fill_color = "#333333"; - id_tag = null; - name = "Internal Affairs"; - req_access = list(38); - stripe_color = "#ffffff" - }, -/turf/simulated/floor/tiled/steel_ridged, -/area/lawoffice) -"Tx" = ( -/obj/machinery/light/small, -/turf/simulated/open, -/area/stellardelight/deck2/central) -"Ty" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/turf/simulated/floor, -/area/ai_cyborg_station) -"TA" = ( -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 4 - }, -/turf/simulated/wall/bay/r_wall/steel, -/area/stellardelight/deck3/aft) -"TB" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 5 - }, -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 8 - }, -/obj/structure/cable{ - icon_state = "1-2" - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"TE" = ( -/obj/machinery/power/pointdefense{ - id_tag = "sd_pd" - }, -/obj/effect/floor_decal/industrial/warning/full, -/obj/structure/cable/green{ - icon_state = "0-4" - }, -/turf/simulated/floor/airless, -/area/stellardelight/deck3/exterior) -"TF" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/turf/simulated/floor/tiled/monotile, -/area/stellardelight/deck3/commandhall) -"TI" = ( -/obj/machinery/atmospherics/unary/vent_scrubber/on{ - dir = 8 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai) -"TJ" = ( -/obj/structure/sign/department/telecoms{ - pixel_y = 32 - }, -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 1 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"TK" = ( -/obj/structure/cable/cyan{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/turf/simulated/floor/bluegrid, -/area/ai) -"TL" = ( -/turf/simulated/floor/bluegrid, -/area/ai) -"TM" = ( -/obj/machinery/turretid/lethal{ - ailock = 1; - control_area = /area/tcommsat/chamber; - desc = "A firewall prevents AIs from interacting with this device."; - name = "Telecoms lethal turret control"; - pixel_y = 29; - req_access = list(61); - req_one_access = list() - }, -/obj/effect/floor_decal/industrial/warning/corner{ - dir = 1 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_server_room) -"TO" = ( -/obj/machinery/atmospherics/unary/vent_pump/on, -/obj/effect/landmark/vermin, -/turf/simulated/floor/tiled/monotile, -/area/stellardelight/deck3/commandhall) -"TP" = ( -/obj/structure/cable/blue{ - icon_state = "4-8" - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardfore) -"TS" = ( -/obj/structure/cable/blue{ - icon_state = "4-8" - }, -/obj/structure/cable/blue{ - icon_state = "2-8" - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/forestarroomb) -"TV" = ( -/obj/structure/cable/blue{ - icon_state = "4-8" - }, -/obj/structure/cable/blue{ - icon_state = "1-8" - }, -/turf/simulated/floor/airless, -/area/stellardelight/deck3/exterior) -"TW" = ( -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/manifold/hidden{ - dir = 8 - }, -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 4 - }, -/obj/effect/floor_decal/steeldecal/steel_decals_central5{ - dir = 4 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/portdock) -"TY" = ( -/obj/structure/cable/blue{ - icon_state = "1-2" - }, -/obj/machinery/light{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_server_room) -"Ub" = ( -/obj/machinery/vending/boozeomat{ - req_access = null - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/maintenance/stellardelight/deck3/forestarroomb) -"Uc" = ( -/obj/structure/frame/computer, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/foreportrooma) -"Ud" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/stamp/ce, -/obj/item/weapon/book/manual/sd_guide, -/turf/simulated/floor/carpet/oracarpet, -/area/crew_quarters/heads/chief) -"Ue" = ( -/obj/structure/table/rack, -/obj/random/contraband, -/obj/random/maintenance, -/obj/random/drinkbottle, -/obj/random/maintenance/engineering, -/obj/random/maintenance/engineering, -/obj/random/mre, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/forestarroomb) -"Uf" = ( -/obj/structure/cable/blue{ - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/turf/simulated/floor/tiled/techfloor/grid, -/area/tcommsat/computer) -"Ug" = ( -/obj/structure/cable/blue{ - icon_state = "4-8" - }, -/turf/simulated/wall/bay/r_wall/steel, -/area/maintenance/stellardelight/deck3/starboardcent) -"Uj" = ( -/obj/structure/cable/blue, -/obj/structure/cable/blue{ - icon_state = "0-2" - }, -/obj/machinery/power/smes/buildable{ - RCon_tag = "Substation - AI/Telecomms"; - output_attempt = 0 - }, -/turf/simulated/floor, -/area/ai_cyborg_station) -"Uk" = ( -/obj/machinery/computer/card, -/turf/simulated/floor/tiled, -/area/crew_quarters/heads/hop) -"Uq" = ( -/turf/simulated/floor/tiled/techfloor/grid, -/area/maintenance/stellardelight/deck3/foreportrooma) -"Uw" = ( -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/obj/structure/cable/green{ - icon_state = "2-4" - }, -/turf/simulated/floor/airless, -/area/stellardelight/deck3/exterior) -"Uy" = ( -/obj/machinery/atmospherics/unary/vent_pump/on, -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 1 - }, -/obj/machinery/station_map{ - pixel_y = 32 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"UA" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/turf/simulated/floor, -/area/stellardelight/deck2/fore) -"UB" = ( -/obj/structure/cable/blue{ - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 5 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/light_switch{ - dir = 8; - pixel_x = 24; - pixel_y = 24 - }, -/turf/simulated/floor/tiled/dark, -/area/crew_quarters/heads/hos) -"UD" = ( -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 9 - }, -/turf/simulated/wall/fancy_shuttle{ - fancy_shuttle_tag = "sdboat" - }, -/area/shuttle/sdboat/aft{ - base_turf = /turf/simulated/floor/reinforced/airless - }) -"UF" = ( -/obj/machinery/light/small, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/forestarroomb) -"UG" = ( -/obj/structure/cable/blue{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/structure/cable/blue{ - icon_state = "1-4" - }, -/turf/simulated/floor/tiled/eris/dark/gray_platform, -/area/stellardelight/deck3/commandhall) -"UH" = ( -/obj/structure/sign/painting/library_secure{ - pixel_x = -30 - }, -/turf/simulated/floor/carpet, -/area/crew_quarters/heads/hos) -"UI" = ( -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 4 - }, -/obj/item/device/radio/intercom{ - dir = 4; - pixel_x = 24 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"UK" = ( -/obj/machinery/camera/network/telecom{ - dir = 4 - }, -/turf/simulated/floor/bluegrid{ - name = "Mainframe Base"; - nitrogen = 100; - oxygen = 0; - temperature = 80 - }, -/area/tcommsat/chamber) -"UL" = ( -/obj/machinery/door/firedoor/glass, -/obj/machinery/door/airlock/angled_bay/double{ - name = "maintenance access"; - stripe_color = "#454545" - }, -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portfore) -"UO" = ( -/obj/machinery/recharge_station, -/obj/item/device/radio/intercom{ - dir = 8; - pixel_x = -24 - }, -/turf/simulated/floor/bluegrid, -/area/ai_upload) -"UQ" = ( -/obj/machinery/door/firedoor/glass, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardaft) -"UR" = ( -/obj/effect/floor_decal/industrial/warning{ - dir = 1 - }, -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/obj/structure/cable/green{ - icon_state = "2-8" - }, -/turf/simulated/floor/airless, -/area/stellardelight/deck3/exterior) -"US" = ( -/obj/structure/lattice, -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/turf/simulated/open, -/area/crew_quarters/bar) -"UT" = ( -/obj/structure/table/steel_reinforced, -/obj/item/weapon/paper_bin{ - pixel_x = -3; - pixel_y = 7 - }, -/obj/item/device/megaphone, -/obj/item/weapon/pen/multi, -/obj/item/device/radio/intercom/department/security{ - dir = 1; - pixel_y = 24 - }, -/obj/machinery/atmospherics/unary/vent_scrubber/on{ - dir = 4 - }, -/turf/simulated/floor/tiled/dark, -/area/crew_quarters/heads/hos) -"UU" = ( -/obj/machinery/alarm/angled{ - dir = 4 - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardfore) -"UV" = ( -/obj/machinery/atmospherics/unary/vent_pump/on{ - dir = 4 - }, -/obj/structure/closet/emergsuit_wall{ - dir = 8; - pixel_x = -27 - }, -/obj/effect/landmark/vines, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/portdock) -"UX" = ( -/obj/machinery/light/small, -/turf/simulated/open, -/area/crew_quarters/bar) -"Va" = ( -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/turf/simulated/wall/bay/r_wall/steel, -/area/maintenance/stellardelight/deck3/portfore) -"Vb" = ( -/obj/effect/floor_decal/corner_techfloor_grid{ - dir = 5 - }, -/obj/effect/floor_decal/corner_techfloor_grid{ - dir = 10 - }, -/obj/machinery/light/floortube{ - dir = 8; - pixel_x = -3 - }, -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/turf/simulated/floor/tiled/techfloor, -/area/stellardelight/deck3/cryo) -"Vc" = ( -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 8 - }, -/obj/structure/cable{ - icon_state = "4-8" - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/portdock) -"Ve" = ( -/obj/structure/cable/blue{ - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 5 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/light_switch{ - dir = 8; - pixel_x = 24; - pixel_y = 24 - }, -/turf/simulated/floor/tiled, -/area/crew_quarters/heads/chief) -"Vg" = ( -/obj/machinery/door/firedoor/glass, -/obj/structure/window/bay/reinforced, -/obj/structure/low_wall/bay/reinforced/steel, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardfore) -"Vh" = ( -/obj/machinery/door/firedoor/glass/hidden/shuttle, -/obj/machinery/door/blast/shuttle/open{ - id = "shuttleshutter" - }, -/obj/structure/window/fancy_shuttle{ - fancy_shuttle_tag = "sdboat" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/fuel{ - dir = 6 - }, -/turf/simulated/floor/reinforced/airless, -/area/shuttle/sdboat/aft{ - base_turf = /turf/simulated/floor/reinforced/airless - }) -"Vi" = ( -/obj/structure/cable/green{ - icon_state = "2-8" - }, -/obj/structure/closet/crate, -/obj/random/contraband, -/obj/random/maintenance, -/obj/random/maintenance, -/obj/random/maintenance, -/obj/random/maintenance, -/obj/random/maintenance, -/obj/item/device/gps, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/forestarrooma) -"Vk" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/effect/landmark/start/mime, -/turf/simulated/floor/carpet/bcarpet, -/area/stellardelight/deck3/clownmimeoffice) -"Vm" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/turf/simulated/open, -/area/crew_quarters/bar) -"Vo" = ( -/obj/machinery/door/firedoor/glass, -/obj/machinery/door/airlock/angled_bay/external/glass{ - dir = 4; - frequency = 1380; - id_tag = null; - locked = 1; - name = "Docking Port Airlock" - }, -/obj/effect/map_helper/airlock/door/ext_door, -/obj/machinery/access_button{ - command = "cycle_exterior"; - dir = 8; - frequency = 1380; - master_tag = "sd_escape_starboard"; - pixel_y = 32; - req_one_access = list(13) - }, -/turf/simulated/floor/tiled/steel_ridged, -/area/stellardelight/deck3/starboarddock) -"Vp" = ( -/obj/structure/lattice, -/obj/machinery/light/small, -/turf/simulated/open, -/area/stellardelight/deck2/starboard) -"Vq" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 5 - }, -/turf/simulated/floor/tiled/monotile, -/area/stellardelight/deck3/commandhall) -"Vr" = ( -/obj/machinery/atmospherics/unary/vent_pump/on{ - dir = 1 - }, -/obj/structure/table/reinforced, -/obj/item/weapon/paper_bin{ - pixel_x = -3; - pixel_y = 7 - }, -/obj/item/weapon/folder/yellow_ce, -/obj/item/weapon/pen/multi, -/obj/machinery/atmospherics/unary/vent_pump/on{ - dir = 1 - }, -/turf/simulated/floor/tiled, -/area/crew_quarters/heads/chief) -"Vs" = ( -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai) -"Vt" = ( -/obj/item/device/radio/intercom/locked/ai_private{ - dir = 4; - pixel_x = 32 - }, -/turf/simulated/floor/tiled/techfloor, -/area/ai_cyborg_station) -"Vw" = ( -/obj/structure/bed/chair/shuttle{ - dir = 1 - }, -/obj/effect/floor_decal/fancy_shuttle{ - fancy_shuttle_tag = "sdboat" - }, -/turf/simulated/floor/tiled, -/area/shuttle/sdboat/aft{ - base_turf = /turf/simulated/floor/reinforced/airless - }) -"Vx" = ( -/obj/structure/cable/blue{ - icon_state = "1-4" - }, -/obj/effect/landmark{ - name = "maint_pred" - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/maintenance/stellardelight/deck3/forestarroomb) -"Vz" = ( -/obj/machinery/power/pointdefense{ - id_tag = "sd_pd" - }, -/obj/effect/floor_decal/industrial/warning/full, -/obj/structure/cable/green{ - icon_state = "0-8" - }, -/obj/structure/cable/green{ - icon_state = "0-4" - }, -/turf/simulated/floor/airless, -/area/stellardelight/deck3/exterior) -"VB" = ( -/obj/item/weapon/bedsheet/double, -/obj/structure/bed/double/padded, -/obj/structure/curtain/black{ - color = "#156363" - }, -/obj/effect/landmark/start/cmo, -/turf/simulated/floor/carpet/tealcarpet, -/area/crew_quarters/heads/cmo) -"VC" = ( -/turf/simulated/wall/bay/r_wall/blue, -/area/ai_upload) -"VD" = ( -/obj/structure/table/steel, -/obj/random/drinkbottle, -/obj/machinery/chemical_dispenser/bar_alc/full, -/turf/simulated/floor/tiled/techfloor/grid, -/area/maintenance/stellardelight/deck3/foreportroomb) -"VE" = ( -/obj/structure/table/glass, -/obj/item/device/radio/intercom/department/medbay{ - dir = 1; - pixel_y = 24 - }, -/obj/item/weapon/paper_bin{ - pixel_x = 3; - pixel_y = 7 - }, -/obj/item/weapon/pen/multi, -/obj/machinery/atmospherics/unary/vent_scrubber/on{ - dir = 8 - }, -/obj/item/weapon/folder/white_cmo, -/turf/simulated/floor/tiled/eris/white/cargo, -/area/crew_quarters/heads/cmo) -"VG" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 10 - }, -/obj/item/device/radio/intercom{ - dir = 4; - pixel_x = 24 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai) -"VK" = ( -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/obj/structure/cable/green{ - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/alarm/angled{ - dir = 4 - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portcent) -"VM" = ( -/obj/machinery/power/pointdefense{ - id_tag = "sd_pd" - }, -/obj/effect/floor_decal/industrial/warning/full, -/obj/structure/cable/green, -/turf/simulated/floor/airless, -/area/stellardelight/deck3/exterior) -"VN" = ( -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 1 - }, -/obj/effect/floor_decal/steeldecal/steel_decals4{ - dir = 4 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"VQ" = ( -/obj/machinery/door/firedoor/glass, -/obj/machinery/door/airlock/angled_bay/secure{ - name = "Nuclear Fission Device Storage"; - req_access = list(16) - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/turf/simulated/floor/tiled/steel_ridged, -/area/ai) -"VR" = ( -/obj/machinery/atmospherics/pipe/simple/hidden, -/turf/simulated/floor/airless, -/area/maintenance/stellardelight/deck3/portcent) -"VS" = ( -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 5 - }, -/turf/simulated/wall/bay/r_wall/steel, -/area/stellardelight/deck3/aft) -"VW" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_server_room) -"VZ" = ( -/obj/structure/table/rack, -/obj/random/maintenance, -/obj/random/maintenance/clean, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/aftstarroom) -"Wa" = ( -/turf/simulated/floor/carpet, -/area/crew_quarters/heads/hop) -"Wd" = ( -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/obj/structure/cable/green{ - icon_state = "1-4" - }, -/turf/simulated/floor/airless, -/area/stellardelight/deck3/exterior) -"Wf" = ( -/obj/machinery/disposal/wall, -/obj/structure/disposalpipe/trunk, -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 1 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"Wg" = ( -/obj/structure/bed/chair/shuttle{ - dir = 1 - }, -/obj/structure/closet/emergsuit_wall{ - dir = 1; - pixel_y = -32 - }, -/obj/item/device/radio/intercom{ - dir = 4; - pixel_x = 24 - }, -/obj/effect/floor_decal/fancy_shuttle{ - fancy_shuttle_tag = "sdboat" - }, -/turf/simulated/floor/tiled, -/area/shuttle/sdboat/aft{ - base_turf = /turf/simulated/floor/reinforced/airless - }) -"Wi" = ( -/obj/structure/closet/secure_closet/personal, -/turf/simulated/floor/bluegrid, -/area/ai) -"Wj" = ( -/obj/machinery/computer/ship/helm/adv, -/obj/effect/floor_decal/fancy_shuttle{ - fancy_shuttle_tag = "sdboat" - }, -/turf/simulated/floor/tiled, -/area/shuttle/sdboat/fore{ - base_turf = /turf/simulated/floor/reinforced/airless - }) -"Wl" = ( -/obj/structure/sign/warning/falling{ - pixel_x = -32 - }, -/turf/simulated/open, -/area/stellardelight/deck2/port) -"Wn" = ( -/obj/machinery/power/smes/buildable{ - charge = 500000 - }, -/obj/effect/floor_decal/fancy_shuttle{ - fancy_shuttle_tag = "sdboat" - }, -/obj/structure/cable/green{ - icon_state = "0-4" - }, -/turf/simulated/floor/tiled, -/area/shuttle/sdboat/aft{ - base_turf = /turf/simulated/floor/reinforced/airless - }) -"Wp" = ( -/obj/machinery/atmospherics/unary/vent_pump/on, -/turf/simulated/open, -/area/stellardelight/deck2/central) -"Wq" = ( -/obj/structure/table/darkglass, -/obj/machinery/computer/skills{ - dir = 4; - pixel_y = 6 - }, -/turf/simulated/floor/carpet/blue2, -/area/lawoffice) -"Wr" = ( -/obj/machinery/atmospherics/pipe/manifold/hidden{ - dir = 4 - }, -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardaft) -"Ws" = ( -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/obj/structure/table/steel, -/obj/item/weapon/flame/candle, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portfore) -"Wt" = ( -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/obj/effect/floor_decal/spline/plain, -/obj/structure/table/bench/marble, -/turf/simulated/floor/lino, -/area/stellardelight/deck3/cafe) -"Wu" = ( -/obj/structure/sign/warning/docking_area{ - pixel_x = -32 - }, -/turf/simulated/floor/airless, -/area/stellardelight/deck3/exterior) -"Ww" = ( -/obj/structure/handrail{ - dir = 4 - }, -/obj/effect/map_helper/airlock/atmos/pump_out_internal, -/obj/machinery/light, -/obj/machinery/atmospherics/unary/vent_pump/high_volume{ - frequency = 1380; - id_tag = "sdboat_docker_pump_out_internal" - }, -/obj/effect/floor_decal/fancy_shuttle{ - fancy_shuttle_tag = "sdboat" - }, -/turf/simulated/floor/tiled, -/area/shuttle/sdboat/aft{ - base_turf = /turf/simulated/floor/reinforced/airless - }) -"Wx" = ( -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 4 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"Wy" = ( -/obj/machinery/camera/network/engineering{ - dir = 1 - }, -/obj/machinery/atmospherics/unary/vent_pump/on{ - dir = 1 - }, -/obj/machinery/alarm/angled{ - dir = 4 - }, -/obj/structure/table/steel_reinforced, -/obj/item/weapon/paper/sdshield, -/turf/simulated/floor, -/area/stellardelight/deck2/central) -"WA" = ( -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardcent) -"WB" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardfore) -"WD" = ( -/obj/structure/table/woodentable, -/turf/simulated/floor/wood, -/area/stellardelight/deck3/cafe) -"WF" = ( -/obj/structure/table/steel, -/obj/random/contraband, -/obj/random/maintenance/security, -/obj/random/maintenance/security, -/obj/random/maintenance/security, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/forestarrooma) -"WG" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 4 - }, -/turf/simulated/open, -/area/stellardelight/deck2/starboard) -"WH" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 6 - }, -/turf/simulated/floor/tiled/monotile, -/area/stellardelight/deck3/commandhall) -"WI" = ( -/obj/structure/bed/chair{ - dir = 1 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/maintenance/stellardelight/deck3/foreportrooma) -"WK" = ( -/turf/simulated/wall/fancy_shuttle{ - fancy_shuttle_tag = "sdboat" - }, -/area/shuttle/sdboat/fore{ - base_turf = /turf/simulated/floor/reinforced/airless - }) -"WL" = ( -/obj/structure/closet/crate, -/obj/random/contraband, -/obj/random/maintenance/clean, -/obj/random/maintenance/clean, -/obj/random/maintenance/clean, -/obj/random/maintenance/cargo, -/obj/random/maintenance/cargo, -/obj/random/drinksoft, -/obj/random/drinksoft, -/obj/random/mre, -/obj/random/mre, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/foreportrooma) -"WM" = ( -/obj/effect/landmark{ - name = "maint_pred" - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/foreportrooma) -"WN" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 9 - }, -/turf/simulated/floor/tiled/monotile, -/area/stellardelight/deck3/commandhall) -"WO" = ( -/turf/simulated/wall/bay/r_wall/blue, -/area/lawoffice) -"WQ" = ( -/obj/machinery/power/apc/angled{ - cell_type = /obj/item/weapon/cell/super; - dir = 4; - name = "night shift APC"; - nightshift_setting = 2 - }, -/obj/structure/cable/green{ - icon_state = "0-8" - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portcent) -"WU" = ( -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 4 - }, -/obj/effect/floor_decal/steeldecal/steel_decals4{ - dir = 5 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"WW" = ( -/obj/structure/bed/chair/office/dark{ - dir = 8 - }, -/obj/effect/landmark/start/iaa, -/turf/simulated/floor/carpet/blue2, -/area/lawoffice) -"WX" = ( -/obj/machinery/camera/network/command{ - dir = 10 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_cyborg_station) -"WZ" = ( -/obj/machinery/atmospherics/unary/vent_pump/on, -/obj/machinery/light/small{ - dir = 1 - }, -/obj/structure/flora/pottedplant/smalltree, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"Xa" = ( -/obj/item/device/radio/intercom{ - dir = 1; - name = "Station Intercom (General)"; - pixel_y = 24 - }, -/obj/structure/closet/secure_closet/CMO, -/obj/item/clothing/accessory/stethoscope, -/obj/item/device/flashlight/pen, -/obj/item/weapon/storage/belt/medical, -/obj/item/clothing/glasses/hud/health, -/obj/item/device/defib_kit/compact/combat/loaded, -/obj/item/weapon/cmo_disk_holder, -/obj/item/weapon/storage/secure/briefcase/ml3m_pack_cmo, -/obj/item/weapon/storage/mrebag/pill/sleevingcure, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/item/device/retail_scanner/medical, -/turf/simulated/floor/tiled/eris/white/cargo, -/area/crew_quarters/heads/cmo) -"Xb" = ( -/turf/simulated/floor/carpet/gaycarpet, -/area/stellardelight/deck3/clownmimeoffice) -"Xc" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/unary/vent_scrubber/on, -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/obj/effect/landmark/vermin, -/obj/effect/mouse_hole_spawner{ - dir = 8 - }, -/turf/simulated/open, -/area/crew_quarters/bar) -"Xd" = ( -/obj/machinery/atmospherics/pipe/manifold4w/hidden, -/turf/simulated/floor/airless, -/area/maintenance/stellardelight/deck3/starboardcent) -"Xe" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 8 - }, -/turf/simulated/open, -/area/stellardelight/deck2/fore) -"Xf" = ( -/obj/machinery/atmospherics/unary/vent_pump/on, -/turf/simulated/open, -/area/stellardelight/deck2/port) -"Xi" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/turf/simulated/floor/wood, -/area/stellardelight/deck3/cafe) -"Xl" = ( -/obj/machinery/door/firedoor/glass, -/obj/structure/window/bay/reinforced, -/obj/structure/low_wall/bay/reinforced/steel, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/foreportroomb) -"Xm" = ( -/obj/structure/table/alien{ - name = "fancy table" - }, -/obj/item/device/radio/intercom{ - dir = 1; - frequency = 1351; - name = "station intercom (Science)"; - pixel_y = 24 - }, -/obj/random/paicard{ - pixel_x = 4 - }, -/obj/item/weapon/paper_bin{ - pixel_x = 1; - pixel_y = 9 - }, -/obj/item/weapon/paper/monitorkey, -/obj/item/device/megaphone, -/obj/machinery/atmospherics/unary/vent_scrubber/on{ - dir = 8 - }, -/obj/item/weapon/folder/white_rd, -/turf/simulated/floor/tiled/techfloor, -/area/crew_quarters/heads/hor) -"Xo" = ( -/obj/structure/cable/blue{ - icon_state = "1-4" - }, -/obj/machinery/power/apc/angled{ - dir = 8 - }, -/obj/structure/cable/blue{ - icon_state = "0-4" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 5 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 5 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_server_room) -"Xr" = ( -/obj/structure/sign/warning/secure_area{ - pixel_y = 32 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_cyborg_station) -"Xv" = ( -/obj/structure/frame, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/foreportrooma) -"XA" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 10 - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/supply, -/turf/simulated/open, -/area/stellardelight/deck2/central) -"XB" = ( -/turf/simulated/wall/bay/steel, -/area/maintenance/stellardelight/substation/command) -"XC" = ( -/obj/machinery/atmospherics/unary/vent_pump/on{ - dir = 4 - }, -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 8 - }, -/obj/structure/cable{ - icon_state = "1-2" - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/portdock) -"XD" = ( -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 5 - }, -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 1 - }, -/obj/structure/sign/warning/evac{ - pixel_x = -32 - }, -/obj/effect/landmark{ - name = "lightsout" - }, -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 8 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/starboarddock) -"XE" = ( -/obj/machinery/door/firedoor/glass, -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/door/airlock/angled_bay/standard/glass/common{ - dir = 4; - name = "Cryogenic Storage" - }, -/turf/simulated/floor/tiled/steel_ridged, -/area/stellardelight/deck3/cryo) -"XF" = ( -/obj/structure/lattice, -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/turf/simulated/open, -/area/stellardelight/deck2/central) -"XG" = ( -/obj/structure/bed/chair{ - dir = 4 - }, -/turf/simulated/floor/carpet/tealcarpet, -/area/crew_quarters/heads/cmo) -"XH" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 10 - }, -/obj/structure/cable/green{ - icon_state = "2-8" - }, -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/turf/simulated/open, -/area/crew_quarters/bar) -"XI" = ( -/obj/structure/cable/green{ - icon_state = "1-8" - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/maintenance/stellardelight/deck3/foreportroomb) -"XJ" = ( -/obj/machinery/power/apc/angled{ - dir = 8 - }, -/obj/structure/cable/blue, -/turf/simulated/floor/tiled/dark, -/area/lawoffice) -"XK" = ( -/turf/simulated/wall/bay/r_wall/blue, -/area/ai_server_room) -"XO" = ( -/obj/machinery/computer/security, -/obj/machinery/status_display{ - pixel_y = 32 - }, -/turf/simulated/floor/tiled/dark, -/area/crew_quarters/heads/hos) -"XT" = ( -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portfore) -"XV" = ( -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/foreportroomb) -"XX" = ( -/obj/machinery/holoplant, -/obj/machinery/atmospherics/unary/vent_scrubber/on{ - dir = 4 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/tcommsat/computer) -"XY" = ( -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/obj/structure/frame, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/foreportrooma) -"XZ" = ( -/obj/machinery/door/firedoor/glass, -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 10 - }, -/obj/machinery/door/airlock/angled_bay/external/glass{ - frequency = 1380; - id_tag = null; - locked = 1; - name = "Docking Port Airlock" - }, -/obj/effect/map_helper/airlock/door/int_door, -/obj/machinery/access_button{ - command = "cycle_interior"; - dir = 1; - frequency = 1380; - master_tag = "sd_escape_center_left"; - pixel_x = -32; - req_one_access = list(13) - }, -/turf/simulated/floor/tiled/steel_ridged, -/area/stellardelight/deck3/aft) -"Yb" = ( -/obj/machinery/atmospherics/unary/vent_pump/high_volume{ - dir = 4; - frequency = 1379; - id_tag = "portmaint_airpump" - }, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/simulated/floor/airless, -/area/maintenance/stellardelight/deck3/portcent) -"Yc" = ( -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/manifold/hidden{ - dir = 1 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"Yd" = ( -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 4 - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portaft) -"Yg" = ( -/turf/simulated/wall/bay/r_wall/steel, -/area/maintenance/stellardelight/deck3/portaft) -"Yj" = ( -/obj/structure/girder/displaced, -/turf/simulated/floor/tiled/techfloor/grid, -/area/maintenance/stellardelight/deck3/forestarroomb) -"Yk" = ( -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 9 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 9 - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portcent) -"Yl" = ( -/obj/structure/cable/green{ - icon_state = "2-8" - }, -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portfore) -"Ym" = ( -/obj/machinery/atmospherics/pipe/manifold/hidden{ - dir = 1 - }, -/turf/simulated/floor/airless, -/area/maintenance/stellardelight/deck3/portcent) -"Yo" = ( -/obj/structure/bed/chair/office/dark{ - dir = 4 - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/aftstarroom) -"Yp" = ( -/obj/machinery/button/remote/blast_door{ - desc = "A remote control-switch for shutters."; - id = "cafe"; - name = "Cafe Shutters"; - pixel_y = 28; - req_one_access = list(25) - }, -/turf/simulated/floor/lino, -/area/stellardelight/deck3/cafe) -"Ys" = ( -/obj/machinery/embedded_controller/radio/airlock/airlock_controller{ - dir = 4; - id_tag = "starmaint_airlock"; - pixel_x = -24; - req_access = null; - req_one_access = list(13); - tag_airpump = "starmaint_airpump"; - tag_chamber_sensor = "starmaint_sensor"; - tag_exterior_door = "starmaint_exterior"; - tag_interior_door = "starmaint_interior" - }, -/turf/simulated/floor/airless, -/area/maintenance/stellardelight/deck3/starboardcent) -"Yu" = ( -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/obj/structure/closet/crate, -/obj/random/contraband, -/obj/random/maintenance/research, -/obj/random/maintenance/research, -/obj/random/maintenance/research, -/obj/random/maintenance, -/obj/random/maintenance, -/obj/random/maintenance, -/obj/random/mre, -/obj/random/snack, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portfore) -"Yv" = ( -/obj/machinery/light_switch{ - dir = 4; - pixel_x = -25 - }, -/turf/simulated/floor/tiled, -/area/crew_quarters/heads/hop) -"Yw" = ( -/obj/structure/lattice, -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 6 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 6 - }, -/turf/simulated/open, -/area/stellardelight/deck2/port) -"Yx" = ( -/obj/structure/closet/emcloset, -/obj/random/maintenance/cargo, -/obj/random/maintenance/cargo, -/obj/random/maintenance/clean, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/starboardcent) -"Yy" = ( -/obj/structure/lattice, -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/turf/simulated/open, -/area/stellardelight/deck2/starboard) -"Yz" = ( -/turf/simulated/wall/bay/r_wall/steel, -/area/maintenance/stellardelight/deck3/portcent) -"YA" = ( -/obj/effect/floor_decal/steeldecal/steel_decals4{ - dir = 9 - }, -/obj/structure/cable{ - icon_state = "1-2" - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"YB" = ( -/obj/structure/cable/blue{ - icon_state = "1-2" - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/forestarroomb) -"YC" = ( -/obj/item/device/radio/intercom{ - dir = 1; - name = "Station Intercom (General)"; - pixel_y = 24 - }, -/obj/structure/closet/secure_closet/RD, -/obj/item/device/aicard, -/obj/item/clothing/glasses/omnihud/rnd, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/item/device/retail_scanner/science, -/turf/simulated/floor/tiled/techfloor, -/area/crew_quarters/heads/hor) -"YD" = ( -/obj/structure/table/steel, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portfore) -"YE" = ( -/obj/structure/table/standard, -/obj/random/soap, -/obj/machinery/power/apc/angled{ - dir = 1 - }, -/obj/structure/cable/green{ - icon_state = "0-4" - }, -/obj/machinery/light{ - dir = 8 - }, -/turf/simulated/floor/tiled, -/area/holodeck_control) -"YH" = ( -/obj/item/modular_computer/console/preset/command, -/obj/structure/sign/poster{ - dir = 8 - }, -/obj/machinery/newscaster{ - pixel_y = 28 - }, -/turf/simulated/floor/tiled, -/area/crew_quarters/heads/chief) -"YJ" = ( -/obj/structure/cable/green{ - icon_state = "2-4" - }, -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 6 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 6 - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portaft) -"YK" = ( -/obj/structure/window/reinforced{ - dir = 4; - pixel_x = 4 - }, -/turf/simulated/open, -/area/stellardelight/deck3/aft) -"YL" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/paper_bin{ - pixel_x = -3; - pixel_y = 7 - }, -/obj/item/weapon/folder/blue_hop, -/obj/item/weapon/pen, -/obj/machinery/light, -/turf/simulated/floor/tiled, -/area/crew_quarters/heads/hop) -"YN" = ( -/turf/simulated/wall/bay/r_wall/steel, -/area/stellardelight/deck3/portdock) -"YO" = ( -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ - dir = 1 - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portaft) -"YQ" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 10 - }, -/turf/simulated/floor/carpet/tealcarpet, -/area/crew_quarters/heads/cmo) -"YR" = ( -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 8 - }, -/obj/structure/cable{ - icon_state = "1-2" - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"YS" = ( -/obj/structure/table/steel, -/obj/random/coin/sometimes, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/aftstarroom) -"YU" = ( -/obj/structure/lattice, -/turf/simulated/open, -/area/crew_quarters/bar) -"Zd" = ( -/turf/simulated/wall/fancy_shuttle{ - fancy_shuttle_tag = "sdboat" - }, -/area/shuttle/sdboat/aft{ - base_turf = /turf/simulated/floor/reinforced/airless - }) -"Ze" = ( -/turf/simulated/floor/bluegrid{ - name = "Mainframe Base"; - nitrogen = 100; - oxygen = 0; - temperature = 80 - }, -/area/tcommsat/chamber) -"Zf" = ( -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ - dir = 8 - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portcent) -"Zi" = ( -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 4 - }, -/obj/effect/floor_decal/steeldecal/steel_decals4{ - dir = 4 - }, -/obj/effect/floor_decal/shuttles/right, -/obj/structure/cable{ - icon_state = "1-2" - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/portdock) -"Zj" = ( -/obj/structure/bed/chair, -/obj/machinery/status_display{ - pixel_y = 32 - }, -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 1 - }, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"Zk" = ( -/obj/machinery/light/small{ - dir = 8 - }, -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portfore) -"Zl" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/turf/simulated/open, -/area/stellardelight/deck2/port) -"Zm" = ( -/obj/structure/cable/blue{ - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/light_switch{ - dir = 4; - pixel_x = -24; - pixel_y = 29 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_cyborg_station) -"Zn" = ( -/obj/structure/bed/chair, -/turf/simulated/floor/tiled/techfloor/grid, -/area/maintenance/stellardelight/deck3/foreportrooma) -"Zp" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portcent) -"Zt" = ( -/obj/structure/lattice, -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/turf/simulated/open, -/area/stellardelight/deck2/central) -"Zu" = ( -/obj/effect/floor_decal/spline/plain{ - dir = 6 - }, -/obj/structure/table/bench/marble, -/turf/simulated/floor/lino, -/area/stellardelight/deck3/cafe) -"Zw" = ( -/obj/machinery/porta_turret/ai_defense, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 9 - }, -/turf/simulated/floor/bluegrid, -/area/ai) -"ZB" = ( -/obj/machinery/alarm/angled{ - dir = 4 - }, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/portaft) -"ZC" = ( -/obj/machinery/atmospherics/unary/vent_pump/on{ - dir = 8 - }, -/turf/simulated/open, -/area/stellardelight/deck2/starboard) -"ZE" = ( -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 4 - }, -/obj/machinery/hologram/holopad, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/aft) -"ZF" = ( -/obj/structure/bed/chair{ - dir = 8 - }, -/turf/simulated/floor/carpet/oracarpet, -/area/crew_quarters/heads/chief) -"ZH" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 1 - }, -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/obj/machinery/hologram/holopad, -/turf/simulated/floor/tiled, -/area/stellardelight/deck3/starboarddock) -"ZK" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/turf/simulated/floor/tiled/monotile, -/area/stellardelight/deck3/commandhall) -"ZL" = ( -/obj/machinery/door/firedoor/glass, -/obj/structure/window/bay/reinforced, -/obj/machinery/door/blast/angled/open{ - dir = 4; - id = "readingroom3" - }, -/obj/structure/low_wall/bay/reinforced/steel, -/turf/simulated/floor, -/area/stellardelight/deck3/readingroom) -"ZM" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 4 - }, -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/turf/simulated/open, -/area/stellardelight/deck2/starboard) -"ZN" = ( -/obj/item/device/radio/intercom{ - dir = 4; - pixel_x = 24 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai) -"ZQ" = ( -/obj/machinery/door/firedoor/glass, -/obj/structure/window/bay/reinforced, -/obj/structure/low_wall/bay/reinforced/steel, -/turf/simulated/floor, -/area/maintenance/stellardelight/deck3/forestarrooma) -"ZS" = ( -/obj/machinery/atmospherics/unary/vent_scrubber/on{ - dir = 8 - }, -/turf/simulated/open, -/area/stellardelight/deck2/port) -"ZV" = ( -/obj/machinery/door/firedoor/glass, -/obj/structure/window/bay/reinforced, -/obj/machinery/door/blast/angled/open{ - dir = 4; - id = "readingroom1" - }, -/obj/structure/low_wall/bay/reinforced/steel, -/turf/simulated/floor, -/area/stellardelight/deck3/readingroom) -"ZX" = ( -/obj/machinery/light{ - dir = 8 - }, -/obj/machinery/atmospherics/unary/vent_pump/on{ - dir = 4 - }, -/turf/simulated/floor/tiled/techfloor/grid, -/area/ai_upload) -"ZZ" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/turf/simulated/floor, -/area/stellardelight/deck2/fore) +"aa" = (/obj/effect/landmark{name = "morphspawn"},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/aftstarroom) +"ab" = (/obj/structure/railing/grey{dir = 8},/turf/simulated/floor/tiled/monotile,/area/stellardelight/deck3/commandhall) +"ac" = (/obj/effect/landmark{name = "morphspawn"},/turf/simulated/floor/tiled/techfloor/grid,/area/maintenance/stellardelight/deck3/forestarroomb) +"ad" = (/turf/simulated/wall/bay/r_wall/blue,/area/tcommsat/chamber) +"ae" = (/obj/structure/railing/grey{dir = 4},/turf/simulated/floor/tiled/monotile,/area/stellardelight/deck3/commandhall) +"af" = (/obj/structure/cable/green{icon_state = "1-2"},/turf/simulated/floor/airless,/area/stellardelight/deck3/exterior) +"ag" = (/turf/simulated/floor/tiled/monotile,/area/stellardelight/deck3/aft) +"ah" = (/obj/structure/sign/directions/stairs_down{pixel_x = 32; pixel_y = 18},/obj/structure/sign/directions/medical{pixel_x = 32; pixel_y = 12},/obj/structure/sign/directions/engineering{pixel_x = 32; pixel_y = 6},/obj/structure/sign/directions/cargo{pixel_x = 32},/obj/structure/railing/grey{dir = 4},/turf/simulated/floor/tiled/monotile,/area/stellardelight/deck3/aft) +"ai" = (/obj/machinery/door/firedoor/glass,/obj/structure/window/bay/reinforced,/obj/structure/low_wall/bay/reinforced/steel,/turf/simulated/floor,/area/stellardelight/deck3/portdock) +"aj" = (/obj/effect/landmark/free_ai_shell,/turf/simulated/floor/carpet/turcarpet,/area/ai) +"ak" = (/obj/structure/sign/directions/stairs_down{pixel_x = -32; pixel_y = 18},/obj/structure/sign/directions/medical{pixel_x = -32; pixel_y = 12},/obj/structure/sign/directions/engineering{pixel_x = -32; pixel_y = 6},/obj/structure/sign/directions/cargo{pixel_x = -32},/obj/structure/railing/grey{dir = 8},/turf/simulated/floor/tiled/monotile,/area/stellardelight/deck3/aft) +"al" = (/obj/machinery/power/terminal{dir = 8},/obj/structure/cable{icon_state = "0-4"},/turf/simulated/floor,/area/maintenance/stellardelight/substation/command) +"am" = (/obj/machinery/door/airlock/angled_bay/hatch{dir = 4; name = "maintenance access"; stripe_color = "#454545"},/obj/machinery/door/firedoor/glass,/obj/structure/cable/green{icon_state = "4-8"},/turf/simulated/floor/tiled/steel_ridged,/area/maintenance/stellardelight/deck3/forestarrooma) +"an" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled/techfloor/grid,/area/ai_cyborg_station) +"ao" = (/obj/machinery/computer/HolodeckControl{dir = 4},/obj/item/device/radio/intercom{dir = 8; pixel_x = -24},/turf/simulated/floor/tiled,/area/holodeck_control) +"ap" = (/obj/machinery/vending/altevian,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/forestarroomb) +"aq" = (/obj/structure/closet/walllocker_double/emergency_engi/south,/turf/simulated/floor,/area/stellardelight/deck2/fore) +"ar" = (/obj/structure/closet/walllocker_double/command/ce{dir = 4; pixel_x = 32},/turf/simulated/floor/tiled,/area/crew_quarters/heads/chief) +"as" = (/obj/structure/closet/walllocker_double/command/cmo{dir = 8; pixel_x = -32},/turf/simulated/floor/tiled/eris/white/cargo,/area/crew_quarters/heads/cmo) +"at" = (/obj/structure/table/darkglass,/turf/simulated/floor/tiled/dark,/area/lawoffice) +"au" = (/obj/item/weapon/book/manual/command_guide,/obj/item/weapon/book/manual/standard_operating_procedure,/obj/item/weapon/book/manual/security_space_law,/obj/structure/closet/walllocker_double/command/hos{dir = 4; pixel_x = 32},/turf/simulated/floor/tiled/dark,/area/crew_quarters/heads/hos) +"av" = (/obj/item/device/taperecorder{pixel_x = -3},/obj/item/weapon/circuitboard/aicore{pixel_x = -2; pixel_y = 4},/obj/item/weapon/circuitboard/teleporter,/obj/structure/closet/walllocker_double/command/rd{dir = 8; pixel_x = -32},/turf/simulated/floor/tiled/techfloor,/area/crew_quarters/heads/hor) +"aw" = (/obj/structure/cable/green{icon_state = "1-2"},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/aftstarroom) +"ax" = (/obj/item/weapon/book/manual/command_guide,/obj/item/weapon/book/manual/command_guide,/obj/item/weapon/book/manual/standard_operating_procedure,/obj/item/weapon/book/manual/standard_operating_procedure,/obj/item/weapon/book/manual/security_space_law,/obj/item/weapon/book/manual/security_space_law,/obj/structure/closet/walllocker_double/command/iaa{dir = 4; pixel_x = 32},/turf/simulated/floor/tiled/dark,/area/lawoffice) +"ay" = (/obj/item/weapon/book/manual/command_guide,/obj/item/weapon/book/manual/command_guide,/obj/item/weapon/book/manual/standard_operating_procedure,/obj/item/weapon/book/manual/standard_operating_procedure,/obj/item/weapon/book/manual/security_space_law,/obj/item/weapon/book/manual/security_space_law,/obj/structure/closet/walllocker_double/command/iaa{dir = 8; pixel_x = -32},/turf/simulated/floor/tiled/dark,/area/lawoffice) +"az" = (/obj/item/device/megaphone,/obj/item/weapon/book/manual/standard_operating_procedure,/obj/item/weapon/book/manual/command_guide,/obj/structure/table/reinforced,/obj/item/weapon/folder/red,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/structure/closet/walllocker_double/command/north,/turf/simulated/floor/carpet,/area/crew_quarters/heads/hop) +"aA" = (/turf/simulated/wall/bay/r_wall/steel,/area/stellardelight/deck3/transitgateway) +"aB" = (/obj/machinery/door/firedoor/glass,/obj/structure/window/bay/reinforced,/obj/structure/low_wall/bay/reinforced/steel,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardcent) +"aC" = (/obj/structure/lattice,/obj/structure/closet/walllocker_double/emergency_engi/east,/turf/simulated/open,/area/stellardelight/deck2/starboard) +"aD" = (/obj/structure/table/steel,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/forestarrooma) +"aE" = (/obj/structure/lattice,/obj/structure/closet/walllocker_double/emergency_engi/south,/turf/simulated/open,/area/stellardelight/deck2/port) +"aF" = (/obj/structure/lattice,/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/green{icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/structure/closet/walllocker_double/emergency_engi/south,/turf/simulated/open,/area/stellardelight/deck2/port) +"aG" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"aH" = (/obj/machinery/account_database{dir = 8},/obj/structure/sign/painting/library_secure{pixel_x = 30},/turf/simulated/floor/tiled,/area/crew_quarters/heads/hop) +"aJ" = (/obj/machinery/door/firedoor/glass,/obj/structure/window/bay/reinforced,/obj/structure/low_wall/bay/reinforced/steel,/turf/simulated/floor,/area/stellardelight/deck2/starboard) +"aK" = (/obj/structure/cable/blue{icon_state = "1-4"},/obj/machinery/camera/network/command{dir = 10},/turf/simulated/floor/tiled,/area/crew_quarters/heads/hop) +"aM" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/turf/simulated/floor,/area/stellardelight/deck2/central) +"aN" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/obj/structure/cable/blue{icon_state = "1-2"},/turf/simulated/open,/area/stellardelight/deck2/starboard) +"aP" = (/obj/structure/bed/chair/shuttle{dir = 1},/obj/structure/closet/emergsuit_wall{dir = 1; pixel_y = -32},/obj/machinery/alarm{dir = 4; pixel_x = -28},/obj/effect/floor_decal/fancy_shuttle{fancy_shuttle_tag = "sdboat"},/turf/simulated/floor/tiled,/area/shuttle/sdboat/aft{base_turf = /turf/simulated/floor/reinforced/airless}) +"aQ" = (/turf/simulated/floor/tiled/eris/dark/gray_platform,/area/stellardelight/deck3/commandhall) +"aS" = (/turf/simulated/floor,/area/maintenance/stellardelight/deck3/forestarrooma) +"aX" = (/obj/structure/sign/deck3{pixel_x = 32},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 4},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"ba" = (/obj/machinery/atmospherics/unary/vent_pump/on,/obj/effect/landmark/vines,/turf/simulated/open,/area/stellardelight/deck2/fore) +"bb" = (/obj/effect/floor_decal/techfloor/orange{dir = 8},/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor/tiled/techfloor,/area/stellardelight/deck3/transitgateway) +"bd" = (/obj/structure/closet,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portaft) +"be" = (/obj/machinery/door/firedoor/glass/hidden/shuttle,/obj/machinery/door/blast/shuttle/open{dir = 4; id = "shuttleshutter"},/obj/structure/window/fancy_shuttle{fancy_shuttle_tag = "sdboat"},/turf/simulated/floor/reinforced/airless,/area/shuttle/sdboat/fore{base_turf = /turf/simulated/floor/reinforced/airless}) +"bg" = (/obj/machinery/door/firedoor/glass,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/door/airlock/angled_bay/standard/color{dir = 4; door_color = "#323d80"; fill_color = "#313866"; id_tag = "hopdoor"; name = "Head of Personnel"; req_access = list(57); stripe_color = "#a3d1d1"},/turf/simulated/floor/tiled/steel_ridged,/area/crew_quarters/heads/hop) +"bh" = (/obj/structure/cable{icon_state = "4-8"},/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/angled_bay/hatch{dir = 4; door_color = "#e6ab22"; name = "Command Substation"; req_one_access = list(10); stripe_color = "#e6ab22"},/turf/simulated/floor/tiled/steel_ridged,/area/maintenance/stellardelight/deck3/starboardfore) +"bj" = (/obj/structure/flora/pottedplant/stoutbush,/turf/simulated/floor/tiled/dark,/area/lawoffice) +"bl" = (/obj/structure/lattice,/obj/structure/cable/green{icon_state = "32-2"},/obj/machinery/door/firedoor/glass,/turf/simulated/open,/area/maintenance/stellardelight/deck3/portcent) +"bm" = (/obj/structure/cable{icon_state = "4-8"},/obj/structure/cable{icon_state = "1-4"},/turf/simulated/floor,/area/maintenance/stellardelight/substation/command) +"bn" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/turf/simulated/open,/area/stellardelight/deck2/fore) +"bp" = (/obj/effect/floor_decal/industrial/warning{dir = 4},/obj/structure/cable/green{icon_state = "2-8"},/turf/simulated/floor/airless,/area/stellardelight/deck3/exterior) +"br" = (/obj/structure/lattice,/obj/structure/cable{icon_state = "32-2"},/obj/structure/disposalpipe/down,/obj/machinery/door/firedoor/glass,/turf/simulated/open,/area/maintenance/stellardelight/deck3/starboardcent) +"bs" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/turf/simulated/floor/tiled/techfloor/grid,/area/ai) +"bx" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/carpet/purcarpet,/area/crew_quarters/heads/hor) +"by" = (/turf/simulated/wall/bay/r_wall/steel,/area/maintenance/stellardelight/deck3/starboardaft) +"bB" = (/obj/structure/cable{icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardcent) +"bC" = (/obj/structure/closet/crate,/obj/random/maintenance,/obj/random/maintenance,/obj/random/maintenance,/obj/random/maintenance,/obj/random/maintenance,/obj/random/maintenance/medical,/obj/random/maintenance/medical,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portfore) +"bE" = (/turf/simulated/floor/glass/reinforced,/area/stellardelight/deck3/commandhall) +"bI" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/obj/structure/cable/blue{icon_state = "2-4"},/turf/simulated/open,/area/stellardelight/deck2/fore) +"bJ" = (/obj/structure/table/steel,/obj/item/weapon/flame/candle,/turf/simulated/floor/tiled/techfloor/grid,/area/maintenance/stellardelight/deck3/forestarrooma) +"bK" = (/obj/machinery/camera/network/command,/turf/simulated/floor/bluegrid,/area/ai) +"bL" = (/obj/machinery/media/jukebox/hacked,/obj/machinery/status_display{pixel_y = 32},/turf/simulated/floor/tiled/techfloor/grid,/area/ai) +"bM" = (/obj/effect/floor_decal/emblem/nt1,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/turf/simulated/floor/tiled/techfloor/grid,/area/ai_upload) +"bO" = (/obj/structure/table/darkglass,/obj/item/weapon/clipboard,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/turf/simulated/floor/tiled/dark,/area/lawoffice) +"bP" = (/obj/machinery/atmospherics/pipe/manifold/hidden,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portcent) +"bQ" = (/obj/structure/cable/blue{icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/turf/simulated/floor/tiled/techfloor/grid,/area/ai_cyborg_station) +"bS" = (/obj/structure/cable{icon_state = "2-4"},/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardcent) +"bT" = (/obj/machinery/door/firedoor/glass,/obj/structure/cable{icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor,/area/stellardelight/deck2/central) +"bU" = (/turf/simulated/wall/bay{desc = "It has a blue stripe! A huge chunk of metal used to seperate rooms."; stripe_color = "#2e2aa1"},/area/stellardelight/deck3/commandhall) +"bV" = (/obj/machinery/alarm/angled,/turf/simulated/open,/area/crew_quarters/bar) +"bW" = (/obj/structure/table/standard,/obj/item/toy/plushie/ipc/toaster,/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor/bluegrid,/area/ai_cyborg_station) +"bY" = (/obj/structure/table/woodentable,/obj/machinery/door/blast/shutters{dir = 4; id = "cafe"; layer = 3.1; name = "Cafe Shutters"},/turf/simulated/floor/lino,/area/stellardelight/deck3/cafe) +"bZ" = (/obj/machinery/ntnet_relay,/turf/simulated/floor/tiled/dark{nitrogen = 100; oxygen = 0; temperature = 80},/area/tcommsat/chamber) +"ca" = (/obj/structure/lattice,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/obj/effect/landmark/vines,/turf/simulated/open,/area/crew_quarters/bar) +"cb" = (/turf/simulated/wall/bay/r_wall/blue,/area/crew_quarters/heads/chief) +"cc" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/turf/simulated/floor/tiled/techfloor/grid,/area/tcommsat/computer) +"ch" = (/obj/machinery/vending/wardrobe/mimedrobe,/turf/simulated/floor/carpet/bcarpet,/area/stellardelight/deck3/clownmimeoffice) +"ci" = (/obj/machinery/door/firedoor/glass,/obj/structure/cable/blue{icon_state = "4-8"},/obj/machinery/door/airlock/angled_bay/secure{dir = 4; name = "Robotic Storage"; req_access = list(16)},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/turf/simulated/floor/tiled/steel_ridged,/area/ai_cyborg_station) +"ck" = (/obj/structure/cable/green{icon_state = "2-8"},/obj/structure/cable/green{icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/structure/sign/painting/public{pixel_y = 30},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 1},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"cm" = (/obj/machinery/exonet_node{anchored = 1},/turf/simulated/floor/tiled/dark{nitrogen = 100; oxygen = 0; temperature = 80},/area/tcommsat/chamber) +"cn" = (/obj/structure/cable/green{icon_state = "2-8"},/obj/structure/cable/green{icon_state = "4-8"},/obj/effect/floor_decal/fancy_shuttle{fancy_shuttle_tag = "sdboat"},/turf/simulated/floor/tiled,/area/shuttle/sdboat/aft{base_turf = /turf/simulated/floor/reinforced/airless}) +"cp" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/machinery/light/small,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portaft) +"cq" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 1},/obj/structure/cable/green{icon_state = "1-2"},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"cs" = (/obj/structure/bed/chair{dir = 8},/turf/simulated/floor/glass/reinforced,/area/stellardelight/deck3/aft) +"ct" = (/obj/machinery/door/firedoor/glass,/obj/structure/cable/blue{icon_state = "4-8"},/obj/machinery/door/airlock/angled_bay/secure{dir = 4; name = "AI Storage"; req_access = list(16)},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled/steel_ridged,/area/ai_cyborg_station) +"cu" = (/obj/structure/sign/directions/evac{pixel_x = -32},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 8},/obj/structure/flora/pottedplant/smalltree,/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"cw" = (/obj/structure/cable/blue{icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled/techfloor/grid,/area/ai_upload) +"cx" = (/obj/machinery/computer/timeclock/premade/north,/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 1},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"cy" = (/obj/machinery/recharge_station,/obj/structure/closet/emergsuit_wall{pixel_y = 29},/turf/simulated/floor/tiled,/area/stellardelight/deck3/starboarddock) +"cz" = (/obj/structure/cable{icon_state = "1-8"},/turf/simulated/wall/bay/r_wall/blue,/area/ai_cyborg_station) +"cA" = (/obj/structure/bed/chair{dir = 8},/obj/machinery/light,/turf/simulated/floor/glass/reinforced,/area/stellardelight/deck3/aft) +"cH" = (/obj/machinery/power/apc/angled{dir = 8; name = "night shift APC"; nightshift_setting = 2},/obj/structure/cable/green{icon_state = "0-4"},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/foreportroomb) +"cI" = (/obj/effect/floor_decal/techfloor{dir = 8},/obj/structure/cable/green{icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled/techfloor,/area/stellardelight/deck3/cryo) +"cK" = (/obj/structure/cable/green{icon_state = "2-4"},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portfore) +"cL" = (/obj/structure/cable/blue{icon_state = "1-2"},/obj/structure/cable/blue{icon_state = "2-4"},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardfore) +"cO" = (/obj/machinery/holoplant,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/machinery/status_display{pixel_x = 32},/turf/simulated/floor/tiled/techfloor/grid,/area/tcommsat/computer) +"cP" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled,/area/crew_quarters/heads/hop) +"cS" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portcent) +"cW" = (/obj/machinery/atmospherics/unary/vent_pump{external_pressure_bound = 140; external_pressure_bound_default = 140; icon_state = "map_vent_out"; pressure_checks = 0; pressure_checks_default = 0; use_power = 1},/turf/simulated/floor/bluegrid{name = "Mainframe Base"; nitrogen = 100; oxygen = 0; temperature = 80},/area/tcommsat/chamber) +"cY" = (/obj/machinery/telecomms/broadcaster/preset_right/sd,/turf/simulated/floor/tiled/dark{nitrogen = 100; oxygen = 0; temperature = 80},/area/tcommsat/chamber) +"cZ" = (/obj/machinery/light/small{dir = 8},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/foreportrooma) +"db" = (/obj/structure/lattice,/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/turf/simulated/open,/area/stellardelight/deck2/starboard) +"df" = (/obj/structure/cable/green{icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 1},/turf/simulated/floor/tiled,/area/stellardelight/deck3/starboarddock) +"dh" = (/obj/effect/floor_decal/industrial/warning/corner{dir = 8},/turf/simulated/floor/airless,/area/stellardelight/deck3/exterior) +"dj" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals_central5{dir = 1; pixel_y = 1},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"dk" = (/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 4; frequency = 1379; id_tag = "starmaint_airpump"},/obj/machinery/camera/network/civilian,/turf/simulated/floor/airless,/area/maintenance/stellardelight/deck3/starboardcent) +"dn" = (/obj/item/device/radio/intercom{dir = 8; pixel_x = -24},/turf/simulated/floor/tiled/techfloor/grid,/area/ai_server_room) +"do" = (/obj/machinery/papershredder,/turf/simulated/floor/tiled,/area/crew_quarters/heads/hop) +"dr" = (/obj/machinery/light{dir = 4},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"du" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/angled_bay/hatch{dir = 4; name = "maintenance access"; stripe_color = "#454545"},/obj/structure/cable/blue{icon_state = "4-8"},/turf/simulated/floor/tiled/steel_ridged,/area/maintenance/stellardelight/deck3/forestarrooma) +"dw" = (/obj/structure/cable/green{icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 1},/obj/structure/cable/green{icon_state = "1-2"},/turf/simulated/floor/tiled,/area/stellardelight/deck3/portdock) +"dx" = (/turf/simulated/wall/bay/steel,/area/maintenance/stellardelight/deck3/forestarroomb) +"dy" = (/obj/effect/floor_decal/industrial/warning,/obj/structure/cable/blue{icon_state = "2-8"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/manifold4w/hidden/supply,/turf/simulated/floor/tiled/techfloor/grid,/area/tcommsat/computer) +"dB" = (/obj/effect/floor_decal/industrial/warning/corner{dir = 4},/obj/structure/cable/green{icon_state = "1-4"},/turf/simulated/floor/airless,/area/stellardelight/deck3/exterior) +"dD" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/turf/simulated/floor/carpet,/area/crew_quarters/heads/hos) +"dE" = (/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portaft) +"dF" = (/obj/structure/cable/green{icon_state = "4-8"},/obj/effect/floor_decal/emblem/nt1,/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"dH" = (/obj/structure/table/steel_reinforced,/obj/machinery/recharger{pixel_y = 4},/obj/machinery/light,/turf/simulated/floor/tiled/dark,/area/crew_quarters/heads/hos) +"dL" = (/obj/structure/cable/green{icon_state = "4-8"},/obj/structure/table/steel,/turf/simulated/floor/tiled/techfloor/grid,/area/maintenance/stellardelight/deck3/foreportroomb) +"dM" = (/obj/structure/closet/firecloset,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portaft) +"dN" = (/obj/machinery/door/firedoor/glass,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/door/airlock/angled_bay/hatch{name = "maintenance access"; stripe_color = "#454545"},/turf/simulated/floor/tiled/steel_ridged,/area/crew_quarters/bar) +"dQ" = (/obj/machinery/door/firedoor/glass/hidden/shuttle,/obj/machinery/door/blast/shuttle/open{id = "shuttleshutter"},/obj/structure/window/fancy_shuttle{fancy_shuttle_tag = "sdboat"},/turf/simulated/floor/reinforced/airless,/area/shuttle/sdboat/aft{base_turf = /turf/simulated/floor/reinforced/airless}) +"dS" = (/obj/machinery/camera/network/command{dir = 4},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/turf/simulated/floor/carpet/turcarpet,/area/ai) +"dT" = (/obj/machinery/light/small{dir = 8},/turf/simulated/open,/area/stellardelight/deck2/port) +"dU" = (/turf/simulated/wall/bay/blue,/area/lawoffice) +"dV" = (/obj/effect/floor_decal/industrial/warning/corner{dir = 8},/obj/machinery/holoplant,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/obj/machinery/light_switch{dir = 8; pixel_x = 24},/turf/simulated/floor/tiled/techfloor/grid,/area/tcommsat/computer) +"dY" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/carpet,/area/crew_quarters/heads/hos) +"dZ" = (/obj/machinery/light_switch{dir = 8; pixel_x = 24; pixel_y = 24},/turf/simulated/floor/tiled/dark,/area/lawoffice) +"ea" = (/obj/structure/table/bench/padded,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/wood,/area/stellardelight/deck3/cafe) +"eb" = (/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 4; frequency = 1379; id_tag = "starmaint_airpump"},/turf/simulated/floor/airless,/area/maintenance/stellardelight/deck3/starboardcent) +"ed" = (/obj/structure/closet,/obj/random/firstaid,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portaft) +"eg" = (/obj/machinery/porta_turret/ai_defense,/obj/structure/cable/blue{icon_state = "1-2"},/turf/simulated/floor/bluegrid,/area/ai) +"eh" = (/obj/structure/cable/green{icon_state = "2-8"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portcent) +"ei" = (/obj/machinery/light{dir = 4},/turf/simulated/floor/tiled/steel_grid,/area/stellardelight/deck3/aft) +"ej" = (/obj/effect/floor_decal/techfloor/orange{dir = 1},/obj/structure/closet/emergsuit_wall{pixel_y = 29},/turf/simulated/floor/tiled/techfloor,/area/stellardelight/deck3/transitgateway) +"ek" = (/obj/machinery/camera/network/halls{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 4},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/structure/cable{icon_state = "1-8"},/turf/simulated/floor/tiled,/area/stellardelight/deck3/portdock) +"el" = (/obj/machinery/pda_multicaster/prebuilt,/turf/simulated/floor/tiled/dark{nitrogen = 100; oxygen = 0; temperature = 80},/area/tcommsat/chamber) +"em" = (/obj/structure/cable/blue{icon_state = "4-8"},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/forestarrooma) +"en" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 1},/obj/structure/cable/green{icon_state = "1-2"},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"eo" = (/obj/machinery/power/apc/angled{dir = 4},/obj/structure/cable/blue{icon_state = "0-2"},/turf/simulated/floor/bluegrid{name = "Mainframe Base"; nitrogen = 100; oxygen = 0; temperature = 80},/area/tcommsat/chamber) +"ep" = (/obj/structure/cable{icon_state = "2-4"},/turf/simulated/floor,/area/ai_cyborg_station) +"et" = (/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/machinery/light/small,/turf/simulated/floor/airless,/area/stellardelight/deck3/portdock) +"eu" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/bluegrid,/area/ai) +"ev" = (/obj/machinery/door/firedoor/glass,/obj/structure/cable/blue{icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/door/airlock/angled_bay/standard/color{dir = 4; door_color = "#323d80"; fill_color = "#313866"; id_tag = "rddoor"; name = "Research Director"; req_access = list(30); stripe_color = "#5a19a8"},/turf/simulated/floor/tiled/steel_ridged,/area/crew_quarters/heads/hor) +"ew" = (/obj/structure/cable/green{icon_state = "1-2"},/obj/structure/cable/green{icon_state = "2-8"},/turf/simulated/floor/airless,/area/stellardelight/deck3/exterior) +"ex" = (/obj/structure/cable/green{icon_state = "1-2"},/obj/machinery/light{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 8},/turf/simulated/floor/tiled,/area/stellardelight/deck3/starboarddock) +"ey" = (/obj/structure/cable/green{icon_state = "4-8"},/turf/simulated/floor/tiled/techfloor/grid,/area/maintenance/stellardelight/deck3/foreportroomb) +"ez" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/angled_bay/double{name = "maintenance access"; stripe_color = "#454545"},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardfore) +"eC" = (/obj/machinery/telecomms/receiver/preset_right/sd,/turf/simulated/floor/tiled/dark{nitrogen = 100; oxygen = 0; temperature = 80},/area/tcommsat/chamber) +"eD" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/turf/simulated/floor/tiled,/area/crew_quarters/heads/hop) +"eE" = (/obj/machinery/alarm/angled{dir = 4},/obj/structure/table/rack,/obj/random/maintenance,/obj/random/drinkbottle,/obj/random/snack,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/forestarroomb) +"eF" = (/obj/structure/table/rack,/obj/random/maintenance,/obj/random/maintenance,/obj/random/maintenance/clean,/obj/random/maintenance/clean,/obj/random/maintenance/engineering,/obj/random/maintenance/medical,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portfore) +"eI" = (/obj/structure/cable/green{icon_state = "1-4"},/turf/simulated/wall/bay/r_wall/steel,/area/crew_quarters/bar) +"eJ" = (/turf/simulated/wall/fancy_shuttle/nondense{fancy_shuttle_tag = "sdboat"},/area/shuttle/sdboat/fore{base_turf = /turf/simulated/floor/reinforced/airless}) +"eK" = (/obj/machinery/atmospherics/unary/vent_pump{external_pressure_bound = 0; external_pressure_bound_default = 0; icon_state = "map_vent_in"; initialize_directions = 1; internal_pressure_bound = 4000; internal_pressure_bound_default = 4000; pressure_checks = 2; pressure_checks_default = 2; pump_direction = 0; use_power = 1},/turf/simulated/floor/bluegrid{name = "Mainframe Base"; nitrogen = 100; oxygen = 0; temperature = 80},/area/tcommsat/chamber) +"eL" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/obj/machinery/camera/network/command{dir = 4},/turf/simulated/floor/tiled/eris/dark/gray_platform,/area/stellardelight/deck3/commandhall) +"eN" = (/obj/structure/cable/green{icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"eP" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/angled_bay/standard/color/common{dir = 4; name = "Holodeck"},/turf/simulated/floor/tiled/steel_ridged,/area/holodeck_control) +"eQ" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/turf/simulated/open,/area/stellardelight/deck2/starboard) +"eR" = (/obj/structure/table/steel,/turf/simulated/floor/tiled/techfloor/grid,/area/maintenance/stellardelight/deck3/forestarrooma) +"eS" = (/obj/structure/cable/blue{icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled/techfloor/grid,/area/ai_cyborg_station) +"eU" = (/obj/structure/table/woodentable,/obj/machinery/door/blast/shutters{dir = 2; id = "cafe"; layer = 3.1; name = "Cafe Shutters"},/turf/simulated/floor/lino,/area/stellardelight/deck3/cafe) +"eV" = (/obj/structure/lattice,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/obj/structure/cable/green{icon_state = "4-8"},/turf/simulated/open,/area/crew_quarters/bar) +"eX" = (/obj/structure/cable/green{icon_state = "1-8"},/turf/simulated/floor/airless,/area/stellardelight/deck3/exterior) +"eY" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/open,/area/stellardelight/deck2/starboard) +"fa" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/carpet/oracarpet,/area/crew_quarters/heads/chief) +"fb" = (/obj/structure/cable/blue{icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/turf/simulated/floor/tiled/techfloor/grid,/area/ai_server_room) +"fd" = (/obj/item/weapon/reagent_containers/food/drinks/cup{pixel_x = 8; pixel_y = 8},/obj/item/weapon/reagent_containers/food/drinks/cup{pixel_x = -4; pixel_y = 8},/obj/item/weapon/reagent_containers/food/drinks/cup{pixel_x = 8; pixel_y = -4},/obj/item/weapon/reagent_containers/food/drinks/cup{pixel_x = -4; pixel_y = -4},/obj/item/weapon/reagent_containers/food/drinks/cup{pixel_x = 8},/obj/item/weapon/reagent_containers/food/drinks/cup{pixel_x = -4},/obj/item/weapon/reagent_containers/food/drinks/cup{pixel_x = 8; pixel_y = 12},/obj/item/weapon/reagent_containers/food/drinks/cup{pixel_x = -4; pixel_y = 12},/obj/structure/table/woodentable,/obj/item/weapon/hand_labeler,/obj/machinery/alarm/angled,/obj/machinery/status_display{pixel_x = -32},/turf/simulated/floor/lino,/area/stellardelight/deck3/cafe) +"ff" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/angled_bay/hatch{dir = 4; name = "maintenance access"; stripe_color = "#454545"},/obj/structure/cable/green{icon_state = "4-8"},/turf/simulated/floor/tiled/steel_ridged,/area/maintenance/stellardelight/deck3/starboardaft) +"fg" = (/obj/structure/handrail{dir = 1},/obj/machinery/alarm{dir = 1; pixel_y = -28},/obj/effect/floor_decal/fancy_shuttle{fancy_shuttle_tag = "sdboat"},/turf/simulated/floor/tiled,/area/shuttle/sdboat/aft{base_turf = /turf/simulated/floor/reinforced/airless}) +"fh" = (/obj/structure/cable/green{icon_state = "4-8"},/obj/structure/cable/green{icon_state = "2-8"},/turf/simulated/floor/tiled/techfloor/grid,/area/maintenance/stellardelight/deck3/foreportroomb) +"fj" = (/obj/structure/table/woodentable,/obj/item/toy/figure/clown,/obj/item/weapon/pen/crayon/marker/rainbow,/obj/item/weapon/pen/crayon/rainbow,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/turf/simulated/floor/carpet/gaycarpet,/area/stellardelight/deck3/clownmimeoffice) +"fk" = (/obj/machinery/telecomms/server/presets/common,/turf/simulated/floor/tiled/dark{nitrogen = 100; oxygen = 0; temperature = 80},/area/tcommsat/chamber) +"fs" = (/obj/structure/cable/green{icon_state = "2-8"},/turf/simulated/wall/bay/r_wall/steel,/area/crew_quarters/bar) +"fv" = (/obj/machinery/holoplant,/obj/machinery/power/apc/angled{dir = 4},/obj/structure/cable/blue{icon_state = "0-8"},/turf/simulated/floor/tiled/techfloor/grid,/area/ai_upload) +"fz" = (/obj/effect/floor_decal/techfloor/orange,/obj/effect/landmark{name = "JoinLateGateway"},/turf/simulated/floor/tiled/techfloor,/area/stellardelight/deck3/transitgateway) +"fD" = (/obj/structure/table/rack,/obj/random/maintenance,/obj/random/maintenance/engineering,/obj/random/maintenance/engineering,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/forestarroomb) +"fE" = (/obj/structure/lattice,/obj/structure/cable{icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/turf/simulated/open,/area/stellardelight/deck2/starboard) +"fG" = (/obj/structure/cable/green{icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 1},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portcent) +"fM" = (/obj/machinery/power/terminal{dir = 8},/obj/structure/cable,/turf/simulated/floor,/area/ai_cyborg_station) +"fO" = (/obj/structure/cable/blue{icon_state = "2-4"},/obj/machinery/light{dir = 1},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/turf/simulated/floor/tiled,/area/crew_quarters/heads/hop) +"fP" = (/obj/machinery/space_heater,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portaft) +"fS" = (/turf/simulated/wall/bay/steel,/area/crew_quarters/heads/hop) +"fT" = (/obj/machinery/light_switch{dir = 4; pixel_x = -24; pixel_y = 24},/turf/simulated/floor/tiled/dark,/area/lawoffice) +"fW" = (/obj/structure/cable/green{icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 1},/turf/simulated/floor/tiled,/area/stellardelight/deck3/starboarddock) +"gb" = (/obj/structure/table/steel_reinforced,/obj/item/weapon/folder/red_hos,/turf/simulated/floor/carpet,/area/crew_quarters/heads/hos) +"gc" = (/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 4; frequency = 1379; id_tag = "portmaint_airpump"},/turf/simulated/floor/airless,/area/maintenance/stellardelight/deck3/portcent) +"gg" = (/obj/structure/lattice,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/effect/mouse_hole_spawner{dir = 4},/turf/simulated/open,/area/crew_quarters/bar) +"gh" = (/obj/machinery/telecomms/server/presets/command,/turf/simulated/floor/tiled/dark{nitrogen = 100; oxygen = 0; temperature = 80},/area/tcommsat/chamber) +"gi" = (/obj/machinery/atmospherics/pipe/simple/hidden/fuel,/turf/simulated/wall/fancy_shuttle{fancy_shuttle_tag = "sdboat"},/area/shuttle/sdboat/aft{base_turf = /turf/simulated/floor/reinforced/airless}) +"gj" = (/obj/structure/table/rack/shelf,/obj/item/weapon/disk/nifsoft/compliance,/obj/random/contraband,/obj/random/contraband,/obj/random/contraband,/obj/random/maintenance,/obj/random/maintenance,/obj/random/maintenance,/obj/random/maintenance,/obj/random/maintenance,/obj/random/snack,/turf/simulated/floor/tiled/techfloor/grid,/area/maintenance/stellardelight/deck3/foreportroomb) +"gk" = (/obj/structure/table/woodentable,/obj/random/paicard,/turf/simulated/floor/wood,/area/stellardelight/deck3/cafe) +"gl" = (/obj/structure/bed/chair/shuttle{dir = 1},/obj/structure/closet/emergsuit_wall{pixel_y = 32},/obj/effect/floor_decal/fancy_shuttle{fancy_shuttle_tag = "sdboat"},/turf/simulated/floor/tiled,/area/shuttle/sdboat/aft{base_turf = /turf/simulated/floor/reinforced/airless}) +"gm" = (/obj/structure/lattice,/obj/structure/cable/blue{icon_state = "4-8"},/turf/simulated/open,/area/stellardelight/deck2/fore) +"gq" = (/obj/effect/floor_decal/spline/plain{dir = 4},/obj/structure/closet/hydrant{pixel_y = 28},/turf/simulated/floor/lino,/area/stellardelight/deck3/cafe) +"gs" = (/obj/machinery/requests_console/preset/rd{pixel_x = 30},/turf/simulated/floor/carpet/purcarpet,/area/crew_quarters/heads/hor) +"gw" = (/obj/structure/cable/green{icon_state = "1-2"},/obj/structure/cable/green{icon_state = "1-4"},/turf/simulated/floor/airless,/area/stellardelight/deck3/exterior) +"gy" = (/obj/structure/closet/secure_closet/engineering_chief,/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = 24},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/item/device/retail_scanner/engineering,/turf/simulated/floor/tiled,/area/crew_quarters/heads/chief) +"gA" = (/obj/structure/cable/green{icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/green{icon_state = "1-4"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portcent) +"gB" = (/obj/machinery/power/pointdefense{id_tag = "sd_pd"},/obj/effect/floor_decal/industrial/warning/full,/obj/structure/cable/green{icon_state = "0-4"},/obj/structure/cable/green{icon_state = "0-8"},/turf/simulated/floor/airless,/area/stellardelight/deck3/exterior) +"gE" = (/obj/structure/table/darkglass,/obj/item/weapon/stamp/denied{pixel_x = 6; pixel_y = 6},/obj/item/weapon/stamp/internalaffairs,/turf/simulated/floor/carpet/blue2,/area/lawoffice) +"gG" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/green{icon_state = "4-8"},/turf/simulated/open,/area/stellardelight/deck2/fore) +"gH" = (/turf/simulated/floor,/area/ai_cyborg_station) +"gJ" = (/obj/structure/cable/green{icon_state = "4-8"},/obj/structure/cable/green{icon_state = "2-8"},/obj/structure/cable/green{icon_state = "2-4"},/turf/simulated/floor/airless,/area/stellardelight/deck3/exterior) +"gL" = (/obj/item/weapon/bedsheet/hosdouble,/obj/structure/bed/double/padded,/obj/structure/curtain/black{color = "#631915"},/obj/effect/landmark/start/hos,/turf/simulated/floor/carpet,/area/crew_quarters/heads/hos) +"gM" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 1},/turf/simulated/wall/bay/r_wall/steel,/area/stellardelight/deck3/aft) +"gN" = (/obj/structure/cable/blue{icon_state = "2-8"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/turf/simulated/floor/tiled/techfloor/grid,/area/ai) +"gO" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/structure/cable/blue{icon_state = "4-8"},/turf/simulated/open,/area/stellardelight/deck2/fore) +"gQ" = (/obj/machinery/power/smes/buildable{charge = 5e+006; input_attempt = 1; input_level = 200000; output_level = 200000},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/cable/cyan{icon_state = "0-4"},/obj/machinery/light{dir = 8},/turf/simulated/floor/bluegrid,/area/ai) +"gR" = (/obj/effect/floor_decal/techfloor/orange{dir = 6},/obj/machinery/light{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled/techfloor,/area/stellardelight/deck3/transitgateway) +"gS" = (/obj/structure/cable/cyan{icon_state = "2-8"},/turf/simulated/floor/tiled/techfloor/grid,/area/ai) +"gU" = (/obj/machinery/atmospherics/pipe/simple/hidden/black{dir = 5},/turf/simulated/floor/bluegrid{name = "Mainframe Base"; nitrogen = 100; oxygen = 0; temperature = 80},/area/tcommsat/chamber) +"gV" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/angled_bay/double/glass{name = "glass airlock"},/obj/structure/cable{icon_state = "1-2"},/turf/simulated/floor/tiled/steel_ridged,/area/stellardelight/deck3/aft) +"gW" = (/obj/machinery/atmospherics/pipe/simple/hidden/black{dir = 10},/turf/simulated/floor/bluegrid{name = "Mainframe Base"; nitrogen = 100; oxygen = 0; temperature = 80},/area/tcommsat/chamber) +"hb" = (/obj/structure/cable/green{icon_state = "1-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/wood,/area/stellardelight/deck3/cafe) +"hc" = (/obj/machinery/requests_console/preset/hos{pixel_x = -30},/turf/simulated/floor/carpet,/area/crew_quarters/heads/hos) +"hd" = (/obj/structure/cable/green{icon_state = "4-8"},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portaft) +"he" = (/obj/machinery/button/remote/airlock{id = "readingroom1"; name = "Room 1 Lock"; pixel_y = 24; specialfunctions = 4},/obj/machinery/button/remote/blast_door{id = "readingroom1"; name = "Window Lockdown"; pixel_x = -10; pixel_y = 24},/turf/simulated/floor/carpet,/area/stellardelight/deck3/readingroom) +"hf" = (/obj/structure/sign/warning/docking_area{pixel_x = -32},/turf/simulated/floor/reinforced/airless,/area/stellardelight/deck3/exterior) +"hg" = (/obj/effect/fancy_shuttle/sd_shuttle{dir = 1; fancy_shuttle_tag = "sdboat"},/obj/effect/fancy_shuttle_floor_preview/sd_shuttle{dir = 1},/turf/simulated/wall/fancy_shuttle{fancy_shuttle_tag = "sdboat"},/area/shuttle/sdboat/aft{base_turf = /turf/simulated/floor/reinforced/airless}) +"hj" = (/obj/machinery/portable_atmospherics/hydroponics,/turf/simulated/floor/tiled/techfloor/grid,/area/maintenance/stellardelight/deck3/foreportroomb) +"hk" = (/obj/effect/floor_decal/industrial/warning,/obj/structure/sign/warning/docking_area{pixel_y = 32},/turf/simulated/floor/airless,/area/stellardelight/deck3/exterior) +"hp" = (/obj/structure/table/glass,/obj/machinery/computer/med_data/laptop{dir = 4; pixel_y = 6},/turf/simulated/floor/carpet/tealcarpet,/area/crew_quarters/heads/cmo) +"hr" = (/obj/structure/cable{icon_state = "4-8"},/obj/machinery/light/small{dir = 1},/turf/simulated/floor,/area/maintenance/stellardelight/substation/command) +"ht" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled/techfloor/grid,/area/ai_upload) +"hu" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/carpet/blue2,/area/lawoffice) +"hw" = (/obj/machinery/telecomms/processor/preset_one,/turf/simulated/floor/tiled/dark{nitrogen = 100; oxygen = 0; temperature = 80},/area/tcommsat/chamber) +"hy" = (/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor/airless,/area/maintenance/stellardelight/deck3/starboardcent) +"hz" = (/obj/structure/cable/blue{icon_state = "1-2"},/turf/simulated/floor/tiled/techfloor/grid,/area/maintenance/stellardelight/deck3/forestarroomb) +"hB" = (/obj/structure/cable{icon_state = "1-2"},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardcent) +"hC" = (/obj/machinery/light/small{dir = 4},/turf/simulated/open,/area/stellardelight/deck2/fore) +"hD" = (/turf/simulated/wall/bay/r_wall/steel,/area/maintenance/stellardelight/deck3/foreportrooma) +"hE" = (/obj/structure/cable{icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/door/firedoor/glass,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardcent) +"hF" = (/obj/machinery/holoplant,/obj/machinery/light_switch{dir = 8; pixel_x = 24},/turf/simulated/floor/bluegrid,/area/ai_cyborg_station) +"hG" = (/obj/structure/sign/poster{dir = 4},/turf/simulated/floor,/area/stellardelight/deck2/port) +"hK" = (/obj/machinery/light{dir = 4},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/turf/simulated/floor/tiled/techfloor/grid,/area/ai_upload) +"hN" = (/obj/machinery/door/firedoor/glass,/obj/structure/window/bay/reinforced,/obj/structure/cable/green{icon_state = "1-2"},/obj/structure/low_wall/bay/reinforced/steel,/turf/simulated/floor,/area/stellardelight/deck3/portdock) +"hO" = (/obj/machinery/power/breakerbox/activated{RCon_tag = "Command Substation Bypass"},/turf/simulated/floor,/area/maintenance/stellardelight/substation/command) +"hP" = (/obj/structure/lattice,/obj/structure/cable{icon_state = "4-8"},/obj/structure/cable{icon_state = "2-4"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/turf/simulated/open,/area/stellardelight/deck2/starboard) +"hQ" = (/turf/simulated/wall/bay/r_wall/steel,/area/maintenance/stellardelight/deck3/aftstarroom) +"hR" = (/obj/structure/cable/green{icon_state = "1-8"},/obj/effect/floor_decal/fancy_shuttle{fancy_shuttle_tag = "sdboat"},/turf/simulated/floor/tiled,/area/shuttle/sdboat/aft{base_turf = /turf/simulated/floor/reinforced/airless}) +"hT" = (/obj/structure/cable/blue{icon_state = "4-8"},/turf/simulated/wall/bay/r_wall/steel,/area/maintenance/stellardelight/deck3/starboardfore) +"hU" = (/obj/structure/sign/painting/library_secure{pixel_x = 30},/turf/simulated/floor/carpet/purcarpet,/area/crew_quarters/heads/hor) +"hX" = (/turf/simulated/floor/carpet/oracarpet,/area/crew_quarters/heads/chief) +"hY" = (/obj/structure/cable/green{icon_state = "4-8"},/turf/simulated/floor,/area/stellardelight/deck2/port) +"hZ" = (/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 4},/obj/structure/sign/vacuum{pixel_x = 32; plane = -34},/turf/simulated/floor/tiled,/area/stellardelight/deck3/starboarddock) +"ib" = (/obj/machinery/atmospherics/pipe/simple/hidden/black{dir = 9},/turf/simulated/floor/bluegrid{name = "Mainframe Base"; nitrogen = 100; oxygen = 0; temperature = 80},/area/tcommsat/chamber) +"if" = (/obj/structure/cable{icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardaft) +"ii" = (/turf/simulated/floor,/area/maintenance/stellardelight/substation/command) +"ij" = (/obj/structure/bed/chair/office/dark{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/turf/simulated/floor/tiled,/area/crew_quarters/heads/hop) +"il" = (/turf/simulated/floor,/area/maintenance/stellardelight/deck3/foreportrooma) +"im" = (/obj/structure/cable/green{icon_state = "1-2"},/obj/structure/cable/green{icon_state = "1-8"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"in" = (/turf/simulated/wall/bay/r_wall/blue,/area/crew_quarters/heads/hop) +"ip" = (/obj/structure/cable{icon_state = "4-8"},/turf/simulated/floor/carpet/gaycarpet,/area/stellardelight/deck3/clownmimeoffice) +"ir" = (/obj/structure/cable/blue{icon_state = "4-8"},/turf/simulated/floor/tiled/techfloor/grid,/area/maintenance/stellardelight/deck3/forestarroomb) +"is" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/angled_bay/secure{name = "AI/Telecoms"; req_access = list(16)},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled/steel_ridged,/area/ai_upload) +"iv" = (/obj/machinery/alarm/angled{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardaft) +"iw" = (/obj/structure/cable{icon_state = "4-8"},/obj/structure/cable/green{icon_state = "1-2"},/obj/effect/floor_decal/fancy_shuttle{fancy_shuttle_tag = "sdboat"},/obj/machinery/atmospherics/pipe/simple/hidden/fuel{dir = 4},/turf/simulated/floor/tiled,/area/shuttle/sdboat/aft{base_turf = /turf/simulated/floor/reinforced/airless}) +"iy" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled/monotile,/area/stellardelight/deck3/commandhall) +"iz" = (/obj/structure/cable/green{icon_state = "1-2"},/obj/structure/bed/chair/sofa/corp/right{dir = 4},/obj/effect/landmark{name = "morphspawn"},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portfore) +"iC" = (/obj/structure/cryofeed{dir = 4},/obj/effect/floor_decal/corner_techfloor_grid{dir = 5},/obj/effect/floor_decal/corner_techfloor_grid{dir = 10},/turf/simulated/floor/tiled/techfloor,/area/stellardelight/deck3/cryo) +"iE" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/angled_bay/hatch{door_color = "#e6ab22"; name = "Shield Generator"; req_access = null; req_one_access = list(11,24); stripe_color = "#e6ab22"},/turf/simulated/floor/tiled/steel_ridged,/area/stellardelight/deck3/commandhall) +"iI" = (/obj/structure/cable/blue{icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/closet/emergsuit_wall{dir = 4; pixel_x = 27},/turf/simulated/floor/tiled/eris/dark/gray_platform,/area/stellardelight/deck3/commandhall) +"iJ" = (/obj/machinery/cryopod/robot,/obj/machinery/light{dir = 8},/turf/simulated/floor/bluegrid,/area/ai_cyborg_station) +"iK" = (/obj/machinery/power/terminal{dir = 1},/obj/structure/cable/blue{icon_state = "0-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/item/device/radio/intercom{dir = 8; pixel_x = -24},/turf/simulated/floor/tiled/techfloor/grid,/area/ai) +"iL" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled/techfloor/grid,/area/tcommsat/computer) +"iN" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/green{icon_state = "4-8"},/turf/simulated/open,/area/crew_quarters/bar) +"iP" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled,/area/crew_quarters/heads/hop) +"iQ" = (/obj/machinery/light/small{dir = 8},/turf/simulated/open,/area/stellardelight/deck2/fore) +"iR" = (/obj/structure/cable/cyan{icon_state = "1-2"},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/turf/simulated/floor/tiled/techfloor/grid,/area/ai) +"iS" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardaft) +"iV" = (/obj/structure/railing/grey{dir = 4},/turf/simulated/open,/area/stellardelight/deck3/commandhall) +"iW" = (/obj/structure/cable/green{icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"iY" = (/obj/machinery/power/pointdefense{id_tag = "sd_pd"},/obj/effect/floor_decal/industrial/warning/full,/obj/structure/cable/blue,/turf/simulated/floor/airless,/area/stellardelight/deck3/exterior) +"iZ" = (/obj/effect/floor_decal/industrial/warning{dir = 4},/obj/machinery/light/small,/turf/simulated/floor/airless,/area/stellardelight/deck3/starboarddock) +"ja" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/structure/cable/green{icon_state = "4-8"},/turf/simulated/open,/area/crew_quarters/bar) +"jc" = (/obj/machinery/computer/ship/sensors/adv,/obj/effect/floor_decal/fancy_shuttle{fancy_shuttle_tag = "sdboat"},/turf/simulated/floor/tiled,/area/shuttle/sdboat/fore{base_turf = /turf/simulated/floor/reinforced/airless}) +"jd" = (/obj/structure/cable/green{icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/turf/simulated/floor/tiled,/area/stellardelight/deck3/transitgateway) +"jg" = (/obj/machinery/door/firedoor/glass,/obj/structure/window/bay/reinforced,/obj/structure/low_wall/bay/reinforced/steel,/turf/simulated/floor,/area/stellardelight/deck3/starboarddock) +"jh" = (/obj/structure/closet/secure_closet/hop2,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/obj/machinery/alarm/angled{dir = 8; pixel_x = 30},/turf/simulated/floor/tiled,/area/crew_quarters/heads/hop) +"jm" = (/obj/structure/cable/green{icon_state = "1-2"},/obj/structure/table/woodentable,/obj/machinery/door/blast/shutters{dir = 2; id = "cafe"; layer = 3.1; name = "Cafe Shutters"},/turf/simulated/floor/lino,/area/stellardelight/deck3/cafe) +"jn" = (/obj/machinery/door/firedoor/glass,/obj/structure/cable/blue{icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/door/airlock/angled_bay/standard/color{dir = 4; door_color = "#323d80"; fill_color = "#858585"; id_tag = "cedoor"; name = "Chief Engineer"; req_access = list(56); stripe_color = "#e6ab22"},/turf/simulated/floor/tiled/steel_ridged,/area/crew_quarters/heads/chief) +"jo" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/mouse_hole_spawner{dir = 8},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardaft) +"jp" = (/obj/structure/closet,/obj/random/contraband,/obj/random/maintenance,/obj/random/maintenance,/obj/random/maintenance/cargo,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/aftstarroom) +"jy" = (/obj/structure/window/bay/reinforced,/obj/structure/low_wall/bay/reinforced/steel,/obj/machinery/door/firedoor/glass,/obj/machinery/door/blast/angled/open{dir = 4; id = "clownmimeoffice"},/turf/simulated/floor,/area/stellardelight/deck3/clownmimeoffice) +"jC" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/turf/simulated/open,/area/crew_quarters/bar) +"jD" = (/obj/structure/bed/double/padded,/obj/item/weapon/bedsheet/hopdouble,/obj/structure/curtain/black,/obj/effect/landmark/start/hop,/obj/machinery/requests_console{announcementConsole = 1; department = "Bridge"; departmentType = 5; name = "Bridge RC"; pixel_y = 28},/turf/simulated/floor/tiled,/area/crew_quarters/heads/hop) +"jE" = (/obj/machinery/light{dir = 1},/turf/simulated/floor/bluegrid{name = "Mainframe Base"; nitrogen = 100; oxygen = 0; temperature = 80},/area/tcommsat/chamber) +"jK" = (/obj/machinery/alarm/angled{dir = 4},/turf/simulated/floor/tiled/eris/dark/gray_platform,/area/stellardelight/deck3/commandhall) +"jL" = (/obj/structure/lattice,/obj/structure/cable/green{icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/turf/simulated/open,/area/stellardelight/deck2/port) +"jM" = (/obj/item/modular_computer/console/preset/command,/obj/structure/sign/poster{dir = 4},/obj/machinery/newscaster{pixel_y = 28},/turf/simulated/floor/tiled/techfloor,/area/crew_quarters/heads/hor) +"jO" = (/obj/machinery/station_map{dir = 4; pixel_x = -32},/turf/simulated/floor/tiled/eris/dark/gray_platform,/area/stellardelight/deck3/commandhall) +"jP" = (/obj/machinery/alarm/angled,/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 1},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"jT" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/turf/simulated/open,/area/stellardelight/deck2/port) +"jV" = (/obj/structure/cable/green{icon_state = "1-2"},/obj/machinery/light{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 4},/turf/simulated/floor/tiled,/area/stellardelight/deck3/portdock) +"jY" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/open,/area/stellardelight/deck2/central) +"ka" = (/obj/structure/table/darkglass,/obj/item/weapon/storage/briefcase{pixel_x = -2; pixel_y = -5},/turf/simulated/floor/tiled/dark,/area/lawoffice) +"kb" = (/obj/machinery/atmospherics/pipe/simple/hidden/black{dir = 4},/obj/structure/cable/blue{icon_state = "4-8"},/turf/simulated/floor/bluegrid{name = "Mainframe Base"; nitrogen = 100; oxygen = 0; temperature = 80},/area/tcommsat/chamber) +"kc" = (/obj/machinery/telecomms/server/presets/medical,/turf/simulated/floor/tiled/dark{nitrogen = 100; oxygen = 0; temperature = 80},/area/tcommsat/chamber) +"ki" = (/obj/machinery/door/firedoor/glass,/obj/structure/window/bay/reinforced,/obj/structure/low_wall/bay/reinforced/steel,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portaft) +"kj" = (/obj/structure/lattice,/obj/structure/cable{icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/turf/simulated/open,/area/stellardelight/deck2/starboard) +"kk" = (/obj/effect/floor_decal/industrial/warning/corner{dir = 4},/obj/structure/cable/green{icon_state = "4-8"},/turf/simulated/floor/airless,/area/stellardelight/deck3/exterior) +"kl" = (/obj/machinery/keycard_auth{pixel_y = 28},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/machinery/alarm/angled{dir = 8},/turf/simulated/floor/tiled,/area/crew_quarters/heads/chief) +"ko" = (/obj/structure/cable/green{icon_state = "2-8"},/turf/simulated/floor/airless,/area/stellardelight/deck3/exterior) +"kp" = (/obj/structure/cable{icon_state = "2-8"},/obj/machinery/alarm/angled,/turf/simulated/floor,/area/maintenance/stellardelight/substation/command) +"kr" = (/obj/structure/cable/green{icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"ks" = (/obj/machinery/telecomms/server/presets/security,/turf/simulated/floor/tiled/dark{nitrogen = 100; oxygen = 0; temperature = 80},/area/tcommsat/chamber) +"kt" = (/obj/machinery/light{dir = 8},/turf/simulated/floor/tiled/steel_grid,/area/stellardelight/deck3/aft) +"ku" = (/obj/structure/barricade/cutout/mime,/turf/simulated/floor/carpet/bcarpet,/area/stellardelight/deck3/clownmimeoffice) +"kw" = (/obj/machinery/light{dir = 8},/turf/simulated/floor/bluegrid{name = "Mainframe Base"; nitrogen = 100; oxygen = 0; temperature = 80},/area/tcommsat/chamber) +"kz" = (/obj/machinery/airlock_sensor/airlock_exterior/shuttle{dir = 6; pixel_x = 7; pixel_y = 26},/obj/effect/map_helper/airlock/sensor/ext_sensor,/obj/effect/map_helper/airlock/door/ext_door,/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/glass_external,/obj/effect/floor_decal/fancy_shuttle{fancy_shuttle_tag = "sdboat"},/obj/machinery/atmospherics/pipe/simple/hidden/fuel{dir = 10},/obj/structure/cable{icon_state = "4-8"},/turf/simulated/floor/tiled,/area/shuttle/sdboat/aft{base_turf = /turf/simulated/floor/reinforced/airless}) +"kB" = (/obj/machinery/porta_turret/ai_defense,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/turf/simulated/floor/bluegrid,/area/ai) +"kF" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/turf/simulated/floor/tiled/techfloor/grid,/area/tcommsat/computer) +"kN" = (/obj/structure/sign/painting/library_secure{pixel_x = 30},/obj/structure/closet/secure_closet/hop,/obj/item/clothing/glasses/omnihud,/obj/item/weapon/paper/dockingcodes/sd,/obj/item/device/retail_scanner/command,/obj/item/weapon/storage/box/PDAs,/turf/simulated/floor/tiled,/area/crew_quarters/heads/hop) +"kO" = (/obj/machinery/door/firedoor/glass,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor,/area/stellardelight/deck2/fore) +"kP" = (/turf/simulated/wall/bay/r_wall/steel,/area/maintenance/stellardelight/deck3/portfore) +"kQ" = (/obj/structure/cable/green{icon_state = "1-2"},/turf/simulated/wall/bay/r_wall/steel,/area/maintenance/stellardelight/deck3/foreportrooma) +"kT" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/turf/simulated/floor/tiled,/area/crew_quarters/heads/hop) +"kU" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/structure/cable/green{icon_state = "4-8"},/turf/simulated/open,/area/crew_quarters/bar) +"kV" = (/obj/structure/bed/chair/office/dark{dir = 8},/turf/simulated/floor/tiled/techfloor/grid,/area/maintenance/stellardelight/deck3/foreportroomb) +"kW" = (/obj/machinery/camera/network/halls{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 8},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/turf/simulated/floor/tiled,/area/stellardelight/deck3/starboarddock) +"kX" = (/obj/structure/cable/blue{icon_state = "2-4"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/turf/simulated/floor/tiled/techfloor/grid,/area/ai_cyborg_station) +"kY" = (/obj/effect/floor_decal/techfloor{dir = 10},/obj/effect/landmark{name = "JoinLateCryo"},/obj/machinery/camera/network/civilian{dir = 1},/turf/simulated/floor/tiled/techfloor,/area/stellardelight/deck3/cryo) +"kZ" = (/obj/structure/handrail{dir = 1},/obj/machinery/airlock_sensor{dir = 8; pixel_x = 29; pixel_y = 2},/obj/effect/map_helper/airlock/sensor/int_sensor,/obj/effect/floor_decal/fancy_shuttle{fancy_shuttle_tag = "sdboat"},/obj/structure/closet/emergsuit_wall{dir = 1; pixel_y = -32},/turf/simulated/floor/tiled,/area/shuttle/sdboat/aft{base_turf = /turf/simulated/floor/reinforced/airless}) +"la" = (/obj/structure/cable/green{icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/shuttles,/turf/simulated/floor/tiled,/area/stellardelight/deck3/portdock) +"lc" = (/obj/structure/fuel_port{dir = 8; pixel_x = -32},/obj/effect/floor_decal/fancy_shuttle{fancy_shuttle_tag = "sdboat"},/obj/machinery/atmospherics/binary/pump/fuel{dir = 1},/turf/simulated/floor/tiled,/area/shuttle/sdboat/aft{base_turf = /turf/simulated/floor/reinforced/airless}) +"le" = (/obj/structure/railing/grey{dir = 8},/obj/structure/railing/grey,/turf/simulated/open,/area/maintenance/stellardelight/deck3/starboardaft) +"lh" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/angled_bay/hatch{dir = 4; name = "maintenance access"; stripe_color = "#454545"},/obj/structure/cable/green{icon_state = "4-8"},/turf/simulated/floor/tiled/steel_ridged,/area/maintenance/stellardelight/deck3/foreportroomb) +"li" = (/obj/machinery/telecomms/hub/preset/sd,/turf/simulated/floor/tiled/dark{nitrogen = 100; oxygen = 0; temperature = 80},/area/tcommsat/chamber) +"lj" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/structure/cable/green{icon_state = "4-8"},/turf/simulated/open,/area/stellardelight/deck2/fore) +"lk" = (/obj/structure/filingcabinet/medical,/obj/machinery/status_display{pixel_y = 32},/turf/simulated/floor/tiled/eris/white/cargo,/area/crew_quarters/heads/cmo) +"lm" = (/obj/machinery/light{dir = 8},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/obj/structure/closet/emcloset,/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"lo" = (/obj/machinery/telecomms/server/presets/engineering,/turf/simulated/floor/tiled/dark{nitrogen = 100; oxygen = 0; temperature = 80},/area/tcommsat/chamber) +"lq" = (/turf/simulated/floor,/area/maintenance/stellardelight/deck3/aftstarroom) +"lt" = (/obj/structure/bed/chair,/obj/machinery/atmospherics/unary/vent_pump/on,/obj/structure/sign/poster{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 1},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"lu" = (/obj/machinery/camera/network/command,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/turf/simulated/floor/tiled/techfloor/grid,/area/ai_cyborg_station) +"lv" = (/obj/structure/cable/green{icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/light/small{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 6},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"lw" = (/obj/machinery/telecomms/server/presets/science,/turf/simulated/floor/tiled/dark{nitrogen = 100; oxygen = 0; temperature = 80},/area/tcommsat/chamber) +"lx" = (/obj/machinery/telecomms/processor/preset_two,/turf/simulated/floor/tiled/dark{nitrogen = 100; oxygen = 0; temperature = 80},/area/tcommsat/chamber) +"lA" = (/obj/structure/table/rack,/obj/random/contraband,/obj/random/maintenance,/obj/random/maintenance/engineering,/obj/random/maintenance/engineering,/turf/simulated/floor/tiled/techfloor/grid,/area/maintenance/stellardelight/deck3/forestarroomb) +"lB" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/glass,/obj/effect/floor_decal/fancy_shuttle{fancy_shuttle_tag = "sdboat"},/obj/structure/cable/green{icon_state = "1-2"},/turf/simulated/floor/tiled,/area/shuttle/sdboat/aft{base_turf = /turf/simulated/floor/reinforced/airless}) +"lC" = (/obj/machinery/power/apc/angled{dir = 4},/obj/structure/cable/green{icon_state = "0-8"},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 4},/turf/simulated/floor/tiled,/area/stellardelight/deck3/starboarddock) +"lD" = (/obj/structure/cable/green{icon_state = "1-2"},/obj/effect/landmark/start/bartender,/turf/simulated/floor/lino,/area/stellardelight/deck3/cafe) +"lE" = (/obj/machinery/telecomms/bus/preset_two/sd,/turf/simulated/floor/tiled/dark{nitrogen = 100; oxygen = 0; temperature = 80},/area/tcommsat/chamber) +"lF" = (/obj/machinery/atmospherics/pipe/simple/hidden/universal,/obj/structure/cable/green{icon_state = "1-2"},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardaft) +"lH" = (/obj/machinery/telecomms/server/presets/service/sd,/turf/simulated/floor/tiled/dark{nitrogen = 100; oxygen = 0; temperature = 80},/area/tcommsat/chamber) +"lJ" = (/obj/structure/cable/green{icon_state = "2-4"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 1},/obj/structure/cable/green{icon_state = "1-2"},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"lL" = (/obj/structure/cable/blue{icon_state = "1-2"},/obj/machinery/light{dir = 4},/turf/simulated/floor/tiled/techfloor/grid,/area/ai_cyborg_station) +"lP" = (/obj/structure/table/woodentable,/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 24},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/turf/simulated/floor/carpet/turcarpet,/area/ai) +"lQ" = (/obj/machinery/light,/turf/simulated/floor/tiled/techfloor/grid,/area/ai) +"lT" = (/obj/effect/floor_decal/techfloor/orange{dir = 4},/obj/machinery/atmospherics/unary/vent_scrubber/on,/obj/machinery/alarm/angled{dir = 8},/turf/simulated/floor/tiled/techfloor,/area/stellardelight/deck3/transitgateway) +"lU" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/angled_bay/standard/color{dir = 4; door_color = "#9c9c9c"; fill_color = "#5c5c5c"; id_tag = "readingroom1"; name = "Room 1"; stripe_color = "#89bd66"},/turf/simulated/floor/tiled/steel_ridged,/area/stellardelight/deck3/readingroom) +"lV" = (/obj/machinery/light/small{dir = 8},/turf/simulated/floor/carpet/bcarpet,/area/stellardelight/deck3/clownmimeoffice) +"lY" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/turf/simulated/open,/area/stellardelight/deck2/central) +"ma" = (/obj/structure/cable/green{icon_state = "4-8"},/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/angled_bay/external/glass{dir = 4; frequency = 1379; id_tag = "portmaint_exterior"; locked = 1; name = "Exterior Airlock"},/turf/simulated/floor/tiled/steel_ridged,/area/maintenance/stellardelight/deck3/portcent) +"mb" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 9},/obj/structure/cable/green{icon_state = "1-2"},/turf/simulated/floor/tiled,/area/stellardelight/deck3/portdock) +"md" = (/obj/machinery/button/remote/airlock{id = "readingroom3"; name = "Room 3 Lock"; pixel_y = 24; specialfunctions = 4},/obj/machinery/button/remote/blast_door{id = "readingroom3"; name = "Window Lockdown"; pixel_x = -10; pixel_y = 24},/turf/simulated/floor/carpet,/area/stellardelight/deck3/readingroom) +"me" = (/turf/simulated/wall/bay/r_wall/steel,/area/maintenance/stellardelight/deck3/starboardcent) +"mf" = (/obj/effect/shuttle_landmark/premade/sd/deck3/portairlock,/turf/space,/area/space) +"mg" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/open,/area/stellardelight/deck2/central) +"mh" = (/obj/structure/table/steel_reinforced,/obj/item/device/radio/intercom{dir = 4; pixel_x = 1; pixel_y = 1},/obj/structure/closet/emergsuit_wall{dir = 1; pixel_y = -32},/obj/machinery/alarm{pixel_y = 28},/obj/machinery/light{dir = 4},/obj/effect/floor_decal/fancy_shuttle{fancy_shuttle_tag = "sdboat"},/turf/simulated/floor/tiled,/area/shuttle/sdboat/fore{base_turf = /turf/simulated/floor/reinforced/airless}) +"mi" = (/obj/machinery/shipsensors/fancy_shuttle,/turf/simulated/wall/fancy_shuttle/nondense{fancy_shuttle_tag = "sdboat"},/area/shuttle/sdboat/fore{base_turf = /turf/simulated/floor/reinforced/airless}) +"mj" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/blue{icon_state = "4-8"},/turf/simulated/open,/area/stellardelight/deck2/fore) +"mm" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/obj/structure/cable/green{icon_state = "1-8"},/turf/simulated/floor,/area/stellardelight/deck2/fore) +"mn" = (/obj/effect/floor_decal/techfloor{dir = 4},/obj/effect/landmark{name = "JoinLateCryo"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled/techfloor,/area/stellardelight/deck3/cryo) +"mo" = (/obj/structure/cable/green{icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/door/firedoor/glass,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 1},/turf/simulated/floor/tiled/steel_ridged,/area/stellardelight/deck3/starboarddock) +"mp" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/structure/cable/blue{icon_state = "4-8"},/turf/simulated/open,/area/stellardelight/deck2/fore) +"mq" = (/obj/structure/bed/chair{dir = 4},/obj/machinery/alarm/angled{dir = 4},/turf/simulated/floor/tiled,/area/stellardelight/deck3/starboarddock) +"mr" = (/obj/structure/table/bench/padded,/obj/effect/landmark/start/visitor,/turf/simulated/floor/wood,/area/stellardelight/deck3/cafe) +"ms" = (/obj/structure/reagent_dispensers/watertank,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portfore) +"mv" = (/obj/effect/map_helper/airlock/atmos/pump_out_external,/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 1; frequency = 1380; id_tag = "sdboat_docker_pump_out_external"},/turf/simulated/wall/fancy_shuttle/low{fancy_shuttle_tag = "sdboat"},/area/shuttle/sdboat/aft{base_turf = /turf/simulated/floor/reinforced/airless}) +"mA" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/turf/simulated/floor/bluegrid,/area/ai) +"mC" = (/obj/machinery/telecomms/server/presets/supply,/obj/machinery/atmospherics/pipe/simple/hidden/black,/turf/simulated/floor/tiled/dark{nitrogen = 100; oxygen = 0; temperature = 80},/area/tcommsat/chamber) +"mD" = (/obj/structure/table/steel_reinforced,/obj/machinery/photocopier/faxmachine{department = "Head of Security"},/turf/simulated/floor/tiled/dark,/area/crew_quarters/heads/hos) +"mF" = (/turf/simulated/floor/carpet/bcarpet,/area/stellardelight/deck3/clownmimeoffice) +"mI" = (/obj/structure/cable/blue{icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/light_switch{dir = 4; pixel_x = -24; pixel_y = 24},/turf/simulated/floor/tiled/eris/white/cargo,/area/crew_quarters/heads/cmo) +"mK" = (/obj/structure/cable{icon_state = "1-2"},/obj/machinery/light/small{dir = 8},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardaft) +"mM" = (/obj/structure/cable/green{icon_state = "1-4"},/obj/structure/cable/green{icon_state = "1-2"},/turf/simulated/floor/airless,/area/stellardelight/deck3/exterior) +"mO" = (/obj/structure/table/alien{name = "fancy table"},/obj/machinery/computer/skills{dir = 4; pixel_y = 6},/turf/simulated/floor/carpet/purcarpet,/area/crew_quarters/heads/hor) +"mQ" = (/obj/machinery/door/firedoor/glass,/obj/structure/window/bay/reinforced,/obj/structure/low_wall/bay/reinforced/steel,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portfore) +"mR" = (/obj/structure/cable/green{icon_state = "4-8"},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/forestarrooma) +"mS" = (/obj/structure/lattice,/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/open,/area/stellardelight/deck2/starboard) +"mT" = (/obj/machinery/space_heater,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardcent) +"mX" = (/obj/structure/bed/chair{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 8},/obj/structure/cable{icon_state = "1-2"},/turf/simulated/floor/tiled,/area/stellardelight/deck3/portdock) +"na" = (/obj/machinery/door/firedoor/glass,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/blue{icon_state = "4-8"},/turf/simulated/floor,/area/stellardelight/deck2/fore) +"nd" = (/obj/structure/cable/blue{icon_state = "4-8"},/obj/machinery/light,/turf/simulated/floor/tiled/techfloor/grid,/area/ai) +"ne" = (/obj/machinery/light/small{dir = 1},/turf/simulated/open,/area/stellardelight/deck2/fore) +"nf" = (/obj/structure/cable/blue{icon_state = "4-8"},/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/angled_bay/external/glass{dir = 4; frequency = 1379; id_tag = "starmaint_exterior"; locked = 1; name = "Exterior Airlock"},/turf/simulated/floor/tiled/steel_ridged,/area/maintenance/stellardelight/deck3/starboardcent) +"nh" = (/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/structure/cable/green{icon_state = "1-2"},/turf/simulated/floor/airless,/area/stellardelight/deck3/exterior) +"nj" = (/obj/machinery/door/firedoor/glass,/obj/structure/cable/green{icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/door/airlock/angled_bay/hatch{dir = 4; name = "maintenance access"; stripe_color = "#454545"},/turf/simulated/floor/tiled/steel_ridged,/area/stellardelight/deck3/cafe) +"nk" = (/obj/machinery/light,/obj/structure/table/bench/padded,/obj/effect/landmark/start/visitor,/turf/simulated/floor/wood,/area/stellardelight/deck3/cafe) +"nm" = (/obj/machinery/telecomms/server/presets/unused,/turf/simulated/floor/tiled/dark{nitrogen = 100; oxygen = 0; temperature = 80},/area/tcommsat/chamber) +"np" = (/obj/structure/cable/blue{icon_state = "1-2"},/obj/machinery/camera/network/command{dir = 4},/turf/simulated/floor/tiled/techfloor/grid,/area/ai) +"nr" = (/obj/effect/floor_decal/techfloor/orange{dir = 5},/obj/structure/closet/emergsuit_wall{pixel_y = 29},/obj/structure/closet/emergsuit_wall{dir = 4; pixel_x = 27},/turf/simulated/floor/tiled/techfloor,/area/stellardelight/deck3/transitgateway) +"ns" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/turf/simulated/floor/carpet/oracarpet,/area/crew_quarters/heads/chief) +"nt" = (/obj/machinery/status_display{pixel_x = 32},/turf/simulated/floor/tiled/monotile,/area/stellardelight/deck3/commandhall) +"nu" = (/obj/structure/cable{icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/structure/cable/blue{icon_state = "4-8"},/obj/machinery/alarm/angled{dir = 8},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardcent) +"nv" = (/obj/item/weapon/reagent_containers/glass/bucket/wood,/obj/structure/closet/crate,/obj/item/weapon/material/minihoe,/obj/item/seeds/reishimycelium,/obj/item/seeds/random,/obj/item/seeds/random,/obj/item/seeds/random,/obj/item/seeds/random,/obj/item/seeds/random,/obj/item/seeds/ambrosiavulgarisseed,/turf/simulated/floor/tiled/techfloor/grid,/area/maintenance/stellardelight/deck3/foreportroomb) +"nw" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/angled_bay/double{dir = 8; name = "maintenance access"; stripe_color = "#454545"},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portcent) +"nx" = (/turf/simulated/open,/area/stellardelight/deck2/central) +"nz" = (/obj/machinery/camera/network/civilian{dir = 1},/turf/simulated/floor/wood,/area/stellardelight/deck3/cafe) +"nB" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/angled_bay/external/glass{dir = 4; frequency = 1380; id_tag = null; locked = 1; name = "Docking Port Airlock"},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/effect/map_helper/airlock/door/int_door,/obj/machinery/access_button{command = "cycle_interior"; dir = 4; frequency = 1380; master_tag = "sd_escape_starboard"; pixel_y = 32; req_one_access = list(13)},/turf/simulated/floor/tiled/steel_ridged,/area/stellardelight/deck3/starboarddock) +"nC" = (/obj/machinery/telecomms/bus/preset_four,/turf/simulated/floor/tiled/dark{nitrogen = 100; oxygen = 0; temperature = 80},/area/tcommsat/chamber) +"nD" = (/obj/machinery/power/apc/angled{dir = 4; name = "night shift APC"; nightshift_setting = 2},/obj/structure/cable{icon_state = "0-8"},/obj/structure/cable/green{icon_state = "1-2"},/obj/structure/table/rack,/obj/random/contraband,/obj/random/maintenance/clean,/obj/random/maintenance,/obj/random/maintenance/engineering,/obj/random/maintenance/engineering,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardaft) +"nF" = (/obj/structure/table/woodentable,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/obj/item/device/radio/intercom{dir = 8; pixel_x = -24},/turf/simulated/floor/wood,/area/stellardelight/deck3/cafe) +"nH" = (/obj/structure/table/steel_reinforced,/obj/item/device/flashlight/lamp/green{pixel_x = -4; pixel_y = 12},/obj/item/weapon/stamp/hos,/obj/item/weapon/book/manual/sd_guide,/turf/simulated/floor/carpet,/area/crew_quarters/heads/hos) +"nL" = (/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 8},/obj/machinery/item_bank{dir = 4; pixel_x = -26},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"nM" = (/obj/structure/cable/blue{icon_state = "1-2"},/obj/item/device/radio/intercom{dir = 8; pixel_x = -24},/turf/simulated/floor/tiled/techfloor/grid,/area/ai) +"nN" = (/obj/machinery/cryopod/robot,/turf/simulated/floor/bluegrid,/area/ai_cyborg_station) +"nO" = (/obj/structure/closet/crate,/obj/random/contraband,/obj/random/maintenance,/obj/random/maintenance,/obj/random/maintenance,/obj/random/maintenance,/obj/random/maintenance,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/foreportrooma) +"nP" = (/turf/simulated/wall/bay/purple,/area/crew_quarters/heads/hor) +"nS" = (/obj/machinery/hologram/holopad,/turf/simulated/floor/tiled/techfloor/grid,/area/ai_server_room) +"nT" = (/obj/machinery/smartfridge/drinks,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/aftstarroom) +"nV" = (/obj/structure/table/rack,/obj/random/contraband,/obj/random/maintenance,/obj/random/maintenance,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portaft) +"nW" = (/turf/simulated/wall/bay/steel,/area/stellardelight/deck3/cafe) +"nX" = (/obj/structure/cable/green{icon_state = "1-2"},/turf/simulated/floor/tiled/techfloor/grid,/area/maintenance/stellardelight/deck3/foreportroomb) +"nZ" = (/obj/machinery/door/firedoor/glass/hidden/steel{dir = 2},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 1},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"ob" = (/obj/structure/lattice,/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/turf/simulated/open,/area/stellardelight/deck2/port) +"od" = (/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 8; frequency = 1379; id_tag = "starmaint_airpump"},/obj/machinery/light/small{dir = 1},/turf/simulated/floor/airless,/area/maintenance/stellardelight/deck3/starboardcent) +"og" = (/obj/structure/bed/chair{dir = 4},/turf/simulated/floor/tiled/techfloor/grid,/area/maintenance/stellardelight/deck3/foreportrooma) +"ok" = (/obj/structure/lattice,/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/structure/cable/green{icon_state = "4-8"},/turf/simulated/open,/area/stellardelight/deck2/starboard) +"ol" = (/obj/structure/table/alien{name = "fancy table"},/obj/item/weapon/stamp/rd,/obj/item/weapon/book/manual/sd_guide,/turf/simulated/floor/carpet/purcarpet,/area/crew_quarters/heads/hor) +"op" = (/obj/structure/cable/green{icon_state = "1-4"},/obj/structure/cable/green{icon_state = "1-8"},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portcent) +"oq" = (/obj/effect/landmark/arrivals,/turf/simulated/floor/glass/reinforced,/area/stellardelight/deck3/aft) +"os" = (/obj/machinery/door/firedoor/glass,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 6},/obj/machinery/door/airlock/angled_bay/external/glass{frequency = 1380; id_tag = null; locked = 1; name = "Docking Port Airlock"},/obj/effect/map_helper/airlock/door/int_door,/obj/machinery/access_button{command = "cycle_interior"; dir = 1; frequency = 1380; master_tag = "sd_escape_center_right"; pixel_x = 32; req_one_access = list(13)},/turf/simulated/floor/tiled/steel_ridged,/area/stellardelight/deck3/aft) +"ou" = (/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 1; frequency = 1380; id_tag = null},/obj/machinery/embedded_controller/radio/airlock/docking_port_multi{dir = 8; frequency = 1380; id_tag = "sd_escape_center_right"; master_tag = "escape_dock"; pixel_x = 24; req_one_access = list(13); tag_airpump = null; tag_chamber_sensor = null; tag_exterior_door = null; tag_interior_door = null},/obj/machinery/airlock_sensor{dir = 4; frequency = 1380; id_tag = null; pixel_x = -25},/obj/effect/map_helper/airlock/atmos/chamber_pump,/obj/effect/map_helper/airlock/sensor/chamber_sensor,/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"ov" = (/obj/structure/closet/crate/bin{anchored = 1},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/forestarroomb) +"ow" = (/turf/simulated/open,/area/stellardelight/deck2/starboard) +"oy" = (/obj/machinery/door/firedoor/glass/hidden/steel,/obj/structure/cable/green{icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"oA" = (/obj/machinery/telecomms/processor/preset_four,/turf/simulated/floor/tiled/dark{nitrogen = 100; oxygen = 0; temperature = 80},/area/tcommsat/chamber) +"oC" = (/obj/structure/cable{icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardcent) +"oD" = (/obj/item/modular_computer/console/preset/command,/obj/structure/sign/poster{dir = 4},/obj/machinery/newscaster{pixel_y = 28},/turf/simulated/floor/tiled/eris/white/cargo,/area/crew_quarters/heads/cmo) +"oE" = (/obj/machinery/hologram/holopad,/turf/simulated/floor/wood,/area/stellardelight/deck3/readingroom) +"oI" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/zpipe/down/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/zpipe/down/supply{dir = 4},/obj/machinery/door/firedoor/glass,/turf/simulated/open,/area/maintenance/stellardelight/deck3/portcent) +"oM" = (/obj/structure/cable/green{icon_state = "1-2"},/obj/machinery/light/small{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portaft) +"oN" = (/obj/machinery/teleport/hub{dir = 2},/turf/simulated/floor/tiled/techfloor/grid,/area/ai_cyborg_station) +"oO" = (/obj/machinery/door/firedoor/glass,/obj/structure/cable{icon_state = "1-2"},/turf/simulated/floor/tiled/steel_ridged,/area/stellardelight/deck3/portdock) +"oP" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/open,/area/crew_quarters/bar) +"oR" = (/obj/machinery/newscaster/security_unit{pixel_x = -32; pixel_y = 32},/obj/item/device/radio/intercom/locked/ai_private{dir = 4; pixel_x = 32},/obj/item/device/radio/intercom{broadcasting = 1; dir = 8; name = "Common Channel"; pixel_x = -21},/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = 21},/obj/machinery/requests_console/preset/ai{pixel_x = 32; pixel_y = 32},/obj/effect/landmark/start/ai,/turf/simulated/floor/bluegrid,/area/ai) +"oS" = (/obj/structure/cryofeed,/obj/effect/floor_decal/corner_techfloor_grid{dir = 5},/obj/effect/floor_decal/corner_techfloor_grid{dir = 10},/turf/simulated/floor/tiled/techfloor,/area/stellardelight/deck3/cryo) +"oT" = (/obj/structure/cable/blue{icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/obj/item/device/radio/intercom{dir = 4; pixel_x = 24},/turf/simulated/floor/tiled/techfloor/grid,/area/ai_cyborg_station) +"oU" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 4},/turf/simulated/floor/tiled,/area/stellardelight/deck3/starboarddock) +"oV" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/obj/machinery/camera/network/halls{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 8},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"oW" = (/turf/simulated/open,/area/stellardelight/deck2/port) +"oX" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/blue{icon_state = "1-2"},/turf/simulated/open,/area/stellardelight/deck2/fore) +"oY" = (/obj/machinery/door/firedoor/glass,/obj/structure/cable/blue{icon_state = "1-2"},/obj/machinery/door/airlock/angled_bay/hatch{name = "Telecoms Control Room"; req_access = list(61)},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled/steel_ridged,/area/tcommsat/computer) +"oZ" = (/turf/simulated/wall/bay/steel,/area/stellardelight/deck3/readingroom) +"pb" = (/obj/structure/cable/green{icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"pc" = (/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"pd" = (/obj/machinery/power/apc/angled{dir = 8},/obj/structure/cable/blue{icon_state = "0-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled/eris/white/cargo,/area/crew_quarters/heads/cmo) +"pf" = (/obj/structure/cable/green{icon_state = "4-8"},/obj/structure/cable/green{icon_state = "1-8"},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portfore) +"pk" = (/obj/structure/table/steel,/obj/random/drinkbottle,/turf/simulated/floor/tiled/techfloor/grid,/area/maintenance/stellardelight/deck3/foreportrooma) +"pl" = (/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 4},/obj/item/device/radio/intercom{dir = 4; pixel_x = 24},/turf/simulated/floor/tiled,/area/stellardelight/deck3/starboarddock) +"pm" = (/obj/structure/table/darkglass,/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = 24},/obj/item/device/flashlight/lamp/green{pixel_x = -5; pixel_y = -5},/obj/item/weapon/paper_bin,/obj/item/weapon/pen/blade/red{pixel_x = -2; pixel_y = -2},/obj/item/weapon/pen,/obj/item/weapon/pen/blue{pixel_x = 2; pixel_y = 3},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/turf/simulated/floor/tiled/dark,/area/lawoffice) +"po" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/obj/structure/flora/pottedplant/decorative,/turf/simulated/floor/tiled/eris/dark/gray_platform,/area/stellardelight/deck3/commandhall) +"pp" = (/obj/structure/cable/green{icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/turf/simulated/floor/wood,/area/stellardelight/deck3/cafe) +"pq" = (/obj/structure/cable/green{icon_state = "1-2"},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/forestarrooma) +"pt" = (/obj/structure/cable{icon_state = "1-8"},/obj/structure/cable{icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardcent) +"px" = (/obj/machinery/telecomms/processor/preset_three,/turf/simulated/floor/tiled/dark{nitrogen = 100; oxygen = 0; temperature = 80},/area/tcommsat/chamber) +"pz" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/angled_bay/hatch{name = "maintenance access"; stripe_color = "#454545"},/obj/structure/cable/green{icon_state = "1-2"},/turf/simulated/floor/tiled/steel_ridged,/area/maintenance/stellardelight/deck3/aftstarroom) +"pA" = (/obj/structure/bed/double/padded,/obj/item/weapon/bedsheet/cosmosdouble{icon_state = "dobulesheetcosmos"},/obj/machinery/camera/network/command,/turf/simulated/floor/carpet/turcarpet,/area/ai) +"pB" = (/obj/structure/bed/chair,/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 1},/obj/item/device/radio/intercom{dir = 1; pixel_y = 24},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"pC" = (/obj/structure/cable/green{icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 1},/obj/structure/sign/warning/evac{pixel_x = 32},/obj/effect/landmark{name = "lightsout"},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 4},/turf/simulated/floor/tiled,/area/stellardelight/deck3/portdock) +"pE" = (/obj/machinery/light/small{dir = 8},/turf/simulated/floor/tiled/techfloor/grid,/area/maintenance/stellardelight/deck3/forestarrooma) +"pG" = (/obj/structure/cable/green{icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/effect/floor_decal/shuttles/right,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled,/area/stellardelight/deck3/starboarddock) +"pK" = (/obj/structure/cable/green{icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"pL" = (/obj/structure/table/steel,/obj/random/snack,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/forestarrooma) +"pN" = (/turf/simulated/floor,/area/maintenance/stellardelight/deck3/foreportroomb) +"pO" = (/obj/machinery/power/apc/angled{dir = 4},/obj/structure/cable/blue{icon_state = "0-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled/dark,/area/crew_quarters/heads/hos) +"pS" = (/obj/structure/cable/blue{icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/alarm/angled{dir = 8},/turf/simulated/floor/tiled/techfloor/grid,/area/ai_cyborg_station) +"pT" = (/obj/effect/floor_decal/industrial/warning{dir = 4},/turf/simulated/floor/airless,/area/stellardelight/deck3/exterior) +"pV" = (/obj/machinery/keycard_auth{pixel_y = 28},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/machinery/alarm/angled{dir = 4},/turf/simulated/floor/tiled/techfloor,/area/crew_quarters/heads/hor) +"pW" = (/obj/structure/cable/blue{icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/turf/simulated/floor/tiled/techfloor/grid,/area/tcommsat/computer) +"pX" = (/obj/machinery/door/firedoor/glass,/obj/structure/cable{icon_state = "1-2"},/obj/machinery/door/airlock/angled_bay/hatch{door_color = "#323d80"; name = "maintenance access"; req_one_access = list(16); stripe_color = "#323d80"},/turf/simulated/floor/tiled/steel_ridged,/area/ai_cyborg_station) +"pY" = (/obj/machinery/telecomms/bus/preset_three,/turf/simulated/floor/tiled/dark{nitrogen = 100; oxygen = 0; temperature = 80},/area/tcommsat/chamber) +"qb" = (/obj/machinery/power/pointdefense{id_tag = "sd_pd"},/obj/effect/floor_decal/industrial/warning/full,/obj/structure/cable/blue{icon_state = "0-2"},/turf/simulated/floor/airless,/area/stellardelight/deck3/exterior) +"qc" = (/obj/structure/table/bench/padded,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/wood,/area/stellardelight/deck3/cafe) +"qd" = (/obj/effect/landmark{name = "JoinLateCyborg"},/obj/effect/landmark/start/cyborg,/turf/simulated/floor/tiled/techfloor/grid,/area/ai_cyborg_station) +"qe" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/angled_bay/external/glass{dir = 4; frequency = 1380; id_tag = null; locked = 1; name = "Docking Port Airlock"},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/effect/map_helper/airlock/door/int_door,/obj/machinery/access_button{command = "cycle_interior"; dir = 8; frequency = 1380; master_tag = "sd_escape_port"; pixel_y = 32; req_one_access = list(13)},/turf/simulated/floor/tiled/steel_ridged,/area/stellardelight/deck3/portdock) +"qf" = (/obj/structure/cable{icon_state = "1-4"},/obj/structure/cable{icon_state = "4-8"},/obj/structure/cable{icon_state = "1-8"},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardcent) +"qg" = (/obj/structure/table/glass,/obj/machinery/light/small{dir = 4},/obj/random/contraband,/obj/random/snack,/turf/simulated/floor/wood,/area/stellardelight/deck3/readingroom) +"qi" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/open,/area/stellardelight/deck2/fore) +"qn" = (/obj/machinery/porta_turret/stationary,/turf/simulated/floor/bluegrid{name = "Mainframe Base"; nitrogen = 100; oxygen = 0; temperature = 80},/area/tcommsat/chamber) +"qp" = (/turf/simulated/open,/area/crew_quarters/bar) +"qq" = (/turf/simulated/wall/bay/r_wall/blue,/area/tcommsat/computer) +"qs" = (/obj/structure/table/rack,/obj/random/maintenance/clean,/obj/random/maintenance/clean,/obj/random/maintenance/clean,/obj/random/maintenance/clean,/obj/random/maintenance/security,/obj/random/maintenance/security,/obj/random/maintenance/security,/obj/random/drinkbottle,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/forestarrooma) +"qv" = (/obj/structure/cable/cyan{icon_state = "4-8"},/obj/machinery/door/airlock/angled_bay/hatch{dir = 4; door_color = "#323d80"; id_tag = "AICore"; id_tint = null; locked = 1; name = "AI Core"; req_one_access = list(16); stripe_color = "#323d80"},/turf/simulated/floor/tiled/steel_ridged,/area/ai) +"qx" = (/obj/structure/table/glass,/turf/simulated/floor/wood,/area/stellardelight/deck3/readingroom) +"qy" = (/obj/structure/cable/blue{icon_state = "4-8"},/turf/simulated/floor/airless,/area/stellardelight/deck3/exterior) +"qz" = (/turf/simulated/floor/reinforced{name = "Holodeck Projector Floor"},/area/holodeck/alphadeck) +"qA" = (/obj/machinery/turretid/stun{check_synth = 1; control_area = /area/ai; name = "AI Chamber turret control"; pixel_x = -30; pixel_y = -24},/obj/machinery/flasher{id = "AI"; pixel_x = -24; pixel_y = 25},/obj/machinery/hologram/holopad,/obj/structure/cable/cyan{icon_state = "2-8"},/turf/simulated/floor/bluegrid,/area/ai) +"qC" = (/obj/structure/table/glass,/turf/simulated/floor/carpet,/area/stellardelight/deck3/readingroom) +"qE" = (/obj/effect/floor_decal/industrial/warning{dir = 4},/obj/machinery/light/small{dir = 1},/turf/simulated/floor/airless,/area/stellardelight/deck3/starboarddock) +"qF" = (/turf/simulated/open,/area/stellardelight/deck2/fore) +"qK" = (/obj/effect/landmark{name = "lightsout"},/turf/simulated/floor/tiled/techfloor/grid,/area/ai_cyborg_station) +"qL" = (/obj/structure/sign/warning/docking_area{pixel_x = 32},/turf/simulated/floor/airless,/area/stellardelight/deck3/exterior) +"qM" = (/obj/structure/table/steel,/obj/random/firstaid,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/foreportrooma) +"qN" = (/obj/structure/cable/green{icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"qO" = (/obj/machinery/door/firedoor/glass,/obj/structure/cable/blue{icon_state = "1-2"},/obj/machinery/door/airlock/angled_bay/hatch{door_color = "#323d80"; name = "maintenance access"; req_one_access = list(16); stripe_color = "#323d80"},/turf/simulated/floor/tiled/steel_ridged,/area/ai_cyborg_station) +"qP" = (/obj/structure/lattice,/obj/structure/cable/green{icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/open,/area/stellardelight/deck2/port) +"qQ" = (/obj/machinery/porta_turret/stationary,/obj/structure/cable/blue{icon_state = "2-4"},/turf/simulated/floor/bluegrid{name = "Mainframe Base"; nitrogen = 100; oxygen = 0; temperature = 80},/area/tcommsat/chamber) +"qS" = (/obj/machinery/light/small,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardaft) +"qU" = (/obj/machinery/light{dir = 4},/obj/structure/cable/blue{icon_state = "1-8"},/turf/simulated/floor/bluegrid{name = "Mainframe Base"; nitrogen = 100; oxygen = 0; temperature = 80},/area/tcommsat/chamber) +"qW" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/angled_bay/hatch{dir = 4; name = "maintenance access"; stripe_color = "#454545"},/obj/structure/cable/blue{icon_state = "4-8"},/turf/simulated/floor/tiled/steel_ridged,/area/maintenance/stellardelight/deck3/forestarroomb) +"qX" = (/obj/random/vendorfood,/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"qY" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/structure/reagent_dispensers/fueltank,/obj/machinery/alarm/angled{dir = 4},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardaft) +"qZ" = (/obj/structure/filingcabinet/chestdrawer,/obj/machinery/power/apc/angled{dir = 4},/obj/structure/cable/blue{icon_state = "0-8"},/turf/simulated/floor/tiled,/area/crew_quarters/heads/hop) +"rb" = (/obj/effect/floor_decal/emblem/nt3,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled/techfloor/grid,/area/ai_upload) +"rc" = (/turf/simulated/wall/bay/r_wall/blue,/area/stellardelight/deck3/commandhall) +"rg" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/wood,/area/stellardelight/deck3/cafe) +"rh" = (/obj/machinery/cryopod{dir = 4},/obj/effect/floor_decal/corner_techfloor_grid{dir = 10},/obj/effect/floor_decal/corner_techfloor_grid{dir = 5},/turf/simulated/floor/tiled/techfloor,/area/stellardelight/deck3/cryo) +"ri" = (/obj/structure/handrail,/obj/effect/map_helper/airlock/atmos/chamber_pump,/obj/effect/floor_decal/fancy_shuttle{fancy_shuttle_tag = "sdboat"},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 4},/turf/simulated/floor/tiled,/area/shuttle/sdboat/aft{base_turf = /turf/simulated/floor/reinforced/airless}) +"rj" = (/obj/structure/cable/green{icon_state = "1-2"},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/foreportroomb) +"rl" = (/obj/structure/sign/painting/library_secure{pixel_x = -30},/turf/simulated/floor/carpet/blue2,/area/lawoffice) +"rm" = (/obj/effect/floor_decal/techfloor{dir = 5},/obj/effect/landmark{name = "JoinLateCryo"},/obj/machinery/atmospherics/unary/vent_pump/on,/obj/machinery/computer/cryopod{pixel_x = 32; pixel_y = 32},/obj/item/device/radio/intercom{dir = 1; pixel_y = 24},/turf/simulated/floor/tiled/techfloor,/area/stellardelight/deck3/cryo) +"rn" = (/obj/structure/cable/green{icon_state = "1-2"},/turf/simulated/floor/tiled/techfloor,/area/stellardelight/deck3/transitgateway) +"rp" = (/obj/structure/cable/green{icon_state = "1-2"},/obj/machinery/door/firedoor/glass,/obj/machinery/atmospherics/pipe/simple/hidden,/obj/machinery/access_button{command = "cycle_interior"; frequency = 1379; master_tag = "portmaint_airlock"; name = "interior access button"; pixel_x = 32; req_access = null; req_one_access = list(13)},/obj/machinery/door/airlock/angled_bay/external/glass{frequency = 1379; id_tag = "portmaint_interior"; locked = 1; name = "Exterior Airlock"},/turf/simulated/floor/tiled/steel_ridged,/area/maintenance/stellardelight/deck3/portcent) +"rq" = (/obj/structure/cable/green{icon_state = "4-8"},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/aftstarroom) +"rr" = (/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 4; frequency = 1380; id_tag = null},/obj/machinery/embedded_controller/radio/airlock/docking_port_multi{frequency = 1380; id_tag = "sd_escape_starboard"; master_tag = "escape_dock"; pixel_y = 30; req_one_access = list(13); tag_airpump = null; tag_chamber_sensor = null; tag_exterior_door = null; tag_interior_door = null},/obj/machinery/airlock_sensor{frequency = 1380; id_tag = null; pixel_y = -25},/obj/effect/map_helper/airlock/atmos/chamber_pump,/obj/effect/map_helper/airlock/sensor/chamber_sensor,/turf/simulated/floor/tiled,/area/stellardelight/deck3/starboarddock) +"rs" = (/obj/machinery/atmospherics/pipe/manifold/hidden/black{dir = 1},/obj/machinery/hologram/holopad,/turf/simulated/floor/bluegrid{name = "Mainframe Base"; nitrogen = 100; oxygen = 0; temperature = 80},/area/tcommsat/chamber) +"rx" = (/turf/simulated/wall/bay/white,/area/crew_quarters/heads/cmo) +"rA" = (/obj/structure/table/reinforced,/obj/machinery/computer/skills,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled,/area/crew_quarters/heads/hop) +"rB" = (/obj/machinery/door/airlock/angled_bay/hatch{dir = 4; door_color = "#323d80"; id_tag = "AICore"; id_tint = null; locked = 1; name = "AI Core"; req_one_access = list(16); stripe_color = "#323d80"},/turf/simulated/floor/tiled/steel_ridged,/area/ai) +"rH" = (/obj/structure/lattice,/obj/structure/cable/blue{icon_state = "32-8"},/obj/structure/disposalpipe/down{dir = 8},/obj/machinery/atmospherics/pipe/zpipe/down/supply,/obj/machinery/atmospherics/pipe/zpipe/down/scrubbers,/obj/machinery/door/firedoor/glass,/turf/simulated/open,/area/maintenance/stellardelight/deck3/starboardcent) +"rL" = (/turf/simulated/floor/lino,/area/stellardelight/deck3/cafe) +"rN" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/turf/simulated/floor/bluegrid,/area/ai) +"rS" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/open,/area/stellardelight/deck2/port) +"rW" = (/obj/effect/mouse_hole_spawner{dir = 4},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portfore) +"rX" = (/obj/effect/floor_decal/fancy_shuttle{fancy_shuttle_tag = "sdboat"},/obj/machinery/light{dir = 1},/obj/structure/cable/green{icon_state = "4-8"},/turf/simulated/floor/tiled,/area/shuttle/sdboat/aft{base_turf = /turf/simulated/floor/reinforced/airless}) +"rZ" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/turf/simulated/floor/tiled/techfloor/grid,/area/ai) +"sa" = (/obj/effect/map_helper/airlock/door/int_door,/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/glass_external,/obj/effect/floor_decal/fancy_shuttle{fancy_shuttle_tag = "sdboat"},/obj/machinery/atmospherics/pipe/simple/hidden/fuel{dir = 4},/obj/structure/cable{icon_state = "4-8"},/turf/simulated/floor/tiled,/area/shuttle/sdboat/aft{base_turf = /turf/simulated/floor/reinforced/airless}) +"sb" = (/obj/machinery/door/firedoor/glass,/obj/structure/cable/blue{icon_state = "1-2"},/obj/machinery/door/airlock/angled_bay/secure{name = "AI Storage"; req_access = list(16)},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled/steel_ridged,/area/ai_cyborg_station) +"sc" = (/turf/simulated/wall/bay/r_wall/blue,/area/ai) +"sd" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/blue{icon_state = "1-2"},/turf/simulated/open,/area/stellardelight/deck2/fore) +"sf" = (/obj/machinery/light{dir = 8},/turf/simulated/floor/tiled/eris/dark/gray_platform,/area/stellardelight/deck3/commandhall) +"si" = (/obj/structure/table/woodentable,/obj/machinery/chemical_dispenser/bar_coffee/full{pixel_y = 8},/obj/structure/sign/painting/library_secure{pixel_y = 30},/turf/simulated/floor/lino,/area/stellardelight/deck3/cafe) +"sj" = (/obj/machinery/power/apc/angled{dir = 4; name = "night shift APC"; nightshift_setting = 2},/obj/structure/closet,/obj/random/maintenance,/obj/random/maintenance,/obj/random/maintenance,/obj/random/maintenance,/obj/random/maintenance,/obj/structure/cable/blue{icon_state = "0-2"},/obj/random/snack,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/forestarrooma) +"sl" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 8; external_pressure_bound = 140; external_pressure_bound_default = 140; icon_state = "map_vent_out"; pressure_checks = 0; pressure_checks_default = 0; use_power = 1},/turf/simulated/floor/bluegrid{name = "Mainframe Base"; nitrogen = 100; oxygen = 0; temperature = 80},/area/tcommsat/chamber) +"sn" = (/obj/structure/lattice,/obj/structure/cable{icon_state = "1-2"},/turf/simulated/open,/area/stellardelight/deck2/starboard) +"sr" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/turf/simulated/floor/tiled/techfloor/grid,/area/ai) +"ss" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/angled_bay/external/glass{dir = 4; frequency = 1380; id_tag = null; locked = 1; name = "Docking Port Airlock"},/obj/effect/map_helper/airlock/door/int_door,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/machinery/access_button{command = "cycle_interior"; dir = 4; frequency = 1380; master_tag = "sd_port_landing"; pixel_y = 32; req_one_access = list(13)},/obj/structure/cable{icon_state = "4-8"},/turf/simulated/floor/tiled/steel_ridged,/area/stellardelight/deck3/portdock) +"st" = (/obj/structure/bed/chair/sofa/corp/right{dir = 8},/obj/machinery/light/small{dir = 4},/mob/living/simple_mob/animal/passive/fox/syndicate/aipet,/turf/simulated/floor/carpet/turcarpet,/area/ai) +"su" = (/obj/machinery/power/apc/angled{dir = 8},/obj/structure/cable/blue{icon_state = "0-4"},/turf/simulated/floor/tiled/techfloor/grid,/area/tcommsat/computer) +"sx" = (/obj/machinery/door/firedoor/glass,/turf/simulated/floor,/area/stellardelight/deck2/central) +"sz" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/angled_bay/hatch{dir = 4; door_color = "#e6ab22"; name = "Shield Generator"; req_access = null; req_one_access = list(11,24); stripe_color = "#e6ab22"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled/steel_ridged,/area/stellardelight/deck2/central) +"sA" = (/obj/structure/bed/chair{dir = 4},/turf/simulated/floor/carpet/purcarpet,/area/crew_quarters/heads/hor) +"sC" = (/obj/machinery/computer/mecha{dir = 1},/turf/simulated/floor/tiled/techfloor,/area/crew_quarters/heads/hor) +"sE" = (/obj/effect/shuttle_landmark/premade/sd/deck3/starboardlanding,/turf/space,/area/space) +"sI" = (/obj/structure/table/standard,/obj/random/paicard,/obj/machinery/atmospherics/unary/vent_scrubber/on,/turf/simulated/floor/bluegrid,/area/ai_cyborg_station) +"sJ" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/turf/simulated/open,/area/stellardelight/deck2/fore) +"sK" = (/obj/machinery/atmospherics/pipe/simple/hidden/black{dir = 4},/turf/simulated/floor/bluegrid{name = "Mainframe Base"; nitrogen = 100; oxygen = 0; temperature = 80},/area/tcommsat/chamber) +"sM" = (/turf/simulated/floor/reinforced/airless,/area/stellardelight/deck3/exterior) +"sN" = (/obj/structure/cable/green{icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/green{icon_state = "1-4"},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portcent) +"sO" = (/turf/simulated/floor,/area/stellardelight/deck2/fore) +"sP" = (/obj/structure/cable/green{icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 1},/obj/structure/cable/green{icon_state = "1-2"},/turf/simulated/floor/tiled,/area/stellardelight/deck3/starboarddock) +"sQ" = (/obj/structure/table/standard,/obj/item/weapon/aiModule/reset,/obj/machinery/alarm{dir = 4; pixel_x = -28},/obj/structure/sign/warning/secure_area{pixel_y = 32},/turf/simulated/floor/bluegrid,/area/ai_cyborg_station) +"sR" = (/obj/structure/cable/blue{icon_state = "4-8"},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/forestarroomb) +"sU" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 4},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"sX" = (/obj/structure/closet/crate,/obj/random/maintenance,/obj/random/maintenance,/obj/random/maintenance,/obj/random/maintenance,/obj/random/maintenance,/obj/random/maintenance/security,/obj/random/maintenance/security,/obj/random/drinkbottle,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portfore) +"sZ" = (/obj/structure/cable{icon_state = "1-2"},/turf/simulated/wall/bay/r_wall/blue,/area/maintenance/stellardelight/deck3/portaft) +"tb" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals_central5{dir = 4},/turf/simulated/floor/tiled,/area/stellardelight/deck3/starboarddock) +"tc" = (/obj/structure/cable/blue{icon_state = "1-4"},/obj/effect/mouse_hole_spawner{dir = 8},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardfore) +"tg" = (/obj/structure/cable/green{icon_state = "4-8"},/obj/structure/disposalpipe/junction{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"th" = (/turf/simulated/wall/bay/r_wall/blue,/area/ai_cyborg_station) +"tk" = (/obj/structure/cable{icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardaft) +"tn" = (/obj/machinery/light_switch{dir = 8; pixel_x = 24},/turf/simulated/floor/carpet/turcarpet,/area/ai) +"tp" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/random/trash_pile,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portcent) +"tq" = (/obj/machinery/camera/network/command{dir = 9},/turf/simulated/floor/tiled/techfloor/grid,/area/ai) +"tu" = (/obj/machinery/light/small{dir = 4},/obj/structure/closet/crate,/obj/random/contraband,/obj/random/maintenance,/obj/random/maintenance/clean,/obj/random/maintenance/clean,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/aftstarroom) +"ty" = (/obj/machinery/computer/teleporter,/turf/simulated/floor/tiled/techfloor/grid,/area/ai_cyborg_station) +"tz" = (/obj/machinery/recharge_station,/turf/simulated/floor/bluegrid,/area/ai_upload) +"tC" = (/obj/structure/sign/vacuum,/turf/simulated/wall/bay/r_wall/steel,/area/maintenance/stellardelight/deck3/starboardcent) +"tF" = (/obj/structure/cable/green{icon_state = "4-8"},/obj/structure/frame,/turf/simulated/floor/tiled/techfloor/grid,/area/maintenance/stellardelight/deck3/forestarrooma) +"tG" = (/obj/machinery/light,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals5,/obj/structure/cable{icon_state = "4-8"},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"tH" = (/obj/structure/cable/green{icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/turf/simulated/floor/tiled,/area/stellardelight/deck3/transitgateway) +"tJ" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/machinery/light{dir = 1},/obj/structure/flora/pottedplant/decorative,/turf/simulated/floor/tiled/eris/dark/gray_platform,/area/stellardelight/deck3/commandhall) +"tK" = (/obj/effect/floor_decal/industrial/warning{dir = 4},/obj/structure/cable/green{icon_state = "1-2"},/obj/structure/cable/green{icon_state = "1-8"},/turf/simulated/floor/airless,/area/stellardelight/deck3/exterior) +"tL" = (/obj/machinery/atmospherics/pipe/simple/hidden/black{dir = 4},/obj/structure/cable/blue{icon_state = "1-8"},/turf/simulated/floor/bluegrid{name = "Mainframe Base"; nitrogen = 100; oxygen = 0; temperature = 80},/area/tcommsat/chamber) +"tO" = (/obj/structure/table/steel_reinforced,/obj/item/device/taperecorder{pixel_x = 10},/obj/item/weapon/reagent_containers/food/drinks/flask/barflask{pixel_x = -9; pixel_y = -2},/obj/item/device/radio/off,/turf/simulated/floor/tiled/dark,/area/crew_quarters/heads/hos) +"tQ" = (/obj/structure/table/standard,/obj/item/weapon/aiModule/freeform,/obj/machinery/light{dir = 1},/turf/simulated/floor/bluegrid,/area/ai_cyborg_station) +"tR" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/angled_bay/external/glass{dir = 4; frequency = 1380; id_tag = null; locked = 1; name = "Docking Port Airlock"},/obj/effect/map_helper/airlock/door/ext_door,/obj/machinery/access_button{command = "cycle_exterior"; dir = 4; frequency = 1380; master_tag = "sd_escape_port"; pixel_y = 32; req_one_access = list(13)},/turf/simulated/floor/tiled/steel_ridged,/area/stellardelight/deck3/portdock) +"tT" = (/obj/structure/cable/blue{icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled/eris/dark/gray_platform,/area/stellardelight/deck3/commandhall) +"tV" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/turf/simulated/open,/area/stellardelight/deck2/fore) +"tW" = (/obj/machinery/atmospherics/portables_connector{dir = 4},/obj/machinery/portable_atmospherics/canister/air/airlock{start_pressure = 4559.63},/turf/simulated/floor,/area/tcommsat/computer) +"tX" = (/obj/structure/bed/chair/sofa/corp/left{dir = 8},/turf/simulated/floor/bluegrid,/area/ai) +"tZ" = (/turf/simulated/floor/carpet/purcarpet,/area/crew_quarters/heads/hor) +"ub" = (/obj/item/modular_computer/console/preset/command,/obj/structure/sign/poster{dir = 8},/obj/machinery/newscaster/security_unit{pixel_y = 28},/turf/simulated/floor/tiled/dark,/area/crew_quarters/heads/hos) +"uc" = (/obj/machinery/teleport/station{dir = 2},/turf/simulated/floor/tiled/techfloor/grid,/area/ai_cyborg_station) +"uf" = (/obj/structure/lattice,/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/open,/area/stellardelight/deck2/port) +"ui" = (/obj/machinery/portable_atmospherics/canister/phoron,/obj/effect/floor_decal/fancy_shuttle{fancy_shuttle_tag = "sdboat"},/obj/machinery/atmospherics/portables_connector/fuel{dir = 1},/obj/machinery/door/window/southleft{dir = 1; req_one_access = list(11,67)},/turf/simulated/floor/tiled,/area/shuttle/sdboat/aft{base_turf = /turf/simulated/floor/reinforced/airless}) +"uj" = (/turf/simulated/wall/bay/r_wall/blue,/area/crew_quarters/heads/hor) +"uk" = (/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 8},/obj/item/device/radio/intercom{dir = 8; pixel_x = -24},/obj/structure/cable{icon_state = "1-2"},/turf/simulated/floor/tiled,/area/stellardelight/deck3/portdock) +"ul" = (/obj/structure/cable/blue{icon_state = "2-8"},/obj/structure/cable/blue{icon_state = "1-2"},/obj/structure/cable/blue{icon_state = "1-8"},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardfore) +"un" = (/obj/structure/cable/green{icon_state = "2-4"},/turf/simulated/floor/airless,/area/stellardelight/deck3/exterior) +"uq" = (/turf/simulated/wall/bay/r_wall/steel,/area/stellardelight/deck3/starboarddock) +"ur" = (/obj/structure/cable/green{icon_state = "4-8"},/turf/simulated/wall/bay/r_wall/steel,/area/maintenance/stellardelight/deck3/starboardaft) +"us" = (/obj/machinery/light{dir = 4},/turf/simulated/floor/bluegrid,/area/ai) +"ut" = (/obj/structure/cable/blue{icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardcent) +"uv" = (/obj/machinery/atmospherics/pipe/manifold/hidden/black,/obj/structure/cable/blue{icon_state = "2-4"},/turf/simulated/floor/bluegrid{name = "Mainframe Base"; nitrogen = 100; oxygen = 0; temperature = 80},/area/tcommsat/chamber) +"uw" = (/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 1},/obj/structure/cable/blue{icon_state = "1-2"},/turf/simulated/floor/tiled/techfloor/grid,/area/tcommsat/computer) +"uz" = (/obj/effect/floor_decal/techfloor{dir = 4},/obj/effect/landmark{name = "JoinLateCryo"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled/techfloor,/area/stellardelight/deck3/cryo) +"uB" = (/obj/machinery/door/firedoor/glass,/obj/structure/window/bay/reinforced,/obj/machinery/atmospherics/pipe/simple/hidden/black,/obj/structure/low_wall/bay/reinforced/blue,/turf/simulated/floor,/area/tcommsat/computer) +"uD" = (/obj/structure/closet/firecloset,/obj/random/maintenance,/obj/random/maintenance/cargo,/obj/random/maintenance/clean,/obj/random/drinkbottle,/obj/random/drinkbottle,/obj/random/drinkbottle,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/aftstarroom) +"uE" = (/obj/structure/table/rack,/obj/random/contraband,/obj/random/maintenance,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/forestarroomb) +"uH" = (/obj/structure/cable/blue{icon_state = "2-8"},/obj/structure/cable/blue{icon_state = "4-8"},/turf/simulated/floor/airless,/area/stellardelight/deck3/exterior) +"uI" = (/obj/structure/cable/blue{icon_state = "1-4"},/turf/simulated/floor/bluegrid,/area/ai) +"uJ" = (/obj/structure/closet/firecloset,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portcent) +"uM" = (/obj/machinery/alarm/angled,/obj/structure/table/woodentable,/obj/item/device/flashlight/lamp/clown{pixel_x = -4; pixel_y = 6},/obj/item/weapon/bikehorn{pixel_x = -2; pixel_y = 2},/obj/item/weapon/stamp/clown{pixel_x = 6; pixel_y = 9},/turf/simulated/floor/wood,/area/stellardelight/deck3/clownmimeoffice) +"uQ" = (/obj/machinery/alarm/angled{dir = 8},/obj/machinery/computer/shuttle_control/explore/sdboat{dir = 8},/turf/simulated/floor/tiled/techfloor/grid,/area/ai_server_room) +"uT" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/structure/cable/blue{icon_state = "2-8"},/turf/simulated/floor/tiled/techfloor,/area/ai_cyborg_station) +"uU" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/angled_bay/standard/color{dir = 4; door_color = "#9c9c9c"; fill_color = "#5c5c5c"; id_tag = "readingroom3"; name = "Room 3"; stripe_color = "#89bd66"},/turf/simulated/floor/tiled/steel_ridged,/area/stellardelight/deck3/readingroom) +"uV" = (/obj/machinery/computer/robotics{dir = 1},/turf/simulated/floor/tiled/techfloor,/area/crew_quarters/heads/hor) +"uW" = (/obj/effect/floor_decal/corner_techfloor_grid{dir = 5},/obj/effect/floor_decal/corner_techfloor_grid{dir = 10},/obj/machinery/light/floortube{dir = 4; pixel_x = 2},/obj/structure/cable/green{icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled/techfloor,/area/stellardelight/deck3/cryo) +"uX" = (/obj/structure/cable{icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor,/area/stellardelight/deck2/starboard) +"uY" = (/obj/structure/cable{icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 8},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardaft) +"uZ" = (/obj/structure/cable/blue{icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/camera/network/command{dir = 4},/turf/simulated/floor/tiled/techfloor/grid,/area/ai_server_room) +"va" = (/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/structure/cable/green{icon_state = "2-4"},/turf/simulated/floor/airless,/area/stellardelight/deck3/exterior) +"vb" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/turf/simulated/floor/tiled/techfloor,/area/ai_cyborg_station) +"vf" = (/obj/structure/table/reinforced,/obj/machinery/photocopier/faxmachine{department = "Chief Engineer's Office"},/turf/simulated/floor/tiled,/area/crew_quarters/heads/chief) +"vh" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/turf/simulated/floor/wood,/area/stellardelight/deck3/cafe) +"vi" = (/turf/simulated/floor/carpet/tealcarpet,/area/crew_quarters/heads/cmo) +"vo" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 5},/obj/structure/cable/green{icon_state = "1-2"},/turf/simulated/floor/tiled,/area/stellardelight/deck3/starboarddock) +"vq" = (/obj/structure/cable/green{icon_state = "4-8"},/turf/simulated/wall/bay/r_wall/steel,/area/maintenance/stellardelight/deck3/portaft) +"vr" = (/obj/machinery/atmospherics/pipe/simple/hidden/fuel{dir = 9},/turf/simulated/wall/fancy_shuttle{fancy_shuttle_tag = "sdboat"},/area/shuttle/sdboat/aft{base_turf = /turf/simulated/floor/reinforced/airless}) +"vt" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/structure/cable{icon_state = "2-4"},/turf/simulated/floor,/area/stellardelight/deck2/central) +"vv" = (/obj/structure/cable/green{icon_state = "4-8"},/obj/effect/floor_decal/emblem/nt2,/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/effect/landmark{name = "lightsout"},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"vw" = (/obj/structure/sign/department/shield,/turf/simulated/wall/bay/r_wall/blue,/area/stellardelight/deck3/commandhall) +"vy" = (/obj/machinery/atmospherics/portables_connector{dir = 1},/obj/machinery/portable_atmospherics/canister/air/airlock,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardaft) +"vA" = (/obj/machinery/power/apc/angled{dir = 1; name = "night shift APC"; nightshift_setting = 2},/obj/structure/cable/green{icon_state = "0-4"},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portaft) +"vE" = (/obj/effect/shuttle_landmark{base_area = /area/stellardelight/deck3/exterior; base_turf = /turf/simulated/floor/reinforced/airless; docking_controller = "sd_starboard_landing"; landmark_tag = "starboard_shuttlepad"; name = "Starboard Shuttlepad"},/turf/simulated/floor/reinforced/airless,/area/stellardelight/deck3/exterior) +"vF" = (/obj/structure/lattice,/obj/structure/cable/green{icon_state = "4-8"},/turf/simulated/open,/area/stellardelight/deck2/fore) +"vG" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/structure/cable{icon_state = "1-8"},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"vI" = (/obj/structure/bed/chair{dir = 8},/obj/machinery/light{dir = 4},/turf/simulated/floor/tiled,/area/stellardelight/deck3/portdock) +"vJ" = (/obj/structure/bed/chair{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 4},/turf/simulated/floor/tiled,/area/stellardelight/deck3/starboarddock) +"vN" = (/obj/machinery/computer/telecomms/monitor{dir = 8; network = "tcommsat"},/obj/machinery/light{dir = 4},/turf/simulated/floor/tiled/techfloor/grid,/area/tcommsat/computer) +"vO" = (/obj/machinery/door/firedoor/glass,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/blue{icon_state = "1-2"},/obj/machinery/door/airlock/angled_bay/hatch{door_color = "#323d80"; name = "maintenance access"; req_one_access = list(19,38); stripe_color = "#323d80"},/turf/simulated/floor/tiled/steel_ridged,/area/stellardelight/deck3/commandhall) +"vP" = (/obj/structure/bed/chair{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 4},/obj/structure/sign/nanotrasen{pixel_x = 32},/turf/simulated/floor/tiled,/area/stellardelight/deck3/starboarddock) +"vQ" = (/obj/structure/cable/green{icon_state = "2-8"},/obj/structure/cable/green{icon_state = "4-8"},/turf/simulated/floor/airless,/area/stellardelight/deck3/exterior) +"vS" = (/obj/structure/cable/blue{icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/turf/simulated/floor/tiled/techfloor/grid,/area/ai_cyborg_station) +"vT" = (/obj/machinery/holoplant,/obj/machinery/status_display{pixel_x = -32},/turf/simulated/floor/bluegrid,/area/ai_cyborg_station) +"vX" = (/obj/structure/cable{icon_state = "4-8"},/obj/effect/map_helper/airlock/atmos/chamber_pump,/obj/effect/floor_decal/fancy_shuttle{fancy_shuttle_tag = "sdboat"},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/fuel{dir = 4},/turf/simulated/floor/tiled,/area/shuttle/sdboat/aft{base_turf = /turf/simulated/floor/reinforced/airless}) +"wa" = (/obj/machinery/door/firedoor/glass,/obj/structure/window/bay/reinforced,/obj/structure/low_wall/bay/reinforced/steel,/turf/simulated/floor,/area/stellardelight/deck2/port) +"wc" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/obj/effect/landmark/vermin,/turf/simulated/open,/area/stellardelight/deck2/starboard) +"wd" = (/obj/structure/table/standard,/obj/item/weapon/aiModule/oxygen,/obj/item/weapon/aiModule/oneHuman,/obj/item/weapon/aiModule/purge,/obj/item/weapon/aiModule/antimov,/obj/item/weapon/aiModule/teleporterOffline,/obj/machinery/alarm/angled{dir = 8},/turf/simulated/floor/bluegrid,/area/ai_cyborg_station) +"we" = (/obj/machinery/power/pointdefense{id_tag = "sd_pd"},/obj/effect/floor_decal/industrial/warning/full,/obj/structure/cable/blue{icon_state = "0-8"},/turf/simulated/floor/airless,/area/stellardelight/deck3/exterior) +"wg" = (/obj/structure/cable/green{icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"wm" = (/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 8; frequency = 1380; id_tag = null},/obj/machinery/embedded_controller/radio/airlock/docking_port{frequency = 1380; id_tag = "sd_starboard_landing"; pixel_y = 29},/obj/effect/map_helper/airlock/atmos/chamber_pump,/obj/effect/map_helper/airlock/sensor/chamber_sensor,/obj/machinery/airlock_sensor{frequency = 1380; id_tag = null; pixel_y = -25},/turf/simulated/floor/tiled,/area/stellardelight/deck3/starboarddock) +"wo" = (/obj/structure/table/standard,/obj/item/weapon/aiModule/asimov,/obj/item/weapon/aiModule/freeformcore,/obj/item/weapon/aiModule/corp,/obj/item/weapon/aiModule/paladin,/obj/item/weapon/aiModule/robocop,/obj/structure/cable/blue,/obj/machinery/power/apc/angled{dir = 8},/turf/simulated/floor/bluegrid,/area/ai_cyborg_station) +"wq" = (/obj/structure/bed/chair{dir = 8},/turf/simulated/floor/carpet,/area/crew_quarters/heads/hos) +"wr" = (/obj/machinery/computer/ship/engines/adv,/obj/effect/floor_decal/fancy_shuttle{fancy_shuttle_tag = "sdboat"},/turf/simulated/floor/tiled,/area/shuttle/sdboat/fore{base_turf = /turf/simulated/floor/reinforced/airless}) +"wt" = (/obj/machinery/door/firedoor/glass,/obj/structure/window/bay/reinforced,/obj/machinery/door/blast/angled/open{dir = 4; id = "readingroom2"},/obj/structure/low_wall/bay/reinforced/steel,/turf/simulated/floor,/area/stellardelight/deck3/readingroom) +"wv" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled/techfloor/grid,/area/ai_cyborg_station) +"ww" = (/obj/machinery/atmospherics/portables_connector{dir = 8},/obj/machinery/portable_atmospherics/canister/air/airlock,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardaft) +"wy" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/obj/structure/cable/blue{icon_state = "1-2"},/turf/simulated/open,/area/stellardelight/deck2/fore) +"wA" = (/obj/machinery/alarm/angled{dir = 4},/turf/simulated/floor/bluegrid,/area/ai_upload) +"wG" = (/obj/machinery/alarm/angled{dir = 8},/turf/simulated/floor/tiled/techfloor/grid,/area/ai) +"wK" = (/obj/effect/floor_decal/techfloor/orange{dir = 1},/obj/item/device/radio/intercom{dir = 1; pixel_y = 24},/turf/simulated/floor/tiled/techfloor,/area/stellardelight/deck3/transitgateway) +"wM" = (/turf/simulated/floor/airless,/area/maintenance/stellardelight/deck3/starboardcent) +"wN" = (/turf/simulated/floor/tiled/techfloor/grid,/area/ai_cyborg_station) +"wP" = (/obj/machinery/atmospherics/unary/vent_scrubber/on,/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 1},/obj/machinery/station_map{pixel_y = 32},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"wQ" = (/obj/structure/cable/blue{icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/turf/simulated/floor/tiled/eris/dark/gray_platform,/area/stellardelight/deck3/commandhall) +"wR" = (/obj/structure/lattice,/obj/structure/cable{icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/turf/simulated/open,/area/stellardelight/deck2/starboard) +"wS" = (/obj/machinery/holoplant,/turf/simulated/floor/bluegrid,/area/ai) +"wV" = (/obj/structure/cable/blue{icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/closet/emergsuit_wall{dir = 8; pixel_x = -27},/turf/simulated/floor/tiled/eris/dark/gray_platform,/area/stellardelight/deck3/commandhall) +"wW" = (/obj/structure/cable/green{icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/camera/network/civilian{dir = 1},/turf/simulated/floor/tiled,/area/stellardelight/deck3/transitgateway) +"wY" = (/obj/machinery/light,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled,/area/crew_quarters/heads/hop) +"wZ" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 6},/turf/simulated/wall/fancy_shuttle{fancy_shuttle_tag = "sdboat"},/area/shuttle/sdboat/aft{base_turf = /turf/simulated/floor/reinforced/airless}) +"xb" = (/obj/machinery/light/small{dir = 4},/obj/structure/closet/crate,/obj/random/contraband,/obj/random/contraband,/obj/random/maintenance/clean,/obj/random/maintenance/clean,/obj/random/maintenance/clean,/obj/random/maintenance/engineering,/obj/random/maintenance/engineering,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/foreportrooma) +"xd" = (/obj/structure/lattice,/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/turf/simulated/open,/area/stellardelight/deck2/port) +"xe" = (/obj/machinery/light{dir = 4},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/turf/simulated/floor/tiled/techfloor/grid,/area/ai_server_room) +"xf" = (/obj/structure/handrail{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden,/obj/effect/floor_decal/fancy_shuttle{fancy_shuttle_tag = "sdboat"},/turf/simulated/floor/tiled,/area/shuttle/sdboat/aft{base_turf = /turf/simulated/floor/reinforced/airless}) +"xg" = (/obj/machinery/door/firedoor/glass,/obj/structure/window/bay/reinforced,/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/low_wall/bay/reinforced/blue,/turf/simulated/floor,/area/crew_quarters/heads/hop) +"xh" = (/obj/machinery/light{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/bluegrid,/area/ai) +"xi" = (/obj/structure/cable/green{icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portaft) +"xj" = (/obj/structure/table/standard,/obj/item/weapon/aiModule/consuming_eradicator,/obj/item/weapon/aiModule/guard_dog,/obj/item/weapon/aiModule/pleasurebot,/obj/item/weapon/aiModule/protective_shell,/obj/item/weapon/aiModule/scientific_pursuer,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/turf/simulated/floor/bluegrid,/area/ai_cyborg_station) +"xm" = (/obj/structure/cable/blue{icon_state = "1-2"},/turf/simulated/floor/airless,/area/stellardelight/deck3/exterior) +"xo" = (/obj/structure/cable{icon_state = "4-8"},/turf/simulated/floor/wood,/area/stellardelight/deck3/clownmimeoffice) +"xp" = (/turf/simulated/floor/wood,/area/stellardelight/deck3/clownmimeoffice) +"xu" = (/obj/machinery/door/airlock/angled_bay/external/glass{dir = 4; frequency = 1379; id_tag = "starmaint_exterior"; locked = 1; name = "Exterior Airlock"},/obj/machinery/door/firedoor/glass,/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "starmaint_airlock"; name = "exterior access button"; pixel_y = 32; req_access = null; req_one_access = list(13)},/turf/simulated/floor/tiled/steel_ridged,/area/maintenance/stellardelight/deck3/starboardcent) +"xv" = (/obj/structure/cable/green{icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/wood,/area/stellardelight/deck3/readingroom) +"xw" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/blue{icon_state = "1-2"},/turf/simulated/floor/tiled/eris/dark/gray_platform,/area/stellardelight/deck3/commandhall) +"xy" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/turf/simulated/floor/tiled/monotile,/area/stellardelight/deck3/commandhall) +"xz" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/machinery/atmospherics/unary/freezer{dir = 1; icon_state = "freezer_1"; set_temperature = 73; use_power = 1},/turf/simulated/floor/tiled/techfloor/grid,/area/tcommsat/computer) +"xA" = (/obj/structure/sign/warning/evac{pixel_x = 32; pixel_y = -32},/obj/effect/floor_decal/steeldecal/steel_decals5,/obj/structure/cable{icon_state = "4-8"},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"xB" = (/obj/machinery/atmospherics/binary/passive_gate/on{dir = 8},/turf/simulated/floor/tiled/techfloor/grid,/area/tcommsat/computer) +"xC" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 4},/obj/effect/landmark/vermin,/turf/simulated/floor/tiled,/area/stellardelight/deck3/starboarddock) +"xE" = (/obj/structure/closet,/obj/random/firstaid,/obj/random/maintenance,/obj/random/maintenance/cargo,/obj/random/maintenance/cargo,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/aftstarroom) +"xH" = (/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardcent) +"xI" = (/obj/machinery/door/firedoor/glass,/obj/structure/window/bay/reinforced,/obj/structure/cable/green{icon_state = "4-8"},/obj/structure/low_wall/bay/reinforced/steel,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/foreportroomb) +"xL" = (/turf/simulated/wall/fancy_shuttle/low{fancy_shuttle_tag = "sdboat"},/area/shuttle/sdboat/aft{base_turf = /turf/simulated/floor/reinforced/airless}) +"xM" = (/obj/structure/bed/chair/office/dark{dir = 4},/obj/effect/landmark/start/iaa,/turf/simulated/floor/carpet/blue2,/area/lawoffice) +"xN" = (/obj/structure/cable/green{icon_state = "4-8"},/turf/simulated/floor/tiled/techfloor/grid,/area/maintenance/stellardelight/deck3/forestarrooma) +"xO" = (/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 8},/obj/structure/cable{icon_state = "1-2"},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"xP" = (/turf/simulated/floor/tiled/techfloor/grid,/area/maintenance/stellardelight/deck3/foreportroomb) +"xR" = (/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/open,/area/stellardelight/deck2/starboard) +"xS" = (/obj/structure/bed/chair/office/dark{dir = 4},/obj/effect/landmark/start/hos,/turf/simulated/floor/carpet,/area/crew_quarters/heads/hos) +"xT" = (/obj/structure/cable/green{icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portaft) +"xU" = (/obj/structure/cable/blue{icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/turf/simulated/floor/tiled/eris/dark/gray_platform,/area/stellardelight/deck3/commandhall) +"xW" = (/obj/machinery/door/firedoor/glass,/turf/simulated/floor/tiled/steel_ridged,/area/stellardelight/deck3/aft) +"xY" = (/turf/simulated/floor/carpet/blue2,/area/lawoffice) +"xZ" = (/turf/simulated/floor/wood,/area/stellardelight/deck3/cafe) +"ya" = (/obj/machinery/button/remote/blast_door{id = "shuttleshutter"; name = "Shutter Control"; pixel_x = 17; pixel_y = 27},/obj/structure/cable/green{icon_state = "2-8"},/obj/effect/floor_decal/fancy_shuttle{fancy_shuttle_tag = "sdboat"},/turf/simulated/floor/tiled,/area/shuttle/sdboat/fore{base_turf = /turf/simulated/floor/reinforced/airless}) +"yb" = (/obj/structure/sign/deck3{pixel_x = 32},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/turf/simulated/floor/tiled/monotile,/area/stellardelight/deck3/commandhall) +"yc" = (/obj/machinery/atmospherics/pipe/manifold/hidden,/obj/structure/cable/blue{icon_state = "1-2"},/turf/simulated/floor/tiled/techfloor/grid,/area/tcommsat/computer) +"yd" = (/obj/structure/cable/green{icon_state = "1-4"},/turf/simulated/floor/airless,/area/stellardelight/deck3/exterior) +"ye" = (/obj/structure/dogbed,/mob/living/simple_mob/animal/passive/dog/corgi/Lisa,/turf/simulated/floor/tiled,/area/crew_quarters/heads/hop) +"yf" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/angled_bay/double{dir = 8; name = "maintenance access"; stripe_color = "#454545"},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardcent) +"yi" = (/obj/structure/cable/blue{icon_state = "1-2"},/obj/structure/cable/blue,/obj/machinery/power/sensor{name = "Powernet Sensor - Command Subgrid"; name_tag = "Command Subgrid"},/obj/machinery/power/apc/angled{dir = 8},/turf/simulated/floor,/area/maintenance/stellardelight/substation/command) +"yj" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 9},/turf/simulated/wall/bay/r_wall/steel,/area/stellardelight/deck3/aft) +"ym" = (/obj/structure/table/rack,/obj/random/maintenance,/obj/random/maintenance/clean,/obj/random/maintenance/engineering,/obj/random/maintenance/security,/obj/random/contraband,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardfore) +"yo" = (/obj/structure/cable/blue{icon_state = "1-2"},/turf/simulated/floor/tiled,/area/crew_quarters/heads/hop) +"yp" = (/obj/structure/cable/blue{icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/machinery/computer/cryopod/robot{pixel_x = 32},/turf/simulated/floor/tiled/techfloor/grid,/area/ai_cyborg_station) +"yq" = (/obj/machinery/light/small{dir = 4},/obj/structure/cable/green{icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/wood,/area/stellardelight/deck3/readingroom) +"ys" = (/obj/machinery/atm{pixel_y = 30},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 1},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"yt" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"yw" = (/obj/effect/floor_decal/techfloor/orange{dir = 9},/obj/structure/closet/emergsuit_wall{pixel_y = 29},/obj/structure/closet/emergsuit_wall{dir = 8; pixel_x = -27},/turf/simulated/floor/tiled/techfloor,/area/stellardelight/deck3/transitgateway) +"yy" = (/obj/machinery/door/firedoor/glass,/obj/structure/window/bay/reinforced,/obj/structure/cable/blue{icon_state = "4-8"},/obj/structure/low_wall/bay/reinforced/steel,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/forestarroomb) +"yB" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/carpet/tealcarpet,/area/crew_quarters/heads/cmo) +"yC" = (/obj/machinery/power/apc/angled{dir = 4},/obj/structure/cable/blue,/turf/simulated/floor/tiled/dark,/area/lawoffice) +"yE" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/tiled/techfloor/grid,/area/tcommsat/computer) +"yF" = (/obj/structure/cable/green{icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/angled_bay/double/glass{name = "glass airlock"},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 1},/turf/simulated/floor/tiled/steel_ridged,/area/stellardelight/deck3/portdock) +"yH" = (/obj/structure/cable{icon_state = "4-8"},/turf/simulated/wall/bay/r_wall/blue,/area/ai_cyborg_station) +"yI" = (/obj/item/weapon/folder{pixel_x = -4},/obj/item/weapon/folder/blue{pixel_x = 5},/obj/item/weapon/folder/red{pixel_y = 3},/obj/item/weapon/folder/yellow,/obj/structure/table/darkglass,/obj/machinery/light,/turf/simulated/floor/tiled/dark,/area/lawoffice) +"yJ" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/turf/simulated/floor/tiled/monotile,/area/stellardelight/deck3/commandhall) +"yM" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/angled_bay/standard/color{door_color = "#323d80"; fill_color = "#313866"; name = "Head of Personnel"; req_access = list(57); stripe_color = "#a3d1d1"},/turf/simulated/floor/tiled/steel_ridged,/area/crew_quarters/heads/hop) +"yP" = (/obj/structure/sign/warning/falling{pixel_x = 32},/turf/simulated/open,/area/stellardelight/deck2/starboard) +"yR" = (/obj/machinery/door/firedoor/glass,/obj/structure/window/bay/reinforced,/obj/structure/low_wall/bay/reinforced/steel,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portcent) +"yS" = (/obj/machinery/door/firedoor/glass,/obj/machinery/access_button{command = "cycle_exterior"; dir = 4; frequency = 1380; master_tag = "sd_starboard_landing"; pixel_y = 32; req_one_access = list(13)},/obj/machinery/door/airlock/angled_bay/external/glass{dir = 4; frequency = 1380; id_tag = null; locked = 1; name = "Docking Port Airlock"},/obj/effect/map_helper/airlock/door/ext_door,/turf/simulated/floor/tiled/steel_ridged,/area/stellardelight/deck3/starboarddock) +"yV" = (/obj/machinery/light{dir = 8},/turf/simulated/floor/tiled/techfloor/grid,/area/ai_cyborg_station) +"yW" = (/obj/effect/floor_decal/industrial/warning{dir = 4},/obj/structure/cable/green{icon_state = "1-2"},/turf/simulated/floor/airless,/area/stellardelight/deck3/exterior) +"yY" = (/obj/structure/table/steel,/obj/random/maintenance/clean,/turf/simulated/floor/tiled/techfloor/grid,/area/maintenance/stellardelight/deck3/foreportroomb) +"yZ" = (/obj/machinery/door/airlock/angled_bay/hatch{name = "maintenance access"; stripe_color = "#454545"},/turf/simulated/floor/tiled/steel_ridged,/area/stellardelight/deck3/readingroom) +"za" = (/obj/machinery/cryopod/robot/door/gateway,/turf/simulated/floor/tiled/techfloor,/area/stellardelight/deck3/transitgateway) +"zb" = (/obj/machinery/atmospherics/pipe/manifold4w/hidden/scrubbers,/obj/machinery/atmospherics/pipe/manifold4w/hidden/supply,/obj/structure/cable/blue{icon_state = "1-4"},/obj/structure/cable/blue{icon_state = "1-8"},/obj/structure/cable/blue{icon_state = "2-4"},/obj/structure/cable/blue{icon_state = "2-8"},/obj/structure/cable/blue{icon_state = "1-2"},/obj/structure/cable/blue{icon_state = "4-8"},/turf/simulated/floor/tiled/eris/dark/gray_platform,/area/stellardelight/deck3/commandhall) +"zf" = (/obj/structure/cable/blue{icon_state = "1-2"},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardfore) +"zg" = (/obj/structure/cable/blue{icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/turf/simulated/floor/tiled/techfloor/grid,/area/ai_upload) +"zi" = (/obj/effect/floor_decal/emblem/nt2,/obj/structure/cable/blue{icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled/techfloor/grid,/area/ai_upload) +"zk" = (/obj/effect/landmark{name = "droppod_landing"},/turf/space,/area/space) +"zm" = (/obj/structure/cable/blue{icon_state = "4-8"},/obj/structure/table/reinforced,/obj/machinery/photocopier/faxmachine{department = "Head of Personnel's Office"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/machinery/alarm/angled,/turf/simulated/floor/tiled,/area/crew_quarters/heads/hop) +"zn" = (/obj/machinery/door/firedoor/glass,/obj/structure/window/bay/reinforced,/obj/structure/low_wall/bay/reinforced/blue,/turf/simulated/floor,/area/tcommsat/computer) +"zo" = (/obj/structure/bed/chair{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/carpet/blue2,/area/lawoffice) +"zp" = (/obj/machinery/light/small{dir = 8},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/foreportroomb) +"zr" = (/obj/machinery/cryopod,/obj/effect/floor_decal/corner_techfloor_grid{dir = 5},/obj/effect/floor_decal/corner_techfloor_grid{dir = 10},/turf/simulated/floor/tiled/techfloor,/area/stellardelight/deck3/cryo) +"zt" = (/obj/structure/table/steel,/obj/random/contraband,/obj/random/maintenance/clean,/turf/simulated/floor/tiled/techfloor/grid,/area/maintenance/stellardelight/deck3/foreportroomb) +"zv" = (/obj/item/weapon/bedsheet/rddouble,/obj/structure/bed/double/padded,/obj/structure/curtain/black{color = "#361447"},/obj/effect/landmark/start/rd,/turf/simulated/floor/carpet/purcarpet,/area/crew_quarters/heads/hor) +"zw" = (/obj/machinery/embedded_controller/radio/airlock/airlock_controller{dir = 8; id_tag = "portmaint_airlock"; pixel_x = 24; req_access = null; req_one_access = list(13); tag_airpump = "portmaint_airpump"; tag_chamber_sensor = "portmaint_sensor"; tag_exterior_door = "portmaint_exterior"; tag_interior_door = "portmaint_interior"},/turf/simulated/floor/airless,/area/maintenance/stellardelight/deck3/portcent) +"zy" = (/obj/machinery/camera/network/halls{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 4},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"zz" = (/turf/simulated/wall/bay/steel,/area/stellardelight/deck3/commandhall) +"zA" = (/obj/structure/cable{icon_state = "1-2"},/obj/structure/table/steel,/obj/random/maintenance/engineering,/obj/random/maintenance/security,/obj/random/maintenance/clean,/obj/random/maintenance,/obj/random/contraband,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardfore) +"zB" = (/obj/structure/cable/blue{icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/landmark{name = "lightsout"},/turf/simulated/floor/tiled/eris/dark/gray_platform,/area/stellardelight/deck3/commandhall) +"zC" = (/obj/item/toy/figure/mime,/obj/item/weapon/pen/crayon/marker/mime,/obj/item/weapon/pen/crayon/mime,/obj/structure/table/woodentable,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/turf/simulated/floor/carpet/bcarpet,/area/stellardelight/deck3/clownmimeoffice) +"zD" = (/obj/structure/cable/blue{icon_state = "1-2"},/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/structure/sign/warning/secure_area{pixel_x = -32},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled/techfloor/grid,/area/ai_server_room) +"zE" = (/obj/structure/table/bench/padded,/obj/effect/landmark/start/commandsecretary,/turf/simulated/floor/wood,/area/stellardelight/deck3/cafe) +"zF" = (/obj/structure/cable{icon_state = "0-4"},/obj/machinery/power/apc/angled{dir = 8},/turf/simulated/floor/carpet/bcarpet,/area/stellardelight/deck3/clownmimeoffice) +"zH" = (/obj/structure/cable/green{icon_state = "2-8"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/turf/simulated/floor,/area/stellardelight/deck2/port) +"zI" = (/obj/structure/cable/green{icon_state = "1-4"},/obj/structure/cable/green{icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 6},/obj/effect/floor_decal/arrivals,/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"zJ" = (/obj/effect/floor_decal/techfloor{dir = 9},/obj/effect/landmark{name = "JoinLateCryo"},/obj/machinery/alarm/angled{pixel_x = -32; pixel_y = 19},/obj/structure/closet/emergsuit_wall{pixel_y = 29},/turf/simulated/floor/tiled/techfloor,/area/stellardelight/deck3/cryo) +"zL" = (/obj/structure/cable{icon_state = "1-4"},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardcent) +"zM" = (/obj/effect/landmark{name = "JoinLateCyborg"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/effect/landmark/start/cyborg,/turf/simulated/floor/tiled/techfloor/grid,/area/ai_cyborg_station) +"zN" = (/turf/simulated/wall/bay/r_wall/blue,/area/crew_quarters/heads/hos) +"zQ" = (/obj/structure/table/steel,/obj/item/device/flashlight/lamp,/turf/simulated/floor/tiled/techfloor/grid,/area/maintenance/stellardelight/deck3/foreportrooma) +"zS" = (/obj/structure/handrail{dir = 1},/obj/machinery/power/apc{pixel_y = -28; req_access = null; req_one_access = list(11,67)},/obj/structure/cable/green,/obj/effect/floor_decal/fancy_shuttle{fancy_shuttle_tag = "sdboat"},/turf/simulated/floor/tiled,/area/shuttle/sdboat/aft{base_turf = /turf/simulated/floor/reinforced/airless}) +"zV" = (/obj/structure/cable/green{icon_state = "1-4"},/obj/structure/closet/crate,/obj/random/contraband,/obj/random/maintenance,/obj/random/snack,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/aftstarroom) +"zW" = (/obj/structure/lattice,/obj/structure/sign/warning/falling{pixel_y = 32},/turf/simulated/open,/area/stellardelight/deck2/fore) +"zX" = (/turf/simulated/wall/bay/r_wall/steel,/area/stellardelight/deck3/readingroom) +"zY" = (/obj/machinery/atmospherics/pipe/simple/hidden/universal{dir = 8},/turf/simulated/floor/tiled/techfloor/grid,/area/tcommsat/computer) +"Ae" = (/obj/structure/cable/green{icon_state = "4-8"},/turf/simulated/floor/airless,/area/stellardelight/deck3/exterior) +"Af" = (/obj/structure/closet/crate/bin{anchored = 1},/obj/machinery/atmospherics/unary/vent_scrubber/on,/turf/simulated/floor/wood,/area/stellardelight/deck3/readingroom) +"Ai" = (/obj/structure/cable/green{icon_state = "1-2"},/obj/effect/landmark{name = "maint_pred"},/turf/simulated/floor/tiled/techfloor/grid,/area/maintenance/stellardelight/deck3/forestarrooma) +"Aj" = (/obj/item/device/camera,/obj/item/device/camera_film,/obj/item/device/taperecorder,/obj/item/device/tape/random,/obj/item/device/tape/random,/obj/item/weapon/storage/secure/briefcase,/obj/structure/closet/walllocker_double/east,/turf/simulated/floor/carpet/blue2,/area/lawoffice) +"Al" = (/obj/machinery/power/apc/angled{dir = 4; name = "night shift APC"; nightshift_setting = 2},/obj/structure/cable/green{icon_state = "0-8"},/obj/structure/table/rack,/obj/random/maintenance,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/aftstarroom) +"Am" = (/obj/machinery/power/apc/angled{dir = 4; req_access = list(19,43,67)},/obj/structure/cable/green{icon_state = "0-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor/wood,/area/stellardelight/deck3/readingroom) +"An" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/turf/simulated/floor/carpet,/area/crew_quarters/heads/hop) +"Ap" = (/obj/structure/cable{icon_state = "1-4"},/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/structure/cable{icon_state = "4-8"},/turf/simulated/floor,/area/stellardelight/deck2/starboard) +"Aq" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled/techfloor/grid,/area/tcommsat/computer) +"As" = (/obj/structure/cable{icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 5},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardaft) +"At" = (/obj/structure/table/glass,/obj/item/device/flashlight/lamp/green,/turf/simulated/floor/carpet,/area/stellardelight/deck3/readingroom) +"Av" = (/obj/effect/floor_decal/techfloor{dir = 6},/obj/effect/landmark{name = "JoinLateCryo"},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/turf/simulated/floor/tiled/techfloor,/area/stellardelight/deck3/cryo) +"Aw" = (/obj/machinery/camera/network/command{dir = 9},/turf/simulated/floor/tiled/eris/dark/gray_platform,/area/stellardelight/deck3/commandhall) +"Ax" = (/obj/machinery/holoplant,/turf/simulated/floor/bluegrid,/area/ai_cyborg_station) +"Ay" = (/obj/structure/table/steel,/obj/random/maintenance/engineering,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/forestarrooma) +"Az" = (/obj/item/weapon/camera_assembly,/obj/item/weapon/camera_assembly,/obj/item/weapon/camera_assembly,/obj/item/weapon/camera_assembly,/obj/item/weapon/camera_assembly,/obj/item/weapon/camera_assembly,/obj/structure/closet/crate{name = "Camera Assembly Crate"},/obj/machinery/light{dir = 8},/turf/simulated/floor/tiled/techfloor/grid,/area/ai_cyborg_station) +"AD" = (/obj/structure/handrail,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 10},/obj/machinery/embedded_controller/radio/airlock/docking_port{frequency = 1380; id_tag = "sdboat_docker"; pixel_x = 5; pixel_y = 25},/obj/machinery/airlock_sensor{dir = 8; frequency = 1380; id_tag = null; pixel_x = 25; pixel_y = 2},/obj/effect/map_helper/airlock/sensor/chamber_sensor,/obj/effect/floor_decal/fancy_shuttle{fancy_shuttle_tag = "sdboat"},/turf/simulated/floor/tiled,/area/shuttle/sdboat/aft{base_turf = /turf/simulated/floor/reinforced/airless}) +"AE" = (/obj/structure/table/glass,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/turf/simulated/floor/tiled/eris/white/cargo,/area/crew_quarters/heads/cmo) +"AH" = (/obj/structure/cable{icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardcent) +"AK" = (/obj/random/trash_pile,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardaft) +"AP" = (/obj/machinery/power/apc/angled{dir = 4},/obj/structure/cable/blue{icon_state = "0-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled,/area/crew_quarters/heads/chief) +"AQ" = (/obj/structure/closet/crate,/obj/random/contraband,/obj/random/contraband,/obj/random/maintenance,/obj/random/maintenance,/obj/random/maintenance,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/forestarrooma) +"AS" = (/obj/machinery/computer/telecomms/server{dir = 8; network = "tcommsat"},/obj/machinery/alarm/angled{dir = 8},/turf/simulated/floor/tiled/techfloor/grid,/area/tcommsat/computer) +"AT" = (/obj/structure/cable{icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/angled_bay/double{name = "maintenance access"; stripe_color = "#454545"},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardaft) +"AU" = (/obj/machinery/light/small,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/obj/structure/bed/chair{dir = 8},/turf/simulated/floor,/area/stellardelight/deck2/central) +"AX" = (/obj/structure/table/reinforced,/obj/machinery/recharger{pixel_y = 6},/turf/simulated/floor/tiled,/area/crew_quarters/heads/hop) +"AY" = (/obj/machinery/door/firedoor/glass/hidden/steel{dir = 8},/obj/structure/cable/green{icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"AZ" = (/obj/machinery/porta_turret,/turf/simulated/floor/tiled/techfloor/grid,/area/ai_upload) +"Bb" = (/obj/structure/bed/chair/bay/comfy/blue{dir = 1},/obj/structure/panic_button/small{pixel_x = -29; pixel_y = 30},/obj/structure/cable/green{icon_state = "4-8"},/obj/effect/floor_decal/fancy_shuttle{fancy_shuttle_tag = "sdboat"},/turf/simulated/floor/tiled,/area/shuttle/sdboat/fore{base_turf = /turf/simulated/floor/reinforced/airless}) +"Bd" = (/obj/machinery/alarm/angled{dir = 8},/obj/structure/bookcase,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/wood,/area/stellardelight/deck3/readingroom) +"Be" = (/obj/structure/cable/green{icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals_central5{dir = 4},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"Bg" = (/obj/machinery/door/firedoor/glass,/obj/structure/cable{icon_state = "4-8"},/obj/machinery/door/airlock/angled_bay/hatch{dir = 4; name = "maintenance access"; stripe_color = "#454545"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled/steel_ridged,/area/maintenance/stellardelight/deck3/starboardaft) +"Bj" = (/obj/machinery/message_server,/turf/simulated/floor/tiled/techfloor/grid,/area/ai_server_room) +"Bk" = (/obj/machinery/computer/aiupload{dir = 4},/obj/machinery/light{dir = 8},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/turf/simulated/floor/tiled/techfloor/grid,/area/ai_upload) +"Bl" = (/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 8; id_tag = null},/obj/machinery/embedded_controller/radio/airlock/airlock_controller{frequency = 1380; id_tag = "tcommsairlock"; pixel_y = 24; req_one_access = list(61)},/obj/effect/map_helper/airlock/atmos/chamber_pump,/obj/effect/map_helper/airlock/sensor/chamber_sensor,/obj/machinery/airlock_sensor{dir = 8; pixel_x = 25},/turf/simulated/floor,/area/tcommsat/computer) +"Bm" = (/obj/structure/closet/emcloset,/obj/random/drinkbottle,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portaft) +"Bn" = (/obj/effect/landmark{name = "maint_pred"},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/aftstarroom) +"Bp" = (/turf/simulated/wall/bay/r_wall/steel,/area/maintenance/stellardelight/substation/command) +"Bq" = (/obj/machinery/status_display{pixel_y = 32},/turf/simulated/floor/tiled/dark,/area/lawoffice) +"Br" = (/obj/structure/table/alien{name = "fancy table"},/obj/machinery/photocopier/faxmachine{department = "Research Director's Office"},/turf/simulated/floor/tiled/techfloor,/area/crew_quarters/heads/hor) +"Bs" = (/obj/machinery/computer/borgupload{dir = 8},/obj/machinery/light{dir = 4},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/turf/simulated/floor/tiled/techfloor/grid,/area/ai_upload) +"Bt" = (/obj/structure/cable/green{icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/wood,/area/stellardelight/deck3/cafe) +"Bz" = (/obj/machinery/door/firedoor/glass,/obj/structure/cable/blue{icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/door/airlock/angled_bay/standard/color{dir = 4; door_color = "#323d80"; fill_color = "#313866"; id_tag = "cmodoor"; name = "Chief Medical Officer"; req_access = list(40); stripe_color = "#ffffff"},/turf/simulated/floor/tiled/steel_ridged,/area/crew_quarters/heads/cmo) +"BA" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/angled_bay/external/glass{dir = 4; frequency = 1380; id_tag = null; locked = 1; name = "Docking Port Airlock"},/obj/effect/map_helper/airlock/door/ext_door,/obj/machinery/access_button{command = "cycle_exterior"; dir = 8; frequency = 1380; master_tag = "sd_port_landing"; pixel_y = 32; req_one_access = list(13)},/obj/structure/cable{icon_state = "4-8"},/turf/simulated/floor/tiled/steel_ridged,/area/stellardelight/deck3/portdock) +"BB" = (/obj/machinery/door/firedoor/glass,/obj/structure/window/bay/reinforced,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 1},/obj/structure/low_wall/bay/reinforced/steel,/turf/simulated/floor,/area/stellardelight/deck3/aft) +"BC" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 6},/obj/structure/cable/green{icon_state = "2-4"},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"BF" = (/obj/structure/cable/blue{icon_state = "1-2"},/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/angled_bay/hatch{door_color = "#e6ab22"; name = "Command Substation"; req_one_access = list(10); stripe_color = "#e6ab22"},/turf/simulated/floor/tiled/steel_ridged,/area/maintenance/stellardelight/substation/command) +"BG" = (/obj/structure/cable/green{icon_state = "1-2"},/obj/structure/table/rack,/obj/random/maintenance/clean,/obj/random/maintenance,/obj/random/maintenance/engineering,/obj/random/maintenance/research,/obj/random/maintenance/research,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardaft) +"BH" = (/turf/simulated/floor/carpet,/area/crew_quarters/heads/hos) +"BJ" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/angled_bay/double/glass{name = "glass airlock"},/turf/simulated/floor/tiled/steel_ridged,/area/stellardelight/deck3/starboarddock) +"BK" = (/obj/structure/cable/blue{icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled/eris/dark/gray_platform,/area/stellardelight/deck3/commandhall) +"BL" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/turf/simulated/open,/area/stellardelight/deck2/port) +"BM" = (/obj/structure/sign/painting/library_secure{pixel_x = -30},/turf/simulated/floor/carpet/oracarpet,/area/crew_quarters/heads/chief) +"BQ" = (/obj/structure/cable/blue{icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/light_switch{dir = 4; pixel_x = -24; pixel_y = 24},/turf/simulated/floor/tiled/techfloor,/area/crew_quarters/heads/hor) +"BR" = (/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 1; frequency = 1380; id_tag = null},/obj/machinery/embedded_controller/radio/airlock/docking_port_multi{dir = 4; frequency = 1380; id_tag = "sd_escape_center_left"; master_tag = "escape_dock"; pixel_x = -24; req_one_access = list(13); tag_airpump = null; tag_chamber_sensor = null; tag_exterior_door = null; tag_interior_door = null},/obj/machinery/airlock_sensor{dir = 8; frequency = 1380; id_tag = null; pixel_x = 25},/obj/effect/map_helper/airlock/atmos/chamber_pump,/obj/effect/map_helper/airlock/sensor/chamber_sensor,/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"BV" = (/obj/structure/bed/chair{dir = 8},/obj/machinery/alarm/angled{dir = 8},/turf/simulated/floor/tiled,/area/stellardelight/deck3/portdock) +"BW" = (/obj/machinery/power/terminal{dir = 1},/obj/structure/cable{icon_state = "0-4"},/obj/effect/floor_decal/fancy_shuttle{fancy_shuttle_tag = "sdboat"},/obj/machinery/atmospherics/pipe/manifold/hidden/fuel{dir = 1},/turf/simulated/floor/tiled,/area/shuttle/sdboat/aft{base_turf = /turf/simulated/floor/reinforced/airless}) +"BY" = (/obj/machinery/newscaster{layer = 3.3; pixel_x = -27},/turf/simulated/floor/carpet/blue2,/area/lawoffice) +"BZ" = (/obj/structure/cable/green{icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/door/firedoor/glass,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portaft) +"Cb" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/obj/effect/landmark/vermin,/turf/simulated/open,/area/stellardelight/deck2/fore) +"Cc" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/angled_bay/hatch{dir = 4; name = "maintenance access"; stripe_color = "#454545"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/structure/cable/green{icon_state = "4-8"},/turf/simulated/floor/tiled/steel_ridged,/area/stellardelight/deck3/aft) +"Cd" = (/obj/structure/table/woodentable,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/turf/simulated/floor/wood,/area/stellardelight/deck3/cafe) +"Ce" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/carpet/turcarpet,/area/ai) +"Cf" = (/obj/machinery/door/firedoor/glass,/obj/structure/cable/green{icon_state = "4-8"},/obj/machinery/door/airlock/angled_bay/hatch{dir = 4; name = "maintenance access"; stripe_color = "#454545"},/turf/simulated/floor/tiled/steel_ridged,/area/maintenance/stellardelight/deck3/portcent) +"Cn" = (/obj/structure/cable/blue{icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/turf/simulated/floor/tiled/techfloor/grid,/area/ai) +"Co" = (/obj/machinery/button/remote/airlock{id = "readingroom2"; name = "Room 2 Lock"; pixel_y = 24; specialfunctions = 4},/obj/machinery/button/remote/blast_door{id = "readingroom2"; name = "Window Lockdown"; pixel_x = -10; pixel_y = 24},/turf/simulated/floor/carpet,/area/stellardelight/deck3/readingroom) +"Cp" = (/obj/machinery/door/firedoor/glass,/turf/simulated/floor,/area/stellardelight/deck2/fore) +"Cu" = (/obj/machinery/power/apc/angled{dir = 1},/obj/structure/cable/green{icon_state = "0-8"},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 1},/obj/random/vendorfood,/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"Cw" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/structure/cable/blue{icon_state = "2-8"},/obj/structure/cable/blue{icon_state = "2-4"},/turf/simulated/open,/area/stellardelight/deck2/fore) +"Cx" = (/obj/effect/shuttle_landmark{base_area = /area/stellardelight/deck3/exterior; base_turf = /turf/simulated/floor/reinforced/airless; docking_controller = "escape_dock"; landmark_tag = "escape_station"; name = "Ship Arrivals"},/turf/simulated/floor/reinforced/airless,/area/stellardelight/deck3/exterior) +"Cy" = (/obj/structure/cable/green{icon_state = "4-8"},/obj/structure/cable/green{icon_state = "1-8"},/obj/structure/cable/green{icon_state = "2-8"},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/manifold4w/hidden/supply,/obj/machinery/atmospherics/pipe/manifold4w/hidden/scrubbers,/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 4},/obj/effect/floor_decal/arrivals/right,/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"Cz" = (/obj/structure/lattice,/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/turf/simulated/open,/area/stellardelight/deck2/port) +"CA" = (/obj/machinery/door/firedoor/glass,/obj/structure/window/bay/reinforced,/obj/machinery/door/blast/angled/open{dir = 2; id = "barlockdown"},/obj/structure/low_wall/bay/reinforced/steel,/turf/simulated/floor,/area/crew_quarters/bar) +"CC" = (/turf/simulated/wall/bay/r_wall/steel,/area/stellardelight/deck3/clownmimeoffice) +"CD" = (/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 8; frequency = 1380; id_tag = null},/obj/machinery/embedded_controller/radio/airlock/docking_port_multi{frequency = 1380; id_tag = "sd_escape_port"; master_tag = "escape_dock"; pixel_y = 30; req_one_access = list(13); tag_airpump = null; tag_chamber_sensor = null; tag_exterior_door = null; tag_interior_door = null},/obj/machinery/airlock_sensor{frequency = 1380; id_tag = null; pixel_y = -25},/obj/effect/map_helper/airlock/atmos/chamber_pump,/obj/effect/map_helper/airlock/sensor/chamber_sensor,/turf/simulated/floor/tiled,/area/stellardelight/deck3/portdock) +"CG" = (/obj/machinery/blackbox_recorder,/turf/simulated/floor/tiled/techfloor/grid,/area/ai_server_room) +"CH" = (/obj/machinery/light/small{dir = 8},/obj/structure/cable{icon_state = "4-8"},/turf/simulated/floor,/area/stellardelight/deck2/starboard) +"CJ" = (/obj/structure/lattice,/obj/structure/cable{icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/open,/area/stellardelight/deck2/starboard) +"CK" = (/obj/machinery/door/firedoor/glass,/obj/structure/window/bay/reinforced,/obj/structure/low_wall/bay/reinforced/steel,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardaft) +"CO" = (/obj/effect/overmap/visitable/ship/stellar_delight,/turf/space,/area/space) +"CP" = (/obj/structure/cable/green{icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/effect/floor_decal/arrivals/right,/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"CR" = (/obj/structure/bed/chair{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/machinery/newscaster{pixel_y = 28},/turf/simulated/floor/carpet,/area/crew_quarters/heads/hop) +"CS" = (/obj/structure/lattice,/turf/simulated/open,/area/stellardelight/deck2/port) +"CT" = (/obj/structure/cable/blue{icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/turf/simulated/floor/tiled/techfloor/grid,/area/ai_cyborg_station) +"CU" = (/obj/machinery/door/firedoor/glass,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/green{icon_state = "4-8"},/turf/simulated/floor,/area/stellardelight/deck2/fore) +"CV" = (/obj/structure/bed/chair,/obj/structure/sign/painting/public{pixel_y = 30},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 1},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"CY" = (/obj/effect/floor_decal/techfloor{dir = 8},/obj/effect/landmark{name = "JoinLateCryo"},/turf/simulated/floor/tiled/techfloor,/area/stellardelight/deck3/cryo) +"Dd" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/green{icon_state = "1-2"},/turf/simulated/open,/area/crew_quarters/bar) +"De" = (/obj/structure/cable{icon_state = "2-4"},/turf/simulated/wall/bay/r_wall/blue,/area/ai_cyborg_station) +"Df" = (/obj/machinery/door/firedoor/glass,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/blue{icon_state = "1-2"},/turf/simulated/floor,/area/stellardelight/deck2/fore) +"Dh" = (/obj/machinery/computer/message_monitor{dir = 1},/turf/simulated/floor/tiled/techfloor/grid,/area/ai_server_room) +"Di" = (/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/structure/cable/green{icon_state = "2-4"},/obj/structure/cable/green{icon_state = "4-8"},/turf/simulated/floor/airless,/area/stellardelight/deck3/exterior) +"Dk" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/reagent_dispensers/watertank,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardaft) +"Dn" = (/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 4},/turf/simulated/floor/tiled,/area/stellardelight/deck3/starboarddock) +"Dp" = (/obj/random/trash_pile,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portfore) +"Ds" = (/obj/machinery/hologram/holopad,/turf/simulated/floor/tiled/techfloor/grid,/area/ai_cyborg_station) +"Du" = (/obj/machinery/vending/wardrobe/clowndrobe,/turf/simulated/floor/carpet/gaycarpet,/area/stellardelight/deck3/clownmimeoffice) +"Dw" = (/obj/machinery/hologram/holopad,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/turf/simulated/floor/carpet/geo,/area/ai) +"Dy" = (/obj/machinery/atmospherics/pipe/simple/hidden/black,/turf/simulated/floor/bluegrid{name = "Mainframe Base"; nitrogen = 100; oxygen = 0; temperature = 80},/area/tcommsat/chamber) +"DC" = (/turf/simulated/wall/bay/steel,/area/maintenance/stellardelight/deck3/foreportroomb) +"DD" = (/obj/machinery/door/firedoor/glass,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/door/airlock/angled_bay/standard/glass{name = "maintenance access"},/turf/simulated/floor/tiled/steel_ridged,/area/stellardelight/deck2/port) +"DE" = (/obj/structure/cable{icon_state = "4-8"},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardcent) +"DH" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/structure/cable/green{icon_state = "1-4"},/turf/simulated/open,/area/crew_quarters/bar) +"DI" = (/obj/machinery/power/apc/angled{dir = 8},/obj/structure/cable/blue{icon_state = "0-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled/techfloor,/area/crew_quarters/heads/hor) +"DL" = (/obj/structure/cable/blue{icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/turf/simulated/floor/tiled/techfloor/grid,/area/ai_server_room) +"DM" = (/obj/structure/table/steel,/turf/simulated/floor/tiled/techfloor/grid,/area/maintenance/stellardelight/deck3/foreportrooma) +"DN" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/turf/simulated/floor/tiled,/area/crew_quarters/heads/hop) +"DO" = (/obj/structure/closet/hydrant{pixel_y = 28},/obj/structure/dogbed{name = "catslug bed"},/mob/living/simple_mob/vore/alienanimals/catslug/tulidaan,/turf/simulated/floor/wood,/area/stellardelight/deck3/readingroom) +"DP" = (/obj/effect/floor_decal/industrial/warning/corner,/obj/structure/cable/blue{icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/turf/simulated/floor/tiled/techfloor/grid,/area/tcommsat/computer) +"DQ" = (/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardfore) +"DT" = (/obj/structure/railing/grey,/obj/structure/railing/grey{dir = 4},/turf/simulated/open,/area/maintenance/stellardelight/deck3/portaft) +"DV" = (/obj/structure/cable/blue{icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/wall/bay/blue,/area/lawoffice) +"DW" = (/obj/structure/cable{icon_state = "1-2"},/obj/machinery/button/remote/blast_door{dir = 8; id = "clownmimeoffice"; name = "Window Lockdown"; pixel_x = 23; pixel_y = 7},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/turf/simulated/floor/carpet/gaycarpet,/area/stellardelight/deck3/clownmimeoffice) +"DY" = (/obj/structure/cable/green{icon_state = "1-2"},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/foreportrooma) +"DZ" = (/obj/structure/cable{icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardcent) +"Ec" = (/turf/simulated/wall/bay/steel,/area/stellardelight/deck3/clownmimeoffice) +"Ed" = (/turf/simulated/wall/bay/r_wall/steel,/area/stellardelight/deck3/aft) +"Ee" = (/obj/machinery/atmospherics/pipe/manifold/hidden/black{dir = 1},/turf/simulated/floor/bluegrid{name = "Mainframe Base"; nitrogen = 100; oxygen = 0; temperature = 80},/area/tcommsat/chamber) +"Ef" = (/turf/simulated/floor/tiled/techfloor/grid,/area/maintenance/stellardelight/deck3/forestarroomb) +"Eg" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/obj/structure/cable/green{icon_state = "1-2"},/obj/machinery/camera/network/halls{dir = 1},/turf/simulated/floor/tiled,/area/stellardelight/deck3/portdock) +"Eh" = (/obj/effect/floor_decal/techfloor{dir = 4},/obj/structure/cable/green{icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/turf/simulated/floor/tiled/techfloor,/area/stellardelight/deck3/cryo) +"Ei" = (/obj/structure/cable/green{icon_state = "1-4"},/obj/random/trash_pile,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portcent) +"El" = (/obj/effect/landmark{name = "carpspawn"},/turf/space,/area/space) +"En" = (/obj/effect/floor_decal/industrial/warning/corner{dir = 1},/obj/structure/cable/green{icon_state = "4-8"},/turf/simulated/floor/airless,/area/stellardelight/deck3/exterior) +"Es" = (/obj/effect/shuttle_landmark/premade/sd/deck3/portlanding,/turf/space,/area/space) +"Et" = (/obj/structure/closet/secure_closet/hos,/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = 24},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/turf/simulated/floor/tiled/dark,/area/crew_quarters/heads/hos) +"Eu" = (/turf/simulated/wall/bay/r_wall/blue,/area/stellardelight/deck2/port) +"Ev" = (/obj/structure/cable/blue{icon_state = "1-4"},/obj/structure/cable/blue{icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardcent) +"Ex" = (/obj/structure/bed/chair/bay/comfy/blue{dir = 1},/obj/effect/floor_decal/fancy_shuttle{fancy_shuttle_tag = "sdboat"},/turf/simulated/floor/tiled,/area/shuttle/sdboat/fore{base_turf = /turf/simulated/floor/reinforced/airless}) +"EE" = (/obj/structure/table/rack{dir = 8; layer = 2.9},/obj/item/weapon/rig/ce/equipped,/obj/item/clothing/mask/breath,/obj/item/clothing/shoes/magboots/adv,/turf/simulated/floor/tiled,/area/crew_quarters/heads/chief) +"EF" = (/obj/structure/cable/green{icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"EH" = (/obj/structure/table/steel,/turf/simulated/floor/tiled/techfloor/grid,/area/maintenance/stellardelight/deck3/foreportroomb) +"EI" = (/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 8; frequency = 1379; id_tag = "portmaint_airpump"},/turf/simulated/floor/airless,/area/maintenance/stellardelight/deck3/portcent) +"EJ" = (/turf/simulated/wall/bay/r_wall/blue,/area/crew_quarters/heads/cmo) +"EL" = (/obj/machinery/door/airlock/angled_bay/hatch{frequency = null; id_tag = null; locked = 1; name = "Telecoms Server Access"; req_access = list(61); stripe_color = "#ffd863"},/obj/machinery/door/firedoor/glass,/obj/structure/cable/blue{icon_state = "1-2"},/obj/machinery/access_button{command = "cycle_exterior"; dir = 1; frequency = 1380; master_tag = "tcommsairlock"; pixel_x = -32; req_one_access = list(61)},/obj/effect/map_helper/airlock/door/ext_door,/turf/simulated/floor/tiled/steel_ridged,/area/tcommsat/computer) +"EN" = (/obj/structure/cable/green{icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals_central5{dir = 4},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"EO" = (/obj/structure/sign/nanotrasen{pixel_y = 30},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/turf/simulated/floor/tiled/dark,/area/lawoffice) +"ER" = (/turf/simulated/floor/tiled/steel_grid,/area/stellardelight/deck3/aft) +"ET" = (/obj/structure/cable{icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardaft) +"EU" = (/obj/structure/cable/blue{icon_state = "2-8"},/turf/simulated/floor/airless,/area/stellardelight/deck3/exterior) +"EV" = (/obj/structure/cable/green{icon_state = "4-8"},/obj/structure/cable/green{icon_state = "2-8"},/turf/simulated/floor/airless,/area/stellardelight/deck3/exterior) +"EW" = (/obj/structure/cable/blue{icon_state = "1-4"},/obj/structure/cable/blue{icon_state = "1-8"},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/turf/simulated/floor/tiled/eris/dark/gray_platform,/area/stellardelight/deck3/commandhall) +"EX" = (/obj/machinery/atmospherics/pipe/simple/hidden/fuel{dir = 10},/turf/simulated/wall/fancy_shuttle{fancy_shuttle_tag = "sdboat"},/area/shuttle/sdboat/aft{base_turf = /turf/simulated/floor/reinforced/airless}) +"EY" = (/obj/structure/table/reinforced,/obj/machinery/computer/skills{dir = 8; pixel_y = 6},/turf/simulated/floor/carpet/oracarpet,/area/crew_quarters/heads/chief) +"EZ" = (/turf/simulated/wall/bay/r_wall/steel,/area/maintenance/stellardelight/deck3/forestarroomb) +"Fb" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/turf/simulated/open,/area/crew_quarters/bar) +"Fe" = (/obj/machinery/hologram/holopad,/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/turf/simulated/floor/tiled/techfloor/grid,/area/ai_upload) +"Ff" = (/obj/structure/bed/chair,/obj/machinery/atmospherics/unary/vent_scrubber/on,/obj/machinery/alarm/angled,/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 1},/obj/effect/landmark/vermin,/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"Fg" = (/obj/machinery/door/firedoor/glass,/obj/structure/cable/blue{icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/door/airlock/angled_bay/standard/color{dir = 4; door_color = "#323d80"; fill_color = "#854a44"; id_tag = "hosdoor"; name = "Head of Security"; req_access = list(58); stripe_color = "#d27428"},/turf/simulated/floor/tiled/steel_ridged,/area/crew_quarters/heads/hos) +"Fh" = (/turf/simulated/floor/tiled/techfloor/grid,/area/ai_server_room) +"Fj" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/structure/cable/blue{icon_state = "4-8"},/turf/simulated/floor,/area/stellardelight/deck2/fore) +"Fm" = (/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 8; frequency = 1379; id_tag = "portmaint_airpump"},/obj/machinery/camera/network/civilian,/turf/simulated/floor/airless,/area/maintenance/stellardelight/deck3/portcent) +"Fr" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/simulated/floor/tiled/monotile,/area/stellardelight/deck3/commandhall) +"Ft" = (/obj/structure/cable/green{icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/turf/simulated/floor,/area/stellardelight/deck2/port) +"Fv" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled/techfloor/grid,/area/tcommsat/computer) +"Fy" = (/obj/structure/cable/green{icon_state = "4-8"},/turf/simulated/floor/airless,/area/maintenance/stellardelight/deck3/portcent) +"FC" = (/obj/machinery/alarm/angled{dir = 8},/obj/structure/cable/blue{icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled/dark,/area/lawoffice) +"FD" = (/obj/machinery/door/firedoor/glass,/obj/structure/window/bay/reinforced,/obj/structure/low_wall/bay/reinforced/steel,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/forestarroomb) +"FE" = (/turf/simulated/floor,/area/maintenance/stellardelight/deck3/forestarroomb) +"FG" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portaft) +"FH" = (/obj/machinery/power/pointdefense{id_tag = "sd_pd"},/obj/effect/floor_decal/industrial/warning/full,/obj/structure/cable/green{icon_state = "0-2"},/turf/simulated/floor/airless,/area/stellardelight/deck3/exterior) +"FI" = (/obj/effect/floor_decal/industrial/warning/corner{dir = 1},/obj/structure/cable/green{icon_state = "1-8"},/turf/simulated/floor/airless,/area/stellardelight/deck3/exterior) +"FL" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/blue{icon_state = "1-2"},/turf/simulated/open,/area/stellardelight/deck2/starboard) +"FM" = (/obj/structure/bed/chair/comfy/brown{dir = 1},/turf/simulated/floor/tiled/eris/white/cargo,/area/crew_quarters/heads/cmo) +"FO" = (/obj/structure/bed/psych{name = "couch"},/turf/simulated/floor/tiled/eris/white/cargo,/area/crew_quarters/heads/cmo) +"FR" = (/obj/effect/floor_decal/techfloor/orange,/obj/structure/cable/green{icon_state = "1-2"},/turf/simulated/floor/tiled/techfloor,/area/stellardelight/deck3/transitgateway) +"FS" = (/obj/machinery/atmospherics/pipe/simple/hidden/universal{dir = 8},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portaft) +"FU" = (/obj/structure/cable/blue{icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/turf/simulated/floor/tiled/techfloor/grid,/area/ai_cyborg_station) +"FW" = (/obj/machinery/power/apc/angled{dir = 8; name = "night shift APC"; nightshift_setting = 2},/obj/structure/cable/green{icon_state = "0-2"},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/foreportrooma) +"FY" = (/obj/structure/closet,/obj/random/maintenance,/obj/random/maintenance,/obj/random/maintenance,/obj/random/maintenance,/obj/random/maintenance,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/foreportrooma) +"Ga" = (/obj/structure/cable/cyan{icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/bluegrid,/area/ai) +"Gc" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/structure/cable/green{icon_state = "1-2"},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardaft) +"Ge" = (/obj/structure/table/standard,/obj/item/weapon/aiModule/nanotrasen,/obj/machinery/camera/network/command,/obj/machinery/atmospherics/unary/vent_scrubber/on,/turf/simulated/floor/bluegrid,/area/ai_cyborg_station) +"Gf" = (/obj/structure/cable/green{icon_state = "4-8"},/obj/machinery/atmospherics/unary/vent_scrubber/on,/obj/machinery/alarm/angled,/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 1},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"Gg" = (/obj/structure/sink{dir = 8; pixel_x = -12; pixel_y = -3},/turf/simulated/floor/lino,/area/stellardelight/deck3/cafe) +"Gh" = (/obj/structure/cable/blue{icon_state = "1-2"},/obj/structure/cable/blue{icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled/techfloor/grid,/area/ai_upload) +"Gi" = (/obj/structure/table/rack,/obj/item/weapon/rig/hazmat/equipped,/obj/machinery/light,/turf/simulated/floor/tiled/techfloor,/area/crew_quarters/heads/hor) +"Gj" = (/turf/simulated/floor/tiled/monotile,/area/stellardelight/deck3/commandhall) +"Gk" = (/turf/simulated/wall/bay/r_wall/blue,/area/maintenance/stellardelight/deck3/portaft) +"Gl" = (/obj/structure/bed/chair/office/dark{dir = 8},/obj/effect/landmark/start/cmo,/turf/simulated/floor/carpet/tealcarpet,/area/crew_quarters/heads/cmo) +"Gm" = (/obj/structure/cable/blue{icon_state = "0-2"},/obj/structure/cable/blue,/obj/machinery/power/smes/buildable{RCon_tag = "Substation - Command"; output_attempt = 0},/turf/simulated/floor,/area/maintenance/stellardelight/substation/command) +"Go" = (/obj/structure/cable/green{icon_state = "2-4"},/obj/structure/cable/green{icon_state = "4-8"},/turf/simulated/floor/airless,/area/stellardelight/deck3/exterior) +"Gq" = (/obj/structure/cable{icon_state = "2-8"},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 10},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardaft) +"Gv" = (/obj/structure/sign/deck3{pixel_x = -32},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 8},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"GB" = (/obj/item/weapon/reagent_containers/food/drinks/shaker,/obj/item/weapon/reagent_containers/glass/rag,/obj/structure/table/rack,/obj/random/donkpocketbox,/turf/simulated/floor/tiled/techfloor/grid,/area/maintenance/stellardelight/deck3/forestarroomb) +"GD" = (/obj/structure/cable/blue{icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/turf/simulated/floor/tiled/techfloor/grid,/area/tcommsat/computer) +"GE" = (/obj/structure/cable/green{icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/door/firedoor/glass,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 1},/turf/simulated/floor/tiled/steel_ridged,/area/stellardelight/deck3/aft) +"GF" = (/obj/structure/cable/green{icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor/airless,/area/maintenance/stellardelight/deck3/portcent) +"GH" = (/obj/item/device/radio/intercom{dir = 8; pixel_x = -24},/turf/simulated/floor/wood,/area/stellardelight/deck3/readingroom) +"GJ" = (/obj/structure/cable/blue{icon_state = "1-4"},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/forestarrooma) +"GP" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/bluegrid,/area/ai) +"GQ" = (/turf/simulated/wall/bay/red,/area/crew_quarters/heads/hos) +"GR" = (/obj/machinery/requests_console/preset/cmo{pixel_x = 30},/turf/simulated/floor/carpet/tealcarpet,/area/crew_quarters/heads/cmo) +"GS" = (/obj/structure/cable/green{icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/door/firedoor/glass,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portcent) +"GT" = (/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/structure/cable/green{icon_state = "1-2"},/obj/structure/cable/green{icon_state = "1-4"},/turf/simulated/floor/airless,/area/stellardelight/deck3/exterior) +"GU" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled/techfloor/grid,/area/ai_server_room) +"GW" = (/obj/structure/table/reinforced,/obj/item/weapon/book/manual/supermatter_engine,/obj/item/device/radio{pixel_x = -4},/obj/item/device/megaphone,/obj/machinery/light,/turf/simulated/floor/tiled,/area/crew_quarters/heads/chief) +"Ha" = (/obj/structure/bed/double/padded,/obj/item/weapon/bedsheet/cedouble,/obj/structure/curtain/black{color = "#945112"},/obj/effect/landmark/start/ce,/turf/simulated/floor/carpet/oracarpet,/area/crew_quarters/heads/chief) +"Hc" = (/obj/structure/cable/blue{icon_state = "1-2"},/obj/structure/cable/blue,/obj/machinery/power/sensor{name = "Powernet Sensor - AI/Telecomms Subgrid"; name_tag = "AI/Telecomms Subgrid"},/obj/machinery/power/apc/angled{dir = 8},/turf/simulated/floor,/area/ai_cyborg_station) +"Hd" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/obj/structure/closet/firecloset,/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 8},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"He" = (/obj/machinery/door/firedoor/glass,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor,/area/stellardelight/deck2/central) +"Hf" = (/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/open,/area/stellardelight/deck2/fore) +"Hg" = (/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 8},/obj/structure/sign/vacuum{pixel_x = -32; plane = -34},/obj/structure/cable{icon_state = "1-2"},/turf/simulated/floor/tiled,/area/stellardelight/deck3/portdock) +"Hh" = (/obj/structure/cable/blue{icon_state = "4-8"},/obj/machinery/airlock_sensor{dir = 4; id_tag = "starmaint_sensor"; pixel_x = -24; req_access = list(13)},/turf/simulated/floor/airless,/area/maintenance/stellardelight/deck3/starboardcent) +"Hi" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/obj/item/device/radio/intercom{dir = 4; pixel_x = 24},/obj/structure/closet/emergsuit_wall{pixel_y = 29},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"Hk" = (/obj/machinery/alarm/angled{dir = 8},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portfore) +"Hm" = (/obj/structure/closet/emcloset,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portcent) +"Ho" = (/obj/structure/table/steel,/obj/random/contraband,/obj/random/maintenance,/obj/random/maintenance,/obj/random/maintenance/clean,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/aftstarroom) +"Hq" = (/obj/structure/sign/warning/falling{pixel_y = 32},/turf/simulated/open,/area/stellardelight/deck2/fore) +"Hs" = (/turf/simulated/wall/bay/orange,/area/crew_quarters/heads/chief) +"Ht" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 4; external_pressure_bound = 0; external_pressure_bound_default = 0; icon_state = "map_vent_in"; initialize_directions = 1; internal_pressure_bound = 4000; internal_pressure_bound_default = 4000; pressure_checks = 2; pressure_checks_default = 2; pump_direction = 0; use_power = 1},/turf/simulated/floor/bluegrid{name = "Mainframe Base"; nitrogen = 100; oxygen = 0; temperature = 80},/area/tcommsat/chamber) +"Hu" = (/obj/effect/floor_decal/industrial/warning{dir = 8},/obj/machinery/light/small{dir = 1},/turf/simulated/floor/airless,/area/stellardelight/deck3/portdock) +"Hv" = (/obj/structure/sign/painting/library_secure{pixel_x = 30},/turf/simulated/floor/carpet/blue2,/area/lawoffice) +"Hw" = (/obj/structure/sign/painting/public{pixel_y = 30},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 1},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"Hx" = (/obj/structure/cable/green{icon_state = "1-8"},/obj/structure/cable/green{icon_state = "1-2"},/turf/simulated/floor/airless,/area/stellardelight/deck3/exterior) +"HA" = (/obj/structure/cable/cyan,/obj/machinery/button/remote/blast_door{desc = "A remote control-switch for the AI core maintenance door."; dir = 4; id = "AICore"; name = "AI Maintenance Hatch"; pixel_x = -25; pixel_y = -5; req_access = list(16)},/obj/machinery/light,/obj/machinery/holoplant,/obj/machinery/power/apc/angled{dir = 4},/turf/simulated/floor/bluegrid,/area/ai) +"HB" = (/obj/effect/floor_decal/spline/plain{dir = 4},/obj/structure/table/bench/marble,/turf/simulated/floor/lino,/area/stellardelight/deck3/cafe) +"HF" = (/obj/structure/cable/green{icon_state = "2-4"},/obj/structure/table/rack,/obj/random/maintenance/clean,/obj/random/maintenance,/obj/random/maintenance,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardaft) +"HH" = (/obj/structure/closet/emcloset,/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 8},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"HL" = (/obj/structure/cable{icon_state = "2-8"},/obj/structure/cable{icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardcent) +"HN" = (/obj/structure/cable/blue{icon_state = "1-2"},/obj/machinery/light{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled/techfloor/grid,/area/ai_cyborg_station) +"HO" = (/obj/structure/cable/green{icon_state = "1-4"},/turf/simulated/wall/bay/r_wall/steel,/area/maintenance/stellardelight/deck3/foreportrooma) +"HP" = (/obj/machinery/door/firedoor/glass,/obj/structure/window/bay/reinforced,/obj/structure/cable/green{icon_state = "1-2"},/obj/structure/low_wall/bay/reinforced/steel,/turf/simulated/floor,/area/stellardelight/deck3/starboarddock) +"HQ" = (/obj/machinery/door/airlock/angled_bay/standard/color{door_color = "#9c9c9c"; fill_color = "#5c5c5c"; id_tag = null; name = "Reading Rooms"; stripe_color = "#89bd66"},/obj/machinery/door/firedoor/glass,/obj/structure/cable/green{icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled/steel_ridged,/area/stellardelight/deck3/readingroom) +"HR" = (/obj/structure/table/steel,/obj/random/contraband,/obj/machinery/chemical_dispenser/bar_coffee/full{pixel_y = 8},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/foreportrooma) +"HS" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/turf/simulated/floor/tiled/techfloor/grid,/area/ai) +"HT" = (/obj/structure/cable/blue{icon_state = "1-2"},/turf/simulated/floor/tiled/techfloor/grid,/area/ai_cyborg_station) +"HV" = (/obj/structure/cable/green{icon_state = "1-4"},/obj/effect/landmark{name = "morphspawn"},/turf/simulated/floor/tiled/techfloor/grid,/area/maintenance/stellardelight/deck3/forestarrooma) +"HW" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/structure/cable/blue{icon_state = "1-2"},/turf/simulated/floor/tiled/eris/dark/gray_platform,/area/stellardelight/deck3/commandhall) +"HX" = (/obj/machinery/light{dir = 8},/turf/simulated/floor/tiled/techfloor/grid,/area/tcommsat/computer) +"HY" = (/obj/structure/table/rack,/obj/random/contraband,/obj/random/maintenance,/obj/random/maintenance,/obj/random/snack,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portaft) +"HZ" = (/obj/structure/lattice,/obj/structure/cable{icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/turf/simulated/open,/area/stellardelight/deck2/central) +"Ia" = (/turf/simulated/wall/fancy_shuttle/nondense{fancy_shuttle_tag = "sdboat"},/area/shuttle/sdboat/aft{base_turf = /turf/simulated/floor/reinforced/airless}) +"Ib" = (/obj/machinery/alarm/angled{dir = 4},/turf/simulated/floor/tiled/techfloor/grid,/area/maintenance/stellardelight/deck3/forestarrooma) +"Ie" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/structure/cable/green{icon_state = "4-8"},/turf/simulated/open,/area/stellardelight/deck2/fore) +"Ig" = (/obj/structure/lattice,/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/open,/area/stellardelight/deck2/port) +"Ii" = (/turf/simulated/wall/bay/r_wall/steel,/area/holodeck_control) +"Ij" = (/obj/structure/cable/green{icon_state = "1-2"},/obj/effect/landmark{name = "maint_pred"},/turf/simulated/floor/tiled/techfloor/grid,/area/maintenance/stellardelight/deck3/foreportroomb) +"Il" = (/obj/machinery/photocopier,/turf/simulated/floor/tiled,/area/crew_quarters/heads/hop) +"Im" = (/obj/effect/landmark/tram,/turf/simulated/floor/glass/reinforced,/area/stellardelight/deck3/aft) +"In" = (/obj/structure/cable{icon_state = "1-8"},/obj/random/trash_pile,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardcent) +"Io" = (/obj/structure/cable/blue{icon_state = "1-2"},/obj/structure/disposalpipe/segment,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardcent) +"Ir" = (/obj/structure/bed/chair/shuttle{dir = 1},/obj/machinery/light{dir = 4},/obj/effect/floor_decal/fancy_shuttle{fancy_shuttle_tag = "sdboat"},/turf/simulated/floor/tiled,/area/shuttle/sdboat/aft{base_turf = /turf/simulated/floor/reinforced/airless}) +"It" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/obj/structure/cable{icon_state = "2-4"},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"Iu" = (/obj/machinery/holoplant,/turf/simulated/floor/bluegrid,/area/ai_server_room) +"Iz" = (/obj/effect/floor_decal/industrial/warning,/turf/simulated/floor/airless,/area/stellardelight/deck3/exterior) +"IC" = (/obj/machinery/computer/station_alert/all,/obj/machinery/status_display{pixel_y = 32},/turf/simulated/floor/tiled,/area/crew_quarters/heads/chief) +"ID" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/obj/effect/landmark/vines,/turf/simulated/open,/area/stellardelight/deck2/fore) +"IG" = (/obj/structure/cable/blue{icon_state = "4-8"},/obj/structure/cable/blue{icon_state = "1-8"},/obj/structure/cable/blue{icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled/techfloor/grid,/area/ai_cyborg_station) +"IH" = (/obj/structure/lattice,/obj/structure/cable/green{icon_state = "1-4"},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/turf/simulated/open,/area/stellardelight/deck2/port) +"II" = (/obj/structure/sign/nanotrasen{pixel_y = 30},/obj/machinery/camera/network/command,/obj/structure/flora/pottedplant/stoutbush,/turf/simulated/floor/tiled/monotile,/area/stellardelight/deck3/commandhall) +"IK" = (/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/structure/cable/green{icon_state = "4-8"},/turf/simulated/floor/airless,/area/stellardelight/deck3/exterior) +"IN" = (/obj/structure/cable/green{icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/green{icon_state = "2-8"},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portaft) +"IO" = (/obj/structure/lattice,/obj/structure/cable/green{icon_state = "1-4"},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/machinery/light/small,/turf/simulated/open,/area/stellardelight/deck2/port) +"IP" = (/obj/structure/table/steel,/obj/random/contraband,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portfore) +"IQ" = (/obj/machinery/porta_turret/ai_defense,/turf/simulated/floor/bluegrid,/area/ai) +"IR" = (/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 8},/obj/structure/cable{icon_state = "1-2"},/turf/simulated/floor/tiled,/area/stellardelight/deck3/portdock) +"IS" = (/obj/machinery/door/firedoor/glass,/obj/structure/cable{icon_state = "1-2"},/obj/machinery/door/airlock/angled_bay/hatch{name = "Clown and Mime Office"; req_one_access = list(138,136); stripe_color = "#454545"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor,/area/stellardelight/deck3/clownmimeoffice) +"IU" = (/obj/machinery/hologram/holopad,/obj/structure/sign/warning/secure_area{pixel_y = 32},/turf/simulated/floor/bluegrid,/area/ai) +"IV" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/turf/simulated/open,/area/stellardelight/deck2/fore) +"IW" = (/obj/machinery/status_display{pixel_x = 32},/obj/structure/closet/emcloset,/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 4},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"IY" = (/obj/machinery/airlock_sensor{dir = 8; id_tag = "portmaint_sensor"; pixel_x = 24; req_access = list(13)},/turf/simulated/floor/airless,/area/maintenance/stellardelight/deck3/portcent) +"IZ" = (/obj/structure/cable{icon_state = "1-2"},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"Ja" = (/obj/machinery/door/airlock/angled_bay/external/glass{frequency = 1379; id_tag = "starmaint_interior"; locked = 1; name = "Exterior Airlock"},/obj/machinery/door/firedoor/glass,/obj/machinery/access_button{command = "cycle_interior"; frequency = 1379; master_tag = "starmaint_airlock"; name = "interior access button"; pixel_x = 32; req_access = null; req_one_access = list(13)},/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor/tiled/steel_ridged,/area/maintenance/stellardelight/deck3/starboardcent) +"Jc" = (/obj/structure/cable/green{icon_state = "1-2"},/obj/effect/landmark{name = "morphspawn"},/turf/simulated/floor/tiled/techfloor/grid,/area/maintenance/stellardelight/deck3/foreportroomb) +"Jd" = (/obj/structure/closet/lawcloset,/obj/structure/sign/poster{dir = 8},/obj/machinery/newscaster{pixel_y = 28},/turf/simulated/floor/tiled/dark,/area/lawoffice) +"Jg" = (/obj/machinery/light{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/turf/simulated/floor/bluegrid,/area/ai) +"Jh" = (/turf/space,/area/space) +"Ji" = (/obj/structure/cable/green{icon_state = "1-2"},/obj/structure/cable/green{icon_state = "0-2"},/obj/machinery/power/apc/angled{dir = 8; name = "night shift APC"; nightshift_setting = 2},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portfore) +"Jj" = (/obj/structure/sign/painting/library_secure{pixel_x = 30},/turf/simulated/floor/carpet/tealcarpet,/area/crew_quarters/heads/cmo) +"Jk" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/turf/simulated/floor/tiled,/area/stellardelight/deck3/transitgateway) +"Jm" = (/obj/structure/barricade/cutout/clown,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/turf/simulated/floor/wood,/area/stellardelight/deck3/clownmimeoffice) +"Jn" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/angled_bay/hatch{dir = 4; name = "maintenance access"; stripe_color = "#454545"},/obj/structure/cable/green{icon_state = "4-8"},/turf/simulated/floor/tiled/steel_ridged,/area/maintenance/stellardelight/deck3/foreportrooma) +"Jo" = (/obj/machinery/light{dir = 4},/obj/structure/bed/chair{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 4},/turf/simulated/floor/tiled,/area/stellardelight/deck3/starboarddock) +"Js" = (/obj/structure/table/darkglass,/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = 24},/obj/item/device/flashlight/lamp/green{pixel_x = 5; pixel_y = -5},/obj/item/weapon/paper_bin,/obj/item/weapon/pen/blade/red{pixel_x = -2; pixel_y = -2},/obj/item/weapon/pen,/obj/item/weapon/pen/blue{pixel_x = 2; pixel_y = 3},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/turf/simulated/floor/tiled/dark,/area/lawoffice) +"Ju" = (/obj/structure/cable/green{icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor,/area/stellardelight/deck2/port) +"Jv" = (/obj/machinery/computer/aifixer,/obj/machinery/status_display{pixel_y = 32},/turf/simulated/floor/tiled/techfloor,/area/crew_quarters/heads/hor) +"Jx" = (/turf/simulated/wall/bay/r_wall/steel,/area/maintenance/stellardelight/deck3/forestarrooma) +"Jz" = (/obj/machinery/door/firedoor/glass,/obj/structure/cable/blue{icon_state = "1-2"},/obj/machinery/door/airlock/angled_bay/secure{name = "AI Core"; req_access = list(16)},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled/steel_ridged,/area/ai) +"JA" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/angled_bay/external/glass{frequency = 1380; id_tag = null; locked = 1; name = "Docking Port Airlock"},/obj/effect/map_helper/airlock/door/ext_door,/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1380; master_tag = "sd_escape_center_left"; pixel_x = -32; req_one_access = list(13)},/turf/simulated/floor/tiled/steel_ridged,/area/stellardelight/deck3/aft) +"JE" = (/obj/machinery/power/apc/angled{dir = 1},/obj/structure/cable/green{icon_state = "0-2"},/obj/structure/table/woodentable,/obj/item/weapon/reagent_containers/food/drinks/glass2/square{pixel_x = 8; pixel_y = 8},/obj/item/weapon/reagent_containers/food/drinks/glass2/square{pixel_x = 8; pixel_y = 8},/obj/item/weapon/reagent_containers/food/drinks/glass2/square{pixel_x = 8; pixel_y = 8},/obj/item/weapon/reagent_containers/glass/rag,/turf/simulated/floor/lino,/area/stellardelight/deck3/cafe) +"JJ" = (/obj/machinery/computer/aifixer,/turf/simulated/floor/tiled/techfloor/grid,/area/ai_cyborg_station) +"JK" = (/obj/structure/cable{icon_state = "1-2"},/turf/simulated/floor,/area/ai_cyborg_station) +"JO" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled/techfloor/grid,/area/ai_cyborg_station) +"JP" = (/obj/machinery/door/firedoor/glass,/obj/structure/cable/blue{icon_state = "1-2"},/obj/machinery/door/airlock/angled_bay/secure{name = "AI Upload"; req_access = list(16)},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled/steel_ridged,/area/ai_upload) +"JQ" = (/obj/structure/cable/blue{icon_state = "1-2"},/obj/machinery/turretid/stun{control_area = /area/ai_upload; name = "AI Upload turret control"; pixel_x = -32; pixel_y = 30},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled/techfloor/grid,/area/ai_upload) +"JR" = (/obj/machinery/light{dir = 8},/obj/structure/bed/chair{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 8},/obj/structure/cable{icon_state = "2-4"},/turf/simulated/floor/tiled,/area/stellardelight/deck3/portdock) +"JS" = (/obj/machinery/embedded_controller/radio/docking_port_multi{child_names_txt = "Port;Center Left;Center Right;Starboard"; child_tags_txt = "sd_escape_port;sd_escape_center_left;sd_escape_center_right;sd_escape_starboard"; dir = 1; frequency = 1380; id_tag = "escape_dock"; pixel_y = -18; req_one_access = list(13)},/obj/effect/landmark/arrivals,/turf/simulated/floor/glass/reinforced,/area/stellardelight/deck3/aft) +"JU" = (/obj/structure/table/reinforced,/obj/item/weapon/rcd,/obj/item/weapon/rcd_ammo,/obj/item/weapon/rcd_ammo,/obj/item/weapon/rcd_ammo,/obj/item/weapon/rcd_ammo,/turf/simulated/floor/tiled,/area/crew_quarters/heads/chief) +"JW" = (/obj/random/trash_pile,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portaft) +"JY" = (/obj/structure/cable/green{icon_state = "4-8"},/obj/structure/bed/chair{dir = 8},/turf/simulated/floor/tiled/techfloor/grid,/area/maintenance/stellardelight/deck3/foreportroomb) +"JZ" = (/obj/effect/floor_decal/spline/plain,/obj/structure/table/bench/marble,/obj/machinery/light{dir = 8},/turf/simulated/floor/lino,/area/stellardelight/deck3/cafe) +"Kb" = (/obj/structure/bed/chair{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 8},/turf/simulated/floor/tiled,/area/stellardelight/deck3/starboarddock) +"Ke" = (/obj/machinery/atmospherics/pipe/simple/hidden/fuel{dir = 6},/turf/simulated/wall/fancy_shuttle{fancy_shuttle_tag = "sdboat"},/area/shuttle/sdboat/aft{base_turf = /turf/simulated/floor/reinforced/airless}) +"Kf" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals5,/obj/machinery/camera/network/halls{dir = 1},/obj/structure/cable{icon_state = "4-8"},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"Kg" = (/obj/structure/cable/green{icon_state = "2-4"},/obj/structure/bed/chair/sofa/corp/left{dir = 4},/obj/structure/cable/green{icon_state = "1-2"},/obj/move_trader_landmark{dir = 4; trader_type = /obj/trader/general},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portfore) +"Ki" = (/obj/machinery/computer/ship/navigation/telescreen{pixel_x = 32},/obj/machinery/power/shield_generator/charged,/obj/structure/cable,/turf/simulated/floor,/area/stellardelight/deck2/central) +"Kj" = (/obj/machinery/computer/shuttle_control/explore/sdboat{dir = 4},/obj/machinery/light{dir = 8},/obj/machinery/power/apc{pixel_y = -28; req_access = null; req_one_access = list(11,67)},/obj/structure/cable/green{icon_state = "0-4"},/obj/effect/floor_decal/fancy_shuttle{fancy_shuttle_tag = "sdboat"},/turf/simulated/floor/tiled,/area/shuttle/sdboat/fore{base_turf = /turf/simulated/floor/reinforced/airless}) +"Kk" = (/obj/structure/table/steel,/obj/random/maintenance/clean,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/aftstarroom) +"Ko" = (/obj/effect/landmark/tram,/obj/machinery/camera/network/halls{dir = 1},/turf/simulated/floor/glass/reinforced,/area/stellardelight/deck3/aft) +"Kq" = (/obj/structure/table/rack,/obj/random/maintenance,/obj/random/maintenance,/obj/random/maintenance/engineering,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardfore) +"Kr" = (/obj/structure/cable/green{icon_state = "1-2"},/turf/simulated/wall/bay/r_wall/steel,/area/maintenance/stellardelight/deck3/forestarrooma) +"Ks" = (/obj/structure/cable/blue{icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/turf/simulated/floor,/area/stellardelight/deck2/starboard) +"Kt" = (/obj/machinery/atmospherics/pipe/simple/hidden/universal,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardaft) +"Kv" = (/obj/structure/bed/chair{dir = 4},/obj/structure/closet/emergsuit_wall{dir = 8; pixel_x = -27},/turf/simulated/floor/tiled,/area/stellardelight/deck3/starboarddock) +"Kw" = (/obj/machinery/light{dir = 4},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/turf/simulated/floor/tiled/eris/dark/gray_platform,/area/stellardelight/deck3/commandhall) +"Kx" = (/obj/structure/cable/blue{icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled/techfloor/grid,/area/ai_cyborg_station) +"Ky" = (/obj/structure/bed/chair{dir = 4},/obj/machinery/light,/turf/simulated/floor/glass/reinforced,/area/stellardelight/deck3/aft) +"Kz" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/closet/emcloset,/obj/random/contraband,/obj/random/maintenance/research,/obj/random/maintenance/research,/obj/random/maintenance/research,/obj/random/maintenance/research,/obj/random/maintenance/research,/obj/random/maintenance/research,/obj/random/maintenance/cargo,/obj/random/mre,/obj/random/mre,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardaft) +"KD" = (/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 1},/obj/structure/cable/green{icon_state = "4-8"},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardaft) +"KF" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/turf/simulated/open,/area/stellardelight/deck2/fore) +"KG" = (/obj/structure/table/alien{name = "fancy table"},/obj/item/weapon/cartridge/signal/science,/obj/item/weapon/cartridge/signal/science,/obj/item/clothing/glasses/welding/superior,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/turf/simulated/floor/tiled/techfloor,/area/crew_quarters/heads/hor) +"KH" = (/obj/structure/cable/blue{icon_state = "1-2"},/obj/machinery/camera/network/command{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled/techfloor/grid,/area/ai) +"KI" = (/turf/simulated/floor/wood,/area/stellardelight/deck3/readingroom) +"KJ" = (/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardaft) +"KL" = (/obj/machinery/power/apc/angled{dir = 8},/obj/structure/cable/green{icon_state = "0-4"},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 8},/obj/structure/cable{icon_state = "1-2"},/turf/simulated/floor/tiled,/area/stellardelight/deck3/portdock) +"KM" = (/obj/machinery/alarm/angled{dir = 4},/turf/simulated/floor/carpet/turcarpet,/area/ai) +"KQ" = (/obj/structure/cable/green{icon_state = "2-8"},/obj/structure/reagent_dispensers/fueltank,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portfore) +"KS" = (/obj/structure/cable/blue{icon_state = "4-8"},/obj/structure/cable/blue{icon_state = "1-4"},/obj/machinery/atmospherics/pipe/manifold4w/hidden/scrubbers,/obj/machinery/atmospherics/pipe/manifold4w/hidden/supply,/turf/simulated/floor/tiled/techfloor/grid,/area/ai_upload) +"KT" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 8},/obj/structure/cable{icon_state = "1-2"},/turf/simulated/floor/tiled,/area/stellardelight/deck3/portdock) +"KU" = (/obj/machinery/camera/network/command,/turf/simulated/floor/tiled/techfloor/grid,/area/ai_cyborg_station) +"KV" = (/obj/structure/table/steel,/obj/random/contraband,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/forestarrooma) +"KW" = (/obj/machinery/door/firedoor/glass,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portfore) +"KY" = (/obj/structure/cable/blue{icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/turf/simulated/floor/tiled/techfloor/grid,/area/ai) +"Lb" = (/obj/structure/cable{icon_state = "1-8"},/obj/structure/cable{icon_state = "1-2"},/turf/simulated/floor,/area/ai_cyborg_station) +"Ld" = (/obj/machinery/atmospherics/portables_connector{dir = 4},/obj/machinery/portable_atmospherics/canister/air/airlock,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardaft) +"Le" = (/obj/machinery/atmospherics/unary/vent_scrubber/on,/obj/structure/flora/pottedplant/minitree,/obj/structure/cable{icon_state = "1-2"},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"Lf" = (/obj/structure/sign/warning/falling{pixel_x = -32},/turf/simulated/open,/area/stellardelight/deck2/starboard) +"Lh" = (/obj/machinery/hologram/holopad,/obj/structure/cable/blue{icon_state = "4-8"},/obj/structure/cable/blue{icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/camera/network/telecom{dir = 1},/turf/simulated/floor/tiled/techfloor/grid,/area/tcommsat/computer) +"Li" = (/obj/move_trader_landmark{dir = 8; trader_type = /obj/trader/general},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardaft) +"Lm" = (/obj/random/paicard,/obj/structure/table/glass,/obj/machinery/camera/network/civilian{dir = 8},/obj/random/coin/sometimes,/turf/simulated/floor/wood,/area/stellardelight/deck3/readingroom) +"Ln" = (/obj/structure/cable{icon_state = "1-2"},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardfore) +"Lo" = (/obj/effect/mouse_hole_spawner{dir = 4},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portaft) +"Lr" = (/obj/effect/shuttle_landmark/premade/sd/deck3/starboardairlock,/turf/space,/area/space) +"Lv" = (/obj/structure/bed/chair{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/carpet/blue2,/area/lawoffice) +"Lw" = (/obj/effect/floor_decal/spline/plain,/obj/structure/table/bench/marble,/turf/simulated/floor/lino,/area/stellardelight/deck3/cafe) +"Lx" = (/obj/effect/landmark{name = "JoinLateCyborg"},/obj/machinery/camera/network/command{dir = 10},/obj/effect/landmark/start/cyborg,/turf/simulated/floor/tiled/techfloor/grid,/area/ai_cyborg_station) +"Ly" = (/obj/structure/cable{icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 5},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardaft) +"Lz" = (/obj/machinery/newscaster{pixel_x = 30},/turf/simulated/floor/tiled/eris/dark/gray_platform,/area/stellardelight/deck3/commandhall) +"LC" = (/obj/machinery/holoplant,/obj/structure/sign/warning/secure_area{pixel_y = 32},/obj/machinery/camera/network/command{dir = 9},/turf/simulated/floor/bluegrid,/area/ai_upload) +"LD" = (/obj/structure/cable/green{icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/structure/cable/green{icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 5},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portaft) +"LI" = (/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/effect/floor_decal/shuttles,/turf/simulated/floor/tiled,/area/stellardelight/deck3/starboarddock) +"LJ" = (/obj/structure/cable/green{icon_state = "1-8"},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/foreportrooma) +"LK" = (/obj/structure/table/bench/padded,/obj/structure/sign/painting/public{pixel_y = -30},/obj/machinery/alarm/angled{dir = 4},/turf/simulated/floor/wood,/area/stellardelight/deck3/cafe) +"LO" = (/obj/structure/cable/green{icon_state = "1-2"},/obj/effect/floor_decal/fancy_shuttle{fancy_shuttle_tag = "sdboat"},/turf/simulated/floor/tiled,/area/shuttle/sdboat/aft{base_turf = /turf/simulated/floor/reinforced/airless}) +"LP" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/structure/cable/green{icon_state = "4-8"},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals_central5{dir = 4},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"LQ" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/obj/structure/closet/emergsuit_wall{dir = 4; pixel_x = 27},/obj/effect/landmark/vines,/turf/simulated/floor/tiled,/area/stellardelight/deck3/starboarddock) +"LR" = (/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 8; frequency = 1379; id_tag = "starmaint_airpump"},/turf/simulated/floor/airless,/area/maintenance/stellardelight/deck3/starboardcent) +"LS" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/angled_bay/hatch{name = "maintenance access"; stripe_color = "#454545"},/turf/simulated/floor/tiled/steel_ridged,/area/holodeck_control) +"LT" = (/obj/machinery/door/firedoor/glass,/obj/structure/cable/green{icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/door/airlock/angled_bay/hatch{dir = 4; name = "maintenance access"; stripe_color = "#454545"},/turf/simulated/floor/tiled/steel_ridged,/area/maintenance/stellardelight/deck3/portaft) +"LV" = (/obj/structure/table/steel,/obj/machinery/chemical_dispenser/bar_soft/full,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/forestarrooma) +"LW" = (/obj/structure/cable/green{icon_state = "4-8"},/obj/structure/cable/green{icon_state = "1-8"},/turf/simulated/floor/airless,/area/stellardelight/deck3/exterior) +"LY" = (/obj/structure/cable/green{icon_state = "1-2"},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardaft) +"Mc" = (/obj/structure/cable/green{icon_state = "4-8"},/obj/structure/ladder,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/forestarrooma) +"Mg" = (/obj/item/device/camera,/obj/item/device/camera_film,/obj/item/device/taperecorder,/obj/item/device/tape/random,/obj/item/device/tape/random,/obj/item/weapon/storage/secure/briefcase,/obj/structure/closet/walllocker_double/west,/turf/simulated/floor/carpet/blue2,/area/lawoffice) +"Mi" = (/obj/effect/floor_decal/corner_techfloor_grid{dir = 5},/obj/effect/floor_decal/corner_techfloor_grid{dir = 10},/obj/machinery/power/apc/angled{dir = 4},/obj/structure/cable/green{icon_state = "0-8"},/turf/simulated/floor/tiled/techfloor,/area/stellardelight/deck3/cryo) +"Mk" = (/obj/structure/lattice,/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/turf/simulated/open,/area/stellardelight/deck2/port) +"Ml" = (/obj/structure/table/darkglass,/obj/item/weapon/stamp/denied{pixel_x = -6; pixel_y = 6},/obj/item/weapon/stamp/internalaffairs,/turf/simulated/floor/carpet/blue2,/area/lawoffice) +"Mo" = (/obj/structure/cable{icon_state = "4-8"},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 4; frequency = 1380; id_tag = null},/obj/effect/map_helper/airlock/atmos/chamber_pump,/obj/effect/map_helper/airlock/sensor/chamber_sensor,/obj/machinery/airlock_sensor{frequency = 1380; id_tag = null; pixel_y = -25},/obj/machinery/embedded_controller/radio/airlock/docking_port{frequency = 1380; id_tag = "sd_port_landing"; pixel_y = 29},/turf/simulated/floor/tiled,/area/stellardelight/deck3/portdock) +"Mp" = (/obj/machinery/power/breakerbox/activated{RCon_tag = "AI/Telecomms Substation Bypass"},/turf/simulated/floor,/area/ai_cyborg_station) +"Mr" = (/obj/structure/bed/double/padded,/obj/item/weapon/bedsheet/clowndouble,/obj/structure/curtain/black{color = "#361447"},/turf/simulated/floor/carpet/gaycarpet,/area/stellardelight/deck3/clownmimeoffice) +"Ms" = (/obj/structure/table/reinforced,/obj/item/weapon/stamp/hop,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen/multi,/obj/item/device/flashlight/lamp/green{pixel_x = 3; pixel_y = 18},/obj/item/weapon/book/manual/sd_guide,/turf/simulated/floor/carpet,/area/crew_quarters/heads/hop) +"Mu" = (/obj/structure/cable{icon_state = "0-2"},/obj/machinery/power/apc/angled{dir = 4; name = "night shift APC"; nightshift_setting = 2},/obj/structure/table/steel,/obj/random/maintenance/medical,/obj/random/maintenance/medical,/obj/random/maintenance/security,/obj/random/maintenance/clean,/obj/random/maintenance,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardfore) +"Mv" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/obj/effect/landmark/vines,/turf/simulated/open,/area/stellardelight/deck2/fore) +"Mw" = (/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 1},/turf/simulated/floor/airless,/area/maintenance/stellardelight/deck3/starboardcent) +"Mx" = (/obj/effect/floor_decal/steeldecal/steel_decals5,/obj/structure/cable{icon_state = "4-8"},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"My" = (/obj/structure/cable/green{icon_state = "1-2"},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portcent) +"MA" = (/obj/structure/cable{icon_state = "2-4"},/turf/simulated/wall/bay/r_wall/blue,/area/maintenance/stellardelight/deck3/portaft) +"MB" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 10},/obj/random/trash_pile,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardaft) +"MC" = (/obj/structure/cable/green{icon_state = "4-8"},/obj/effect/floor_decal/emblem/nt3,/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"ME" = (/obj/structure/sign/poster{dir = 1},/obj/random/vendordrink,/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"MF" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/turf/simulated/floor,/area/stellardelight/deck2/central) +"MG" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/turf/simulated/floor/carpet/purcarpet,/area/crew_quarters/heads/hor) +"MH" = (/obj/structure/table/steel,/obj/random/maintenance/clean,/obj/random/snack,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/aftstarroom) +"MI" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/turf/simulated/floor/tiled,/area/crew_quarters/heads/hop) +"MJ" = (/obj/machinery/pointdefense_control{id_tag = "sd_pd"},/turf/simulated/floor/bluegrid,/area/ai_server_room) +"MK" = (/obj/machinery/light/small{dir = 8},/turf/simulated/floor/carpet/turcarpet,/area/ai) +"MN" = (/obj/structure/closet/secure_closet/hos2,/obj/item/clothing/accessory/permit/gun,/obj/item/clothing/accessory/permit/gun,/obj/item/clothing/accessory/permit/gun,/obj/item/clothing/accessory/permit/gun,/obj/item/clothing/accessory/permit/gun,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/obj/item/device/retail_scanner/security,/obj/item/device/ticket_printer,/turf/simulated/floor/tiled/dark,/area/crew_quarters/heads/hos) +"MO" = (/obj/structure/cable/blue{icon_state = "4-8"},/turf/simulated/floor/bluegrid{name = "Mainframe Base"; nitrogen = 100; oxygen = 0; temperature = 80},/area/tcommsat/chamber) +"MP" = (/obj/structure/cable/green{icon_state = "4-8"},/obj/structure/cable/green{icon_state = "1-8"},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/foreportrooma) +"MR" = (/obj/structure/cable/green{icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portcent) +"MU" = (/obj/structure/cable/green{icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/effect/floor_decal/arrivals,/obj/structure/cable{icon_state = "1-2"},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"MV" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled/techfloor/grid,/area/ai) +"MW" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 9},/obj/structure/cable/green{icon_state = "2-8"},/obj/structure/cable/green{icon_state = "1-2"},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardaft) +"MX" = (/obj/structure/cable{icon_state = "4-8"},/obj/effect/floor_decal/fancy_shuttle{fancy_shuttle_tag = "sdboat"},/obj/machinery/atmospherics/pipe/simple/hidden/fuel{dir = 4},/turf/simulated/floor/tiled,/area/shuttle/sdboat/aft{base_turf = /turf/simulated/floor/reinforced/airless}) +"MZ" = (/obj/machinery/alarm/angled{dir = 8},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/foreportroomb) +"Nc" = (/obj/effect/floor_decal/corner_techfloor_grid{dir = 5},/obj/effect/floor_decal/corner_techfloor_grid{dir = 10},/obj/structure/cable/green{icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled/techfloor,/area/stellardelight/deck3/cryo) +"Nd" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/obj/effect/landmark/vines,/turf/simulated/open,/area/stellardelight/deck2/port) +"Ne" = (/obj/structure/cable{icon_state = "1-8"},/obj/structure/cable{icon_state = "1-4"},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardaft) +"Nf" = (/obj/machinery/light{dir = 4},/turf/simulated/floor/tiled/monotile,/area/stellardelight/deck3/commandhall) +"Nh" = (/obj/structure/cable/blue{icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor,/area/stellardelight/deck2/starboard) +"Ni" = (/obj/structure/bed/chair{dir = 4},/obj/machinery/light{dir = 8},/turf/simulated/floor/tiled,/area/stellardelight/deck3/starboarddock) +"Nj" = (/obj/structure/cable/blue{icon_state = "1-2"},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/forestarrooma) +"Nk" = (/obj/structure/bed/chair{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 8},/obj/structure/sign/nanotrasen{pixel_x = -32},/obj/structure/cable{icon_state = "1-2"},/turf/simulated/floor/tiled,/area/stellardelight/deck3/portdock) +"Nm" = (/obj/machinery/light_switch{dir = 8; pixel_x = 24},/turf/simulated/floor/tiled/techfloor/grid,/area/ai_server_room) +"Nq" = (/obj/structure/bed/chair{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 4},/turf/simulated/floor/tiled,/area/stellardelight/deck3/portdock) +"Ns" = (/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portfore) +"Nx" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/structure/cable/green{icon_state = "1-2"},/obj/machinery/camera/network/halls{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals5,/turf/simulated/floor/tiled,/area/stellardelight/deck3/starboarddock) +"Ny" = (/obj/structure/cable/green{icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals_central5{dir = 8},/turf/simulated/floor/tiled,/area/stellardelight/deck3/starboarddock) +"Nz" = (/obj/structure/table/rack,/obj/random/contraband,/obj/random/maintenance,/obj/random/maintenance,/obj/random/maintenance,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/forestarrooma) +"NE" = (/obj/structure/table/rack,/obj/random/contraband,/obj/random/maintenance,/obj/random/maintenance,/obj/random/maintenance,/obj/random/maintenance,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portaft) +"NF" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/open,/area/crew_quarters/bar) +"NG" = (/obj/machinery/light/small{dir = 4},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/foreportroomb) +"NI" = (/obj/structure/lattice,/obj/structure/cable/green{icon_state = "2-8"},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/turf/simulated/open,/area/stellardelight/deck2/port) +"NJ" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/angled_bay/standard/color{dir = 4; door_color = "#9c9c9c"; fill_color = "#5c5c5c"; id_tag = "readingroom2"; name = "Room 2"; stripe_color = "#89bd66"},/turf/simulated/floor/tiled/steel_ridged,/area/stellardelight/deck3/readingroom) +"NK" = (/obj/structure/sign/vacuum,/turf/simulated/wall/bay/r_wall/steel,/area/maintenance/stellardelight/deck3/portcent) +"NL" = (/turf/simulated/floor/airless,/area/stellardelight/deck3/exterior) +"NN" = (/obj/machinery/door/firedoor/glass,/obj/structure/cable/green{icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/door/airlock/angled_bay/hatch{dir = 4; name = "maintenance access"; stripe_color = "#454545"},/turf/simulated/floor/tiled/steel_ridged,/area/stellardelight/deck3/aft) +"NO" = (/obj/structure/table/reinforced,/obj/item/device/flashlight/lamp,/obj/item/device/radio/intercom{dir = 1; frequency = 1357; name = "station intercom (Engineering)"; pixel_y = 24},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/obj/item/clothing/glasses/welding/superior,/obj/item/clothing/glasses/meson,/turf/simulated/floor/tiled,/area/crew_quarters/heads/chief) +"NP" = (/obj/machinery/camera/network/command{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled/techfloor/grid,/area/ai) +"NQ" = (/obj/machinery/door/firedoor/glass,/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "portmaint_airlock"; name = "exterior access button"; pixel_y = 32; req_access = null; req_one_access = list(13)},/obj/machinery/door/airlock/angled_bay/external/glass{dir = 4; frequency = 1379; id_tag = "portmaint_exterior"; locked = 1; name = "Exterior Airlock"},/turf/simulated/floor/tiled/steel_ridged,/area/maintenance/stellardelight/deck3/portcent) +"NR" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/angled_bay/double{name = "maintenance access"; stripe_color = "#454545"},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portaft) +"NS" = (/obj/machinery/atmospherics/unary/engine/fancy_shuttle{dir = 1},/turf/simulated/wall/fancy_shuttle{fancy_shuttle_tag = "sdboat"},/area/shuttle/sdboat/aft{base_turf = /turf/simulated/floor/reinforced/airless}) +"NT" = (/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals_central5{dir = 8},/turf/simulated/floor/tiled,/area/holodeck_control) +"NU" = (/obj/machinery/alarm/angled{dir = 4},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/aftstarroom) +"NW" = (/obj/structure/bed/chair/office/light{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/turf/simulated/floor/tiled/techfloor/grid,/area/ai_cyborg_station) +"NX" = (/obj/machinery/door/firedoor/glass,/obj/machinery/access_button{command = "cycle_interior"; dir = 8; frequency = 1380; master_tag = "sd_starboard_landing"; pixel_y = 32; req_one_access = list(13)},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/machinery/door/airlock/angled_bay/external/glass{dir = 4; frequency = 1380; id_tag = null; locked = 1; name = "Docking Port Airlock"},/obj/effect/map_helper/airlock/door/int_door,/turf/simulated/floor/tiled/steel_ridged,/area/stellardelight/deck3/starboarddock) +"NZ" = (/obj/item/weapon/bedsheet/mimedouble,/obj/structure/bed/double/padded,/obj/structure/curtain/black,/turf/simulated/floor/carpet/bcarpet,/area/stellardelight/deck3/clownmimeoffice) +"Oa" = (/obj/machinery/door/firedoor/glass,/obj/structure/sign/poster{dir = 8},/turf/simulated/floor,/area/stellardelight/deck2/fore) +"Ob" = (/obj/effect/floor_decal/techfloor/orange{dir = 10},/obj/machinery/light{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled/techfloor,/area/stellardelight/deck3/transitgateway) +"Oc" = (/obj/structure/sign/warning/docking_area{pixel_x = 32},/turf/simulated/floor/reinforced/airless,/area/stellardelight/deck3/exterior) +"Od" = (/turf/simulated/floor/airless,/area/maintenance/stellardelight/deck3/portcent) +"Oe" = (/obj/machinery/holoplant,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/turf/simulated/floor/tiled/techfloor/grid,/area/tcommsat/computer) +"Of" = (/obj/machinery/status_display{pixel_x = -32},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 8},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"Og" = (/obj/machinery/recharge_station,/obj/structure/closet/emergsuit_wall{pixel_y = 29},/turf/simulated/floor/tiled,/area/stellardelight/deck3/portdock) +"Oj" = (/obj/machinery/telecomms/bus/preset_one,/turf/simulated/floor/tiled/dark{nitrogen = 100; oxygen = 0; temperature = 80},/area/tcommsat/chamber) +"Ol" = (/turf/simulated/wall/durasteel,/area/ai) +"Oo" = (/obj/machinery/alarm/angled{dir = 8},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/foreportrooma) +"Op" = (/obj/machinery/power/pointdefense{id_tag = "sd_pd"},/obj/effect/floor_decal/industrial/warning/full,/obj/structure/cable/green{icon_state = "0-8"},/turf/simulated/floor/airless,/area/stellardelight/deck3/exterior) +"Oq" = (/obj/structure/bed/chair{dir = 4},/turf/simulated/floor/glass/reinforced,/area/stellardelight/deck3/aft) +"Or" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 1},/obj/structure/cable/green{icon_state = "1-2"},/obj/machinery/hologram/holopad,/turf/simulated/floor/tiled,/area/stellardelight/deck3/portdock) +"Ot" = (/obj/structure/bed/chair/office/dark{dir = 8},/obj/effect/landmark/start/rd,/turf/simulated/floor/carpet/purcarpet,/area/crew_quarters/heads/hor) +"Ou" = (/obj/item/device/radio/beacon,/obj/effect/floor_decal/steeldecal/steel_decals5,/obj/structure/cable{icon_state = "4-8"},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"Ov" = (/obj/machinery/light,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/turf/simulated/floor/tiled/techfloor/grid,/area/ai_server_room) +"Ow" = (/obj/machinery/door/firedoor/glass,/obj/structure/cable/blue{icon_state = "4-8"},/obj/machinery/door/airlock/angled_bay/secure{dir = 4; name = "Telecoms Access"; req_one_access = list(16,17,61)},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled/steel_ridged,/area/ai_server_room) +"Ox" = (/obj/structure/cable/blue{icon_state = "1-2"},/obj/structure/cable/blue{icon_state = "2-8"},/turf/simulated/floor/airless,/area/stellardelight/deck3/exterior) +"Oy" = (/obj/machinery/light{dir = 1},/obj/machinery/door/window{req_one_access = list(25)},/turf/simulated/floor/lino,/area/stellardelight/deck3/cafe) +"Oz" = (/obj/machinery/door/firedoor/glass,/obj/structure/window/bay/reinforced,/obj/structure/low_wall/bay/reinforced/steel,/turf/simulated/floor,/area/stellardelight/deck3/cafe) +"OA" = (/obj/structure/cable{icon_state = "1-2"},/turf/simulated/wall/bay/r_wall/blue,/area/ai_cyborg_station) +"OC" = (/obj/machinery/atmospherics/pipe/simple/hidden,/obj/machinery/door/airlock/angled_bay/hatch{frequency = null; id_tag = null; locked = 1; name = "Telecoms Server Access"; req_access = list(61); stripe_color = "#ffd863"},/obj/machinery/door/firedoor/glass,/obj/structure/cable/blue{icon_state = "1-2"},/obj/machinery/access_button{command = "cycle_interior"; frequency = 1380; master_tag = "tcommsairlock"; pixel_x = 32; req_one_access = list(61)},/obj/effect/map_helper/airlock/door/int_door,/turf/simulated/floor/tiled/steel_ridged,/area/tcommsat/computer) +"OD" = (/obj/structure/table/rack/steel,/obj/machinery/door/window/brigdoor/eastleft{dir = 1; name = "Protosuit Storage"; req_access = list(58)},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/item/clothing/mask/breath,/obj/item/weapon/tank/oxygen,/obj/item/device/suit_cooling_unit,/obj/item/clothing/shoes/magboots,/obj/item/clothing/suit/space/void/security/prototype,/obj/item/clothing/head/helmet/space/void/security/prototype,/obj/structure/window/reinforced,/turf/simulated/floor/tiled/dark,/area/crew_quarters/heads/hos) +"OE" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/turf/simulated/open,/area/stellardelight/deck2/starboard) +"OF" = (/obj/effect/landmark{name = "morphspawn"},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/foreportrooma) +"OG" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/obj/effect/mouse_hole_spawner{dir = 8},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardcent) +"OI" = (/obj/structure/cable/blue{icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/structure/cable/blue{icon_state = "1-4"},/turf/simulated/floor,/area/stellardelight/deck2/starboard) +"OJ" = (/obj/structure/cable/blue{icon_state = "1-4"},/turf/simulated/floor/airless,/area/stellardelight/deck3/exterior) +"OK" = (/obj/structure/closet/lawcloset,/obj/structure/sign/poster{dir = 4},/obj/machinery/newscaster{pixel_y = 28},/turf/simulated/floor/tiled/dark,/area/lawoffice) +"OM" = (/obj/structure/cable/blue{icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/table/rack/shelf,/obj/random/contraband,/obj/random/maintenance,/obj/random/maintenance/medical,/obj/random/maintenance/medical,/obj/random/maintenance/engineering,/obj/random/maintenance/security,/obj/random/maintenance/security,/obj/random/snack,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardcent) +"ON" = (/obj/structure/cable/blue{icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor/airless,/area/maintenance/stellardelight/deck3/starboardcent) +"OP" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/turf/simulated/open,/area/crew_quarters/bar) +"OQ" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/green{icon_state = "1-2"},/turf/simulated/open,/area/crew_quarters/bar) +"OR" = (/obj/machinery/power/apc/angled{dir = 4; name = "night shift APC"; nightshift_setting = 2},/obj/structure/cable/blue{icon_state = "0-8"},/obj/structure/table/rack,/obj/random/maintenance,/obj/random/maintenance/engineering,/obj/random/maintenance/engineering,/turf/simulated/floor/tiled/techfloor/grid,/area/maintenance/stellardelight/deck3/forestarroomb) +"OS" = (/obj/machinery/computer/drone_control{dir = 4},/turf/simulated/floor/tiled/techfloor/grid,/area/ai_cyborg_station) +"OU" = (/turf/simulated/wall/bay/r_wall/steel,/area/stellardelight/deck3/cryo) +"OX" = (/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portcent) +"OY" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/obj/effect/landmark/vines,/turf/simulated/open,/area/stellardelight/deck2/starboard) +"Pa" = (/obj/structure/lattice,/turf/simulated/open,/area/stellardelight/deck2/starboard) +"Pc" = (/obj/structure/cable/green{icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/machinery/hologram/holopad,/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"Pd" = (/obj/machinery/door/firedoor/glass,/obj/structure/cable/blue{icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/door/airlock/angled_bay/hatch{dir = 4; name = "maintenance access"; stripe_color = "#454545"},/turf/simulated/floor/tiled/steel_ridged,/area/maintenance/stellardelight/deck3/starboardcent) +"Pe" = (/obj/machinery/keycard_auth{pixel_y = 28},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/machinery/alarm/angled{dir = 8},/turf/simulated/floor/tiled/dark,/area/crew_quarters/heads/hos) +"Pj" = (/obj/structure/cable/blue{icon_state = "1-2"},/obj/machinery/hologram/holopad,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled/techfloor/grid,/area/ai_upload) +"Pl" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/glass{name = "Starstuff Cockpit"; req_one_access = list(67)},/obj/effect/floor_decal/fancy_shuttle{fancy_shuttle_tag = "sdboat"},/obj/structure/cable/green{icon_state = "1-2"},/turf/simulated/floor/tiled,/area/shuttle/sdboat/fore{base_turf = /turf/simulated/floor/reinforced/airless}) +"Pm" = (/obj/structure/cable/green{icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor,/area/stellardelight/deck2/port) +"Po" = (/obj/structure/sign/nanotrasen{pixel_y = 30},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/turf/simulated/floor/tiled/dark,/area/lawoffice) +"Pp" = (/obj/effect/landmark/start/clown,/turf/simulated/floor/carpet/gaycarpet,/area/stellardelight/deck3/clownmimeoffice) +"Pq" = (/obj/structure/bed/chair{dir = 8},/turf/simulated/floor/tiled/techfloor/grid,/area/maintenance/stellardelight/deck3/foreportrooma) +"Ps" = (/obj/machinery/space_heater,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/forestarroomb) +"Px" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/machinery/computer/cryopod/gateway{pixel_x = 32},/turf/simulated/floor/tiled,/area/stellardelight/deck3/transitgateway) +"PA" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals5,/obj/machinery/camera/network/halls{dir = 1},/obj/structure/cable{icon_state = "4-8"},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"PB" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/wall/fancy_shuttle{fancy_shuttle_tag = "sdboat"},/area/shuttle/sdboat/aft{base_turf = /turf/simulated/floor/reinforced/airless}) +"PC" = (/obj/machinery/alarm/angled{dir = 4},/obj/structure/cable/blue{icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled/dark,/area/lawoffice) +"PD" = (/obj/structure/cable/green{icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 1},/turf/simulated/floor/tiled,/area/stellardelight/deck3/portdock) +"PE" = (/obj/structure/sign/department/ai{pixel_y = 32},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 1},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"PJ" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/window/northleft{dir = 8; icon_state = "right"; name = "Reception Window"},/obj/machinery/door/window/brigdoor/eastright{name = "Head of Personnel's Desk"; req_access = list(57)},/obj/structure/cable/green{icon_state = "1-8"},/obj/machinery/door/blast/shutters{dir = 8; id = "hop_office_desk"; layer = 3.1; name = "HoP's Shutters"},/obj/structure/table/reinforced,/turf/simulated/floor/tiled,/area/crew_quarters/heads/hop) +"PL" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/turf/simulated/floor/tiled/monotile,/area/stellardelight/deck3/commandhall) +"PR" = (/obj/structure/table/glass,/obj/item/device/flashlight/lamp/green{pixel_x = -4; pixel_y = 12},/obj/item/weapon/stamp/cmo,/obj/item/weapon/book/manual/sd_guide,/turf/simulated/floor/carpet/tealcarpet,/area/crew_quarters/heads/cmo) +"PT" = (/obj/effect/floor_decal/industrial/warning{dir = 8},/turf/simulated/floor/airless,/area/stellardelight/deck3/exterior) +"PV" = (/obj/structure/cable/green{icon_state = "2-8"},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/foreportrooma) +"PW" = (/obj/effect/landmark{name = "JoinLateCyborg"},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/obj/effect/landmark/start/cyborg,/turf/simulated/floor/tiled/techfloor/grid,/area/ai_cyborg_station) +"PX" = (/obj/structure/closet/emcloset,/obj/structure/sign/painting/public{pixel_x = 30},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 4},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"Qe" = (/obj/structure/cable{icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 4},/obj/effect/overmap/visitable/ship/landable/sd_boat,/obj/effect/shuttle_landmark/shuttle_initializer/sdboat,/obj/effect/floor_decal/fancy_shuttle{fancy_shuttle_tag = "sdboat"},/obj/machinery/atmospherics/pipe/simple/hidden/fuel{dir = 4},/turf/simulated/floor/tiled,/area/shuttle/sdboat/aft{base_turf = /turf/simulated/floor/reinforced/airless}) +"Qf" = (/obj/structure/bed/chair/office/dark{dir = 4},/obj/effect/landmark/start/ce,/turf/simulated/floor/carpet/oracarpet,/area/crew_quarters/heads/chief) +"Qh" = (/obj/machinery/atmospherics/pipe/simple/hidden/fuel{dir = 5},/turf/simulated/wall/fancy_shuttle{fancy_shuttle_tag = "sdboat"},/area/shuttle/sdboat/aft{base_turf = /turf/simulated/floor/reinforced/airless}) +"Qi" = (/obj/structure/sign/painting/public{pixel_x = -30},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/wood,/area/stellardelight/deck3/cafe) +"Qm" = (/obj/structure/cable/blue{icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled/techfloor/grid,/area/ai_server_room) +"Qn" = (/obj/structure/window/reinforced{dir = 8; pixel_x = -4},/turf/simulated/open,/area/stellardelight/deck3/aft) +"Qo" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/light_switch{pixel_y = 25},/turf/simulated/floor/tiled,/area/crew_quarters/heads/hop) +"Qp" = (/turf/simulated/wall/bay/r_wall/steel,/area/crew_quarters/bar) +"Qs" = (/obj/structure/cable/cyan{icon_state = "1-2"},/obj/machinery/light{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/turf/simulated/floor/bluegrid,/area/ai) +"Qu" = (/obj/structure/sink/kitchen{pixel_y = 22},/obj/machinery/light{dir = 4},/obj/machinery/alarm/angled{dir = 4},/turf/simulated/floor/tiled/monotile,/area/holodeck_control) +"Qv" = (/obj/structure/table/rack,/obj/random/contraband,/obj/random/maintenance,/obj/random/maintenance,/obj/random/maintenance/cargo,/obj/random/maintenance/clean,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/aftstarroom) +"Qx" = (/obj/machinery/door/firedoor/glass/hidden/steel{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals5,/obj/structure/cable{icon_state = "4-8"},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"QB" = (/obj/structure/railing/grey{dir = 8},/turf/simulated/open,/area/stellardelight/deck3/commandhall) +"QC" = (/obj/machinery/camera/network/telecom,/turf/simulated/floor/bluegrid{name = "Mainframe Base"; nitrogen = 100; oxygen = 0; temperature = 80},/area/tcommsat/chamber) +"QE" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/turf/simulated/floor/tiled/monotile,/area/stellardelight/deck3/commandhall) +"QF" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/turf/simulated/open,/area/stellardelight/deck2/port) +"QG" = (/obj/structure/cable/blue{icon_state = "1-2"},/turf/simulated/floor/tiled/techfloor/grid,/area/ai) +"QI" = (/obj/item/device/radio/intercom{dir = 8; pixel_x = -24},/turf/simulated/floor/bluegrid,/area/ai_cyborg_station) +"QJ" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/angled_bay/external/glass{frequency = 1380; id_tag = null; locked = 1; name = "Docking Port Airlock"},/obj/effect/map_helper/airlock/door/ext_door,/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1380; master_tag = "sd_escape_center_right"; pixel_x = 32; req_one_access = list(13)},/turf/simulated/floor/tiled/steel_ridged,/area/stellardelight/deck3/aft) +"QK" = (/obj/structure/bed/chair/comfy/brown{dir = 8},/obj/machinery/alarm/angled{dir = 8},/turf/simulated/floor/carpet,/area/stellardelight/deck3/readingroom) +"QL" = (/obj/structure/cable/blue{icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled/techfloor/grid,/area/ai_cyborg_station) +"QP" = (/obj/structure/cable/blue{icon_state = "1-8"},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/structure/cable/blue{icon_state = "1-4"},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardcent) +"QS" = (/obj/structure/cable/green{icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold4w/hidden,/turf/simulated/floor/airless,/area/maintenance/stellardelight/deck3/portcent) +"QT" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/angled_bay/standard/glass{door_color = "#323d80"; name = "Command Offices"; req_access = null; req_one_access = list(19,38); stripe_color = "#f7d35c"},/turf/simulated/floor/tiled/steel_ridged,/area/stellardelight/deck3/commandhall) +"QV" = (/obj/structure/cable/blue{icon_state = "2-8"},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardfore) +"QW" = (/obj/structure/cable{icon_state = "2-8"},/turf/simulated/floor/carpet/gaycarpet,/area/stellardelight/deck3/clownmimeoffice) +"QZ" = (/obj/structure/cable/green{icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 1},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/turf/simulated/floor/tiled,/area/stellardelight/deck3/starboarddock) +"Rc" = (/obj/machinery/porta_turret/ai_defense,/obj/structure/cable/cyan{icon_state = "1-2"},/turf/simulated/floor/bluegrid,/area/ai) +"Rd" = (/obj/machinery/atmospherics/pipe/simple/hidden/black{dir = 6},/turf/simulated/floor/bluegrid{name = "Mainframe Base"; nitrogen = 100; oxygen = 0; temperature = 80},/area/tcommsat/chamber) +"Rg" = (/obj/structure/lattice,/turf/simulated/open,/area/maintenance/stellardelight/deck3/forestarroomb) +"Rh" = (/obj/structure/cable/green{icon_state = "1-8"},/turf/simulated/wall/bay/r_wall/steel,/area/maintenance/stellardelight/deck3/forestarrooma) +"Ri" = (/obj/structure/cable/blue{icon_state = "1-2"},/obj/random/trash_pile,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardfore) +"Rj" = (/obj/machinery/door/firedoor/glass,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/door/airlock/angled_bay/standard/glass{name = "maintenance access"},/obj/structure/cable/blue{icon_state = "1-2"},/turf/simulated/floor/tiled/steel_ridged,/area/stellardelight/deck2/starboard) +"Rl" = (/obj/structure/disposalpipe/sortjunction/flipped{dir = 4; name = "Command Offices"; sortType = "Command Offices"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/effect/landmark{name = "lightsout"},/turf/simulated/floor/tiled/monotile,/area/stellardelight/deck3/commandhall) +"Rn" = (/obj/machinery/door/firedoor/glass,/obj/structure/window/bay/reinforced,/obj/structure/low_wall/bay/reinforced/blue,/turf/simulated/floor,/area/crew_quarters/heads/hop) +"Ro" = (/obj/machinery/door/firedoor/glass,/obj/structure/cable/green{icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/door/airlock/angled_bay/standard/glass/common{dir = 4; name = "Long-Range Teleporter Access"},/turf/simulated/floor/tiled/steel_ridged,/area/stellardelight/deck3/transitgateway) +"Rq" = (/obj/structure/cable{icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardaft) +"Ru" = (/obj/machinery/holoplant,/obj/machinery/camera/network/command{dir = 4},/turf/simulated/floor/tiled/techfloor/grid,/area/ai_upload) +"Rv" = (/obj/structure/cable/green{icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"Rw" = (/obj/machinery/door/firedoor/glass/hidden/shuttle,/obj/structure/window/fancy_shuttle{fancy_shuttle_tag = "sdboat"},/turf/simulated/floor/reinforced/airless,/area/shuttle/sdboat/aft{base_turf = /turf/simulated/floor/reinforced/airless}) +"Rx" = (/obj/structure/cable/green{icon_state = "1-2"},/obj/structure/cable/green{icon_state = "2-4"},/turf/simulated/floor/airless,/area/stellardelight/deck3/exterior) +"Rz" = (/obj/structure/lattice,/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/structure/cable/green{icon_state = "4-8"},/turf/simulated/open,/area/stellardelight/deck2/starboard) +"RE" = (/turf/simulated/wall/bay/r_wall/steel,/area/maintenance/stellardelight/deck3/starboardfore) +"RG" = (/obj/machinery/light/small{dir = 4},/turf/simulated/open,/area/stellardelight/deck2/starboard) +"RH" = (/obj/effect/floor_decal/techfloor/orange{dir = 1},/obj/machinery/power/apc/angled{dir = 1},/obj/structure/cable/green{icon_state = "0-2"},/turf/simulated/floor/tiled/techfloor,/area/stellardelight/deck3/transitgateway) +"RI" = (/turf/simulated/open,/area/stellardelight/deck3/aft) +"RK" = (/obj/machinery/door/firedoor/glass,/obj/structure/cable{icon_state = "1-2"},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardfore) +"RL" = (/turf/simulated/wall/bay/r_wall/steel,/area/maintenance/stellardelight/deck3/foreportroomb) +"RM" = (/obj/structure/cable/green{icon_state = "1-8"},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/effect/mouse_hole_spawner{dir = 4},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portcent) +"RN" = (/obj/structure/sign/directions/evac{pixel_x = 32},/obj/structure/closet/firecloset,/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 4},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"RQ" = (/obj/structure/table/standard,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/turf/simulated/floor/bluegrid,/area/ai_cyborg_station) +"RT" = (/obj/structure/cable{icon_state = "4-8"},/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/angled_bay/hatch{dir = 4; door_color = "#e6ab22"; name = "Shield Generator"; req_access = null; req_one_access = list(11,24); stripe_color = "#e6ab22"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/turf/simulated/floor/tiled/steel_ridged,/area/stellardelight/deck2/central) +"RW" = (/obj/machinery/portable_atmospherics/canister/air,/obj/machinery/atmospherics/portables_connector{dir = 1},/obj/machinery/door/window/southright{dir = 1; req_one_access = list(11,67)},/obj/effect/floor_decal/fancy_shuttle{fancy_shuttle_tag = "sdboat"},/turf/simulated/floor/tiled,/area/shuttle/sdboat/aft{base_turf = /turf/simulated/floor/reinforced/airless}) +"RX" = (/turf/simulated/wall/bay/steel,/area/stellardelight/deck2/central) +"RY" = (/obj/structure/bed/chair/shuttle{dir = 1},/obj/machinery/light{dir = 8},/obj/effect/floor_decal/fancy_shuttle{fancy_shuttle_tag = "sdboat"},/turf/simulated/floor/tiled,/area/shuttle/sdboat/aft{base_turf = /turf/simulated/floor/reinforced/airless}) +"RZ" = (/obj/structure/cable/blue{icon_state = "1-2"},/obj/structure/sign/warning/caution{desc = "This secure area is guarded by LETHAL LASER TURRETS. Authorized personnel ONLY."; name = "\improper WARNING: LETHAL TURRETS AHEAD"; pixel_x = -32},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled/techfloor/grid,/area/ai_server_room) +"Sb" = (/turf/simulated/floor/tiled/techfloor/grid,/area/maintenance/stellardelight/deck3/forestarrooma) +"Se" = (/obj/effect/floor_decal/industrial/warning/corner,/turf/simulated/floor/airless,/area/stellardelight/deck3/exterior) +"Sf" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"Sh" = (/obj/structure/closet/crate/bin{anchored = 1},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/foreportrooma) +"Sk" = (/obj/structure/table/standard,/obj/item/weapon/phone{pixel_x = 3; pixel_y = 11},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/machinery/alarm/angled{dir = 8},/turf/simulated/floor/bluegrid,/area/ai_cyborg_station) +"Sl" = (/obj/structure/sign/warning/evac{pixel_x = -32; pixel_y = -32},/obj/effect/floor_decal/steeldecal/steel_decals5,/obj/structure/cable{icon_state = "4-8"},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"Sm" = (/obj/structure/cable/blue{icon_state = "1-2"},/turf/simulated/floor/bluegrid{name = "Mainframe Base"; nitrogen = 100; oxygen = 0; temperature = 80},/area/tcommsat/chamber) +"Sn" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals_central5{dir = 8},/obj/structure/cable{icon_state = "1-8"},/turf/simulated/floor/tiled,/area/stellardelight/deck3/portdock) +"Sp" = (/obj/structure/cable/green{icon_state = "4-8"},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/foreportrooma) +"Sw" = (/obj/machinery/alarm/angled{dir = 8},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portaft) +"Sz" = (/obj/structure/cable/green{icon_state = "4-8"},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portcent) +"SA" = (/obj/structure/table/darkglass,/obj/machinery/computer/skills{dir = 8; pixel_y = 6},/turf/simulated/floor/carpet/blue2,/area/lawoffice) +"SB" = (/obj/machinery/requests_console/preset/ce{pixel_x = -30},/turf/simulated/floor/carpet/oracarpet,/area/crew_quarters/heads/chief) +"SC" = (/obj/structure/sign/warning/docking_area{pixel_y = 32},/turf/simulated/floor/reinforced/airless,/area/stellardelight/deck3/exterior) +"SD" = (/obj/machinery/atmospherics/portables_connector{dir = 8},/obj/machinery/portable_atmospherics/canister/air/airlock,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portcent) +"SE" = (/obj/machinery/newscaster{layer = 3.3; pixel_x = 27},/turf/simulated/floor/carpet/blue2,/area/lawoffice) +"SF" = (/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 1},/obj/item/device/radio/intercom{dir = 1; pixel_y = 24},/obj/machinery/vending/nifsoft_shop,/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"SJ" = (/obj/machinery/door/firedoor/glass/hidden/shuttle,/obj/structure/window/fancy_shuttle{fancy_shuttle_tag = "sdboat"},/turf/simulated/floor/reinforced/airless,/area/shuttle/sdboat/fore{base_turf = /turf/simulated/floor/reinforced/airless}) +"SK" = (/obj/structure/lattice,/turf/space,/area/space) +"SL" = (/obj/machinery/recharge_station,/turf/simulated/floor/bluegrid,/area/ai_cyborg_station) +"SN" = (/obj/structure/cable/green{icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"SP" = (/obj/structure/table/glass,/obj/machinery/photocopier/faxmachine{department = "CMO's Office"},/turf/simulated/floor/tiled/eris/white/cargo,/area/crew_quarters/heads/cmo) +"SQ" = (/obj/machinery/disposal/wall{dir = 8},/obj/structure/disposalpipe/trunk{dir = 8},/turf/simulated/floor/tiled/monotile,/area/stellardelight/deck3/commandhall) +"SR" = (/obj/machinery/door/firedoor/glass,/obj/structure/window/bay/reinforced,/obj/structure/low_wall/bay/reinforced/steel,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/foreportrooma) +"ST" = (/obj/structure/cable/green{icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 1},/turf/simulated/floor/tiled,/area/stellardelight/deck3/portdock) +"SU" = (/obj/structure/table/bench/padded,/obj/structure/sign/painting/public{pixel_y = -30},/turf/simulated/floor/wood,/area/stellardelight/deck3/cafe) +"SV" = (/obj/structure/cable/blue{icon_state = "4-8"},/turf/simulated/floor/airless,/area/maintenance/stellardelight/deck3/starboardcent) +"SZ" = (/obj/machinery/power/apc/angled{dir = 4},/obj/structure/cable/blue{icon_state = "0-8"},/turf/simulated/floor/tiled/eris/dark/gray_platform,/area/stellardelight/deck3/commandhall) +"Ta" = (/obj/machinery/door/firedoor/glass,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/door/airlock/angled_bay/hatch{name = "maintenance access"; stripe_color = "#454545"},/obj/structure/cable/green{icon_state = "1-2"},/turf/simulated/floor/tiled/steel_ridged,/area/crew_quarters/bar) +"Tc" = (/obj/structure/bed/chair{dir = 8},/obj/structure/closet/emergsuit_wall{dir = 4; pixel_x = 27},/turf/simulated/floor/tiled,/area/stellardelight/deck3/portdock) +"Td" = (/obj/structure/table/rack/shelf,/obj/random/contraband,/obj/random/contraband,/obj/random/maintenance,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/forestarroomb) +"Te" = (/obj/effect/landmark/map_data/stellar_delight,/turf/space,/area/space) +"Tf" = (/obj/structure/cable/green{icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/angled_bay/double/glass{name = "glass airlock"},/turf/simulated/floor/tiled/steel_ridged,/area/stellardelight/deck3/aft) +"Ti" = (/obj/structure/cable/blue{icon_state = "1-2"},/obj/structure/cable/green{icon_state = "4-8"},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/forestarrooma) +"Tj" = (/obj/structure/table/reinforced,/obj/machinery/button/remote/blast_door{desc = "A remote control-switch for shutters."; dir = 4; id = "hop_office_desk"; layer = 3.3; name = "Desk Privacy Shutter"; pixel_x = -4; pixel_y = 4},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/turf/simulated/floor/tiled,/area/crew_quarters/heads/hop) +"Tk" = (/obj/machinery/door/firedoor/glass,/obj/structure/window/bay/reinforced,/obj/structure/cable/blue{icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/low_wall/bay/reinforced/blue,/turf/simulated/floor,/area/crew_quarters/heads/hop) +"Tl" = (/obj/structure/bed/chair/office/dark{dir = 8},/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = 24},/obj/effect/landmark/start/hop,/turf/simulated/floor/carpet,/area/crew_quarters/heads/hop) +"Tm" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled/monotile,/area/stellardelight/deck3/commandhall) +"Tn" = (/obj/structure/cable/blue{icon_state = "1-2"},/turf/simulated/floor,/area/ai_cyborg_station) +"To" = (/obj/machinery/keycard_auth{pixel_y = 28},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/machinery/alarm/angled{dir = 4},/turf/simulated/floor/tiled/eris/white/cargo,/area/crew_quarters/heads/cmo) +"Tp" = (/obj/structure/table/glass,/obj/machinery/light,/turf/simulated/floor/tiled/eris/white/cargo,/area/crew_quarters/heads/cmo) +"Tr" = (/obj/machinery/drone_fabricator,/turf/simulated/floor/tiled/techfloor/grid,/area/ai_cyborg_station) +"Ts" = (/obj/structure/cable/blue{icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/power/apc/angled{cell_type = /obj/item/weapon/cell/super; dir = 8; name = "night shift APC"; nightshift_setting = 2},/obj/structure/cable/blue,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardcent) +"Tv" = (/obj/machinery/door/firedoor/glass,/obj/structure/cable/blue{icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/door/airlock/angled_bay/standard/color{dir = 4; door_color = "#9fccc7"; fill_color = "#333333"; id_tag = null; name = "Internal Affairs"; req_access = list(38); stripe_color = "#ffffff"},/turf/simulated/floor/tiled/steel_ridged,/area/lawoffice) +"Tx" = (/obj/machinery/light/small,/turf/simulated/open,/area/stellardelight/deck2/central) +"Ty" = (/obj/machinery/light/small{dir = 4},/turf/simulated/floor,/area/ai_cyborg_station) +"TA" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/wall/bay/r_wall/steel,/area/stellardelight/deck3/aft) +"TB" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 8},/obj/structure/cable{icon_state = "1-2"},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"TE" = (/obj/machinery/power/pointdefense{id_tag = "sd_pd"},/obj/effect/floor_decal/industrial/warning/full,/obj/structure/cable/green{icon_state = "0-4"},/turf/simulated/floor/airless,/area/stellardelight/deck3/exterior) +"TF" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/tiled/monotile,/area/stellardelight/deck3/commandhall) +"TI" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/turf/simulated/floor/tiled/techfloor/grid,/area/ai) +"TJ" = (/obj/structure/sign/department/telecoms{pixel_y = 32},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 1},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"TK" = (/obj/structure/cable/cyan{icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/bluegrid,/area/ai) +"TL" = (/turf/simulated/floor/bluegrid,/area/ai) +"TM" = (/obj/machinery/turretid/lethal{ailock = 1; control_area = /area/tcommsat/chamber; desc = "A firewall prevents AIs from interacting with this device."; name = "Telecoms lethal turret control"; pixel_y = 29; req_access = list(61); req_one_access = list()},/obj/effect/floor_decal/industrial/warning/corner{dir = 1},/turf/simulated/floor/tiled/techfloor/grid,/area/ai_server_room) +"TO" = (/obj/machinery/atmospherics/unary/vent_pump/on,/obj/effect/landmark/vermin,/turf/simulated/floor/tiled/monotile,/area/stellardelight/deck3/commandhall) +"TP" = (/obj/structure/cable/blue{icon_state = "4-8"},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardfore) +"TS" = (/obj/structure/cable/blue{icon_state = "4-8"},/obj/structure/cable/blue{icon_state = "2-8"},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/forestarroomb) +"TV" = (/obj/structure/cable/blue{icon_state = "4-8"},/obj/structure/cable/blue{icon_state = "1-8"},/turf/simulated/floor/airless,/area/stellardelight/deck3/exterior) +"TW" = (/obj/structure/cable/green{icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 8},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals_central5{dir = 4},/turf/simulated/floor/tiled,/area/stellardelight/deck3/portdock) +"TY" = (/obj/structure/cable/blue{icon_state = "1-2"},/obj/machinery/light{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled/techfloor/grid,/area/ai_server_room) +"Ub" = (/obj/machinery/vending/boozeomat{req_access = null},/turf/simulated/floor/tiled/techfloor/grid,/area/maintenance/stellardelight/deck3/forestarroomb) +"Uc" = (/obj/structure/frame/computer,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/foreportrooma) +"Ud" = (/obj/structure/table/reinforced,/obj/item/weapon/stamp/ce,/obj/item/weapon/book/manual/sd_guide,/turf/simulated/floor/carpet/oracarpet,/area/crew_quarters/heads/chief) +"Ue" = (/obj/structure/table/rack,/obj/random/contraband,/obj/random/maintenance,/obj/random/drinkbottle,/obj/random/maintenance/engineering,/obj/random/maintenance/engineering,/obj/random/mre,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/forestarroomb) +"Uf" = (/obj/structure/cable/blue{icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled/techfloor/grid,/area/tcommsat/computer) +"Ug" = (/obj/structure/cable/blue{icon_state = "4-8"},/turf/simulated/wall/bay/r_wall/steel,/area/maintenance/stellardelight/deck3/starboardcent) +"Uj" = (/obj/structure/cable/blue,/obj/structure/cable/blue{icon_state = "0-2"},/obj/machinery/power/smes/buildable{RCon_tag = "Substation - AI/Telecomms"; output_attempt = 0},/turf/simulated/floor,/area/ai_cyborg_station) +"Uk" = (/obj/machinery/computer/card,/turf/simulated/floor/tiled,/area/crew_quarters/heads/hop) +"Uq" = (/turf/simulated/floor/tiled/techfloor/grid,/area/maintenance/stellardelight/deck3/foreportrooma) +"Uw" = (/obj/structure/cable/green{icon_state = "4-8"},/obj/structure/cable/green{icon_state = "2-4"},/turf/simulated/floor/airless,/area/stellardelight/deck3/exterior) +"Uy" = (/obj/machinery/atmospherics/unary/vent_pump/on,/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 1},/obj/machinery/station_map{pixel_y = 32},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"UA" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor,/area/stellardelight/deck2/fore) +"UB" = (/obj/structure/cable/blue{icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/light_switch{dir = 8; pixel_x = 24; pixel_y = 24},/turf/simulated/floor/tiled/dark,/area/crew_quarters/heads/hos) +"UD" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 9},/turf/simulated/wall/fancy_shuttle{fancy_shuttle_tag = "sdboat"},/area/shuttle/sdboat/aft{base_turf = /turf/simulated/floor/reinforced/airless}) +"UF" = (/obj/machinery/light/small,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/forestarroomb) +"UG" = (/obj/structure/cable/blue{icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable/blue{icon_state = "1-4"},/turf/simulated/floor/tiled/eris/dark/gray_platform,/area/stellardelight/deck3/commandhall) +"UH" = (/obj/structure/sign/painting/library_secure{pixel_x = -30},/turf/simulated/floor/carpet,/area/crew_quarters/heads/hos) +"UI" = (/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 4},/obj/item/device/radio/intercom{dir = 4; pixel_x = 24},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"UK" = (/obj/machinery/camera/network/telecom{dir = 4},/turf/simulated/floor/bluegrid{name = "Mainframe Base"; nitrogen = 100; oxygen = 0; temperature = 80},/area/tcommsat/chamber) +"UL" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/angled_bay/double{name = "maintenance access"; stripe_color = "#454545"},/obj/structure/cable/green{icon_state = "1-2"},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portfore) +"UO" = (/obj/machinery/recharge_station,/obj/item/device/radio/intercom{dir = 8; pixel_x = -24},/turf/simulated/floor/bluegrid,/area/ai_upload) +"UQ" = (/obj/machinery/door/firedoor/glass,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardaft) +"UR" = (/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/structure/cable/green{icon_state = "4-8"},/obj/structure/cable/green{icon_state = "2-8"},/turf/simulated/floor/airless,/area/stellardelight/deck3/exterior) +"US" = (/obj/structure/lattice,/obj/structure/cable/green{icon_state = "4-8"},/turf/simulated/open,/area/crew_quarters/bar) +"UT" = (/obj/structure/table/steel_reinforced,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/device/megaphone,/obj/item/weapon/pen/multi,/obj/item/device/radio/intercom/department/security{dir = 1; pixel_y = 24},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/turf/simulated/floor/tiled/dark,/area/crew_quarters/heads/hos) +"UU" = (/obj/machinery/alarm/angled{dir = 4},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardfore) +"UV" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/obj/structure/closet/emergsuit_wall{dir = 8; pixel_x = -27},/obj/effect/landmark/vines,/turf/simulated/floor/tiled,/area/stellardelight/deck3/portdock) +"UX" = (/obj/machinery/light/small,/turf/simulated/open,/area/crew_quarters/bar) +"Va" = (/obj/structure/cable/green{icon_state = "4-8"},/turf/simulated/wall/bay/r_wall/steel,/area/maintenance/stellardelight/deck3/portfore) +"Vb" = (/obj/effect/floor_decal/corner_techfloor_grid{dir = 5},/obj/effect/floor_decal/corner_techfloor_grid{dir = 10},/obj/machinery/light/floortube{dir = 8; pixel_x = -3},/obj/structure/cable/green{icon_state = "4-8"},/turf/simulated/floor/tiled/techfloor,/area/stellardelight/deck3/cryo) +"Vc" = (/obj/structure/cable/green{icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 1},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/obj/structure/cable{icon_state = "4-8"},/turf/simulated/floor/tiled,/area/stellardelight/deck3/portdock) +"Ve" = (/obj/structure/cable/blue{icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/light_switch{dir = 8; pixel_x = 24; pixel_y = 24},/turf/simulated/floor/tiled,/area/crew_quarters/heads/chief) +"Vg" = (/obj/machinery/door/firedoor/glass,/obj/structure/window/bay/reinforced,/obj/structure/low_wall/bay/reinforced/steel,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardfore) +"Vh" = (/obj/machinery/door/firedoor/glass/hidden/shuttle,/obj/machinery/door/blast/shuttle/open{id = "shuttleshutter"},/obj/structure/window/fancy_shuttle{fancy_shuttle_tag = "sdboat"},/obj/machinery/atmospherics/pipe/simple/hidden/fuel{dir = 6},/turf/simulated/floor/reinforced/airless,/area/shuttle/sdboat/aft{base_turf = /turf/simulated/floor/reinforced/airless}) +"Vi" = (/obj/structure/cable/green{icon_state = "2-8"},/obj/structure/closet/crate,/obj/random/contraband,/obj/random/maintenance,/obj/random/maintenance,/obj/random/maintenance,/obj/random/maintenance,/obj/random/maintenance,/obj/item/device/gps,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/forestarrooma) +"Vk" = (/obj/structure/cable{icon_state = "4-8"},/obj/effect/landmark/start/mime,/turf/simulated/floor/carpet/bcarpet,/area/stellardelight/deck3/clownmimeoffice) +"Vm" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/turf/simulated/open,/area/crew_quarters/bar) +"Vo" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/angled_bay/external/glass{dir = 4; frequency = 1380; id_tag = null; locked = 1; name = "Docking Port Airlock"},/obj/effect/map_helper/airlock/door/ext_door,/obj/machinery/access_button{command = "cycle_exterior"; dir = 8; frequency = 1380; master_tag = "sd_escape_starboard"; pixel_y = 32; req_one_access = list(13)},/turf/simulated/floor/tiled/steel_ridged,/area/stellardelight/deck3/starboarddock) +"Vp" = (/obj/structure/lattice,/obj/machinery/light/small,/turf/simulated/open,/area/stellardelight/deck2/starboard) +"Vq" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/turf/simulated/floor/tiled/monotile,/area/stellardelight/deck3/commandhall) +"Vr" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/obj/structure/table/reinforced,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/folder/yellow_ce,/obj/item/weapon/pen/multi,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/turf/simulated/floor/tiled,/area/crew_quarters/heads/chief) +"Vs" = (/turf/simulated/floor/tiled/techfloor/grid,/area/ai) +"Vt" = (/obj/item/device/radio/intercom/locked/ai_private{dir = 4; pixel_x = 32},/turf/simulated/floor/tiled/techfloor,/area/ai_cyborg_station) +"Vw" = (/obj/structure/bed/chair/shuttle{dir = 1},/obj/effect/floor_decal/fancy_shuttle{fancy_shuttle_tag = "sdboat"},/turf/simulated/floor/tiled,/area/shuttle/sdboat/aft{base_turf = /turf/simulated/floor/reinforced/airless}) +"Vx" = (/obj/structure/cable/blue{icon_state = "1-4"},/obj/effect/landmark{name = "maint_pred"},/turf/simulated/floor/tiled/techfloor/grid,/area/maintenance/stellardelight/deck3/forestarroomb) +"Vz" = (/obj/machinery/power/pointdefense{id_tag = "sd_pd"},/obj/effect/floor_decal/industrial/warning/full,/obj/structure/cable/green{icon_state = "0-8"},/obj/structure/cable/green{icon_state = "0-4"},/turf/simulated/floor/airless,/area/stellardelight/deck3/exterior) +"VB" = (/obj/item/weapon/bedsheet/double,/obj/structure/bed/double/padded,/obj/structure/curtain/black{color = "#156363"},/obj/effect/landmark/start/cmo,/turf/simulated/floor/carpet/tealcarpet,/area/crew_quarters/heads/cmo) +"VC" = (/turf/simulated/wall/bay/r_wall/blue,/area/ai_upload) +"VD" = (/obj/structure/table/steel,/obj/random/drinkbottle,/obj/machinery/chemical_dispenser/bar_alc/full,/turf/simulated/floor/tiled/techfloor/grid,/area/maintenance/stellardelight/deck3/foreportroomb) +"VE" = (/obj/structure/table/glass,/obj/item/device/radio/intercom/department/medbay{dir = 1; pixel_y = 24},/obj/item/weapon/paper_bin{pixel_x = 3; pixel_y = 7},/obj/item/weapon/pen/multi,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/item/weapon/folder/white_cmo,/turf/simulated/floor/tiled/eris/white/cargo,/area/crew_quarters/heads/cmo) +"VG" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/item/device/radio/intercom{dir = 4; pixel_x = 24},/turf/simulated/floor/tiled/techfloor/grid,/area/ai) +"VK" = (/obj/structure/cable/green{icon_state = "1-2"},/obj/structure/cable/green{icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/alarm/angled{dir = 4},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portcent) +"VM" = (/obj/machinery/power/pointdefense{id_tag = "sd_pd"},/obj/effect/floor_decal/industrial/warning/full,/obj/structure/cable/green,/turf/simulated/floor/airless,/area/stellardelight/deck3/exterior) +"VN" = (/obj/structure/cable/green{icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 1},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"VQ" = (/obj/machinery/door/firedoor/glass,/obj/machinery/door/airlock/angled_bay/secure{name = "Nuclear Fission Device Storage"; req_access = list(16)},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled/steel_ridged,/area/ai) +"VR" = (/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor/airless,/area/maintenance/stellardelight/deck3/portcent) +"VS" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 5},/turf/simulated/wall/bay/r_wall/steel,/area/stellardelight/deck3/aft) +"VW" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/turf/simulated/floor/tiled/techfloor/grid,/area/ai_server_room) +"VZ" = (/obj/structure/table/rack,/obj/random/maintenance,/obj/random/maintenance/clean,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/aftstarroom) +"Wa" = (/turf/simulated/floor/carpet,/area/crew_quarters/heads/hop) +"Wd" = (/obj/structure/cable/green{icon_state = "4-8"},/obj/structure/cable/green{icon_state = "1-4"},/turf/simulated/floor/airless,/area/stellardelight/deck3/exterior) +"Wf" = (/obj/machinery/disposal/wall,/obj/structure/disposalpipe/trunk,/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 1},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"Wg" = (/obj/structure/bed/chair/shuttle{dir = 1},/obj/structure/closet/emergsuit_wall{dir = 1; pixel_y = -32},/obj/item/device/radio/intercom{dir = 4; pixel_x = 24},/obj/effect/floor_decal/fancy_shuttle{fancy_shuttle_tag = "sdboat"},/turf/simulated/floor/tiled,/area/shuttle/sdboat/aft{base_turf = /turf/simulated/floor/reinforced/airless}) +"Wi" = (/obj/structure/closet/secure_closet/personal,/turf/simulated/floor/bluegrid,/area/ai) +"Wj" = (/obj/machinery/computer/ship/helm/adv,/obj/effect/floor_decal/fancy_shuttle{fancy_shuttle_tag = "sdboat"},/turf/simulated/floor/tiled,/area/shuttle/sdboat/fore{base_turf = /turf/simulated/floor/reinforced/airless}) +"Wl" = (/obj/structure/sign/warning/falling{pixel_x = -32},/turf/simulated/open,/area/stellardelight/deck2/port) +"Wn" = (/obj/machinery/power/smes/buildable{charge = 500000},/obj/effect/floor_decal/fancy_shuttle{fancy_shuttle_tag = "sdboat"},/obj/structure/cable/green{icon_state = "0-4"},/turf/simulated/floor/tiled,/area/shuttle/sdboat/aft{base_turf = /turf/simulated/floor/reinforced/airless}) +"Wp" = (/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/open,/area/stellardelight/deck2/central) +"Wq" = (/obj/structure/table/darkglass,/obj/machinery/computer/skills{dir = 4; pixel_y = 6},/turf/simulated/floor/carpet/blue2,/area/lawoffice) +"Wr" = (/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 4},/obj/structure/cable/green{icon_state = "1-2"},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardaft) +"Ws" = (/obj/structure/cable/green{icon_state = "1-2"},/obj/structure/table/steel,/obj/item/weapon/flame/candle,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portfore) +"Wt" = (/obj/structure/cable/green{icon_state = "1-2"},/obj/effect/floor_decal/spline/plain,/obj/structure/table/bench/marble,/turf/simulated/floor/lino,/area/stellardelight/deck3/cafe) +"Wu" = (/obj/structure/sign/warning/docking_area{pixel_x = -32},/turf/simulated/floor/airless,/area/stellardelight/deck3/exterior) +"Ww" = (/obj/structure/handrail{dir = 4},/obj/effect/map_helper/airlock/atmos/pump_out_internal,/obj/machinery/light,/obj/machinery/atmospherics/unary/vent_pump/high_volume{frequency = 1380; id_tag = "sdboat_docker_pump_out_internal"},/obj/effect/floor_decal/fancy_shuttle{fancy_shuttle_tag = "sdboat"},/turf/simulated/floor/tiled,/area/shuttle/sdboat/aft{base_turf = /turf/simulated/floor/reinforced/airless}) +"Wx" = (/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 4},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"Wy" = (/obj/machinery/camera/network/engineering{dir = 1},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/obj/machinery/alarm/angled{dir = 4},/obj/structure/table/steel_reinforced,/obj/item/weapon/paper/sdshield,/turf/simulated/floor,/area/stellardelight/deck2/central) +"WA" = (/obj/structure/cable{icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardcent) +"WB" = (/obj/machinery/light/small{dir = 4},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardfore) +"WD" = (/obj/structure/table/woodentable,/turf/simulated/floor/wood,/area/stellardelight/deck3/cafe) +"WF" = (/obj/structure/table/steel,/obj/random/contraband,/obj/random/maintenance/security,/obj/random/maintenance/security,/obj/random/maintenance/security,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/forestarrooma) +"WG" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4},/turf/simulated/open,/area/stellardelight/deck2/starboard) +"WH" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/turf/simulated/floor/tiled/monotile,/area/stellardelight/deck3/commandhall) +"WI" = (/obj/structure/bed/chair{dir = 1},/turf/simulated/floor/tiled/techfloor/grid,/area/maintenance/stellardelight/deck3/foreportrooma) +"WK" = (/turf/simulated/wall/fancy_shuttle{fancy_shuttle_tag = "sdboat"},/area/shuttle/sdboat/fore{base_turf = /turf/simulated/floor/reinforced/airless}) +"WL" = (/obj/structure/closet/crate,/obj/random/contraband,/obj/random/maintenance/clean,/obj/random/maintenance/clean,/obj/random/maintenance/clean,/obj/random/maintenance/cargo,/obj/random/maintenance/cargo,/obj/random/drinksoft,/obj/random/drinksoft,/obj/random/mre,/obj/random/mre,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/foreportrooma) +"WM" = (/obj/effect/landmark{name = "maint_pred"},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/foreportrooma) +"WN" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/turf/simulated/floor/tiled/monotile,/area/stellardelight/deck3/commandhall) +"WO" = (/turf/simulated/wall/bay/r_wall/blue,/area/lawoffice) +"WQ" = (/obj/machinery/power/apc/angled{cell_type = /obj/item/weapon/cell/super; dir = 4; name = "night shift APC"; nightshift_setting = 2},/obj/structure/cable/green{icon_state = "0-8"},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portcent) +"WU" = (/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 5},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"WW" = (/obj/structure/bed/chair/office/dark{dir = 8},/obj/effect/landmark/start/iaa,/turf/simulated/floor/carpet/blue2,/area/lawoffice) +"WX" = (/obj/machinery/camera/network/command{dir = 10},/turf/simulated/floor/tiled/techfloor/grid,/area/ai_cyborg_station) +"WZ" = (/obj/machinery/atmospherics/unary/vent_pump/on,/obj/machinery/light/small{dir = 1},/obj/structure/flora/pottedplant/smalltree,/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"Xa" = (/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = 24},/obj/structure/closet/secure_closet/CMO,/obj/item/clothing/accessory/stethoscope,/obj/item/device/flashlight/pen,/obj/item/weapon/storage/belt/medical,/obj/item/clothing/glasses/hud/health,/obj/item/device/defib_kit/compact/combat/loaded,/obj/item/weapon/cmo_disk_holder,/obj/item/weapon/storage/secure/briefcase/ml3m_pack_cmo,/obj/item/weapon/storage/mrebag/pill/sleevingcure,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/item/device/retail_scanner/medical,/turf/simulated/floor/tiled/eris/white/cargo,/area/crew_quarters/heads/cmo) +"Xb" = (/turf/simulated/floor/carpet/gaycarpet,/area/stellardelight/deck3/clownmimeoffice) +"Xc" = (/obj/structure/lattice,/obj/machinery/atmospherics/unary/vent_scrubber/on,/obj/structure/cable/green{icon_state = "1-2"},/obj/effect/landmark/vermin,/obj/effect/mouse_hole_spawner{dir = 8},/turf/simulated/open,/area/crew_quarters/bar) +"Xd" = (/obj/machinery/atmospherics/pipe/manifold4w/hidden,/turf/simulated/floor/airless,/area/maintenance/stellardelight/deck3/starboardcent) +"Xe" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8},/turf/simulated/open,/area/stellardelight/deck2/fore) +"Xf" = (/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/open,/area/stellardelight/deck2/port) +"Xi" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/wood,/area/stellardelight/deck3/cafe) +"Xl" = (/obj/machinery/door/firedoor/glass,/obj/structure/window/bay/reinforced,/obj/structure/low_wall/bay/reinforced/steel,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/foreportroomb) +"Xm" = (/obj/structure/table/alien{name = "fancy table"},/obj/item/device/radio/intercom{dir = 1; frequency = 1351; name = "station intercom (Science)"; pixel_y = 24},/obj/random/paicard{pixel_x = 4},/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/obj/item/weapon/paper/monitorkey,/obj/item/device/megaphone,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/obj/item/weapon/folder/white_rd,/turf/simulated/floor/tiled/techfloor,/area/crew_quarters/heads/hor) +"Xo" = (/obj/structure/cable/blue{icon_state = "1-4"},/obj/machinery/power/apc/angled{dir = 8},/obj/structure/cable/blue{icon_state = "0-4"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/turf/simulated/floor/tiled/techfloor/grid,/area/ai_server_room) +"Xr" = (/obj/structure/sign/warning/secure_area{pixel_y = 32},/turf/simulated/floor/tiled/techfloor/grid,/area/ai_cyborg_station) +"Xv" = (/obj/structure/frame,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/foreportrooma) +"XA" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/machinery/atmospherics/pipe/manifold/hidden/supply,/turf/simulated/open,/area/stellardelight/deck2/central) +"XB" = (/turf/simulated/wall/bay/steel,/area/maintenance/stellardelight/substation/command) +"XC" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 8},/obj/structure/cable{icon_state = "1-2"},/turf/simulated/floor/tiled,/area/stellardelight/deck3/portdock) +"XD" = (/obj/structure/cable/green{icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 1},/obj/structure/sign/warning/evac{pixel_x = -32},/obj/effect/landmark{name = "lightsout"},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 8},/turf/simulated/floor/tiled,/area/stellardelight/deck3/starboarddock) +"XE" = (/obj/machinery/door/firedoor/glass,/obj/structure/cable/green{icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/door/airlock/angled_bay/standard/glass/common{dir = 4; name = "Cryogenic Storage"},/turf/simulated/floor/tiled/steel_ridged,/area/stellardelight/deck3/cryo) +"XF" = (/obj/structure/lattice,/obj/structure/cable{icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/turf/simulated/open,/area/stellardelight/deck2/central) +"XG" = (/obj/structure/bed/chair{dir = 4},/turf/simulated/floor/carpet/tealcarpet,/area/crew_quarters/heads/cmo) +"XH" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/structure/cable/green{icon_state = "2-8"},/obj/structure/cable/green{icon_state = "4-8"},/turf/simulated/open,/area/crew_quarters/bar) +"XI" = (/obj/structure/cable/green{icon_state = "1-8"},/turf/simulated/floor/tiled/techfloor/grid,/area/maintenance/stellardelight/deck3/foreportroomb) +"XJ" = (/obj/machinery/power/apc/angled{dir = 8},/obj/structure/cable/blue,/turf/simulated/floor/tiled/dark,/area/lawoffice) +"XK" = (/turf/simulated/wall/bay/r_wall/blue,/area/ai_server_room) +"XO" = (/obj/machinery/computer/security,/obj/machinery/status_display{pixel_y = 32},/turf/simulated/floor/tiled/dark,/area/crew_quarters/heads/hos) +"XT" = (/obj/structure/cable/green{icon_state = "1-2"},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portfore) +"XV" = (/obj/structure/cable/green{icon_state = "4-8"},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/foreportroomb) +"XX" = (/obj/machinery/holoplant,/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/turf/simulated/floor/tiled/techfloor/grid,/area/tcommsat/computer) +"XY" = (/obj/structure/cable/green{icon_state = "1-2"},/obj/structure/frame,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/foreportrooma) +"XZ" = (/obj/machinery/door/firedoor/glass,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 10},/obj/machinery/door/airlock/angled_bay/external/glass{frequency = 1380; id_tag = null; locked = 1; name = "Docking Port Airlock"},/obj/effect/map_helper/airlock/door/int_door,/obj/machinery/access_button{command = "cycle_interior"; dir = 1; frequency = 1380; master_tag = "sd_escape_center_left"; pixel_x = -32; req_one_access = list(13)},/turf/simulated/floor/tiled/steel_ridged,/area/stellardelight/deck3/aft) +"Yb" = (/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 4; frequency = 1379; id_tag = "portmaint_airpump"},/obj/machinery/light/small{dir = 1},/turf/simulated/floor/airless,/area/maintenance/stellardelight/deck3/portcent) +"Yc" = (/obj/structure/cable/green{icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 1},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"Yd" = (/obj/structure/cable/green{icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portaft) +"Yg" = (/turf/simulated/wall/bay/r_wall/steel,/area/maintenance/stellardelight/deck3/portaft) +"Yj" = (/obj/structure/girder/displaced,/turf/simulated/floor/tiled/techfloor/grid,/area/maintenance/stellardelight/deck3/forestarroomb) +"Yk" = (/obj/structure/cable/green{icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portcent) +"Yl" = (/obj/structure/cable/green{icon_state = "2-8"},/obj/structure/cable/green{icon_state = "1-2"},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portfore) +"Ym" = (/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 1},/turf/simulated/floor/airless,/area/maintenance/stellardelight/deck3/portcent) +"Yo" = (/obj/structure/bed/chair/office/dark{dir = 4},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/aftstarroom) +"Yp" = (/obj/machinery/button/remote/blast_door{desc = "A remote control-switch for shutters."; id = "cafe"; name = "Cafe Shutters"; pixel_y = 28; req_one_access = list(25)},/turf/simulated/floor/lino,/area/stellardelight/deck3/cafe) +"Ys" = (/obj/machinery/embedded_controller/radio/airlock/airlock_controller{dir = 4; id_tag = "starmaint_airlock"; pixel_x = -24; req_access = null; req_one_access = list(13); tag_airpump = "starmaint_airpump"; tag_chamber_sensor = "starmaint_sensor"; tag_exterior_door = "starmaint_exterior"; tag_interior_door = "starmaint_interior"},/turf/simulated/floor/airless,/area/maintenance/stellardelight/deck3/starboardcent) +"Yu" = (/obj/structure/cable/green{icon_state = "1-2"},/obj/structure/closet/crate,/obj/random/contraband,/obj/random/maintenance/research,/obj/random/maintenance/research,/obj/random/maintenance/research,/obj/random/maintenance,/obj/random/maintenance,/obj/random/maintenance,/obj/random/mre,/obj/random/snack,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portfore) +"Yv" = (/obj/machinery/light_switch{dir = 4; pixel_x = -25},/turf/simulated/floor/tiled,/area/crew_quarters/heads/hop) +"Yw" = (/obj/structure/lattice,/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/turf/simulated/open,/area/stellardelight/deck2/port) +"Yx" = (/obj/structure/closet/emcloset,/obj/random/maintenance/cargo,/obj/random/maintenance/cargo,/obj/random/maintenance/clean,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/starboardcent) +"Yy" = (/obj/structure/lattice,/obj/structure/cable{icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/open,/area/stellardelight/deck2/starboard) +"Yz" = (/turf/simulated/wall/bay/r_wall/steel,/area/maintenance/stellardelight/deck3/portcent) +"YA" = (/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 9},/obj/structure/cable{icon_state = "1-2"},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"YB" = (/obj/structure/cable/blue{icon_state = "1-2"},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/forestarroomb) +"YC" = (/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = 24},/obj/structure/closet/secure_closet/RD,/obj/item/device/aicard,/obj/item/clothing/glasses/omnihud/rnd,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/item/device/retail_scanner/science,/turf/simulated/floor/tiled/techfloor,/area/crew_quarters/heads/hor) +"YD" = (/obj/structure/table/steel,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portfore) +"YE" = (/obj/structure/table/standard,/obj/random/soap,/obj/machinery/power/apc/angled{dir = 1},/obj/structure/cable/green{icon_state = "0-4"},/obj/machinery/light{dir = 8},/turf/simulated/floor/tiled,/area/holodeck_control) +"YH" = (/obj/item/modular_computer/console/preset/command,/obj/structure/sign/poster{dir = 8},/obj/machinery/newscaster{pixel_y = 28},/turf/simulated/floor/tiled,/area/crew_quarters/heads/chief) +"YJ" = (/obj/structure/cable/green{icon_state = "2-4"},/obj/structure/cable/green{icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portaft) +"YK" = (/obj/structure/window/reinforced{dir = 4; pixel_x = 4},/turf/simulated/open,/area/stellardelight/deck3/aft) +"YL" = (/obj/structure/table/reinforced,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/folder/blue_hop,/obj/item/weapon/pen,/obj/machinery/light,/turf/simulated/floor/tiled,/area/crew_quarters/heads/hop) +"YN" = (/turf/simulated/wall/bay/r_wall/steel,/area/stellardelight/deck3/portdock) +"YO" = (/obj/structure/cable/green{icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portaft) +"YQ" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/turf/simulated/floor/carpet/tealcarpet,/area/crew_quarters/heads/cmo) +"YR" = (/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 8},/obj/structure/cable{icon_state = "1-2"},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"YS" = (/obj/structure/table/steel,/obj/random/coin/sometimes,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/aftstarroom) +"YU" = (/obj/structure/lattice,/turf/simulated/open,/area/crew_quarters/bar) +"Zd" = (/turf/simulated/wall/fancy_shuttle{fancy_shuttle_tag = "sdboat"},/area/shuttle/sdboat/aft{base_turf = /turf/simulated/floor/reinforced/airless}) +"Ze" = (/turf/simulated/floor/bluegrid{name = "Mainframe Base"; nitrogen = 100; oxygen = 0; temperature = 80},/area/tcommsat/chamber) +"Zf" = (/obj/structure/cable/green{icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portcent) +"Zi" = (/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 4},/obj/effect/floor_decal/steeldecal/steel_decals4{dir = 4},/obj/effect/floor_decal/shuttles/right,/obj/structure/cable{icon_state = "1-2"},/turf/simulated/floor/tiled,/area/stellardelight/deck3/portdock) +"Zj" = (/obj/structure/bed/chair,/obj/machinery/status_display{pixel_y = 32},/obj/effect/floor_decal/steeldecal/steel_decals5{dir = 1},/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"Zk" = (/obj/machinery/light/small{dir = 8},/obj/structure/cable/green{icon_state = "1-2"},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portfore) +"Zl" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/open,/area/stellardelight/deck2/port) +"Zm" = (/obj/structure/cable/blue{icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/light_switch{dir = 4; pixel_x = -24; pixel_y = 29},/turf/simulated/floor/tiled/techfloor/grid,/area/ai_cyborg_station) +"Zn" = (/obj/structure/bed/chair,/turf/simulated/floor/tiled/techfloor/grid,/area/maintenance/stellardelight/deck3/foreportrooma) +"Zp" = (/obj/machinery/light/small{dir = 4},/obj/structure/cable/green{icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portcent) +"Zt" = (/obj/structure/lattice,/obj/structure/cable{icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/open,/area/stellardelight/deck2/central) +"Zu" = (/obj/effect/floor_decal/spline/plain{dir = 6},/obj/structure/table/bench/marble,/turf/simulated/floor/lino,/area/stellardelight/deck3/cafe) +"Zw" = (/obj/machinery/porta_turret/ai_defense,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 9},/turf/simulated/floor/bluegrid,/area/ai) +"ZB" = (/obj/machinery/alarm/angled{dir = 4},/turf/simulated/floor,/area/maintenance/stellardelight/deck3/portaft) +"ZC" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 8},/turf/simulated/open,/area/stellardelight/deck2/starboard) +"ZE" = (/obj/structure/cable/green{icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/machinery/hologram/holopad,/turf/simulated/floor/tiled,/area/stellardelight/deck3/aft) +"ZF" = (/obj/structure/bed/chair{dir = 8},/turf/simulated/floor/carpet/oracarpet,/area/crew_quarters/heads/chief) +"ZH" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 1},/obj/structure/cable/green{icon_state = "1-2"},/obj/machinery/hologram/holopad,/turf/simulated/floor/tiled,/area/stellardelight/deck3/starboarddock) +"ZK" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled/monotile,/area/stellardelight/deck3/commandhall) +"ZL" = (/obj/machinery/door/firedoor/glass,/obj/structure/window/bay/reinforced,/obj/machinery/door/blast/angled/open{dir = 4; id = "readingroom3"},/obj/structure/low_wall/bay/reinforced/steel,/turf/simulated/floor,/area/stellardelight/deck3/readingroom) +"ZM" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/structure/cable/green{icon_state = "4-8"},/turf/simulated/open,/area/stellardelight/deck2/starboard) +"ZN" = (/obj/item/device/radio/intercom{dir = 4; pixel_x = 24},/turf/simulated/floor/tiled/techfloor/grid,/area/ai) +"ZQ" = (/obj/machinery/door/firedoor/glass,/obj/structure/window/bay/reinforced,/obj/structure/low_wall/bay/reinforced/steel,/turf/simulated/floor,/area/maintenance/stellardelight/deck3/forestarrooma) +"ZS" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 8},/turf/simulated/open,/area/stellardelight/deck2/port) +"ZV" = (/obj/machinery/door/firedoor/glass,/obj/structure/window/bay/reinforced,/obj/machinery/door/blast/angled/open{dir = 4; id = "readingroom1"},/obj/structure/low_wall/bay/reinforced/steel,/turf/simulated/floor,/area/stellardelight/deck3/readingroom) +"ZX" = (/obj/machinery/light{dir = 8},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/turf/simulated/floor/tiled/techfloor/grid,/area/ai_upload) +"ZZ" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/green{icon_state = "1-2"},/turf/simulated/floor,/area/stellardelight/deck2/fore) (1,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -CO -Te -"} -(2,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(3,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(4,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(5,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(6,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(7,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(8,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(9,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(10,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(11,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(12,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(13,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(14,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(15,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(16,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(17,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(18,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(19,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -El -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(20,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(21,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(22,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -mf -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(23,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -El -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(24,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(25,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(26,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(27,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(28,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(29,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -El -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(30,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -El -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -El -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(31,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(32,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(33,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(34,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(35,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -zk -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(36,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -El -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Es -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(37,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(38,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -NL -NL -NL -NL -NL -NL -NL -NL -NL -NL -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -NL -NL -NL -NL -NL -NL -NL -NL -NL -NL -NL -NL -NL -NL -NL -NL -Jh -Jh -NL -NL -NL -NL -NL -NL -NL -NL -NL -NL -NL -Jh -Jh -zk -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(39,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -NL -NL -NL -NL -NL -NL -NL -NL -NL -NL -NL -NL -NL -NL -Jh -Jh -Jh -Jh -Jh -Jh -Jh -NL -NL -NL -NL -TE -NL -NL -NL -NL -NL -NL -NL -TE -NL -NL -NL -NL -NL -SK -SK -NL -NL -TE -NL -NL -NL -NL -NL -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(40,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -FH -af -af -af -yd -NL -NL -NL -NL -NL -NL -NL -NL -NL -NL -NL -NL -NL -NL -NL -NL -NL -NL -NL -NL -NL -Jh -Jh -Jh -NL -NL -NL -NL -NL -Ae -NL -NL -NL -NL -NL -NL -NL -Ae -NL -NL -NL -NL -NL -NL -Jh -Jh -NL -Ae -NL -NL -NL -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(41,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -NL -NL -Ae -NL -TE -NL -NL -NL -NL -NL -NL -NL -TE -NL -NL -NL -NL -NL -NL -NL -NL -TE -NL -SK -SK -SK -NL -NL -NL -NL -NL -NL -Ae -NL -NL -NL -NL -NL -NL -NL -Ae -NL -NL -NL -un -af -af -af -af -af -eX -NL -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(42,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -ko -af -ew -af -af -af -af -af -Rx -af -ew -af -af -af -af -af -af -af -af -ew -af -af -af -af -af -af -af -af -af -af -ew -af -af -af -af -af -af -af -ew -af -af -af -Wd -NL -NL -NL -NL -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(43,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -NL -NL -NL -NL -NL -un -af -af -af -af -af -af -af -af -VM -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -NL -NL -NL -NL -NL -NL -Ae -NL -NL -NL -NL -NL -NL -NL -NL -NL -NL -Jh -Jh -Jh -NL -NL -NL -NL -NL -NL -NL -NL -NL -Se -pT -pT -pT -pT -pT -pT -pT -pT -pT -pT -bp -yW -yW -yW -yW -dB -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(44,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -NL -NL -NL -NL -NL -NL -Ae -NL -NL -NL -NL -NL -NL -NL -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -El -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -NL -NL -NL -NL -Ae -NL -NL -NL -NL -NL -NL -NL -NL -NL -SK -SK -SK -NL -NL -NL -NL -NL -NL -NL -NL -NL -NL -Iz -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -IK -Jh -NL -NL -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(45,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -NL -NL -NL -NL -NL -NL -TE -Ae -NL -NL -NL -NL -NL -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -NL -NL -Ae -NL -NL -NL -NL -NL -NL -NL -NL -NL -SK -SK -NL -NL -NL -NL -NL -NL -NL -NL -NL -NL -NL -Iz -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -IK -SK -NL -NL -NL -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(46,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -NL -NL -NL -NL -NL -NL -NL -Uw -eX -NL -NL -NL -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -NL -Ae -NL -NL -NL -NL -NL -NL -NL -NL -Jh -Jh -Ii -Ii -Ii -Ii -Ii -Ii -Ii -Ii -Ii -Ii -Ii -Ii -Iz -sM -sM -sM -sM -sM -sM -Ia -Zd -Zd -Vh -gi -gi -Qh -hg -sM -IK -SK -NL -NL -NL -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(47,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -FH -gw -af -af -af -af -af -af -Wd -NL -NL -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Ae -SK -NL -NL -NL -Jh -SK -SK -Jh -Jh -Jh -Ii -qz -qz -qz -qz -qz -qz -qz -qz -qz -qz -Ii -hk -eJ -WK -WK -WK -dQ -Zd -Zd -Zd -Wn -BW -lc -ui -EX -NS -sM -IK -Jh -NL -NL -NL -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(48,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Ae -SK -Jh -Jh -Jh -Jh -Jh -Ae -SK -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -SK -Ae -Jh -NL -NL -NL -Jh -Jh -SK -SK -Jh -Jh -Ii -qz -qz -qz -qz -qz -qz -qz -qz -qz -qz -Ii -Iz -WK -WK -Kj -WK -gl -RY -aP -Zd -rX -MX -fg -Zd -Zd -Zd -sM -IK -Jh -NL -NL -NL -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(49,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -kP -mQ -Va -kP -mQ -mQ -kP -kP -kP -Va -kP -mQ -mQ -kP -kP -mQ -mQ -kP -mQ -mQ -kP -mQ -mQ -kP -Yz -Yz -Yz -NL -NL -TE -NL -Yg -Yg -Yg -Yg -ki -ki -Yg -Yg -Yg -Yg -Yg -Yg -vq -Yg -Yg -Yg -Yg -Yg -Yg -Yg -ki -ki -Yg -Ii -qz -qz -qz -qz -qz -qz -qz -qz -qz -qz -Ii -Iz -be -wr -Bb -SJ -Vw -Vw -Vw -Rw -cn -iw -zS -Zd -xL -sM -sM -IK -Jh -NL -NL -NL -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(50,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -kP -kP -Dp -KQ -XT -Kg -iz -Ws -Yu -Zk -Yl -XT -XT -XT -XT -XT -XT -XT -Ji -XT -XT -XT -XT -XT -UL -My -Ei -Yz -NL -NL -Ae -NL -Yg -vA -dE -DT -dM -bd -NE -nV -ZB -dE -NR -dE -hd -dE -dE -dE -dE -dE -fP -HY -ed -Bm -JW -Ii -qz -qz -qz -qz -qz -qz -qz -qz -qz -qz -Ii -Iz -be -Wj -ya -Pl -LO -LO -LO -lB -hR -MX -kZ -wZ -mv -sM -sM -IK -Jh -NL -TE -NL -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(51,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -NL -NL -NL -NL -SK -Jh -Jh -mQ -sX -cK -XT -XT -pf -Ns -Ns -Ns -rW -Ns -eF -IP -YD -bC -ms -Ns -Ns -Hk -Ns -Ns -Ns -Ns -Ns -KW -OX -Sz -Yz -Yz -NQ -ma -Yz -Yz -YJ -xT -xT -xT -xT -xT -xT -oM -xT -BZ -xT -IN -xi -dE -dE -Lo -dE -Sw -dE -dE -dE -dE -LS -qz -qz -qz -qz -qz -qz -qz -qz -qz -qz -Ii -Iz -be -jc -Ex -SJ -Vw -Vw -Vw -Zd -Rw -sa -Zd -PB -xL -sM -sM -IK -Jh -NL -Ae -NL -Jh -Jh -Jh -El -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(52,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -NL -un -VM -un -af -af -af -kQ -kQ -HO -Jn -hD -RL -xI -Xl -RL -RL -RL -RL -RL -Xl -Xl -RL -zX -ZL -ZL -zX -wt -wt -zX -ZV -ZV -zX -Hm -Sz -Yz -Yb -Od -Fy -gc -NK -YO -FG -Yg -Yg -Yg -Yg -Yg -Yg -Yg -Yg -Yg -Yg -LT -Yg -Yg -Yg -Yg -Yg -Yg -Yg -Yg -Ii -Ii -qz -qz -qz -qz -qz -qz -qz -qz -qz -qz -Ii -hk -WK -WK -mh -WK -gl -Ir -Wg -Zd -ri -vX -Ww -UD -Zd -Zd -sM -IK -Jh -NL -Ae -NL -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(53,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -NL -NL -Uw -af -eX -Jh -Jh -hD -hD -nO -PV -MP -hD -zt -dL -xP -pN -pN -zp -cH -pN -nv -yY -zt -zX -At -qC -zX -At -qC -zX -At -qC -zX -uJ -Sz -yR -Ym -VR -GF -QS -rp -LD -FS -Yg -oW -CS -oW -oW -oW -Nd -oW -oW -oW -Ju -oW -oW -oW -oW -QF -oW -Wl -CS -Ii -Qu -qz -qz -qz -qz -qz -qz -qz -qz -qz -qz -Ii -Iz -mi -WK -WK -WK -dQ -Zd -Zd -Zd -AD -Qe -xf -RW -Ke -NS -sM -Di -af -af -eX -NL -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(54,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -NL -NL -NL -Ae -NL -Jh -Jh -hD -hD -cZ -il -il -Sp -hD -VD -JY -xP -pN -xP -hj -ey -pN -xP -kV -EH -zX -md -QK -zX -Co -QK -zX -he -QK -zX -bl -op -Yz -Fm -zw -IY -EI -Yz -Yd -cp -Yg -CS -Yw -uf -uf -uf -Mk -uf -uf -uf -zH -qP -qP -qP -qP -jL -qP -qP -IH -Ii -Ii -qz -qz -qz -qz -qz -qz -qz -qz -qz -qz -Ii -Iz -sM -sM -sM -sM -sM -sM -Ia -Zd -Zd -kz -gi -gi -vr -Zd -sM -IK -SK -NL -NL -NL -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -El -Jh -Jh -Jh -Jh -Jh -Jh -"} -(55,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -NL -NL -NL -NL -Ae -NL -Jh -hD -hD -FW -DY -XY -XY -LJ -hD -gj -fh -nX -rj -Jc -Ij -XI -pN -xP -xP -yY -zX -uU -zX -zX -NJ -zX -zX -lU -zX -zX -oI -Sz -Yz -yR -Yz -Yz -yR -Yz -GS -nw -Yz -oW -xd -oW -oW -oW -ZS -oW -oW -oW -hG -oW -oW -oW -oW -ZS -oW -Eu -NI -IO -Ii -qz -qz -qz -qz -qz -qz -qz -qz -qz -qz -Ii -dh -PT -PT -PT -PT -PT -PT -PT -et -YN -BA -YN -Hu -PT -PT -PT -En -Jh -NL -NL -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(56,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -NL -un -VM -NL -un -eX -SK -SK -hD -Uc -il -il -WM -OF -il -hD -pN -XV -pN -pN -xP -hj -xP -pN -pN -pN -pN -yZ -KI -KI -GH -KI -oE -KI -KI -qx -zX -tp -eh -gA -sN -MR -VK -Zf -MR -fG -bP -Yz -oW -xd -oW -ad -ad -ad -ad -ad -ad -ad -ad -ad -qq -qq -qq -qq -qq -qq -GV -Ii -qz -qz -qz -qz -qz -qz -qz -qz -qz -qz -Ii -NL -NL -NL -NL -NL -NL -NL -NL -qL -ai -Mo -ai -qL -NL -NL -NL -Ae -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(57,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -El -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Go -af -af -eX -Jh -Jh -Jh -hD -Xv -Uq -og -og -Uq -il -hD -pN -XV -pN -pN -pN -NG -pN -pN -pN -pN -MZ -zX -DO -qg -Lm -Af -Bd -Am -yq -xv -HQ -Zp -Yk -RM -WQ -OX -Sz -cS -Hm -SD -SD -Yz -oW -xd -oW -ad -qn -bZ -Ze -UK -kw -lx -Oj -Ht -uB -Oe -HX -su -XX -qq -NN -Ii -Ii -Ii -Ii -Ii -Ii -Ii -Ii -eP -Ii -Ii -Ii -YN -ai -ai -YN -ai -ai -ai -YN -YN -YN -ss -YN -YN -NL -NL -NL -Ae -NL -NL -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(58,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Ae -Jh -SK -Jh -Jh -Jh -Jh -SR -WL -Zn -DM -pk -WI -FY -hD -DC -lh -DC -DC -DC -DC -DC -DC -DC -DC -DC -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -zX -Yz -Yz -Yz -Yz -Yz -Cf -Yz -Yz -Yz -Yz -Yz -Xf -ob -BL -ad -jE -cm -Ze -kc -Ze -lE -hw -sK -zn -kF -Fv -Uf -GD -qq -lv -oV -Of -cu -Hd -HH -lm -Ii -YE -NT -ao -Ii -Og -JR -mX -mX -Nk -XC -Hg -KT -uk -KL -IR -Sn -UV -YN -NL -NL -NL -Ae -TE -NL -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(59,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -NL -ko -yd -NL -Jh -Jh -Jh -SK -SR -Sh -Zn -zQ -DM -WI -il -hD -ne -vF -qF -qF -qF -qF -qF -Cb -qF -qF -qF -qF -Cp -qF -qF -qF -Mv -qF -qF -qF -iQ -wa -oW -QF -oW -dT -hY -Wl -oW -QF -oW -oW -oW -xd -oW -ad -Ze -cW -gU -ks -qn -Ze -Ze -Ee -uB -uB -uB -xz -pW -qq -ck -kr -Rv -Rv -eN -Rv -iW -Tf -im -zI -qN -yF -la -Vc -ST -ST -ST -jV -TW -pC -PD -dw -Or -mb -Eg -hN -yW -yW -yW -tK -tK -yW -yW -yW -yW -yW -yW -dB -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(60,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -NL -NL -Ae -Jh -Jh -Jh -SK -SK -SR -qM -Uq -Pq -Pq -Uq -Xv -hD -zW -lj -qi -qi -qi -qi -qi -Xe -qi -qi -qi -qi -kO -qi -qi -qi -Xe -qi -qi -qi -qi -DD -rS -jT -rS -rS -Ft -Ig -Ig -Mk -Ig -Ig -Ig -Cz -gY -ad -Ze -cY -gW -Dy -gU -lH -qn -sK -zn -tW -zn -xB -pW -qq -Gf -Sf -pc -pc -Wx -Wx -WU -xW -yt -CP -It -oO -Zi -ek -Nq -Nq -BV -YN -qe -YN -vI -Nq -Nq -Nq -Tc -YN -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -IK -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(61,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -NL -Jh -Ae -Jh -Jh -SK -SK -SK -hD -HR -qM -xb -Oo -Xv -Xv -hD -Hf -Ie -tV -qF -qF -qF -qF -sJ -qF -qF -qF -qF -Cp -qF -qF -qF -sJ -qF -qF -qF -qF -wa -oW -ZS -oW -oW -Pm -oW -oW -ZS -oW -oW -oW -Zl -oW -ad -QC -el -Ze -li -rs -mC -Dy -uv -EL -uw -OC -yc -Lh -qq -Cu -pc -pc -ER -ag -Qn -Qn -Ed -jP -pK -Mx -YN -YN -YN -ai -ai -YN -YN -CD -YN -YN -ai -ai -ai -YN -YN -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -IK -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(62,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -SK -Jh -Ae -Jh -SK -SK -SK -Qp -Qp -Qp -Qp -Qp -Qp -Qp -Qp -Qp -qF -gG -qF -cb -cb -cb -cb -cb -cb -cb -zN -zN -zN -zN -zN -zN -WO -WO -WO -WO -WO -WO -nW -Oz -Oz -nW -nj -nW -Oz -Oz -nW -nW -sx -He -sx -ad -Ze -eC -Rd -Dy -ib -nm -qn -kb -zn -Bl -zn -yE -pW -qq -ME -UI -aX -ei -ah -RI -RI -Ed -wP -ZE -Kf -Ed -hf -sM -sM -sM -sM -YN -tR -YN -sM -sM -sM -sM -sM -hf -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -IK -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(63,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -SK -Jh -gJ -af -af -af -eI -Qp -qp -qp -qp -qp -qp -qp -qp -Qp -Cp -CU -Cp -cb -YH -SB -Ha -BM -EE -cb -ub -hc -gL -UH -OD -zN -Jd -Mg -BY -rl -bj -WO -fd -Gg -eU -JZ -pp -Qi -qc -nF -LK -nW -nx -mg -nx -ad -Ze -eK -ib -lo -qQ -Sm -Sm -tL -zn -zn -zn -zY -DP -qq -XK -XK -XK -XK -XK -XK -XK -XK -Wf -tg -Mx -Ed -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -IK -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(64,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -SK -NL -Ae -TE -NL -Jh -fs -Xc -Dd -DH -YU -YU -YU -OP -ca -Qp -qF -gG -qF -cb -IC -Qf -hX -hX -JU -cb -XO -xS -BH -BH -tO -zN -Bq -xM -xY -xY -ka -WO -si -rL -eU -Lw -Bt -xZ -mr -gk -zE -Oz -nx -mg -nx -ad -jE -fk -Ze -lw -MO -nC -px -sK -zn -cc -iL -Aq -dy -oY -zD -RZ -uZ -TY -Xo -dn -CG -XK -cx -pK -Mx -Ed -SC -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -IK -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(65,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -un -af -Hx -eX -Jh -Jh -CA -qp -qp -kU -qp -qp -qp -NF -qp -Qp -qF -gG -qF -cb -NO -Ud -EY -hX -GW -cb -UT -nH -gb -BH -dH -zN -Js -Ml -SA -xY -yI -WO -JE -lD -jm -Wt -hb -xZ -xZ -xZ -nz -Oz -Wp -XA -lY -ad -qn -gh -Ze -eo -qU -oA -pY -sl -zn -cO -vN -AS -dV -qq -TM -VW -nS -Fh -fb -Fh -Dh -XK -nZ -AY -Qx -Ed -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -IK -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(66,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -NL -Ae -SK -Jh -Jh -Jh -Jh -CA -qp -qp -kU -qp -qp -qp -NF -qp -Qp -ba -Ie -tV -cb -gy -ZF -ns -fa -Vr -cb -Et -wq -dD -dY -MN -zN -EO -Lv -hu -hu -bO -WO -Yp -rL -eU -Lw -Xi -xZ -xZ -xZ -xZ -Oz -nx -jY -nx -sc -sc -sc -sc -sc -sc -sc -sc -sc -sc -sc -sc -sc -sc -sc -Bj -xe -Fh -Fh -DL -GU -Ov -XK -Zj -Yc -tG -gM -BB -BB -VS -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -IK -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(67,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -NL -NL -ko -yd -NL -Jh -Jh -Jh -CA -qp -qp -kU -qp -qp -qp -NF -qp -Qp -qF -gG -qF -cb -kl -AP -Ve -ve -vf -cb -Pe -pO -UB -Ba -mD -zN -FC -yC -dZ -jl -at -WO -Oy -bY -eU -Lw -Xi -xZ -zE -WD -nk -nW -nx -jY -Tx -sc -wS -gQ -iK -KH -KY -QG -eg -QG -QG -np -nM -uI -wS -sc -XK -XK -MJ -uQ -Qm -Nm -Iu -XK -lt -wg -Sl -Oq -Oq -Ky -TA -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -IK -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(68,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -NL -NL -FH -ew -yd -NL -SK -SK -Qp -YU -YU -XH -Dd -Dd -Dd -OQ -Dd -Ta -ZZ -mm -sO -cb -Hs -Hs -jn -Hs -Hs -cb -GQ -GQ -Fg -GQ -GQ -zN -DV -dU -Tv -dU -dU -WO -gq -HB -HB -Zu -vh -rg -ea -Cd -SU -nW -zz -sz -RX -sc -bK -gS -iR -Rc -Qs -TK -Ga -eu -xh -kB -rZ -nd -sc -sc -Bk -XK -XK -XK -Ow -XK -XK -XK -CV -pK -Mx -Im -Im -Im -TA -Ed -Ed -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -Vz -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(69,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -NL -NL -NL -Ae -Jh -Jh -Jh -CA -qp -qp -US -qp -qp -qp -Vm -qp -Qp -Hq -bn -tV -rc -po -aQ -BK -aQ -aQ -sf -jO -aQ -BK -aQ -jK -eL -wV -bE -bE -bE -aQ -QT -Gj -xy -Tm -Tm -PL -Gj -ab -QB -QB -QB -rc -aM -Wy -sc -Vs -Vs -Vs -TL -Ol -Ol -qv -Ol -Ol -rN -MV -Cn -sc -AZ -bM -Ru -VC -wA -cw -ZX -UO -VC -TJ -dF -Mx -oq -oq -oq -XZ -BR -JA -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -IK -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(70,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -SK -Jh -Ae -Jh -Jh -Jh -CA -qp -qp -US -qp -qp -qp -Vm -UX -Qp -ne -bI -oX -vO -HW -xw -zb -tT -tT -tT -tT -zB -zb -tT -UG -wQ -EW -bE -bE -bE -aQ -bU -II -iy -Gj -Fr -Rl -Gj -ae -iV -iV -iV -vw -MF -AU -sc -bL -Vs -IQ -TL -Ol -oR -qA -HA -Ol -IU -IQ -gN -Jz -Pj -zi -Gh -JP -JQ -KS -Fe -ht -is -dj -vv -Ou -oq -oq -JS -Ed -Ed -Ed -Cx -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -IK -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(71,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -NL -NL -NL -Ae -Jh -Jh -Jh -CA -qp -qp -US -qp -qp -qp -Vm -qp -Qp -Hf -gO -qF -rc -tJ -aQ -xU -aQ -aQ -Aw -Lz -aQ -BK -aQ -SZ -Kw -iI -bE -bE -bE -aQ -QT -nt -iy -Nf -SQ -TF -Gj -TO -Vq -WH -yb -iE -vt -Ki -sc -Vs -Vs -Vs -TL -Ol -Ol -rB -Ol -Ol -mA -sr -HS -sc -AZ -rb -fv -VC -LC -zg -hK -tz -VC -PE -MC -Mx -oq -oq -oq -os -ou -QJ -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -IK -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(72,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -NL -NL -FH -Rx -eX -NL -SK -SK -Qp -YU -YU -ja -oP -oP -oP -Fb -oP -dN -UA -Fj -gx -EJ -rx -rx -Bz -rx -rx -EJ -nP -nP -ev -nP -nP -uj -DV -dU -Tv -dU -dU -WO -in -bg -in -in -yJ -ZK -ZK -QE -WN -fS -zz -RT -RX -sc -TL -Vs -rZ -IQ -Jg -GP -GP -GP -GP -Zw -TI -lQ -sc -sc -Bs -XK -th -th -ci -th -th -th -pB -pK -Mx -Im -Im -Ko -TA -Ed -Ed -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -gB -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(73,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -NL -NL -un -eX -NL -Jh -Jh -Jh -CA -qp -qp -iN -qp -qp -qp -jC -qp -Qp -qF -mj -qF -EJ -To -pd -mI -OV -SP -EJ -pV -DI -BQ -Fc -Br -uj -PC -XJ -fT -rw -at -WO -AX -cP -Yv -in -xg -Rn -Rn -PJ -Rn -in -nx -XF -Tx -sc -wS -us -VG -NP -bs -Vs -IQ -wG -Vs -tq -ZN -TL -wS -sc -th -th -OS -Tr -Zm -iJ -nN -th -Ff -EF -xA -cs -cs -cA -TA -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -IK -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(74,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -NL -Ae -SK -Jh -Jh -Jh -Jh -CA -qp -qp -iN -qp -qp -qp -jC -qp -Qp -Hf -mp -tV -EJ -Xa -XG -YQ -yB -AE -EJ -YC -sA -MG -bx -KG -uj -Po -zo -hu -hu -bO -WO -CR -An -eD -in -Qo -ye -Uk -ij -Tj -in -nx -XF -nx -sc -sc -sc -sc -sc -sc -sc -sc -sc -sc -sc -sc -sc -sc -sc -SL -Tr -wN -wN -bQ -zM -PW -th -Zj -Yc -tG -gM -BB -BB -yj -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -IK -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(75,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -ko -af -mM -yd -Jh -Jh -CA -qp -qp -iN -qp -qp -qp -jC -qp -Qp -qF -mj -qF -EJ -VE -PR -hp -vi -Tp -EJ -Xm -ol -mO -tZ -Gi -uj -pm -gE -Wq -xY -yI -WO -ky -Ms -kT -yM -MI -iP -rA -DN -YL -in -Wp -HZ -lY -sc -wS -KM -dS -MK -Wi -sc -vT -QI -yV -oN -uc -ty -Az -th -lu -wN -Ds -qK -FU -qd -Lx -th -nZ -oy -Qx -Ed -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -IK -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(76,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -SK -NL -Ae -Op -NL -Jh -Qp -qp -qp -iN -qp -qp -qp -jC -qp -Qp -qF -mj -qF -EJ -lk -Gl -vi -vi -FM -EJ -Jv -Ot -tZ -tZ -uV -uj -Bq -WW -xY -xY -ka -WO -Tl -Wa -wY -in -fO -yo -yo -yo -aK -in -nx -Zt -nx -sc -pA -aj -Dw -Ce -Ce -VQ -an -an -an -kX -eS -QL -eS -sb -oT -HN -Kx -pS -yp -nN -nN -th -ys -pK -Mx -Ed -SC -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -IK -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(77,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -SK -Jh -Ae -NL -NL -NL -Qp -Qp -bV -eV -qp -qp -qp -gg -qp -Qp -Cp -na -Cp -EJ -oD -GR -VB -Jj -FO -EJ -jM -gs -zv -hU -sC -uj -OK -Aj -SE -Hv -bj -WO -jD -kN -jh -in -zm -Il -do -aH -qZ -in -nx -Zt -nx -sc -wS -tn -lP -st -tX -sc -KU -bW -JO -vS -JJ -NW -WX -th -th -th -th -th -th -th -th -th -Hw -pK -Mx -Ed -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -IK -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(78,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -SK -Jh -Ae -Jh -SK -SK -SK -Qp -Jx -am -Jx -Jx -Jx -Jx -Jx -Jx -qF -mj -qF -EJ -EJ -EJ -EJ -EJ -EJ -EJ -uj -uj -uj -uj -uj -uj -WO -WO -WO -WO -WO -WO -in -in -in -in -Tk -Rn -Rn -in -in -in -sx -bT -sx -sc -sc -sc -sc -sc -sc -sc -Xr -sI -wv -CT -RQ -Sk -hF -th -qX -nL -Gv -kt -ak -RI -RI -Ed -Uy -Pc -PA -Ed -Oc -sM -sM -sM -sM -uq -Vo -uq -sM -sM -sM -sM -sM -Oc -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -IK -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(79,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -NL -Jh -Ae -Jh -Jh -SK -SK -SK -Jx -mR -aS -pE -Ib -Sb -WF -Jx -Hf -mp -tV -qF -qF -qF -qF -IV -qF -qF -qF -qF -Oa -qF -qF -qF -IV -qF -qF -qF -qF -aJ -ow -OE -ow -ow -Nh -ow -ow -OE -ow -ow -ow -CJ -ie -th -ep -Mp -Uj -Hc -Tn -qO -HT -lL -HT -IG -Ax -th -th -th -SF -pc -pc -ER -ag -YK -YK -Ed -jP -pK -Mx -uq -uq -uq -jg -jg -uq -uq -rr -uq -uq -jg -jg -jg -uq -uq -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -IK -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(80,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -NL -NL -Ae -Jh -Jh -Jh -SK -SK -ZQ -mR -aS -Sb -eR -Sb -Ay -Jx -zW -Cw -sd -sd -sd -sd -sd -wy -sd -sd -sd -sd -Df -sd -sd -sd -wy -sd -sd -sd -sd -Rj -FL -aN -FL -FL -OI -eY -eY -WG -eY -eY -eY -hP -sn -pX -Lb -JK -fM -Ty -gH -th -Ax -th -th -ct -th -De -Le -TB -IZ -IZ -IZ -IZ -YR -YR -xO -gV -YA -MU -vG -BJ -LI -kW -Kb -Kb -mq -uq -nB -uq -Ni -Kb -Kb -Kb -Kv -uq -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -IK -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(81,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -NL -un -eX -NL -Jh -Jh -Jh -SK -ZQ -mR -aS -Sb -bJ -Sb -aD -Jx -ne -gm -qF -qF -qF -qF -qF -ID -qF -qF -qF -qF -Cp -qF -qF -qF -KF -qF -qF -qF -hC -aJ -ow -wc -ow -yP -Ks -RG -ow -ZC -ow -ow -ow -CJ -ow -Gk -Gk -Gk -Gk -Gk -Gk -Gk -Gk -Gk -sQ -uT -wo -yH -jP -BC -en -en -en -en -cq -lJ -pb -GE -VN -Cy -SN -mo -pG -QZ -fW -fW -fW -ex -Ny -XD -df -sP -ZH -vo -Nx -HP -nh -nh -nh -GT -GT -nh -nh -nh -nh -nh -nh -FI -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(82,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Ae -Jh -SK -Jh -Jh -Jh -Jh -ZQ -Vi -pq -Ai -HV -Sb -aD -Jx -dx -qW -dx -dx -dx -dx -dx -dx -dx -dx -dx -dx -Ec -Ec -Ec -Ec -Ec -XB -XB -XB -Bp -me -me -me -me -me -Pd -me -me -me -me -me -xR -fE -eQ -Gk -dE -dE -dE -dE -dE -dE -dE -Gk -Ge -vb -xj -yH -WZ -LP -zy -PX -IW -RN -sU -EN -dr -Ed -Hi -Be -aG -uq -cy -Jo -vJ -vJ -vP -oU -hZ -xC -pl -lC -Dn -tb -LQ -uq -NL -NL -NL -Ae -Op -NL -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(83,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -vQ -af -af -yd -Jh -Jh -Jh -Jx -qs -aS -Sb -tF -Sb -Nz -Jx -ap -sR -FE -Ef -Ub -Yj -Yj -Ef -FE -Ps -eE -dx -ch -lV -zF -NZ -Ec -hO -Gm -yi -BF -Ev -Io -ut -Ts -Io -QP -xH -OG -mT -Yx -me -ow -CJ -ow -Gk -dE -dE -dE -dE -dE -dE -dE -Gk -tQ -Vt -wd -yH -Ed -Cc -Ed -aA -aA -aA -aA -Ro -OU -OU -OU -XE -OU -OU -OU -uq -jg -jg -uq -jg -jg -jg -uq -uq -uq -NX -uq -uq -NL -NL -NL -Ae -NL -NL -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(84,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -NL -ko -VM -NL -ko -yd -SK -SK -Jx -pL -KV -Sb -tF -Sb -AQ -Jx -FE -sR -FE -Ef -GB -Yj -Yj -Ef -FE -FE -uE -dx -ku -mF -Vk -zC -Ec -hr -al -ii -Bp -OM -bS -DZ -WA -WA -nu -WA -AH -zL -xH -me -ow -CJ -ow -Gk -Gk -Gk -Gk -Gk -Gk -MA -sZ -sZ -OA -OA -OA -cz -ow -ok -ow -aA -yw -bb -Ob -tH -OU -iC -iC -Nc -iC -iC -OU -NL -NL -NL -NL -NL -NL -NL -NL -Wu -jg -wm -jg -Wu -NL -NL -NL -Ae -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(85,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -NL -NL -NL -NL -Ae -NL -Jh -Jx -Jx -LV -Sb -xN -Sb -aS -Jx -Td -TS -YB -hz -hz -Vx -ac -Ef -FE -FE -UF -dx -uM -xp -xo -Jm -Ec -kp -bm -ii -Bp -rH -oC -me -aB -me -Ug -aB -me -hE -yf -me -ow -CJ -ow -ow -ow -OE -ow -ow -Lf -CH -ow -ow -ow -ow -OE -ow -ow -ok -ow -aA -wK -za -fz -jd -OU -rh -rh -uW -rh -rh -OU -Se -pT -pT -pT -pT -pT -pT -pT -iZ -uq -yS -uq -qE -pT -pT -pT -kk -Jh -NL -NL -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(86,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -NL -NL -NL -Ae -NL -Jh -Jh -Jx -Jx -sj -Ti -Nj -GJ -Jx -fD -sR -FE -Ef -Ef -ir -Ef -Ef -FE -Rg -FE -dx -Mr -Pp -ip -fj -Ec -RE -bh -RE -me -br -qf -me -dk -Ys -Hh -eb -tC -Rq -KJ -by -Pa -wR -Yy -Yy -Yy -kj -Yy -Yy -Yy -Ap -mS -mS -mS -mS -db -mS -mS -Rz -Vp -aA -RH -rn -FR -wW -OU -zJ -CY -cI -CY -kY -OU -Iz -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -IK -SK -NL -NL -NL -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(87,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -NL -NL -EV -af -yd -Jh -Jh -Jx -Jx -Mc -aS -em -Jx -Ue -sR -FE -Ef -Yj -OR -lA -Ef -FE -FE -ov -dx -Du -Xb -QW -DW -IS -bB -HL -bB -bB -bB -pt -aB -Mw -hy -ON -Xd -Ja -Ly -KJ -by -ow -Pa -ow -ow -ow -ZC -ow -ow -ow -uX -ow -ow -ow -ow -OY -yP -ow -ZM -ow -aA -ej -za -fz -Jk -OU -rm -uz -Eh -mn -Av -OU -Iz -sM -sM -sM -sM -sM -sM -sM -sM -sM -vE -sM -sM -sM -sM -sM -UR -af -af -yd -NL -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(88,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -NL -ko -VM -ko -af -af -af -Kr -Rh -Jx -du -Jx -EZ -yy -FD -EZ -EZ -EZ -EZ -EZ -EZ -FD -FD -EZ -CC -jy -jy -CC -CC -Vg -Vg -RE -RE -xH -DE -me -od -wM -SV -LR -me -tk -qS -by -by -by -by -by -by -by -by -by -by -Bg -by -by -by -by -by -by -by -ff -by -aA -nr -lT -gR -Px -OU -zr -zr -Vb -zr -zr -OU -hk -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -IK -Jh -NL -Ae -NL -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(89,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -NL -NL -NL -NL -SK -Jh -Jh -Vg -ym -QV -cL -zf -ul -zf -zf -zf -Ri -tc -DQ -DQ -DQ -DQ -DQ -UU -DQ -DQ -DQ -DQ -DQ -DQ -DQ -ez -xH -DE -me -me -xu -nf -me -me -Gq -ET -ET -uY -uY -As -if -mK -if -AT -if -if -Ne -iS -jo -Kz -Dk -qY -AK -Ld -KD -vy -aA -aA -aA -aA -aA -OU -oS -oS -Mi -oS -oS -OU -Iz -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -IK -Jh -NL -Ae -NL -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(90,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -RE -RE -Kq -TP -DQ -DQ -DQ -DQ -DQ -WB -TP -DQ -DQ -DQ -DQ -DQ -DQ -Mu -zA -Ln -Ln -Ln -Ln -Ln -RK -hB -In -me -NL -NL -qy -NL -by -Li -KJ -le -ww -ww -MB -Kt -iv -KJ -UQ -KJ -HF -nD -BG -LY -LY -LY -Gc -lF -Wr -MW -LY -pz -aw -aw -zV -jp -OU -OU -OU -OU -OU -OU -OU -Iz -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -IK -Jh -NL -Ae -NL -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(91,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -RE -Vg -hT -RE -Vg -Vg -RE -RE -RE -hT -RE -RE -Vg -Vg -RE -RE -RE -RE -RE -RE -Vg -Vg -RE -RE -me -me -me -NL -NL -we -NL -by -by -by -by -CK -CK -by -by -by -by -by -by -ur -by -by -by -by -by -by -by -CK -CK -by -hQ -lq -lq -rq -lq -lq -NU -lq -lq -lq -Kk -hQ -Iz -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -IK -Jh -NL -Op -NL -Jh -Jh -Jh -El -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(92,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -qy -SK -Jh -Jh -Jh -Jh -Jh -qy -SK -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -SK -Ae -Jh -NL -NL -NL -Jh -Jh -SK -SK -Jh -Jh -hQ -lq -lq -rq -lq -aa -Bn -lq -lq -Yo -MH -hQ -Iz -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -IK -Jh -NL -NL -NL -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(93,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -qb -Ox -xm -xm -xm -xm -xm -xm -TV -NL -NL -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Ae -SK -NL -NL -NL -Jh -SK -SK -Jh -Jh -Jh -hQ -uD -Qv -Al -VZ -tu -lq -nT -xE -YS -Ho -hQ -hk -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -IK -Jh -NL -NL -NL -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(94,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -NL -NL -NL -NL -NL -NL -NL -uH -OJ -NL -NL -NL -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -NL -Ae -NL -NL -NL -NL -NL -NL -NL -NL -Jh -Jh -hQ -hQ -hQ -hQ -hQ -hQ -hQ -hQ -hQ -hQ -hQ -hQ -Iz -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -IK -SK -NL -NL -NL -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(95,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -NL -NL -NL -NL -NL -NL -we -qy -NL -NL -NL -NL -NL -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -NL -NL -Ae -NL -NL -NL -NL -NL -NL -NL -NL -NL -SK -SK -NL -NL -NL -NL -NL -NL -NL -NL -NL -NL -NL -Iz -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -IK -SK -NL -NL -NL -Jh -Jh -zk -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(96,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -NL -NL -NL -NL -NL -NL -qy -NL -NL -NL -NL -NL -NL -NL -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -NL -NL -NL -NL -Ae -NL -NL -NL -NL -NL -NL -NL -NL -NL -SK -SK -SK -NL -NL -NL -NL -NL -NL -NL -NL -NL -NL -Iz -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -sM -IK -Jh -NL -NL -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(97,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -NL -NL -NL -NL -NL -EU -xm -xm -xm -xm -xm -xm -xm -xm -iY -Jh -Jh -Jh -Jh -Jh -Jh -El -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -NL -NL -NL -NL -NL -NL -Ae -NL -NL -NL -NL -NL -NL -NL -NL -NL -NL -Jh -Jh -Jh -NL -NL -NL -NL -NL -NL -NL -NL -NL -dh -PT -PT -PT -PT -PT -PT -PT -PT -PT -PT -va -nh -nh -nh -nh -FI -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(98,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -un -af -Rx -af -af -af -af -af -ew -af -Rx -af -af -af -af -af -af -af -af -Rx -af -af -af -af -af -af -af -af -af -af -Rx -af -af -af -af -af -af -af -Rx -af -af -af -LW -NL -NL -NL -NL -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(99,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -zk -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -NL -NL -Ae -NL -Op -NL -NL -NL -NL -NL -NL -NL -Op -NL -NL -NL -NL -NL -NL -NL -NL -Op -NL -SK -SK -SK -NL -NL -NL -NL -NL -NL -Ae -NL -NL -NL -NL -NL -NL -NL -Ae -NL -NL -NL -ko -af -af -af -af -af -yd -NL -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(100,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -FH -af -af -af -eX -NL -NL -NL -NL -NL -NL -NL -NL -NL -NL -NL -NL -NL -NL -NL -NL -NL -NL -NL -NL -NL -Jh -Jh -Jh -NL -NL -NL -NL -NL -Ae -NL -NL -NL -NL -NL -NL -NL -Ae -NL -NL -NL -NL -NL -NL -Jh -Jh -NL -Ae -NL -NL -NL -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(101,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -NL -NL -NL -NL -NL -NL -NL -NL -NL -NL -NL -NL -NL -NL -Jh -Jh -Jh -Jh -Jh -Jh -Jh -NL -NL -NL -NL -Op -NL -NL -NL -NL -NL -NL -NL -Op -NL -NL -NL -NL -NL -SK -SK -NL -NL -Op -NL -NL -NL -NL -NL -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(102,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -NL -NL -NL -NL -NL -NL -NL -NL -NL -NL -Jh -Jh -Jh -Jh -Jh -Jh -zk -Jh -Jh -Jh -NL -NL -NL -NL -NL -NL -NL -NL -NL -NL -NL -NL -NL -NL -NL -NL -Jh -Jh -NL -NL -NL -NL -NL -NL -NL -NL -NL -NL -NL -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(103,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(104,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -sE -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(105,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(106,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -El -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(107,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(108,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(109,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(110,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(111,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -El -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -El -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(112,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -El -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -El -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(113,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(114,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(115,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(116,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -El -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(117,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(118,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(119,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(120,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Lr -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(121,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(122,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(123,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(124,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(125,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(126,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(127,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(128,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(129,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(130,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(131,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(132,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(133,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(134,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(135,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(136,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(137,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(138,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(139,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -"} -(140,1,1) = {" -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh -Jh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhElJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhElJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhElJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhNLNLJhJhJhNLNLJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhNLNLNLNLJhNLNLNLNLJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhNLJhJhNLNLNLSKSKSKunAekoFHNLSKNLFHunAekoSKSKSKNLNLNLJhJhNLJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhNLunGoAekoNLJhJhJhNLafSKydewNLJhNLRxeXSKafNLJhJhJhNLunAevQkoNLJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhNLNLVMafJhydAeAeAegJAeHxJhNLydAeAeAeeXNLJhmMAeAeAeAeAeeXJhafVMNLNLJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhNLNLNLNLafSKNLJhJhJhafTEeXJhJhNLJhJhJhNLJhJhydOpNLJhJhJhNLSKafNLNLNLNLJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhNLNLNLNLuneXJhJhJhJhSKafNLJhJhJhSKJhJhJhSKJhJhJhNLNLSKJhJhJhJhydkoNLNLNLNLJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhNLunUwAeAeeXJhJhJhJhSKSKafJhJhJhJhSKJhJhJhSKJhJhJhJhNLSKSKJhJhJhJhydAeAeEVkoNLJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhNLVMafNLNLSKJhJhJhSKSKSKeIfsCACACAQpCACACAQpCACACAQpQpSKSKSKJhJhJhSKNLNLafVMNLJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhNLuneXJhJhSKJhJhSKSKSKQpQpXcqpqpqpYUqpqpqpYUqpqpqpqpQpQpSKSKSKJhJhSKJhJhydkoNLJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhNLafJhJhhDhDhDSRSRSRhDQpqpDdqpqpqpYUqpqpqpYUqpqpqpqpbVJxJxZQZQZQJxJxJxJhJhafNLJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhSKafJhhDhDUcXvWLShqMHRQpqpDHkUkUkUXHUSUSUSjaiNiNiNiNeVammRmRmRViqspLJxJxJhafSKJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhafhDhDFWilUqZnZnUqqMQpqpYUqpqpqpDdqpqpqpoPqpqpqpqpqpJxaSaSaSpqaSKVLVJxJxafJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhkQhDcZDYilogDMzQPqxbQpqpYUqpqpqpDdqpqpqpoPqpqpqpqpqpJxpESbSbAiSbSbSbsjJxKrJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhkPmQkQnOilXYWMogpkDMPqOoQpqpYUqpqpqpDdqpqpqpoPqpqpqpqpqpJxIbeRbJHVtFtFxNTiMcRhVgREJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhElJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhkPkPsXHOPVilXYOFUqWIWIUqXvQpqpOPNFNFNFOQVmVmVmFbjCjCjCjCggJxSbSbSbSbSbSbSbNjaSJxymREREJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhFHJhmQDpcKJnMPSpLJililFYilXvXvQpqpcaqpqpqpDdqpUXqpoPqpqpqpqpqpJxWFAyaDaDNzAQaSGJemduQVKqVgJhqbJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhNLgwAeVaKQXThDhDhDhDhDhDhDhDhDhDQpQpQpQpQpQpTaQpQpQpdNQpQpQpQpQpJxJxJxJxJxJxJxJxJxJxJxcLTPhTqyOxNLJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhElJhJhJhJhJhJhJhJhNLNLafSKkPXTXTRLztVDgjpNpNDCnezWHfqFCpqFqFbaqFZZHqneHfUAqFHfqFqFCpqFHfzWnedxapFETdfDUeEZzfDQRESKxmNLNLJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhNLNLNLafJhmQKgpfxIdLJYfhXVXVlhvFljIegGCUgGgGIegGmmbnbIgOFjmjmpmjmjnamjmpCwgmqWsRsRTSsRsRyyulDQVgJhxmNLNLNLJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhNLNLNLNLafJhmQizNsXlxPxPnXpNpNDCqFqitVqFCpqFqFtVqFsOtVoXqFaqqFtVqFqFCpqFtVsdqFdxFEFEYBFEFEFDzfDQVgJhxmNLNLNLNLJhzkJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhNLNLNLNLafJhkPWsNsRLpNpNrjpNpNDCqFqiqFcbcbcbcbcbcbcbrcvOrcEJEJEJEJEJEJEJqFsdqFdxEfEfhzEfEfEZzfDQREJhxmNLNLNLNLJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhNLNLNLNLafJhkPYuNsRLpNxPJcxPpNDCqFqiqFcbYHICNOgyklHspoHWtJrxToXaVElkoDEJqFsdqFdxUbGBhzEfYjEZzfDQREJhxmNLNLNLNLJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhNLNLNLNLafJhkPZkrWRLzphjIjhjNGDCqFqiqFcbSBQfUdZFAPHsaQxwaQrxpdXGPRGlGREJqFsdqFdxYjYjVxirOREZRiWBREJhxmNLNLNLNLJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhNLNLTEUwWdAeVaYlNsRLcHeyXIxPpNDCqFqiqFcbHahXEYnsVejnBKzbxUBzmIYQhpviVBEJqFsdqFdxYjYjacEflAEZtcTPhTqyTVuHweNLNLJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhunAeAeeXNLSKkPXTeFRLpNpNpNpNpNDCCbXesJcbBMhXhXfaarHsaQtTaQrxasyBviviJjEJIVwyIDdxEfEfEfEfEfEZDQDQRESKNLOJqyqyEUJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhafNLNLNLNLJhmQXTIPXlnvxPxPpNpNDCqFqiqFcbEEJUGWVrvfHsaQtTaQrxSPAETpFMFOEJqFsdqFdxFEFEFEFEFEEZDQDQREJhNLNLNLNLxmJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhafNLNLNLJhJhmQXTYDXlyYkVxPpNpNDCqFqiqFcbcbcbcbcbcbcbsftTAwEJEJEJEJEJEJEJqFsdqFdxPsFEFERgFEFDDQDQVgJhJhNLNLNLxmJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhafNLNLNLJhJhkPXTbCRLztEHyYpNMZDCqFqiqFzNubXOUTEtPeGQjOtTLznPpVYCXmJvjMujqFsdqFdxeEuEUFFEovFDDQDQVgJhJhNLNLNLxmJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhafNLNLJhJhJhkPXTmszXzXzXzXyZzXoZqFqiqFzNhcxSnHwqpOGQaQzBaQnPDIsAolOtgsujqFsdqFdxdxdxdxdxdxEZDQDQREJhJhJhNLNLxmJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhafNLNLJhJhJhmQXTNsZLAtmduUKIDOoZCpkOCpzNgLBHgbdDUBFgBKzbBKevBQMGmOtZzvujOaDfCpEcchkuuMMrDuCCUUDQREJhJhJhNLNLxmJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhafNLJhJhJhJhmQXTNsZLqCQKzXKIqgoZqFqiqFzNUHBHBHdYauGQaQtTaQnPavbxtZtZhUujqFsdqFEclVmFxpPpXbjyDQMuREJhJhJhJhNLxmJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhafNLJhJhJhJhkPJiHkzXzXzXzXGHLmoZqFqiqFzNODtOdHMNmDGQjKUGSZnPBrKGGiuVsCujqFsdqFEczFVkxoipQWjyDQzAREJhJhJhJhNLxmJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhafJhJhJhJhJhmQXTNswtAtCoNJKIAfoZqFqiqFzNzNzNzNzNzNzNeLwQKwujujujujujujujqFsdqFEcNZzCJmfjDWCCDQLnREJhJhJhJhJhxmJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhVMJhJhJhJhJhmQXTNswtqCQKzXoEBdoZMvXesJWOJdBqJsEOFCDVwVEWiIDVPCPopmBqOKWOIVwyKFEcEcEcEcEcISCCDQLnREJhJhJhJhJhiYJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhkPXTNszXzXzXzXKIAmoZqFqiqFWOMgxMMlLvyCdUbEbEbEdUXJzogEWWAjWOqFsdqFXBhOhrkpREbBVgDQLnVgJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhElJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhmQXTNsZVAthelUKIyqoZqFqiqFWOBYxYSAhudZTvbEbEbETvfThuWqxYSEWOqFsdqFXBGmalbmbhHLVgDQLnVgJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhmQXTNsZVqCQKzXqxxvoZqFqiqFWOrlxYxYhuaxdUbEbEbEdUayhuxYxYHvWOqFsdqFXByiiiiiREbBREDQLnREJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhkPULKWzXzXzXzXzXHQzXiQqiqFWObjkayIbOatdUaQaQaQdUatbOyIkabjWOqFsdhCBpBFBpBpmebBREezRKREJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhElJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhYzMyOXHmuJbloItpZpYzwaDDwaWOWOWOWOWOWOWOQTbUQTWOWOWOWOWOWOWOaJRjaJmeEvOMrHbrbBxHxHhBmeJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhYzEiSzSzSzopSzehYkYzoWrSoWnWfdsiJEYpOygqGjIIntinAXCRazTljDinowFLowmeIobSoCqfptDEDEInmeJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhmfJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhYzYzYzYzyRYzYzgARMYzQFjTZSOzGgrLlDrLbYHBxyiyiybgcPAnMsWakNinOEaNwcmeutDZmemeaBmemememeJhJhJhJhJhElJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhLrJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhElJhJhJhJhNLNLYzYbYmFmyRsNWQYzoWrSoWOzeUeUjmeUeUHBTmGjNfinYveDkTwYjhinowFLowmeTsWAaBdkMwodmeNLNLJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhNLNLNQOdVRzwYzMROXYzdTrSoWnWJZLwWtLwLwZuTmFrSQinininyMinininowFLyPmeIoWAmeYshywMxuNLNLJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhTEAemaFyGFIYYzVKSzCfhYFtPmnjppBthbXiXivhPLRlTFyJxgQoMIfOzmTkNhOIKsPdQPnuUgHhONSVnfqyweJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhNLNLYzgcQSEIyRZfcSYzWlIgoWnWQixZxZxZxZrgGjGjGjZKRnyeiPyoIlRnoweYRGmexHWAaBebXdLRmeNLNLJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhFHJhJhJhJhJhJhJhJhYgYgYzNKrpYzYzMRHmYzoWIgoWOzqcmrxZxZzEeaabaeTOZKRnUkrAyodoRnoweYowmeOGAHmetCJamemebybyJhJhJhJhJhJhJhJhFHJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhafJhJhJhJhJhJhJhJhYgvAYJYOLDYdGSfGSDYzQFMkZSOznFgkxZxZWDCdQBiVVqQEPJijDNyoaHinOEWGZCmemTzLhERqLytkGqLibyJhJhJhJhJhJhJhJhafJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhafNLJhJhJhJhJhJhJhYgdExTFGFScpnwbPSDYzoWIgoWnWLKzEnzxZnkSUQBiVWHWNRnTjYLaKqZinoweYowmeYxxHyfKJKJqSETKJbyJhJhJhJhJhJhJhNLafJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhafNLJhJhJhJhJhJhJhYgDTxTYgYgYgYzYzYzYzoWIgoWnWnWOzOzOznWnWQBiVybfSininininininoweYowmemememebybybyETlebyJhJhJhJhJhJhJhNLafJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhydAekoJhJhJhJhJhJhkidMxTYgoWCSoWoWoWXfoWIgoWsxnxnxWpnxnxzzrcvwiEzznxnxWpnxnxsxoweYowxRowowowPaowbyuYwwCKJhJhJhJhJhJhunAeeXJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhNLNLafJhJhJhJhJhJhkibdxTYgCSYwxdxdxdobxdCzZlHemgmgXAjYjYszaMMFvtRTXFXFHZZtZtbTCJhPCJfECJCJCJwRaCbyuYwwCKJhJhJhJhJhJhafNLNLJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhNLTEewNLJhJhJhJhJhYgNExTYgoWufoWoWoWBLoWaEoWsxnxnxlYnxTxRXWyAUKiRXTxnxlYnxnxsxowsnoweQowowowYyowbyAsMBbyJhJhJhJhJhNLRxOpNLJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhNLNLafNLJhJhJhJhJhYgnVxTYgoWufoWadadadadadadadadadadscscscscscscscscscscscscscthpXGkGkGkGkowYyowbyifKtbyJhJhJhJhJhNLafNLNLJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhNLNLafNLNLJhJhJhJhYgZBoMYgoWufoWadqnjEZeZeQCZeZejEqnscwSbKVsbLVsTLwSscwSpAwSscepLbGkdEdEGkowYyowbymKivbyJhJhJhJhNLNLafNLNLJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhNLNLNLafNLNLJhJhJhJhYgdExTYgNdMkZSadbZcmcWcYeleCeKfkghscgQgSVsVsVsVsusscKMajtnscMpJKGkdEdEGkOEkjZCbyifKJbyJhJhJhJhNLNLafNLNLNLJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhNLNLNLafNLNLNLJhJhJhYgNRBZYgoWufoWadZeZegUgWZeRdibZeZesciKiRVsIQVsrZVGscdSDwlPscUjfMGkdEdEGkowYyowbyATUQbyJhJhJhNLNLNLafNLNLNLJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhNLNLNLNLafNLNLNLNLJhSKYgdExTYgoWufoWadUKkcksDyliDylolweoscKHRcTLTLTLIQNPscMKCestscHcTyGkdEdEGkowYyowbyifKJbySKJhNLNLNLNLafNLNLNLNLJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhNLNLNLNLRxAeAeAeAeAeAevqhdINYgoWufoWadkwZeqngUrsibqQMOqUscKYQsOlOlOlJgbsscWiCetXscTngHGkdEdEGkLfYyowbyifHFurAeAeAeAeAeAeewNLNLNLNLJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhElJhJhJhJhJhJhJhJhJhJhJhJhJhJhNLNLNLNLafNLNLNLNLSKJhYgdExiLTJuzHhGadlxlEZelHmCnmSmnCoAscQGTKOloROlGPVsscscVQscscqOthGkdEdEMACHApuXBgNenDbyJhSKNLNLNLNLafNLNLNLNLJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhNLNLNLTEewNLNLNLNLNLNLYgdEdEYgoWqPoWadOjhwZeqnDyqnSmpxpYscegGaqvqArBGPIQscvTanKUXrHTAxGkdEdEsZowmSowbyiSBGbyNLNLNLNLNLNLRxOpNLNLNLJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhNLNLNLNLafNLNLNLNLNLNLYgdEdEYgoWqPoWadHtsKEesKuvkbtLsKslscQGeuOlHAOlGPwGscQIanbWsIlLthGkGkGksZowmSowbyjoLYbyNLNLNLNLNLNLafNLNLNLNLJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhNLNLNLNLafNLNLNLNLNLNLYgdELoYgoWqPoWqquBznuBznELznznznznscQGxhOlOlOlGPVsscyVanJOwvHTthsQGetQOAowmSowbyKzLYbyNLNLNLNLNLNLafNLNLNLNLJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhNLNLNLNLafNLNLNLNLJhJhYgdEdEYgoWqPoWqqOekFuBtWuwBlzncccOscnpkBrNIUmAZwtqscoNkXvSCTIGctuTvbVtOAowmSowbyDkLYbyJhJhNLNLNLNLafNLNLNLNLJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhzkJhJhNLNLNLNLafNLNLNLNLSKJhYgfPSwYgQFjLZSqqHXFvuBznOCznzniLvNscnMrZMVIQsrTIZNscuceSJJRQAxthwoxjwdOAOEdbOYbyqYGcbyJhSKNLNLNLNLafNLNLNLNLJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhNLNLNLNLafNLNLNLNLSKSKYgHYdEYgoWqPoWqqsuUfxzxBycyEzYAqASscuIndCngNHSlQTLsctyQLNWSkthDeyHyHyHczowmSyPbyAKlFbySKSKNLNLNLNLafNLNLNLNLJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhNLNLNLNLafNLNLNLNLJhSKkieddEYgWlqPEuqqXXGDpWpWLhpWDPdydVscwSscscJzscscwSscAzeSWXhFthLejPWZEdowowmSowbyLdWrCKSKJhNLNLNLNLafNLNLNLNLJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhNLNLNLafNLNLNLJhJhJhkiBmdEYgCSIHNIqqqqqqqqqqqqqqqqoYqqscscscAZPjAZscscscthsbthththTBBCLPCcokokRzZMffKDMWCKJhJhJhNLNLNLafNLNLNLJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhNLNLNLafNLSKSKJhJhJhYgJWdEIiIiIiIOaFNNlvckGfCuMEXKzDTMBjXKBkbMzirbBsthSLluoTthqXSFIZenzyEdowowVpowbyvyLYbyJhJhJhSKSKNLafNLNLNLJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhNLTEewJhSKSKIiIiIiIiIiLSIiQuIiIiIiIioVkrSfpcUIXKRZVWxeXKXKRuGhfvXKthTrwNHNthnLpcIZenPXaAaAaAaAaAaAaApzhQhQhQhQSKSKJhRxOpNLJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhNLNLafJhSKNLIiqzqzqzqzqzqzqzqzqzqzIiOfRvpcpcaXXKuZnSFhMJXKVCJPVCthOSwNDsKxthGvpcIZenIWaAywwKRHejnraAawlqlquDhQNLSKJhafNLNLJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhNLSKafJhNLNLIiqzqzqzqzqzqzqzqzqzqzIicuRvpcEReiXKTYFhFhuQXKwAJQLCthTrwNqKpSthktERIZenRNaAbbzarnzalTaAawlqlqQvhQNLNLJhafSKNLJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhSKafNLNLNLIiqzqzqzqzqzqzqzqzqzqzIiHdeNWxagahXKXofbDLQmOwcwKSzgciZmbQFUypthakagYRcqsUaAObfzFRfzgRaAzVrqrqAlhQNLNLNLafSKJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhElJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhSKafNLNLNLIiqzqzqzqzqzqzqzqzqzqzIiHHRvWxQnRIXKdnFhGUNmXKZXFehKthiJzMqdnNthRIYKYRlJENRotHjdwWJkPxaAjplqlqVZhQNLNLNLafSKJhJhzkJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhNLafNLNLNLIiqzqzqzqzqzqzqzqzqzqzIilmiWWUQnRIXKCGDhOvIuXKUOhttzthnNPWLxnNthRIYKxOpbdrOUOUOUOUOUOUOUOUlqaatuhQNLNLNLafNLJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhNLNLafNLNLNLIiqzqzqzqzqzqzqzqzqzqzIiIiTfxWEdEdXKXKXKXKXKXKVCisVCththththththEdEdgVGEEdOUiCrhzJrmzroSOUNUBnlqhQNLNLNLafNLNLJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhNLNLNLafNLNLNLIiqzqzqzqzqzqzqzqzqzqzIiYEimytjPwPWfcxnZZjltCVTJdjPEpBFfZjnZysHwUyjPYAVNHiOUiCrhCYuzzroSOUlqlqnThQNLNLNLafNLNLNLJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhNLNLNLNLafNLNLNLIiqzqzqzqzqzqzqzqzqzqzePNTzICPpKZEtgpKAYYcwgpKdFvvMCpKEFYcoypKpKPcpKMUCyBeXENcuWcIEhVbMiOUlqlqxEhQNLNLNLafNLNLNLNLJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhElJhJhJhJhJhJhJhJhNLNLNLNLafNLNLNLIiqzqzqzqzqzqzqzqzqzqzIiaoqNItMxKfMxMxQxtGSlMxMxOuMxMxxAtGQxMxMxPAMxvGSNaGOUiCrhCYmnzroSOUlqYoYShQNLNLNLafNLNLNLNLJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhNLNLNLNLafNLNLNLIiqzqzqzqzqzqzqzqzqzqzIiIiyFoOYNEdEdEdEdgMOqImoqoqoqImcsgMEdEdEdEduqBJmouqOUiCrhkYAvzroSOUKkMHHohQNLNLNLafNLNLNLNLJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhNLTEAeAeewNLNLNLIiIiIiIiIiIiIiIiIiIiIiIiOglaZiYNhfsMSCsMBBOqImoqoqoqImcsBBsMSCsMOcuqLIpGcyOUOUOUOUOUOUOUOUhQhQhQhQNLNLNLRxAeAeOpNLJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhNLNLNLNLafSeIzIzIzhkIzIzIzIzhkIzIzdhNLYNJRVcekYNsMsMsMsMBBKyImoqJSoqKocABBsMsMsMsMuqkWQZJouqNLSeIzIzhkIzIzIzIzhkIzIzIzdhafNLNLNLNLJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhNLNLNLNLafpTsMsMsMeJWKbebebeWKmisMPTNLaimXSTNqaisMsMsMsMVSTATAXZEdosTATAyjsMsMsMsMjgKbfWvJjgNLpTsMsMsMsMsMsMsMsMsMsMsMPTafNLNLNLNLJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhNLNLNLNLafpTsMsMsMWKWKwrWjjcWKWKsMPTNLaimXSTNqaisMsMsMsMsMsMEdBREdouEdsMsMsMsMsMsMjgKbfWvJjgNLpTsMsMsMsMsMsMsMsMsMsMsMPTafNLNLNLNLJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhNLNLNLNLafpTsMsMsMWKKjBbyaExmhWKsMPTNLYNNkSTBVYNsMsMsMsMsMsMEdJAEdQJEdsMsMsMsMsMsMuqmqfWvPuqNLpTsMsMsMsMsMsMsMsMsMsMsMPTafNLNLNLNLJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhNLNLNLNLafpTsMsMsMWKWKSJPlSJWKWKsMPTNLaiXCjVYNYNYNsMsMsMsMsMsMsMCxsMsMsMsMsMsMsMuququqexoUjgNLpTsMsMsMsMsMsMsMsMsMsMsMPTafNLNLNLNLJhJhJhJhJhJhJhJhElJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhEsJhNLNLNLNLafpTsMsMsMdQglVwLOVwgldQsMPTNLaiHgTWqeCDtRsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMVorrnBNyhZjgNLpTsMsMsMsMsMsMsMsMsMsMsMPTafNLNLNLNLJhsEJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhNLNLNLNLafpTsMsMsMZdRYVwLOVwIrZdsMPTNLaiKTpCYNYNYNsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMuququqXDxCjgNLpTsMsMsMsMsMsMsMsMsMsMsMPTafNLNLNLNLJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhNLTEAeAeewpTsMsMIaZdaPVwLOVwWgZdIaPTNLYNukPDvIYNsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMuqNidfpluqNLpTsMsMsMsMsMsMsMsMsMsMsMPTRxAeAeOpNLJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhNLNLNLNLafpTsMsMZdZdZdRwlBZdZdZdZdetqLYNKLdwNqaisMsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMjgKbsPlCuqWuiZsMsMsMsMsMsMsMsMsMsMsMPTafNLNLNLNLJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhNLNLNLNLafpTsMsMZdWnrXcnhRRwriADZdYNaiYNIROrNqaisMsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMjgKbZHDnuqjguqsMsMsMsMsMsMsMsMsMsMsMPTafNLNLNLNLJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhNLNLNLNLafpTsMsMVhBWMXiwMXsavXQekzBAMossSnmbNqaisMsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMjgKbvotbNXwmySsMvEsMsMsMsMsMsMsMsMsMPTafNLNLNLNLJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhNLNLNLunWdbpsMsMgilcfgzSkZZdWwxfgiYNaiYNUVEgTcYNsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMuqKvNxLQuqjguqsMsMsMsMsMsMsMsMsMsMsMvaLWkoNLNLNLJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhNLNLafNLyWsMsMgiuiZdZdwZPBUDRWgiHuqLYNYNhNYNYNhfsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMOcuquqHPuquqWuqEsMsMsMsMsMsMsMsMsMsMsMnhNLafNLNLJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhElJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhSKNLafNLyWsMsMQhEXZdxLmvxLZdKevrPTNLNLNLyWsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMnhNLNLNLpTsMsMsMsMsMsMsMsMsMsMsMnhNLafNLSKJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhNLSKJhafNLyWsMsMhgNSZdsMsMsMZdNSZdPTNLNLNLyWsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMnhNLNLNLpTsMsMsMsMsMsMsMsMsMsMsMnhNLafJhSKNLJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhNLNLJhafNLyWsMsMsMsMsMsMsMsMsMsMsMPTNLNLNLyWsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMnhNLNLNLpTsMsMsMsMsMsMsMsMsMsMsMnhNLafJhNLNLJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhNLNLNLafJhdBIKIKIKIKIKIKIKIKIKDiIKEnAeAeAetKsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMGTAeAeAekkIKURIKIKIKIKIKIKIKIKIKFIJhafNLNLNLJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhNLTEAeeXJhJhJhSKSKJhJhJhJhJhJhafSKJhJhNLTEtKsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMGTOpNLJhJhSKafJhJhJhJhJhJhSKSKJhJhJhydAeOpNLJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhNLNLNLNLJhJhNLNLNLNLNLNLNLNLNLafNLNLJhNLNLyWsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMnhNLNLJhNLNLafNLNLNLNLNLNLNLNLNLJhJhNLNLNLNLJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhNLNLNLJhJhJhNLNLNLNLNLNLTEAeAeeXNLNLJhJhJhyWsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMnhJhJhJhNLNLydAeAeAeOpNLNLNLNLNLJhJhJhNLNLNLJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhNLNLNLJhJhJhJhNLNLNLNLNLNLNLNLNLNLJhJhJhJhyWsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMnhJhJhJhJhNLNLNLNLNLNLNLNLNLNLJhJhJhJhNLNLNLJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhNLNLJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhyWsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMnhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhNLNLJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhNLNLJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhyWsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMnhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhNLNLJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhNLJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhyWsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMsMnhJhJhJhJhJhJhJhJhJhJhJhJhJhzkJhJhJhJhJhJhNLJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhNLJhJhJhJhJhJhJhJhJhJhJhJhElJhJhJhJhJhJhJhdBIKIKIKIKIKIKIKIKVzIKIKIKgBIKIKIKIKIKIKIKIKFIJhJhJhJhJhJhJhJhJhElJhJhJhJhJhJhJhJhJhJhNLJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhzkJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhElJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhElJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +JhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +COJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh +TeJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJhJh "} diff --git a/maps/submaps/admin_use_vr/ert.dm b/maps/submaps/admin_use_vr/ert.dm index bfa9a49c5c..4bed750cba 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 f05405e90f..ecce2e4fd4 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/pois_vr/debris_field/_templates.dm b/maps/submaps/pois_vr/debris_field/_templates.dm index b8d086a992..1495682ca9 100644 --- a/maps/submaps/pois_vr/debris_field/_templates.dm +++ b/maps/submaps/pois_vr/debris_field/_templates.dm @@ -212,6 +212,12 @@ cost = 35 allow_duplicates = FALSE +/datum/map_template/debrisfield/ship_tourist_overrun + name = "Overrun private yacht" + mappath = 'ship_tourist_overrun.dmm' + cost = 35 + allow_duplicates = FALSE + /datum/map_template/debrisfield/oldshuttle name = "Old Expedition Shuttle" mappath = 'oldshuttle.dmm' @@ -278,4 +284,11 @@ mappath = 'maps/offmap_vr/om_ships/gecko_cr_wreck.dmm' cost = 45 allow_duplicates = FALSE - discard_prob = 50 \ No newline at end of file + discard_prob = 50 + +/datum/map_template/debrisfield/blasted_sdf + name = "Blasted SDF Corvette" + mappath = 'maps/offmap_vr/om_ships/sdf_corvette_wreck.dmm' + cost = 35 + allow_duplicates = FALSE + discard_prob = 25 diff --git a/maps/submaps/pois_vr/debris_field/debrisfield_things.dm b/maps/submaps/pois_vr/debris_field/debrisfield_things.dm index 874a87c735..7f795a25c1 100644 --- a/maps/submaps/pois_vr/debris_field/debrisfield_things.dm +++ b/maps/submaps/pois_vr/debris_field/debrisfield_things.dm @@ -54,6 +54,109 @@ /mob/living/simple_mob/tomato/space/Process_Spacemove(var/check_drift = 0) return TRUE +//Begin tourist ship stuff +/mob/living/simple_mob/animal/giant_spider/space + 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 + +/mob/living/simple_mob/animal/giant_spider/space/Process_Spacemove(var/check_drift = 0) + return TRUE + +/mob/living/simple_mob/animal/giant_spider/nurse/space + 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 + +/mob/living/simple_mob/animal/giant_spider/nurse/space/Process_Spacemove(var/check_drift = 0) + return TRUE + +/mob/living/simple_mob/animal/giant_spider/hunter/space + 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 + +/mob/living/simple_mob/animal/giant_spider/hunter/space/Process_Spacemove(var/check_drift = 0) + return TRUE + +/mob/living/simple_mob/animal/giant_spider/tunneler/space + 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 + +/mob/living/simple_mob/animal/giant_spider/tunneler/space/Process_Spacemove(var/check_drift = 0) + return TRUE + +/obj/structure/ghost_pod/manual/survivor/spidership + name = "Damaged Emergency Cryopod" + desc = "A damaged cryopod smeared with blood. An badly injured body seems frozen in time within." + occupant_type = "survivor aboard a spider infested ship" + + start_injured = TRUE + suffer_brute = TRUE //default damage of 3d20 brute where each dice is rolled for a separate limb is good + suffer_burn = TRUE + burn_severity = 15 //Rapid cooling will give frostbite + burn_instances = 1 //Burning them once for up to 15 burn. Done to increase risk of infection + suffer_toxloss = TRUE + tox_severity = 5 + //Damage is minimum 3 brute, 1 burn, 1 toxloss, maximum 60 brute, 15 burn, 5 toxloss - near crit, but still able to walk. + + + +/obj/item/device/taperecorder/tourist + name = "Body-Microphone" + desc = "A sort of liability device worn by security on luxury yachts. Records everything they say. Strange that the captain was wearing it." + mytape = /obj/item/device/tape/touristguard + +/obj/item/device/tape/touristguard/New() + storedinfo += "01:37 *sounds of metal creaking" + storedinfo += "01:55 *sounds of distant screaming!" + storedinfo += "01:37 *Sounds of hissing, both airlocks and spiders alike. Screaming continues." + storedinfo += "06:03 a mechanical voice - perhaps the PA? 'All visitors are to report to the head and follow emergency orders. This is not a drill." + storedinfo += "07:19 a voice, muffled by an enclosed helmet, 'Get into the cryopods already!! We don't have time! They should keep you safe! Hurry! Hurry!'" + storedinfo += "09:13 *gruesome sounds of machines exploding, wet splatter and ominous hissing" + used_capacity = 1755 //almost full + +/obj/item/space_spider_egg + name = "ruptured giant spider egg" + desc = "An attempt by space-adapted giant spiders to reproduce! Unfortunately, their young cannot yet survive hard vacuum. Yet." + icon = 'icons/obj/egg_new_vr.dmi' //VOREStation Edit + icon_state = "egg_slimeglob" + origin_tech = list(TECH_BIO = 10) + +/obj/item/space_spider_egg/attack_self(mob/user as mob) + var/turf/drop_loc = user.loc + to_chat(user, SPAN_WARNING("The egg cracks open, splattering disgusting goop at your feet...\n \ + Whatever life laid within shall never awaken, if it was even alive.")) + new /obj/effect/decal/cleanable/spiderling_remains(drop_loc) + qdel(src) + +// End of Tourist ship stuff + /obj/random/slimecore name = "random slime core" desc = "Random slime core." @@ -102,4 +205,4 @@ we managed to bait her into one of the escape pods. fired her out into the black hope nobody ever has to read this. has to find her.
    \ if you do, im sorry.
    \ i just hope whatever happens, she finds the mercy we werent equipped to give her.
    \ -The author's signature is smudged beyond recognition."} \ No newline at end of file +The author's signature is smudged beyond recognition."} diff --git a/maps/submaps/pois_vr/debris_field/mining_drones.dmm b/maps/submaps/pois_vr/debris_field/mining_drones.dmm index cff4af2101..7f1361f53a 100644 --- a/maps/submaps/pois_vr/debris_field/mining_drones.dmm +++ b/maps/submaps/pois_vr/debris_field/mining_drones.dmm @@ -6,9 +6,7 @@ /turf/simulated/mineral/vacuum, /area/space) "c" = ( -/mob/living/simple_mob/mechanical/mining_drone{ - faction = "poi_mining_drones" - }, +/mob/living/simple_mob/mechanical/mining_drone/scavenger, /turf/simulated/floor/airless, /area/submap/debrisfield/mining_outpost) "d" = ( @@ -86,6 +84,7 @@ /area/submap/debrisfield/mining_outpost) "p" = ( /obj/item/weapon/material/shard, +/mob/living/simple_mob/mechanical/mining_drone/scavenger, /turf/space, /area/space) "q" = ( @@ -262,11 +261,11 @@ v a B f -c f c f f +f "} (2,1,1) = {" v diff --git a/maps/submaps/pois_vr/debris_field/ship_tourist_overrun.dmm b/maps/submaps/pois_vr/debris_field/ship_tourist_overrun.dmm new file mode 100644 index 0000000000..fd62f792fe --- /dev/null +++ b/maps/submaps/pois_vr/debris_field/ship_tourist_overrun.dmm @@ -0,0 +1,2300 @@ +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"ai" = ( +/obj/effect/decal/cleanable/blood, +/obj/item/device/radio/intercom/private{ + pixel_y = -21 + }, +/obj/machinery/light/small, +/turf/simulated/floor/tiled/milspec, +/area/submap/debrisfield/luxury_boat/bridge) +"an" = ( +/obj/structure/table/reinforced, +/obj/machinery/light{ + dir = 8 + }, +/turf/simulated/floor/tiled, +/area/submap/debrisfield/luxury_boat/crew) +"aD" = ( +/obj/structure/handrail, +/obj/effect/map_helper/airlock/atmos/chamber_pump, +/obj/machinery/atmospherics/unary/vent_pump/high_volume, +/turf/simulated/floor/airless, +/area/submap/debrisfield/luxury_boat/engine) +"aE" = ( +/obj/effect/decal/cleanable/filth, +/obj/machinery/atmospherics/pipe/simple/hidden/supply, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/obj/structure/cable/green{ + icon_state = "1-2" + }, +/turf/simulated/floor/tiled/yellow, +/area/submap/debrisfield/luxury_boat/crew) +"aM" = ( +/mob/living/simple_mob/animal/giant_spider/hunter/space, +/obj/effect/landmark/loot_spawn, +/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ + dir = 1 + }, +/obj/machinery/light/small, +/turf/simulated/floor/airless, +/area/submap/debrisfield/luxury_boat/engine) +"aS" = ( +/obj/structure/bed/chair/wood/wings, +/obj/item/weapon/reagent_containers/food/snacks/slice/meatpizza/filled, +/turf/simulated/floor/wood/airless, +/area/submap/debrisfield/luxury_boat/crew) +"bh" = ( +/obj/structure/handrail, +/obj/effect/map_helper/airlock/atmos/chamber_pump, +/obj/machinery/airlock_sensor{ + pixel_y = 28; + req_one_access = list(301) + }, +/obj/effect/map_helper/airlock/sensor/chamber_sensor, +/obj/machinery/atmospherics/unary/vent_pump/high_volume, +/turf/simulated/floor/plating, +/area/submap/debrisfield/luxury_boat/engine) +"bB" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/obj/structure/cable/green{ + icon_state = "4-8" + }, +/obj/structure/cable/green{ + icon_state = "1-4" + }, +/turf/simulated/floor/tiled/yellow, +/area/submap/debrisfield/luxury_boat/crew) +"bF" = ( +/obj/effect/catwalk_plated, +/obj/effect/map_helper/airlock/sensor/ext_sensor, +/obj/machinery/airlock_sensor{ + dir = 4; + pixel_x = -27; + pixel_y = 32; + req_one_access = null + }, +/obj/structure/cable/green{ + icon_state = "1-8" + }, +/turf/simulated/floor/airless, +/area/submap/debrisfield/luxury_boat/engine) +"bG" = ( +/obj/structure/window/reinforced/full, +/obj/structure/grille, +/turf/simulated/floor/airless, +/area/submap/debrisfield/luxury_boat/crew) +"bP" = ( +/obj/machinery/alarm/alarms_hidden{ + pixel_x = -1; + pixel_y = 27 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/turf/simulated/floor/tiled/yellow, +/area/submap/debrisfield/luxury_boat/crew) +"bS" = ( +/obj/structure/table/gamblingtable{ + gender = "female" + }, +/turf/simulated/floor/carpet/green, +/area/submap/debrisfield/luxury_boat/crew) +"ce" = ( +/obj/machinery/light, +/turf/simulated/floor/tiled/milspec, +/area/submap/debrisfield/luxury_boat/bridge) +"cg" = ( +/obj/random/crate, +/obj/fiftyspawner/plasteel, +/turf/simulated/floor/airless, +/area/submap/debrisfield/luxury_boat/engine) +"ch" = ( +/obj/random/crate, +/obj/fiftyspawner/plastic, +/obj/fiftyspawner/plastic, +/turf/simulated/floor/airless, +/area/submap/debrisfield/luxury_boat/engine) +"cv" = ( +/obj/machinery/atmospherics/pipe/tank/air/full{ + start_pressure = 4000 + }, +/turf/simulated/floor/airless, +/area/submap/debrisfield/luxury_boat/engine) +"cy" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/fuel{ + dir = 6 + }, +/turf/simulated/shuttle/wall, +/area/submap/debrisfield/luxury_boat/engine) +"cH" = ( +/obj/structure/bed/chair/bay/comfy/blue{ + dir = 1 + }, +/obj/effect/decal/cleanable/ash, +/obj/structure/cable/green{ + icon_state = "1-4" + }, +/turf/simulated/floor/tiled/milspec, +/area/submap/debrisfield/luxury_boat/bridge) +"df" = ( +/obj/structure/table/hardwoodtable, +/obj/item/weapon/reagent_containers/food/snacks/sliceable/pizza/mushroompizza, +/turf/simulated/floor/wood/airless, +/area/submap/debrisfield/luxury_boat/crew) +"dk" = ( +/obj/effect/landmark/corpse/random_civ{ + name = "Mangled Tourist" + }, +/mob/living/simple_mob/animal/giant_spider/space, +/obj/item/weapon/material/knife, +/turf/simulated/floor/wood/airless, +/area/submap/debrisfield/luxury_boat/crew) +"ds" = ( +/obj/structure/shuttle/window, +/turf/simulated/shuttle/floor/glass, +/area/submap/debrisfield/luxury_boat/crew) +"ea" = ( +/obj/structure/table/rack/gun_rack, +/turf/simulated/floor/tiled/milspec, +/area/submap/debrisfield/luxury_boat/bridge) +"ed" = ( +/obj/item/trash/stick, +/obj/item/stack/material/wood{ + pixel_x = -8; + pixel_y = 9 + }, +/obj/item/stack/material/wood/hard, +/obj/effect/decal/cleanable/blood, +/turf/simulated/floor/carpet/green, +/area/submap/debrisfield/luxury_boat/crew) +"ee" = ( +/obj/machinery/atmospherics/pipe/tank/phoron/full{ + dir = 4 + }, +/turf/simulated/floor/airless, +/area/submap/debrisfield/luxury_boat/engine) +"es" = ( +/obj/structure/handrail{ + dir = 1 + }, +/obj/effect/map_helper/airlock/atmos/chamber_pump, +/obj/machinery/light{ + dir = 8 + }, +/obj/machinery/atmospherics/unary/vent_pump/high_volume{ + dir = 1 + }, +/turf/simulated/floor/airless, +/area/submap/debrisfield/luxury_boat/engine) +"eC" = ( +/obj/machinery/atmospherics/pipe/simple/hidden{ + dir = 4 + }, +/obj/structure/cable/green{ + icon_state = "4-8" + }, +/turf/simulated/floor/tiled/yellow, +/area/submap/debrisfield/luxury_boat/crew) +"eL" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/obj/structure/cable{ + icon_state = "1-8" + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/item/space_spider_egg, +/turf/simulated/floor/airless, +/area/submap/debrisfield/luxury_boat/engine) +"eM" = ( +/turf/simulated/floor/wood, +/area/submap/debrisfield/luxury_boat/crew) +"fg" = ( +/obj/machinery/door/window, +/obj/machinery/light, +/turf/simulated/floor/lino, +/area/submap/debrisfield/luxury_boat/crew) +"fw" = ( +/obj/structure/table/reinforced, +/obj/machinery/microwave/advanced, +/obj/machinery/firealarm/alarms_hidden{ + pixel_x = -30 + }, +/turf/simulated/floor/tiled, +/area/submap/debrisfield/luxury_boat/crew) +"fE" = ( +/obj/structure/lattice, +/turf/simulated/shuttle/plating/airless/carry, +/area/submap/debrisfield/luxury_boat/engine) +"fH" = ( +/obj/structure/cable/green{ + icon_state = "4-8" + }, +/turf/simulated/floor/airless, +/area/submap/debrisfield/luxury_boat/engine) +"fI" = ( +/obj/effect/decal/cleanable/cobweb, +/turf/simulated/floor/tiled/yellow, +/area/submap/debrisfield/luxury_boat/crew) +"fS" = ( +/obj/effect/decal/cleanable/blood/drip, +/obj/machinery/power/apc/alarms_hidden{ + dir = 1; + pixel_y = 26 + }, +/obj/structure/cable/green{ + icon_state = "0-2" + }, +/turf/simulated/floor/tiled/yellow, +/area/submap/debrisfield/luxury_boat/crew) +"gf" = ( +/obj/effect/map_helper/airlock/sensor/int_sensor, +/obj/machinery/airlock_sensor{ + dir = 8; + pixel_x = 30; + pixel_y = 32; + req_one_access = null + }, +/obj/machinery/atmospherics/pipe/simple/hidden{ + dir = 4 + }, +/obj/structure/cable/green{ + icon_state = "4-8" + }, +/turf/simulated/floor/tiled/yellow, +/area/submap/debrisfield/luxury_boat/crew) +"gP" = ( +/obj/machinery/power/port_gen/pacman/super, +/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ + dir = 8 + }, +/obj/structure/cable{ + icon_state = "0-2" + }, +/turf/simulated/floor/airless, +/area/submap/debrisfield/luxury_boat/engine) +"gY" = ( +/obj/structure/handrail{ + dir = 1 + }, +/obj/effect/map_helper/airlock/atmos/chamber_pump, +/obj/machinery/atmospherics/unary/vent_pump/high_volume{ + dir = 1 + }, +/turf/simulated/floor/airless, +/area/submap/debrisfield/luxury_boat/engine) +"hg" = ( +/obj/effect/landmark/loot_spawn, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 9 + }, +/obj/machinery/light/small{ + dir = 1 + }, +/obj/structure/fuel_port/empty_tank{ + pixel_x = -28; + pixel_y = 28 + }, +/turf/simulated/floor/airless, +/area/submap/debrisfield/luxury_boat/engine) +"ho" = ( +/obj/machinery/atmospherics/portables_connector/fuel{ + dir = 1 + }, +/turf/simulated/floor/airless, +/area/submap/debrisfield/luxury_boat/engine) +"hu" = ( +/obj/structure/table/marble, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/turf/simulated/floor/lino, +/area/submap/debrisfield/luxury_boat/crew) +"id" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 9 + }, +/obj/structure/cable{ + icon_state = "1-8" + }, +/turf/simulated/floor/airless, +/area/submap/debrisfield/luxury_boat/engine) +"ih" = ( +/obj/structure/bed/chair/wood/wings, +/obj/effect/decal/cleanable/blood, +/turf/simulated/floor/wood/airless, +/area/submap/debrisfield/luxury_boat/crew) +"iE" = ( +/obj/structure/table/marble, +/obj/item/weapon/reagent_containers/food/drinks/bottle/whitewine, +/obj/effect/decal/cleanable/blood, +/turf/simulated/floor/lino, +/area/submap/debrisfield/luxury_boat/crew) +"iX" = ( +/obj/structure/window/reinforced/tinted/frosted{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 5 + }, +/turf/simulated/floor/lino, +/area/submap/debrisfield/luxury_boat/crew) +"jJ" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 9 + }, +/obj/machinery/atmospherics/pipe/simple/hidden{ + dir = 9 + }, +/turf/simulated/shuttle/wall, +/area/submap/debrisfield/luxury_boat/engine) +"jP" = ( +/obj/effect/decal/cleanable/bug_remains, +/obj/effect/decal/cleanable/blood/drip, +/obj/machinery/atmospherics/pipe/simple/hidden/supply, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/obj/structure/cable/green{ + icon_state = "1-2" + }, +/turf/simulated/floor/tiled/yellow, +/area/submap/debrisfield/luxury_boat/crew) +"jT" = ( +/obj/item/weapon/material/shard, +/obj/machinery/door/window, +/turf/simulated/floor/wood/airless, +/area/submap/debrisfield/luxury_boat/crew) +"kt" = ( +/obj/machinery/atmospherics/binary/pump/fuel/on{ + dir = 1 + }, +/turf/simulated/floor/airless, +/area/submap/debrisfield/luxury_boat/engine) +"kV" = ( +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/foodcart, +/turf/simulated/floor/wood/airless, +/area/submap/debrisfield/luxury_boat/crew) +"kW" = ( +/obj/machinery/door/window, +/turf/simulated/floor/wood, +/area/submap/debrisfield/luxury_boat/crew) +"lb" = ( +/obj/structure/window/reinforced/tinted/frosted, +/turf/simulated/floor/lino, +/area/submap/debrisfield/luxury_boat/crew) +"lf" = ( +/obj/machinery/shower, +/obj/structure/curtain/open/shower, +/obj/effect/decal/cleanable/blood, +/turf/simulated/floor/tiled, +/area/submap/debrisfield/luxury_boat/crew) +"ll" = ( +/obj/machinery/door/airlock/hatch{ + health = 125; + req_one_access = null + }, +/obj/effect/spider/stickyweb, +/obj/machinery/door/firedoor/glass, +/turf/simulated/floor/tiled/milspec, +/area/submap/debrisfield/luxury_boat/bridge) +"lm" = ( +/obj/structure/table/gamblingtable, +/obj/machinery/atmospherics/unary/vent_scrubber/on{ + dir = 4 + }, +/obj/structure/sign/painting/library_private{ + pixel_y = -29 + }, +/turf/simulated/floor/carpet/green, +/area/submap/debrisfield/luxury_boat/crew) +"lo" = ( +/obj/structure/table/hardwoodtable, +/obj/item/weapon/reagent_containers/food/snacks/sliceable/pizza/pineapple, +/turf/simulated/floor/wood/airless, +/area/submap/debrisfield/luxury_boat/crew) +"lv" = ( +/obj/machinery/atmospherics/pipe/vent{ + dir = 1 + }, +/obj/effect/map_effect/perma_light, +/turf/simulated/floor/airless, +/area/submap/debrisfield/luxury_boat/engine) +"lI" = ( +/obj/machinery/light{ + dir = 1 + }, +/obj/machinery/computer/shuttle_control/explore/luxury_boat, +/turf/simulated/floor/tiled/milspec, +/area/submap/debrisfield/luxury_boat/bridge) +"lU" = ( +/obj/effect/landmark/loot_spawn, +/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ + dir = 1 + }, +/turf/simulated/floor/airless, +/area/submap/debrisfield/luxury_boat/engine) +"lY" = ( +/obj/effect/decal/cleanable/blood, +/obj/effect/landmark/corpse/engineer/rig{ + corpseid = 0; + corpseidaccess = null; + corpseidjob = null; + name = "Poisoned Engineer" + }, +/turf/simulated/floor/wood/airless, +/area/submap/debrisfield/luxury_boat/crew) +"mg" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 6 + }, +/turf/simulated/shuttle/wall, +/area/submap/debrisfield/luxury_boat/cryo) +"mK" = ( +/mob/living/simple_mob/animal/giant_spider/hunter/space, +/obj/effect/decal/cleanable/blood, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 6 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 10 + }, +/obj/structure/cable/green{ + icon_state = "2-8" + }, +/obj/effect/decal/cleanable/blood, +/turf/simulated/floor/tiled/milspec, +/area/submap/debrisfield/luxury_boat/bridge) +"mT" = ( +/obj/machinery/shipsensors{ + dir = 8; + use_power = 0 + }, +/obj/effect/floor_decal/industrial/warning/cee{ + dir = 8 + }, +/turf/simulated/floor/greengrid/airless, +/area/submap/debrisfield/luxury_boat/bridge) +"nr" = ( +/obj/structure/table/rack/shelf, +/obj/item/weapon/gun/energy/locked/frontier/holdout{ + pixel_y = -9 + }, +/obj/item/weapon/gun/energy/locked/frontier/holdout, +/obj/effect/decal/cleanable/blood, +/turf/simulated/floor/tiled/milspec, +/area/submap/debrisfield/luxury_boat/bridge) +"nt" = ( +/obj/structure/closet/cabinet, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden{ + dir = 5 + }, +/turf/simulated/floor/wood, +/area/submap/debrisfield/luxury_boat/crew) +"nu" = ( +/obj/item/weapon/material/shard{ + pixel_x = 7; + pixel_y = -9 + }, +/obj/item/weapon/material/shard{ + pixel_x = 8; + pixel_y = 13 + }, +/obj/item/weapon/material/shard{ + pixel_x = -9; + pixel_y = -12 + }, +/obj/item/stack/rods, +/turf/simulated/floor/tiled/milspec, +/area/submap/debrisfield/luxury_boat/cryo) +"ny" = ( +/obj/effect/decal/cleanable/ash, +/obj/machinery/disposal/wall{ + dir = 1 + }, +/obj/machinery/firealarm/alarms_hidden{ + pixel_y = -28 + }, +/turf/simulated/floor/tiled/milspec, +/area/submap/debrisfield/luxury_boat/bridge) +"nR" = ( +/obj/machinery/computer/ship/engines{ + dir = 1 + }, +/turf/simulated/floor/tiled/milspec, +/area/submap/debrisfield/luxury_boat/bridge) +"ot" = ( +/obj/effect/decal/cleanable/bug_remains, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/obj/structure/cable/green{ + icon_state = "4-8" + }, +/turf/simulated/floor/tiled/yellow, +/area/submap/debrisfield/luxury_boat/crew) +"oX" = ( +/obj/machinery/atmospherics/pipe/manifold/hidden/fuel{ + dir = 1 + }, +/turf/simulated/shuttle/wall, +/area/submap/debrisfield/luxury_boat/engine) +"pd" = ( +/mob/living/simple_mob/animal/giant_spider/space, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden{ + dir = 10 + }, +/turf/simulated/floor/lino, +/area/submap/debrisfield/luxury_boat/crew) +"pi" = ( +/obj/machinery/atmospherics/pipe/simple/hidden{ + dir = 5 + }, +/turf/simulated/shuttle/wall, +/area/submap/debrisfield/luxury_boat/engine) +"pn" = ( +/obj/effect/decal/cleanable/blood, +/obj/machinery/atmospherics/pipe/simple/hidden/supply, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/turf/simulated/floor/tiled, +/area/submap/debrisfield/luxury_boat/crew) +"py" = ( +/obj/effect/decal/cleanable/blood, +/turf/simulated/floor/carpet/purple, +/area/submap/debrisfield/luxury_boat/crew) +"pL" = ( +/obj/effect/decal/cleanable/blood, +/turf/simulated/floor/wood/airless, +/area/submap/debrisfield/luxury_boat/crew) +"pQ" = ( +/obj/effect/decal/cleanable/blood, +/obj/item/device/taperecorder/tourist, +/obj/effect/landmark/corpse/bridgeofficer{ + corpseid = 0; + corpseidaccess = null; + corpseidjob = null; + name = "Mutiliated Captain" + }, +/obj/item/weapon/gun/energy/gun/rifle, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 6 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 6 + }, +/turf/simulated/floor/tiled, +/area/submap/debrisfield/luxury_boat/crew) +"pT" = ( +/obj/effect/spider/cocoon, +/turf/simulated/floor/tiled/milspec, +/area/submap/debrisfield/luxury_boat/bridge) +"qd" = ( +/obj/effect/landmark/corpse/engineer/rig{ + corpseid = 0; + corpseidaccess = null; + corpseidjob = null; + name = "Poisoned Engineer" + }, +/turf/simulated/floor/airless, +/area/submap/debrisfield/luxury_boat/engine) +"qg" = ( +/obj/structure/bed/double/padded, +/obj/effect/decal/cleanable/blood, +/obj/effect/landmark/corpse/random_civ{ + name = "Mangled Tourist" + }, +/turf/simulated/floor/wood, +/area/submap/debrisfield/luxury_boat/crew) +"qh" = ( +/turf/simulated/shuttle/wall/hard_corner, +/area/submap/debrisfield/luxury_boat/bridge) +"qj" = ( +/obj/machinery/light{ + brightness_color = "#FF0000"; + brightness_color_ns = "#FF0000"; + dir = 8; + light_color = "#FF0000" + }, +/obj/effect/decal/cleanable/blood/drip, +/obj/machinery/atmospherics/unary/vent_scrubber/on, +/turf/simulated/floor/tiled/milspec, +/area/submap/debrisfield/luxury_boat/cryo) +"rc" = ( +/obj/structure/sign/painting/public{ + pixel_y = 23 + }, +/turf/simulated/floor/tiled/yellow, +/area/submap/debrisfield/luxury_boat/crew) +"re" = ( +/obj/structure/table/marble, +/obj/machinery/chemical_dispenser/bar_alc/full, +/obj/machinery/atmospherics/pipe/simple/hidden/universal{ + dir = 4 + }, +/turf/simulated/floor/lino, +/area/submap/debrisfield/luxury_boat/crew) +"rq" = ( +/turf/simulated/shuttle/wall, +/area/submap/debrisfield/luxury_boat/crew) +"rD" = ( +/turf/simulated/shuttle/wall, +/area/submap/debrisfield/luxury_boat/bridge) +"rG" = ( +/obj/structure/handrail, +/obj/effect/map_helper/airlock/atmos/chamber_pump, +/obj/effect/decal/cleanable/cobweb2, +/obj/machinery/atmospherics/unary/vent_pump/high_volume, +/turf/simulated/floor/airless, +/area/submap/debrisfield/luxury_boat/engine) +"rW" = ( +/obj/machinery/atmospherics/unary/engine{ + dir = 8 + }, +/turf/space, +/area/submap/debrisfield/luxury_boat/engine) +"rZ" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 9 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/turf/simulated/floor/carpet/purple, +/area/submap/debrisfield/luxury_boat/crew) +"sh" = ( +/obj/item/weapon/reagent_containers/food/drinks/metaglass/metapint, +/turf/simulated/floor/lino, +/area/submap/debrisfield/luxury_boat/crew) +"sz" = ( +/obj/effect/catwalk_plated, +/turf/simulated/floor/airless, +/area/submap/debrisfield/luxury_boat/engine) +"sA" = ( +/obj/machinery/computer/ship/helm{ + dir = 4; + req_one_access = list() + }, +/turf/simulated/floor/tiled/milspec, +/area/submap/debrisfield/luxury_boat/bridge) +"sB" = ( +/obj/effect/landmark/loot_spawn, +/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers, +/turf/simulated/floor/airless, +/area/submap/debrisfield/luxury_boat/engine) +"sN" = ( +/obj/structure/cable/green{ + icon_state = "2-8" + }, +/turf/simulated/floor/airless, +/area/submap/debrisfield/luxury_boat/engine) +"sO" = ( +/obj/machinery/atmospherics/pipe/simple/hidden{ + dir = 6 + }, +/turf/simulated/shuttle/wall, +/area/submap/debrisfield/luxury_boat/engine) +"sZ" = ( +/obj/machinery/door/airlock/external, +/obj/effect/map_helper/airlock/door/int_door, +/obj/effect/spider/stickyweb, +/obj/structure/cable/green{ + icon_state = "4-8" + }, +/turf/simulated/floor/tiled/airless, +/area/submap/debrisfield/luxury_boat/engine) +"tw" = ( +/obj/machinery/disposal/wall{ + dir = 1 + }, +/turf/simulated/floor/carpet/purple, +/area/submap/debrisfield/luxury_boat/crew) +"tI" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/full, +/turf/simulated/floor/airless, +/area/submap/debrisfield/luxury_boat/crew) +"up" = ( +/obj/effect/decal/cleanable/blood, +/turf/simulated/floor/lino, +/area/submap/debrisfield/luxury_boat/crew) +"uu" = ( +/obj/machinery/atmospherics/pipe/tank/air/full{ + dir = 8 + }, +/turf/simulated/floor/airless, +/area/submap/debrisfield/luxury_boat/engine) +"uF" = ( +/obj/item/stack/material/diamond, +/obj/item/stack/material/diamond, +/obj/item/stack/material/diamond, +/obj/item/stack/material/diamond, +/obj/item/stack/material/diamond, +/obj/machinery/atmospherics/pipe/simple/hidden, +/obj/structure/closet/crate, +/turf/simulated/floor/airless, +/area/submap/debrisfield/luxury_boat/engine) +"uM" = ( +/obj/machinery/door/airlock/angled_bay/standard/glass, +/obj/effect/decal/cleanable/blood, +/obj/machinery/atmospherics/pipe/simple/hidden/supply, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/obj/effect/spider/stickyweb, +/obj/machinery/door/firedoor/glass, +/turf/simulated/floor/tiled, +/area/submap/debrisfield/luxury_boat/crew) +"uP" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/obj/structure/cable/green{ + icon_state = "1-2" + }, +/turf/simulated/floor/tiled/yellow, +/area/submap/debrisfield/luxury_boat/crew) +"vc" = ( +/obj/structure/shuttle/window, +/turf/simulated/shuttle/floor/glass, +/area/submap/debrisfield/luxury_boat/bridge) +"vl" = ( +/obj/machinery/door/window, +/obj/effect/decal/cleanable/blood, +/turf/simulated/floor/lino, +/area/submap/debrisfield/luxury_boat/crew) +"vq" = ( +/obj/structure/sink/kitchen{ + dir = 8; + pixel_x = -12 + }, +/turf/simulated/floor/tiled, +/area/submap/debrisfield/luxury_boat/crew) +"vI" = ( +/mob/living/simple_mob/animal/giant_spider/hunter/space, +/obj/fiftyspawner/gold, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 10 + }, +/obj/machinery/light/small, +/obj/structure/closet/crate, +/turf/simulated/floor/airless, +/area/submap/debrisfield/luxury_boat/engine) +"wp" = ( +/obj/structure/table/hardwoodtable, +/obj/machinery/atmospherics/unary/vent_scrubber, +/obj/item/weapon/reagent_containers/food/snacks/slice/meatpizza/filled, +/turf/simulated/floor/wood/airless, +/area/submap/debrisfield/luxury_boat/crew) +"wq" = ( +/obj/machinery/door/airlock/hatch, +/obj/effect/spider/stickyweb, +/obj/structure/cable/green{ + icon_state = "1-2" + }, +/turf/simulated/floor/airless, +/area/submap/debrisfield/luxury_boat/engine) +"wv" = ( +/obj/effect/decal/cleanable/bug_remains, +/obj/structure/sign/painting/public{ + pixel_x = 27 + }, +/turf/simulated/floor/tiled/yellow, +/area/submap/debrisfield/luxury_boat/crew) +"ww" = ( +/obj/structure/bed/chair/wood/wings, +/turf/simulated/floor/wood/airless, +/area/submap/debrisfield/luxury_boat/crew) +"wy" = ( +/obj/structure/lattice, +/obj/structure/cable/green{ + icon_state = "1-8" + }, +/obj/item/space_spider_egg, +/turf/simulated/shuttle/plating/airless/carry, +/area/submap/debrisfield/luxury_boat/engine) +"wz" = ( +/obj/effect/catwalk_plated, +/obj/structure/cable/green{ + icon_state = "1-2" + }, +/turf/simulated/floor/airless, +/area/submap/debrisfield/luxury_boat/engine) +"wJ" = ( +/obj/effect/decal/cleanable/blood, +/obj/effect/landmark/corpse/chef{ + corpseid = 0; + corpseidaccess = null; + corpseidjob = null; + name = "Destroyed Staff" + }, +/turf/simulated/floor/lino, +/area/submap/debrisfield/luxury_boat/crew) +"wK" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/fuel{ + dir = 4 + }, +/turf/simulated/shuttle/wall, +/area/submap/debrisfield/luxury_boat/engine) +"xD" = ( +/obj/machinery/atmospherics/pipe/tank/phoron{ + dir = 4 + }, +/turf/simulated/floor/airless, +/area/submap/debrisfield/luxury_boat/engine) +"xT" = ( +/obj/machinery/atmospherics/pipe/manifold4w/hidden, +/obj/structure/cable/green{ + icon_state = "4-8" + }, +/turf/simulated/floor/plating, +/area/submap/debrisfield/luxury_boat/engine) +"xW" = ( +/obj/machinery/door/airlock/hatch{ + health = 35; + req_one_access = null + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/obj/effect/spider/stickyweb, +/obj/structure/cable/green{ + icon_state = "1-2" + }, +/obj/machinery/door/firedoor/glass, +/turf/simulated/floor/tiled/milspec, +/area/submap/debrisfield/luxury_boat/bridge) +"yl" = ( +/obj/effect/decal/cleanable/blood, +/obj/effect/decal/cleanable/blood{ + pixel_y = 11 + }, +/obj/effect/decal/cleanable/blood{ + pixel_x = 10 + }, +/obj/item/weapon/material/shard{ + pixel_x = -9 + }, +/obj/item/stack/rods, +/obj/machinery/alarm/alarms_hidden{ + dir = 8; + pixel_x = 22 + }, +/turf/simulated/floor/tiled/milspec, +/area/submap/debrisfield/luxury_boat/cryo) +"yq" = ( +/obj/effect/decal/cleanable/blood, +/obj/effect/decal/cleanable/blood/gibs, +/turf/simulated/floor/lino, +/area/submap/debrisfield/luxury_boat/crew) +"yr" = ( +/obj/machinery/atmospherics/unary/vent_pump/on{ + dir = 4 + }, +/obj/structure/cable/green{ + icon_state = "4-8" + }, +/obj/effect/decal/cleanable/blood, +/turf/simulated/floor/tiled/milspec, +/area/submap/debrisfield/luxury_boat/bridge) +"yu" = ( +/obj/machinery/atmospherics/pipe/manifold4w/hidden/fuel, +/turf/simulated/shuttle/wall, +/area/submap/debrisfield/luxury_boat/engine) +"yL" = ( +/obj/structure/table/gamblingtable, +/obj/machinery/atmospherics/unary/vent_pump/on{ + dir = 4 + }, +/turf/simulated/floor/carpet/green, +/area/submap/debrisfield/luxury_boat/crew) +"yX" = ( +/obj/machinery/atmospherics/pipe/vent, +/obj/effect/map_effect/perma_light, +/turf/simulated/floor/airless, +/area/submap/debrisfield/luxury_boat/engine) +"zd" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 9 + }, +/turf/simulated/shuttle/wall, +/area/submap/debrisfield/luxury_boat/engine) +"zh" = ( +/obj/machinery/power/port_gen/pacman/super, +/obj/structure/cable{ + icon_state = "0-2" + }, +/turf/simulated/floor/airless, +/area/submap/debrisfield/luxury_boat/engine) +"zr" = ( +/obj/item/weapon/material/shard, +/turf/simulated/floor/lino, +/area/submap/debrisfield/luxury_boat/crew) +"zw" = ( +/obj/effect/decal/cleanable/blood, +/mob/living/simple_mob/animal/giant_spider/hunter/space, +/obj/machinery/atmospherics/pipe/simple/hidden/supply, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/turf/simulated/floor/tiled, +/area/submap/debrisfield/luxury_boat/crew) +"zQ" = ( +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/effect/decal/cleanable/blood, +/turf/simulated/floor/wood/airless, +/area/submap/debrisfield/luxury_boat/crew) +"Ab" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/turf/simulated/shuttle/wall, +/area/submap/debrisfield/luxury_boat/cryo) +"Ad" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/fuel{ + dir = 5 + }, +/turf/simulated/shuttle/wall, +/area/submap/debrisfield/luxury_boat/engine) +"Ag" = ( +/obj/machinery/power/apc/alarms_hidden{ + dir = 1; + pixel_y = 26 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 6 + }, +/obj/structure/cable/green{ + icon_state = "0-2" + }, +/turf/simulated/floor/airless, +/area/submap/debrisfield/luxury_boat/engine) +"Aj" = ( +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/sign/painting/library_private{ + pixel_y = -29 + }, +/turf/simulated/floor/wood/airless, +/area/submap/debrisfield/luxury_boat/crew) +"AN" = ( +/obj/effect/decal/cleanable/blood, +/obj/machinery/atmospherics/pipe/simple/hidden/supply, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/turf/simulated/floor/tiled/yellow, +/area/submap/debrisfield/luxury_boat/crew) +"Bc" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/fuel{ + dir = 10 + }, +/turf/simulated/shuttle/wall, +/area/submap/debrisfield/luxury_boat/engine) +"Br" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/obj/machinery/door/airlock/angled_bay/standard/glass{ + dir = 4; + door_color = "#323d80"; + name = "Bridge"; + req_access = null; + req_one_access = null; + stripe_color = "#f7d35c" + }, +/obj/machinery/door/firedoor/glass, +/turf/simulated/floor/tiled/milspec, +/area/submap/debrisfield/luxury_boat/cryo) +"BA" = ( +/obj/machinery/atmospherics/pipe/vent{ + dir = 1 + }, +/turf/simulated/floor/airless, +/area/submap/debrisfield/luxury_boat/engine) +"BT" = ( +/turf/simulated/floor/airless, +/area/submap/debrisfield/luxury_boat/engine) +"CB" = ( +/obj/structure/inflatable, +/turf/simulated/floor/wood/airless, +/area/submap/debrisfield/luxury_boat/crew) +"CJ" = ( +/obj/effect/decal/cleanable/blood/drip, +/obj/machinery/atmospherics/pipe/simple/hidden/supply, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/obj/structure/cable/green{ + icon_state = "1-2" + }, +/turf/simulated/floor/tiled/yellow, +/area/submap/debrisfield/luxury_boat/crew) +"CL" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/fuel{ + dir = 9 + }, +/turf/simulated/shuttle/wall, +/area/submap/debrisfield/luxury_boat/engine) +"CR" = ( +/obj/structure/bed/double/padded, +/obj/machinery/light{ + dir = 1 + }, +/turf/simulated/floor/tiled/milspec, +/area/submap/debrisfield/luxury_boat/bridge) +"CZ" = ( +/obj/structure/grille, +/obj/structure/grille, +/obj/structure/window/reinforced/full, +/turf/simulated/floor/airless, +/area/submap/debrisfield/luxury_boat/crew) +"Dg" = ( +/obj/effect/decal/cleanable/blood/drip, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 10 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 9 + }, +/turf/simulated/floor/tiled/milspec, +/area/submap/debrisfield/luxury_boat/cryo) +"Dh" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden{ + dir = 4 + }, +/turf/simulated/floor/lino, +/area/submap/debrisfield/luxury_boat/crew) +"Dj" = ( +/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/hidden{ + dir = 5 + }, +/turf/simulated/floor/lino, +/area/submap/debrisfield/luxury_boat/crew) +"DP" = ( +/obj/effect/decal/cleanable/filth, +/turf/simulated/floor/tiled/yellow, +/area/submap/debrisfield/luxury_boat/crew) +"Eb" = ( +/turf/simulated/shuttle/wall, +/area/submap/debrisfield/luxury_boat/engine) +"Ec" = ( +/obj/structure/handrail{ + dir = 1 + }, +/obj/effect/map_helper/airlock/atmos/chamber_pump, +/obj/machinery/embedded_controller/radio/airlock/airlock_controller{ + id_tag = "tourist_airlock"; + pixel_y = -30 + }, +/obj/machinery/atmospherics/unary/vent_pump/high_volume{ + dir = 1 + }, +/turf/simulated/floor/airless, +/area/submap/debrisfield/luxury_boat/engine) +"Eq" = ( +/obj/item/weapon/material/knife, +/turf/simulated/floor/wood/airless, +/area/submap/debrisfield/luxury_boat/crew) +"Fa" = ( +/obj/structure/table/gamblingtable, +/obj/item/weapon/deck/cards/casino, +/turf/simulated/floor/carpet/green, +/area/submap/debrisfield/luxury_boat/crew) +"Fm" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 5 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 5 + }, +/obj/structure/cable/green{ + icon_state = "1-4" + }, +/turf/simulated/floor/tiled/yellow, +/area/submap/debrisfield/luxury_boat/crew) +"Fo" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/obj/structure/cable/green{ + icon_state = "1-8" + }, +/obj/structure/cable{ + icon_state = "2-4" + }, +/obj/structure/cable/green{ + icon_state = "4-8" + }, +/turf/simulated/floor/airless, +/area/submap/debrisfield/luxury_boat/engine) +"Fs" = ( +/obj/structure/window/reinforced/tinted/frosted{ + dir = 4 + }, +/obj/structure/closet/cabinet, +/turf/simulated/floor/wood, +/area/submap/debrisfield/luxury_boat/crew) +"Fu" = ( +/obj/structure/ghost_pod/manual/survivor/spidership{ + dir = 8 + }, +/obj/machinery/firealarm/alarms_hidden{ + pixel_x = 28 + }, +/turf/simulated/floor/tiled/milspec, +/area/submap/debrisfield/luxury_boat/cryo) +"FB" = ( +/turf/space, +/area/space) +"FT" = ( +/obj/structure/window/reinforced/tinted/frosted, +/obj/machinery/smartfridge/drinks, +/turf/simulated/floor/lino, +/area/submap/debrisfield/luxury_boat/crew) +"FY" = ( +/obj/machinery/atmospherics/pipe/manifold/hidden/fuel, +/turf/simulated/shuttle/wall, +/area/submap/debrisfield/luxury_boat/engine) +"Gv" = ( +/obj/structure/bed/double/padded, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden{ + dir = 4 + }, +/turf/simulated/floor/wood, +/area/submap/debrisfield/luxury_boat/crew) +"Gw" = ( +/obj/effect/decal/cleanable/blood/drip, +/turf/simulated/floor/tiled/milspec, +/area/submap/debrisfield/luxury_boat/cryo) +"GF" = ( +/mob/living/simple_mob/animal/giant_spider/space, +/obj/effect/landmark/corpse/random_civ{ + name = "Mangled Tourist" + }, +/turf/simulated/floor/carpet/green, +/area/submap/debrisfield/luxury_boat/crew) +"GI" = ( +/obj/machinery/atmospherics/pipe/manifold/hidden{ + dir = 4 + }, +/obj/structure/cable/green{ + icon_state = "4-8" + }, +/turf/simulated/floor/airless, +/area/submap/debrisfield/luxury_boat/engine) +"Hd" = ( +/turf/simulated/floor/tiled/yellow, +/area/submap/debrisfield/luxury_boat/crew) +"Hh" = ( +/obj/machinery/computer/ship/sensors, +/turf/simulated/floor/tiled/milspec, +/area/submap/debrisfield/luxury_boat/bridge) +"Hr" = ( +/obj/machinery/atmospherics/pipe/manifold/hidden/supply, +/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers, +/obj/structure/cable/green{ + icon_state = "4-8" + }, +/turf/simulated/floor/tiled/yellow, +/area/submap/debrisfield/luxury_boat/crew) +"Il" = ( +/obj/machinery/light_switch, +/turf/simulated/shuttle/wall/hard_corner, +/area/submap/debrisfield/luxury_boat/cryo) +"ID" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 9 + }, +/turf/simulated/floor/carpet/purple, +/area/submap/debrisfield/luxury_boat/crew) +"IT" = ( +/obj/effect/decal/cleanable/blood/gibs, +/turf/simulated/floor/lino, +/area/submap/debrisfield/luxury_boat/crew) +"IZ" = ( +/obj/structure/bed/double/padded, +/turf/simulated/floor/wood, +/area/submap/debrisfield/luxury_boat/crew) +"Jj" = ( +/mob/living/simple_mob/animal/giant_spider/space, +/turf/simulated/floor/wood, +/area/submap/debrisfield/luxury_boat/crew) +"JJ" = ( +/obj/structure/toilet, +/obj/effect/decal/cleanable/blood, +/turf/simulated/floor/tiled, +/area/submap/debrisfield/luxury_boat/crew) +"JL" = ( +/obj/machinery/status_display, +/turf/simulated/shuttle/wall, +/area/submap/debrisfield/luxury_boat/bridge) +"JO" = ( +/obj/structure/table/hardwoodtable, +/turf/simulated/floor/wood/airless, +/area/submap/debrisfield/luxury_boat/crew) +"JP" = ( +/turf/simulated/floor/wood/airless, +/area/submap/debrisfield/luxury_boat/crew) +"JS" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/obj/machinery/light/small, +/obj/structure/cable{ + icon_state = "1-8" + }, +/turf/simulated/floor/airless, +/area/submap/debrisfield/luxury_boat/engine) +"JV" = ( +/obj/machinery/power/terminal{ + dir = 1 + }, +/obj/structure/cable{ + icon_state = "0-4" + }, +/turf/simulated/floor/airless, +/area/submap/debrisfield/luxury_boat/engine) +"Kg" = ( +/obj/machinery/light{ + dir = 8 + }, +/obj/effect/decal/cleanable/blood, +/turf/simulated/floor/tiled, +/area/submap/debrisfield/luxury_boat/crew) +"KI" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/turf/simulated/floor/carpet/purple, +/area/submap/debrisfield/luxury_boat/crew) +"KP" = ( +/obj/machinery/atmospherics/pipe/manifold/hidden{ + dir = 8 + }, +/turf/simulated/floor/airless, +/area/submap/debrisfield/luxury_boat/engine) +"Ll" = ( +/obj/machinery/status_display, +/turf/simulated/shuttle/wall, +/area/submap/debrisfield/luxury_boat/crew) +"Lw" = ( +/obj/item/weapon/material/shard, +/turf/simulated/floor/tiled/yellow, +/area/submap/debrisfield/luxury_boat/crew) +"LC" = ( +/obj/structure/closet/cabinet, +/obj/item/weapon/storage/secure/briefcase/money, +/obj/item/weapon/storage/secure/briefcase/money, +/obj/item/clothing/head/beret/centcom/captain, +/turf/simulated/floor/tiled/milspec, +/area/submap/debrisfield/luxury_boat/bridge) +"LI" = ( +/turf/simulated/floor/carpet/purple, +/area/submap/debrisfield/luxury_boat/crew) +"LY" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/obj/machinery/atmospherics/pipe/simple/hidden, +/turf/simulated/floor/lino, +/area/submap/debrisfield/luxury_boat/crew) +"Mh" = ( +/obj/structure/cable/green{ + icon_state = "2-4" + }, +/obj/structure/lattice, +/turf/simulated/shuttle/plating/airless/carry, +/area/submap/debrisfield/luxury_boat/engine) +"Mq" = ( +/obj/machinery/door/airlock/external, +/obj/effect/map_helper/airlock/door/ext_door, +/obj/structure/cable/green{ + icon_state = "4-8" + }, +/turf/simulated/floor/airless, +/area/submap/debrisfield/luxury_boat/engine) +"MX" = ( +/obj/item/weapon/material/shard, +/turf/simulated/floor/wood/airless, +/area/submap/debrisfield/luxury_boat/crew) +"MY" = ( +/obj/machinery/atmospherics/pipe/vent, +/turf/simulated/floor/airless, +/area/submap/debrisfield/luxury_boat/engine) +"Ne" = ( +/obj/effect/decal/cleanable/vomit, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/obj/structure/cable/green{ + icon_state = "4-8" + }, +/turf/simulated/floor/tiled/yellow, +/area/submap/debrisfield/luxury_boat/crew) +"NI" = ( +/obj/machinery/door/airlock/hatch, +/turf/simulated/floor/airless, +/area/submap/debrisfield/luxury_boat/engine) +"NP" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/folder/blue_captain, +/obj/item/weapon/coin/phoron, +/turf/simulated/floor/tiled/milspec, +/area/submap/debrisfield/luxury_boat/bridge) +"NQ" = ( +/obj/structure/table/reinforced, +/obj/item/modular_computer/laptop/preset/custom_loadout/elite, +/obj/machinery/power/apc/alarms_hidden{ + dir = 1; + pixel_y = 26 + }, +/obj/structure/cable/green{ + icon_state = "0-2" + }, +/turf/simulated/floor/tiled/milspec, +/area/submap/debrisfield/luxury_boat/bridge) +"NR" = ( +/obj/effect/decal/cleanable/blood/drip, +/turf/simulated/floor/tiled/yellow, +/area/submap/debrisfield/luxury_boat/crew) +"Or" = ( +/obj/machinery/light, +/turf/simulated/floor/lino, +/area/submap/debrisfield/luxury_boat/crew) +"Ov" = ( +/obj/structure/table/marble, +/obj/effect/decal/cleanable/blood, +/turf/simulated/floor/lino, +/area/submap/debrisfield/luxury_boat/crew) +"Ox" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/obj/structure/cable{ + icon_state = "2-4" + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/item/space_spider_egg, +/turf/simulated/floor/airless, +/area/submap/debrisfield/luxury_boat/engine) +"OP" = ( +/mob/living/simple_mob/animal/giant_spider/tunneler/space, +/turf/simulated/floor/tiled/yellow, +/area/submap/debrisfield/luxury_boat/crew) +"Pa" = ( +/obj/effect/landmark/corpse/random_civ{ + name = "Mangled Tourist" + }, +/obj/effect/decal/cleanable/blood, +/turf/simulated/floor/tiled, +/area/submap/debrisfield/luxury_boat/crew) +"PD" = ( +/turf/simulated/floor/lino, +/area/submap/debrisfield/luxury_boat/crew) +"PV" = ( +/obj/structure/table/marble, +/obj/item/weapon/reagent_containers/food/drinks/britcup, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 10 + }, +/obj/machinery/atmospherics/pipe/simple/hidden{ + dir = 4 + }, +/turf/simulated/floor/lino, +/area/submap/debrisfield/luxury_boat/crew) +"Qe" = ( +/turf/simulated/shuttle/wall/hard_corner, +/area/submap/debrisfield/luxury_boat/crew) +"Qf" = ( +/obj/machinery/light{ + dir = 1 + }, +/obj/effect/decal/cleanable/cobweb2, +/turf/simulated/floor/tiled/yellow, +/area/submap/debrisfield/luxury_boat/crew) +"Qq" = ( +/obj/effect/decal/cleanable/ash, +/obj/machinery/atmospherics/pipe/simple/hidden/supply, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/obj/structure/cable/green{ + icon_state = "1-2" + }, +/obj/effect/decal/cleanable/blood, +/turf/simulated/floor/tiled/milspec, +/area/submap/debrisfield/luxury_boat/bridge) +"Rd" = ( +/obj/machinery/atmospherics/pipe/simple/hidden{ + dir = 9 + }, +/turf/simulated/floor/airless, +/area/submap/debrisfield/luxury_boat/engine) +"Rl" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/turf/simulated/shuttle/wall, +/area/submap/debrisfield/luxury_boat/engine) +"Rm" = ( +/obj/item/weapon/material/shard{ + pixel_x = 10; + pixel_y = -9 + }, +/obj/item/weapon/material/shard, +/obj/item/stack/rods, +/turf/simulated/floor/tiled/milspec, +/area/submap/debrisfield/luxury_boat/cryo) +"RU" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/obj/structure/cable/green{ + icon_state = "4-8" + }, +/obj/effect/shuttle_landmark/shuttle_initializer/luxury_boat, +/obj/effect/overmap/visitable/ship/landable/luxury_boat, +/turf/simulated/floor/tiled/yellow, +/area/submap/debrisfield/luxury_boat/crew) +"Si" = ( +/obj/structure/bed/chair/bay/comfy/blue{ + dir = 8 + }, +/obj/effect/decal/cleanable/blood, +/turf/simulated/floor/tiled/milspec, +/area/submap/debrisfield/luxury_boat/bridge) +"Te" = ( +/obj/structure/closet/secure_closet/freezer/fridge, +/turf/simulated/floor/tiled/yellow, +/area/submap/debrisfield/luxury_boat/crew) +"Tm" = ( +/mob/living/simple_mob/animal/giant_spider/nurse/space, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/obj/structure/cable{ + icon_state = "1-8" + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/turf/simulated/floor/airless, +/area/submap/debrisfield/luxury_boat/engine) +"Ts" = ( +/obj/structure/cable{ + icon_state = "1-8" + }, +/obj/structure/cable/green{ + icon_state = "4-8" + }, +/turf/simulated/floor/airless, +/area/submap/debrisfield/luxury_boat/engine) +"TV" = ( +/obj/structure/window/reinforced{ + dir = 1 + }, +/turf/simulated/floor/lino, +/area/submap/debrisfield/luxury_boat/crew) +"Ux" = ( +/obj/machinery/atmospherics/unary/engine{ + dir = 8 + }, +/turf/simulated/shuttle/plating/airless/carry, +/area/submap/debrisfield/luxury_boat/engine) +"UB" = ( +/obj/structure/window/reinforced/tinted/frosted, +/obj/machinery/atmospherics/pipe/simple/hidden, +/turf/simulated/floor/lino, +/area/submap/debrisfield/luxury_boat/crew) +"UL" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/obj/machinery/atmospherics/pipe/simple/hidden, +/turf/simulated/floor/tiled/yellow, +/area/submap/debrisfield/luxury_boat/crew) +"Vg" = ( +/obj/structure/ghost_pod/manual/survivor/spidership{ + dir = 8 + }, +/turf/simulated/floor/tiled/milspec, +/area/submap/debrisfield/luxury_boat/cryo) +"Vo" = ( +/obj/structure/table/hardwoodtable, +/obj/item/weapon/reagent_containers/food/drinks/bottle/vermouth, +/turf/simulated/floor/wood/airless, +/area/submap/debrisfield/luxury_boat/crew) +"Vq" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/turf/simulated/shuttle/wall, +/area/submap/debrisfield/luxury_boat/engine) +"Vt" = ( +/obj/structure/window/reinforced{ + dir = 4 + }, +/turf/simulated/floor/wood/airless, +/area/submap/debrisfield/luxury_boat/crew) +"Vy" = ( +/obj/structure/bed/chair/wood/wings, +/obj/machinery/light{ + dir = 1 + }, +/turf/simulated/floor/wood/airless, +/area/submap/debrisfield/luxury_boat/crew) +"VG" = ( +/turf/simulated/shuttle/wall/hard_corner, +/area/submap/debrisfield/luxury_boat/engine) +"VR" = ( +/obj/effect/landmark/corpse/security{ + corpseid = 0; + corpseidaccess = null; + corpseidjob = null; + name = "Torn-Apart Bodyguard" + }, +/obj/effect/decal/cleanable/blood, +/turf/simulated/floor/tiled/milspec, +/area/submap/debrisfield/luxury_boat/bridge) +"Wb" = ( +/obj/machinery/door/airlock, +/turf/simulated/floor/tiled, +/area/submap/debrisfield/luxury_boat/crew) +"We" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden{ + dir = 4 + }, +/turf/simulated/shuttle/wall, +/area/submap/debrisfield/luxury_boat/engine) +"Wt" = ( +/obj/structure/grille, +/obj/item/weapon/material/shard{ + pixel_y = 4 + }, +/obj/item/weapon/material/shard{ + pixel_x = 12 + }, +/obj/item/weapon/material/shard{ + pixel_x = -21 + }, +/turf/simulated/floor/airless, +/area/submap/debrisfield/luxury_boat/crew) +"Xq" = ( +/obj/structure/window/reinforced/tinted/frosted, +/obj/machinery/door/window, +/turf/simulated/floor/wood/broken, +/area/submap/debrisfield/luxury_boat/crew) +"Xr" = ( +/obj/machinery/power/smes/buildable{ + charge = 500000 + }, +/obj/structure/cable/green{ + icon_state = "0-4" + }, +/turf/simulated/floor/airless, +/area/submap/debrisfield/luxury_boat/engine) +"XK" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/full, +/turf/simulated/floor/airless, +/area/submap/debrisfield/luxury_boat/bridge) +"XW" = ( +/turf/simulated/shuttle/wall, +/area/submap/debrisfield/luxury_boat/cryo) +"Ye" = ( +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/obj/machinery/atmospherics/pipe/simple/hidden, +/turf/simulated/floor/lino, +/area/submap/debrisfield/luxury_boat/crew) +"Yp" = ( +/obj/machinery/atmospherics/portables_connector/fuel, +/turf/simulated/floor/airless, +/area/submap/debrisfield/luxury_boat/engine) +"Yw" = ( +/obj/effect/decal/cleanable/ash, +/obj/structure/panic_button{ + icon_state = "panicbutton_launched"; + launched = 1; + pixel_x = 26 + }, +/obj/machinery/atmospherics/unary/vent_scrubber/on{ + dir = 8 + }, +/obj/effect/decal/cleanable/blood, +/turf/simulated/floor/tiled/milspec, +/area/submap/debrisfield/luxury_boat/bridge) +"Yz" = ( +/obj/machinery/atmospherics/pipe/manifold4w/hidden, +/turf/simulated/shuttle/wall, +/area/submap/debrisfield/luxury_boat/engine) +"YR" = ( +/obj/structure/window/reinforced/tinted/frosted, +/obj/effect/decal/cleanable/blood/gibs, +/obj/item/weapon/storage/secure/briefcase/money, +/turf/simulated/floor/wood, +/area/submap/debrisfield/luxury_boat/crew) +"YT" = ( +/obj/effect/decal/cleanable/blood/drip, +/obj/machinery/light{ + brightness_color = "#FF0000"; + brightness_color_ns = "#FF0000"; + dir = 8; + light_color = "#FF0000" + }, +/obj/machinery/atmospherics/unary/vent_pump/on{ + dir = 1 + }, +/turf/simulated/floor/tiled/milspec, +/area/submap/debrisfield/luxury_boat/cryo) +"YW" = ( +/obj/machinery/atmospherics/pipe/manifold4w/hidden, +/obj/structure/cable/green{ + icon_state = "4-8" + }, +/turf/simulated/floor/airless, +/area/submap/debrisfield/luxury_boat/engine) +"Ze" = ( +/turf/simulated/floor/tiled/milspec, +/area/submap/debrisfield/luxury_boat/bridge) +"Zv" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 10 + }, +/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden{ + dir = 6 + }, +/obj/structure/cable/green{ + icon_state = "4-8" + }, +/turf/simulated/floor/tiled/yellow, +/area/submap/debrisfield/luxury_boat/crew) +"ZX" = ( +/obj/structure/closet/crate, +/obj/fiftyspawner/tritium, +/obj/fiftyspawner/tritium, +/obj/fiftyspawner/titanium, +/obj/fiftyspawner/phoron, +/obj/machinery/atmospherics/binary/pump/fuel/on, +/turf/simulated/floor/airless, +/area/submap/debrisfield/luxury_boat/engine) + +(1,1,1) = {" +FB +FB +XK +FB +FB +FB +FB +FB +FB +FB +FB +FB +FB +FB +FB +FB +FB +FB +FB +"} +(2,1,1) = {" +FB +XK +sA +XK +FB +FB +rq +tI +tI +Wt +tI +tI +rq +FB +FB +FB +FB +FB +FB +"} +(3,1,1) = {" +XK +Hh +Si +nR +XK +FB +bG +aS +df +CB +JO +ww +tI +FB +FB +FB +FB +FB +FB +"} +(4,1,1) = {" +XK +lI +pT +ce +XK +FB +bG +Vy +Vo +lY +lo +ww +tI +FB +FB +FB +FB +FB +FB +"} +(5,1,1) = {" +qh +qh +ll +qh +qh +FB +bG +ih +wp +JP +JO +ww +CZ +FB +FB +FB +FB +FB +FB +"} +(6,1,1) = {" +rD +NP +Ze +ny +rD +mT +bG +Eq +dk +MX +pL +JP +CZ +FB +FB +FB +FB +FB +FB +"} +(7,1,1) = {" +rD +NQ +cH +ai +rD +rq +rq +kV +zQ +jT +Vt +Aj +rq +rq +ds +rq +ds +rq +rq +"} +(8,1,1) = {" +rD +ea +yr +VR +JL +fI +Hd +Hd +DP +Lw +Hd +TV +PD +lb +qg +YR +IZ +eM +rq +"} +(9,1,1) = {" +vc +CR +mK +Qq +xW +CJ +jP +aE +uP +Fm +Hd +TV +PD +lb +Fs +Xq +Fs +kW +rq +"} +(10,1,1) = {" +rD +LC +Yw +nr +rD +Te +wv +NR +Hd +ot +Hd +TV +PD +up +up +up +PD +Or +rq +"} +(11,1,1) = {" +rq +rq +rq +rq +rq +rq +rq +Qe +fS +bB +Hd +zr +sh +PD +PD +LI +py +tw +rq +"} +(12,1,1) = {" +rq +lf +Kg +rq +vq +fw +an +Ll +OP +Ne +Hd +zr +PD +PD +IT +py +bS +ed +ds +"} +(13,1,1) = {" +rq +JJ +Pa +Wb +pQ +zw +pn +uM +AN +Hr +Hd +PD +PD +PD +up +LI +Fa +GF +ds +"} +(14,1,1) = {" +XW +XW +XW +XW +Br +XW +XW +Il +Hd +RU +Hd +TV +PD +yq +PD +LI +yL +lm +rq +"} +(15,1,1) = {" +XW +Gw +Gw +qj +Dg +YT +Gw +mg +bP +Zv +UL +Ye +LY +LY +Dj +KI +rZ +ID +ds +"} +(16,1,1) = {" +XW +Vg +nu +Vg +yl +Fu +Rm +Ab +rc +eC +Hd +zr +PD +sh +Dh +PD +PD +sh +rq +"} +(17,1,1) = {" +XW +XW +XW +XW +XW +XW +XW +Ab +Qf +gf +Hd +zr +vl +iE +PV +hu +iX +fg +rq +"} +(18,1,1) = {" +FB +FB +FB +Eb +BT +Xr +JV +Rl +Eb +sZ +Eb +VG +up +wJ +pd +UB +nt +eM +rq +"} +(19,1,1) = {" +FB +FB +Eb +Eb +Ag +Fo +JS +zd +aD +YW +es +Eb +PD +Ov +re +FT +Gv +Jj +rq +"} +(20,1,1) = {" +FB +FB +Eb +zh +Ox +Ts +ch +Eb +bh +xT +Ec +Eb +Eb +sO +Yz +pi +We +ds +rq +"} +(21,1,1) = {" +FB +FB +Eb +zh +Tm +fH +cg +Eb +rG +GI +gY +Eb +Eb +uu +uu +uu +We +FB +FB +"} +(22,1,1) = {" +FB +FB +Eb +zh +eL +fH +Eb +VG +Eb +Mq +Eb +VG +Eb +cv +KP +uF +jJ +FB +FB +"} +(23,1,1) = {" +FB +MY +Vq +gP +id +fH +Eb +Mh +wz +bF +sz +fE +Eb +cv +Rd +aM +Vq +BA +FB +"} +(24,1,1) = {" +FB +yX +Vq +sB +BT +sN +wq +wy +fE +sz +fE +fE +NI +BT +qd +lU +Vq +lv +FB +"} +(25,1,1) = {" +FB +MY +Vq +hg +Yp +ZX +Ad +FB +fE +sz +fE +FB +cy +kt +ho +vI +Vq +BA +FB +"} +(26,1,1) = {" +FB +FB +Eb +xD +ee +xD +wK +FB +FB +sz +FB +FB +wK +ee +xD +xD +Eb +FB +FB +"} +(27,1,1) = {" +FB +FB +Eb +oX +yu +yu +CL +FB +FB +FB +FB +FB +Bc +yu +yu +FY +Eb +FB +FB +"} +(28,1,1) = {" +FB +FB +FB +Ux +Ux +rW +FB +FB +FB +FB +FB +FB +FB +Ux +Ux +Ux +FB +FB +FB +"} diff --git a/maps/submaps/surface_submaps/mountains/mountains.dm b/maps/submaps/surface_submaps/mountains/mountains.dm index 2fffd44a72..dfa0ca65ac 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 426c4c67bf..2f60fca5d9 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 c24cf70a5e..a1110c77fc 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 //YW Edit remove 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 fe47120d78..85049a7f99 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 85e772261d..dc4620fa0a 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/maps/tether/tether-05-station1.dmm b/maps/tether/tether-05-station1.dmm index ae4346287c..44acb0ecdb 100644 --- a/maps/tether/tether-05-station1.dmm +++ b/maps/tether/tether-05-station1.dmm @@ -3266,6 +3266,9 @@ /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 }, +/obj/machinery/atmospherics/pipe/simple/hidden/cyan{ + dir = 4 + }, /turf/simulated/floor/tiled, /area/engineering/hallway) "afu" = ( @@ -5633,6 +5636,9 @@ /obj/machinery/door/firedoor/glass/hidden/steel{ dir = 2 }, +/obj/machinery/atmospherics/pipe/simple/hidden/cyan{ + dir = 4 + }, /turf/simulated/floor/tiled, /area/engineering/hallway) "alR" = ( @@ -7014,6 +7020,9 @@ d2 = 8; icon_state = "4-8" }, +/obj/machinery/atmospherics/pipe/simple/hidden/cyan{ + dir = 4 + }, /turf/simulated/floor/tiled, /area/engineering/hallway) "apy" = ( diff --git a/sound/voice/ScawwySownds/a scawey sownd.ogg b/sound/voice/ScawwySownds/a scawey sownd.ogg new file mode 100644 index 0000000000..6d23473147 Binary files /dev/null and b/sound/voice/ScawwySownds/a scawey sownd.ogg differ diff --git a/sound/voice/ScawwySownds/is that you.ogg b/sound/voice/ScawwySownds/is that you.ogg new file mode 100644 index 0000000000..b4ce147906 Binary files /dev/null and b/sound/voice/ScawwySownds/is that you.ogg differ diff --git a/sound/voice/ScawwySownds/lookit this darkness wow.ogg b/sound/voice/ScawwySownds/lookit this darkness wow.ogg new file mode 100644 index 0000000000..9561611072 Binary files /dev/null and b/sound/voice/ScawwySownds/lookit this darkness wow.ogg differ diff --git a/sound/voice/ScawwySownds/maint preds.ogg b/sound/voice/ScawwySownds/maint preds.ogg new file mode 100644 index 0000000000..83ad18d792 Binary files /dev/null and b/sound/voice/ScawwySownds/maint preds.ogg differ diff --git a/sound/voice/ScawwySownds/spooky sounds.ogg b/sound/voice/ScawwySownds/spooky sounds.ogg new file mode 100644 index 0000000000..5462ba94dd Binary files /dev/null and b/sound/voice/ScawwySownds/spooky sounds.ogg differ diff --git a/sound/voice/ScawwySownds/sus.ogg b/sound/voice/ScawwySownds/sus.ogg new file mode 100644 index 0000000000..583550d456 Binary files /dev/null and b/sound/voice/ScawwySownds/sus.ogg differ diff --git a/sound/voice/ScawwySownds/this is scaewy.ogg b/sound/voice/ScawwySownds/this is scaewy.ogg new file mode 100644 index 0000000000..ea9e407753 Binary files /dev/null and b/sound/voice/ScawwySownds/this is scaewy.ogg differ diff --git a/sound/voice/ScawwySownds/what is that behind you.ogg b/sound/voice/ScawwySownds/what is that behind you.ogg new file mode 100644 index 0000000000..a6873677d0 Binary files /dev/null and b/sound/voice/ScawwySownds/what is that behind you.ogg differ diff --git a/sound/voice/ScawwySownds/what you doin over dere.ogg b/sound/voice/ScawwySownds/what you doin over dere.ogg new file mode 100644 index 0000000000..1b7e40b4e5 Binary files /dev/null and b/sound/voice/ScawwySownds/what you doin over dere.ogg differ diff --git a/sound/voice/ScawwySownds/whats up with all the trash.ogg b/sound/voice/ScawwySownds/whats up with all the trash.ogg new file mode 100644 index 0000000000..0e1e46c0e5 Binary files /dev/null and b/sound/voice/ScawwySownds/whats up with all the trash.ogg differ diff --git a/sound/voice/ScawwySownds/youre afraid of the dark arent you.ogg b/sound/voice/ScawwySownds/youre afraid of the dark arent you.ogg new file mode 100644 index 0000000000..0ab4311f72 Binary files /dev/null and b/sound/voice/ScawwySownds/youre afraid of the dark arent you.ogg differ 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 0000000000..e9dd96dafe 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 0000000000..08964be8b7 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 0000000000..1342ade723 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 0000000000..70f3e95917 Binary files /dev/null and b/sound/voice/lwarble.ogg differ diff --git a/sound/voice/succlet_shriek.ogg b/sound/voice/succlet_shriek.ogg new file mode 100644 index 0000000000..25e9ba3c03 Binary files /dev/null and b/sound/voice/succlet_shriek.ogg differ diff --git a/tgui/package.json b/tgui/package.json index c8ea6dfb14..8f7b0fa6e0 100644 --- a/tgui/package.json +++ b/tgui/package.json @@ -55,7 +55,7 @@ "style-loader": "^3.3.1", "terser-webpack-plugin": "^5.3.1", "typescript": "^4.6.4", - "webpack": "^5.72.1", + "webpack": "^5.76.0", "webpack-bundle-analyzer": "^4.5.0", "webpack-cli": "^4.9.2" } diff --git a/tgui/packages/tgui/interfaces/IDCard.js b/tgui/packages/tgui/interfaces/IDCard.js index 8d9d40ef8c..854a43b9c1 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 da0d5894d6..70314bc2f6 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)} /> -