diff --git a/.github/workflows/autowiki.yml b/.github/workflows/autowiki.yml
new file mode 100644
index 000000000000..82d0ac76f32f
--- /dev/null
+++ b/.github/workflows/autowiki.yml
@@ -0,0 +1,52 @@
+name: Autowiki
+on:
+ schedule:
+ - cron: "5 4 * * *"
+ workflow_dispatch:
+permissions:
+ contents: read
+
+jobs:
+ autowiki:
+ runs-on: ubuntu-20.04
+ steps:
+ - name: "Check for AUTOWIKI_USERNAME"
+ id: secrets_set
+ env:
+ ENABLER_SECRET: ${{ secrets.AUTOWIKI_USERNAME }}
+ run: |
+ unset SECRET_EXISTS
+ if [ -n "$ENABLER_SECRET" ]; then SECRET_EXISTS=true ; fi
+ echo "SECRETS_ENABLED=$SECRET_EXISTS" >> $GITHUB_OUTPUT
+ - name: Checkout
+ if: steps.secrets_set.outputs.SECRETS_ENABLED
+ uses: actions/checkout@v3
+ - name: Restore BYOND cache
+ if: steps.secrets_set.outputs.SECRETS_ENABLED
+ uses: actions/cache@v3
+ with:
+ path: ~/BYOND
+ key: ${{ runner.os }}-byond-${{ secrets.CACHE_PURGE_KEY }}
+ - name: Install rust-g
+ if: steps.secrets_set.outputs.SECRETS_ENABLED
+ run: |
+ sudo dpkg --add-architecture i386
+ sudo apt update || true
+ sudo apt install -o APT::Immediate-Configure=false libssl1.1:i386
+ bash tools/ci/install_rust_g.sh
+ - name: Compile and generate Autowiki files
+ if: steps.secrets_set.outputs.SECRETS_ENABLED
+ run: |
+ bash tools/ci/install_byond.sh
+ source $HOME/BYOND/byond/bin/byondsetup
+ tools/build/build --ci autowiki
+ - name: Run Autowiki
+ if: steps.secrets_set.outputs.SECRETS_ENABLED
+ env:
+ USERNAME: ${{ secrets.AUTOWIKI_USERNAME }}
+ PASSWORD: ${{ secrets.AUTOWIKI_PASSWORD }}
+ run: |
+ cd tools/autowiki
+ npm install
+ cd ../..
+ node tools/autowiki/autowiki.js data/autowiki_edits.txt data/autowiki_files/
diff --git a/code/__DEFINES/__game.dm b/code/__DEFINES/__game.dm
index 3116d7f19555..113b78dbada1 100644
--- a/code/__DEFINES/__game.dm
+++ b/code/__DEFINES/__game.dm
@@ -39,6 +39,7 @@ block( \
#define MAP_RUNTIME "USS Runtime"
#define MAP_LV522_CHANCES_CLAIM "LV-522 Chance's Claim" // Highpop Only
#define MAP_NEW_VARADERO "New Varadero"//ice colony underground but as its own map
+#define MAP_CHINOOK "Chinook 91 GSO" //admin level
#define GAMEMODE_WHISKEY_OUTPOST "Whiskey Outpost"
#define GAMEMODE_HIVE_WARS "Hive Wars"
diff --git a/code/__DEFINES/access.dm b/code/__DEFINES/access.dm
index dcc8e4bf6c4b..044271be9b5a 100644
--- a/code/__DEFINES/access.dm
+++ b/code/__DEFINES/access.dm
@@ -42,6 +42,7 @@ most of them are tied into map-placed objects. This should be reworked in the fu
#define ACCESS_MARINE_OT 35
#define ACCESS_MARINE_SYNTH 36
+#define ACCESS_MARINE_ASO 37
// AI Core Accesses
/// Used in temporary passes
diff --git a/code/__DEFINES/job.dm b/code/__DEFINES/job.dm
index d598a8ff6f67..eac5121f173e 100644
--- a/code/__DEFINES/job.dm
+++ b/code/__DEFINES/job.dm
@@ -72,10 +72,13 @@ var/global/list/job_squad_roles = JOB_SQUAD_ROLES_LIST
#define JOB_COMMAND_ROLES_LIST list(JOB_CO, JOB_XO, JOB_SO)
var/global/list/job_command_roles = JOB_COMMAND_ROLES_LIST
+#define JOB_AUXILIARY_OFFICER "Auxiliary Support Officer"
#define JOB_PILOT "Pilot Officer"
#define JOB_DROPSHIP_CREW_CHIEF "Dropship Crew Chief"
#define JOB_CREWMAN "Vehicle Crewman"
#define JOB_INTEL "Intelligence Officer"
+#define JOB_AUXILIARY_ROLES /datum/timelock/auxiliary
+#define JOB_AUXILIARY_ROLES_LIST list(JOB_PILOT, JOB_DROPSHIP_CREW_CHIEF, JOB_CREWMAN, JOB_INTEL)
#define JOB_POLICE "Military Police"
#define JOB_WARDEN "Military Warden"
@@ -91,7 +94,7 @@ var/global/list/job_command_roles = JOB_COMMAND_ROLES_LIST
#define JOB_ENGINEER_ROLES /datum/timelock/engineer
#define JOB_ENGINEER_ROLES_LIST list(JOB_SQUAD_ENGI, JOB_MAINT_TECH, JOB_ORDNANCE_TECH, JOB_CHIEF_ENGINEER)
-#define JOB_CHIEF_REQUISITION "Requisitions Officer"
+#define JOB_CHIEF_REQUISITION "Quartermaster"
#define JOB_CARGO_TECH "Cargo Technician"
#define JOB_REQUISITION_ROLES /datum/timelock/requisition
#define JOB_REQUISITION_ROLES_LIST list(JOB_CHIEF_REQUISITION, JOB_CARGO_TECH)
@@ -143,7 +146,7 @@ var/global/list/job_command_roles = JOB_COMMAND_ROLES_LIST
#define JOB_WO_CHIEF_ENGINEER "Bunker Crew Master"
#define JOB_WO_ORDNANCE_TECH "Bunker Crew"
-#define JOB_WO_CHIEF_REQUISITION "Quartermaster"
+#define JOB_WO_CHIEF_REQUISITION "Bunker Quartermaster"
#define JOB_WO_REQUISITION "Bunker Crew Logistics"
#define JOB_WO_CMO "Head Surgeon"
@@ -344,11 +347,12 @@ var/global/list/job_command_roles = JOB_COMMAND_ROLES_LIST
#define JOB_PLAYTIME_TIER_4 (175 HOURS)
#define XENO_NO_AGE -1
-#define XENO_NORMAL 0
-#define XENO_MATURE 1
-#define XENO_ELDER 2
-#define XENO_ANCIENT 3
-#define XENO_PRIME 4
+#define XENO_YOUNG 0
+#define XENO_NORMAL 1
+#define XENO_MATURE 2
+#define XENO_ELDER 3
+#define XENO_ANCIENT 4
+#define XENO_PRIME 5
/// For monthly time tracking
#define JOB_OBSERVER "Observer"
diff --git a/code/__DEFINES/lighting.dm b/code/__DEFINES/lighting.dm
index ac050e467a71..5a4ba7676233 100644
--- a/code/__DEFINES/lighting.dm
+++ b/code/__DEFINES/lighting.dm
@@ -1,3 +1,5 @@
#define LIGHTING_PLANE_ALPHA_VISIBLE 255
+///The dim natural vision of Yautja
+#define LIGHTING_PLANE_ALPHA_YAUTJA 235
#define LIGHTING_PLANE_ALPHA_MOSTLY_INVISIBLE 127
#define LIGHTING_PLANE_ALPHA_INVISIBLE 0
diff --git a/code/__DEFINES/minimap.dm b/code/__DEFINES/minimap.dm
index ca6d9718cd0c..c9f21484f622 100644
--- a/code/__DEFINES/minimap.dm
+++ b/code/__DEFINES/minimap.dm
@@ -60,6 +60,7 @@ GLOBAL_LIST_INIT(all_minimap_flags, bitfield2list(MINIMAP_FLAG_ALL))
#define MINIMAP_ICON_COLOR_COMMANDER "#c6fcfc"
#define MINIMAP_ICON_COLOR_HEAD "#F0C542"
+#define MINIMAP_ICON_COLOR_SILVER "#c0c0c0"
#define MINIMAP_ICON_COLOR_BRONZE "#eb9545"
#define MINIMAP_ICON_COLOR_DOCTOR "#b83737"
diff --git a/code/__DEFINES/mode.dm b/code/__DEFINES/mode.dm
index 32a292d0d8cc..bb31f4d84b1e 100644
--- a/code/__DEFINES/mode.dm
+++ b/code/__DEFINES/mode.dm
@@ -108,12 +108,12 @@
//=================================================
//Role defines, specifically lists of roles for job bans, crew manifests and the like.
-var/global/list/ROLES_COMMAND = list(JOB_CO, JOB_XO, JOB_SO, JOB_INTEL, JOB_PILOT, JOB_DROPSHIP_CREW_CHIEF, JOB_CREWMAN, JOB_POLICE, JOB_CORPORATE_LIAISON, JOB_COMBAT_REPORTER, JOB_CHIEF_REQUISITION, JOB_CHIEF_ENGINEER, JOB_CMO, JOB_CHIEF_POLICE, JOB_SEA, JOB_SYNTH, JOB_WARDEN)
+var/global/list/ROLES_COMMAND = list(JOB_CO, JOB_XO, JOB_SO, JOB_AUXILIARY_OFFICER, JOB_INTEL, JOB_PILOT, JOB_DROPSHIP_CREW_CHIEF, JOB_CREWMAN, JOB_POLICE, JOB_CORPORATE_LIAISON, JOB_COMBAT_REPORTER, JOB_CHIEF_REQUISITION, JOB_CHIEF_ENGINEER, JOB_CMO, JOB_CHIEF_POLICE, JOB_SEA, JOB_SYNTH, JOB_WARDEN)
//Marine roles
-#define ROLES_OFFICERS list(JOB_CO, JOB_XO, JOB_SO, JOB_INTEL, JOB_PILOT, JOB_DROPSHIP_CREW_CHIEF, JOB_SEA, JOB_CORPORATE_LIAISON, JOB_COMBAT_REPORTER, JOB_SYNTH, JOB_CHIEF_POLICE, JOB_WARDEN, JOB_POLICE)
+#define ROLES_OFFICERS list(JOB_CO, JOB_XO, JOB_SO, JOB_AUXILIARY_OFFICER, JOB_INTEL, JOB_PILOT, JOB_DROPSHIP_CREW_CHIEF, JOB_SEA, JOB_CORPORATE_LIAISON, JOB_COMBAT_REPORTER, JOB_SYNTH, JOB_CHIEF_POLICE, JOB_WARDEN, JOB_POLICE)
var/global/list/ROLES_CIC = list(JOB_CO, JOB_XO, JOB_SO, JOB_WO_CO, JOB_WO_XO)
-var/global/list/ROLES_AUXIL_SUPPORT = list(JOB_INTEL, JOB_PILOT, JOB_DROPSHIP_CREW_CHIEF, JOB_WO_CHIEF_POLICE, JOB_WO_SO, JOB_WO_CREWMAN, JOB_WO_POLICE, JOB_WO_PILOT)
+var/global/list/ROLES_AUXIL_SUPPORT = list(JOB_AUXILIARY_OFFICER, JOB_INTEL, JOB_PILOT, JOB_DROPSHIP_CREW_CHIEF, JOB_WO_CHIEF_POLICE, JOB_WO_SO, JOB_WO_CREWMAN, JOB_WO_POLICE, JOB_WO_PILOT)
var/global/list/ROLES_MISC = list(JOB_SYNTH, JOB_WORKING_JOE, JOB_SEA, JOB_CORPORATE_LIAISON, JOB_COMBAT_REPORTER, JOB_MESS_SERGEANT, JOB_WO_CORPORATE_LIAISON, JOB_WO_SYNTH)
var/global/list/ROLES_POLICE = list(JOB_CHIEF_POLICE, JOB_WARDEN, JOB_POLICE)
var/global/list/ROLES_ENGINEERING = list(JOB_CHIEF_ENGINEER, JOB_ORDNANCE_TECH, JOB_MAINT_TECH, JOB_WO_CHIEF_ENGINEER, JOB_WO_ORDNANCE_TECH)
@@ -185,7 +185,7 @@ var/global/list/whitelist_hierarchy = list(WHITELIST_NORMAL, WHITELIST_COUNCIL,
#define WHITELIST_EVERYTHING (WHITELISTS_GENERAL|WHITELISTS_COUNCIL|WHITELISTS_LEADER)
-#define isCouncil(A) (RoleAuthority.roles_whitelist[A.ckey] & (WHITELIST_YAUTJA_COUNCIL | WHITELIST_SYNTHETIC_COUNCIL | WHITELIST_COMMANDER_COUNCIL))
+#define isCouncil(A) (RoleAuthority.roles_whitelist[A.ckey] & WHITELIST_YAUTJA_COUNCIL) || (RoleAuthority.roles_whitelist[A.ckey] & WHITELIST_SYNTHETIC_COUNCIL) || (RoleAuthority.roles_whitelist[A.ckey] & WHITELIST_COMMANDER_COUNCIL)
//=================================================
diff --git a/code/__DEFINES/skills.dm b/code/__DEFINES/skills.dm
index 8e1bde82c839..fdd1a8f083ad 100644
--- a/code/__DEFINES/skills.dm
+++ b/code/__DEFINES/skills.dm
@@ -39,14 +39,24 @@
//spec_weapons skill
//hidden. who can and can't use specialist weapons
#define SKILL_SPEC_DEFAULT 0
-#define SKILL_SPEC_ROCKET 1 //can use the demolitionist specialist gear
-#define SKILL_SPEC_SCOUT 2
-#define SKILL_SPEC_SNIPER 3
-#define SKILL_SPEC_GRENADIER 4
-#define SKILL_SPEC_PYRO 5
-#define SKILL_SPEC_SMARTGUN 6 //for smartgunners
-#define SKILL_SPEC_UPP 7 //for upp
-#define SKILL_SPEC_ALL 8 //can use all specialist gear
+/// Is trained to use specialist gear, but hasn't picked a kit.
+#define SKILL_SPEC_TRAINED 1
+/// Can use RPG
+#define SKILL_SPEC_ROCKET 2
+/// Can use thermal cloaks and custom M4RA rifle
+#define SKILL_SPEC_SCOUT 3
+/// Can use sniper rifles and camo suits
+#define SKILL_SPEC_SNIPER 4
+/// Can use the rotary grenade launcher and heavy armor
+#define SKILL_SPEC_GRENADIER 5
+/// Can use heavy flamers
+#define SKILL_SPEC_PYRO 6
+/// Can use smartguns
+#define SKILL_SPEC_SMARTGUN 7
+/// UPP special training
+#define SKILL_SPEC_UPP 8
+/// Can use ALL specialist weapons
+#define SKILL_SPEC_ALL 9
//construction skill
#define SKILL_CONSTRUCTION_DEFAULT 0
diff --git a/code/__DEFINES/traits.dm b/code/__DEFINES/traits.dm
index 288604434e34..1aaf3714182e 100644
--- a/code/__DEFINES/traits.dm
+++ b/code/__DEFINES/traits.dm
@@ -127,6 +127,8 @@
#define TRAIT_INTENT_EYES "t_intent_eyes"
/// Masked synthetic biology. Basic medHUDs will percieve the mob as human. (Infiltrator Synths)
#define TRAIT_INFILTRATOR_SYNTH "t_infiltrator_synth"
+/// Makes it impossible to strip the inventory of this mob.
+#define TRAIT_UNSTRIPPABLE "t_unstrippable"
// HIVE TRAITS
/// If the Hive is a Xenonid Hive
@@ -251,6 +253,7 @@ GLOBAL_LIST_INIT(traits_by_type, list(
"TRAIT_FOREIGN_BIO" = TRAIT_FOREIGN_BIO,
"TRAIT_INTENT_EYES" = TRAIT_INTENT_EYES,
"TRAIT_INFILTRATOR_SYNTH" = TRAIT_INFILTRATOR_SYNTH,
+ "TRAIT_UNSTRIPPABLE" = TRAIT_UNSTRIPPABLE,
"TRAIT_NESTED" = TRAIT_NESTED,
"TRAIT_CRAWLER" = TRAIT_CRAWLER,
"TRAIT_SIMPLE_DESC" = TRAIT_SIMPLE_DESC,
diff --git a/code/__DEFINES/urls.dm b/code/__DEFINES/urls.dm
index e12ec1079589..4d9268220f2b 100644
--- a/code/__DEFINES/urls.dm
+++ b/code/__DEFINES/urls.dm
@@ -34,7 +34,8 @@
#define URL_WIKI_CMP_GUIDE "https://cm-ss13.com/wiki/Chief_MP" // MP Roles //
#define URL_WIKI_MW_GUIDE "https://cm-ss13.com/wiki/Warden"
#define URL_WIKI_MP_GUIDE "https://cm-ss13.com/wiki/Military_Police"
-#define URL_WIKI_PO_GUIDE "https://cm-ss13.com/wiki/Pilot_Officer" // Auxiliary Support
+#define URL_WIKI_ASO_GUIDE "https://cm-ss13.com/wiki/Auxiliary_Support_Officer" // Auxiliary Support
+#define URL_WIKI_PO_GUIDE "https://cm-ss13.com/wiki/Pilot_Officer"
#define URL_WIKI_DCC_GUIDE "https://cm-ss13.com/wiki/Dropship_Crew_Chief"
#define URL_WIKI_IO_GUIDE "https://cm-ss13.com/wiki/Intelligence_Officer"
#define URL_WIKI_SYN_GUIDE "https://cm-ss13.com/wiki/Synthetic"
diff --git a/code/__DEFINES/weapon_stats.dm b/code/__DEFINES/weapon_stats.dm
index bef8413e9615..590223426a66 100644
--- a/code/__DEFINES/weapon_stats.dm
+++ b/code/__DEFINES/weapon_stats.dm
@@ -136,19 +136,21 @@ As such, don't expect any values assigned to common firearms to even consider ho
//How many ticks you have to wait between firing. Burst delay uses the same variable!
*/
-#define FIRE_DELAY_TIER_1 10
-#define FIRE_DELAY_TIER_2 9
-#define FIRE_DELAY_TIER_3 8
-#define FIRE_DELAY_TIER_4 7
-#define FIRE_DELAY_TIER_5 6
-#define FIRE_DELAY_TIER_6 5
-#define FIRE_DELAY_TIER_7 4
-#define FIRE_DELAY_TIER_8 3
-#define FIRE_DELAY_TIER_9 2
-#define FIRE_DELAY_TIER_LMG 1.5
-#define FIRE_DELAY_TIER_SG 1.5
-#define FIRE_DELAY_TIER_SMG 1.3
-#define FIRE_DELAY_TIER_10 1
+#define FIRE_DELAY_TIER_1 12
+#define FIRE_DELAY_TIER_2 10
+#define FIRE_DELAY_TIER_3 9
+#define FIRE_DELAY_TIER_4 8
+#define FIRE_DELAY_TIER_5 7
+#define FIRE_DELAY_TIER_6 6
+#define FIRE_DELAY_TIER_7 5
+#define FIRE_DELAY_TIER_8 4
+#define FIRE_DELAY_TIER_9 3.5
+#define FIRE_DELAY_TIER_10 3
+#define FIRE_DELAY_TIER_11 2.5
+#define FIRE_DELAY_TIER_LMG 2
+#define FIRE_DELAY_TIER_SG 2
+#define FIRE_DELAY_TIER_SMG 1.5
+#define FIRE_DELAY_TIER_12 1
/*
////RANGE RELATED////
diff --git a/code/__DEFINES/xeno.dm b/code/__DEFINES/xeno.dm
index 222222a09d54..0f822385ad13 100644
--- a/code/__DEFINES/xeno.dm
+++ b/code/__DEFINES/xeno.dm
@@ -168,6 +168,12 @@
/// The amount of time after round start before buried larva spawns are disallowed
#define XENO_BURIED_LARVA_TIME_LIMIT (30 MINUTES)
+/// The time when xenos can start taking over comm towers
+#define XENO_COMM_ACQUISITION_TIME (90 MINUTES)
+
+/// The time it takes for a pylon to give one larva while activated
+#define XENO_PYLON_ACTIVATION_COOLDOWN (5 MINUTES)
+
/// The time against away_timer when an AFK xeno larva can be replaced
#define XENO_LEAVE_TIMER_LARVA 80 //80 seconds
/// The time against away_timer when an AFK xeno (not larva) can be replaced
diff --git a/code/controllers/configuration/entries/general.dm b/code/controllers/configuration/entries/general.dm
index 7988ff6d1a95..976256cb6c97 100644
--- a/code/controllers/configuration/entries/general.dm
+++ b/code/controllers/configuration/entries/general.dm
@@ -621,3 +621,5 @@ This maintains a list of ip addresses that are able to bypass topic filtering.
/datum/config_entry/string/instance_name
config_entry_value = "game"
protection = CONFIG_ENTRY_HIDDEN|CONFIG_ENTRY_LOCKED
+
+/datum/config_entry/flag/guest_ban
diff --git a/code/datums/diseases/black_goo.dm b/code/datums/diseases/black_goo.dm
index 97aec074d2d3..38a26f3648c7 100644
--- a/code/datums/diseases/black_goo.dm
+++ b/code/datums/diseases/black_goo.dm
@@ -124,7 +124,7 @@
icon = 'icons/mob/humans/species/r_zombie.dmi'
icon_state = "claw_l"
flags_item = NODROP|DELONDROP|ITEM_ABSTRACT
- force = 40
+ force = MELEE_FORCE_TIER_6 //slightly higher than normal
w_class = SIZE_MASSIVE
sharp = 1
attack_verb = list("slashed", "torn", "scraped", "gashed", "ripped")
@@ -135,8 +135,9 @@
return FALSE
. = ..()
- if(.)
- playsound(loc, 'sound/weapons/bladeslice.ogg', 25, 1, 5)
+ if(!.)
+ return FALSE
+ playsound(loc, 'sound/weapons/bladeslice.ogg', 25, 1, 5)
if(ishuman_strict(target))
var/mob/living/carbon/human/human = target
@@ -149,10 +150,7 @@
target.AddDisease(new /datum/disease/black_goo)
to_chat(user, SPAN_XENOWARNING("You sense your target is now infected."))
- if(issynth(target))
- target.apply_effect(2, SLOW)
- else
- target.apply_effect(2, SUPERSLOW)
+ target.apply_effect(2, SLOW)
/obj/item/weapon/zombie_claws/afterattack(obj/O as obj, mob/user as mob, proximity)
if(get_dist(src, O) > 1)
diff --git a/code/datums/emergency_calls/cryo_marines.dm b/code/datums/emergency_calls/cryo_marines.dm
index fb4a0d94e177..e7dcba08ed61 100644
--- a/code/datums/emergency_calls/cryo_marines.dm
+++ b/code/datums/emergency_calls/cryo_marines.dm
@@ -12,15 +12,17 @@
name_of_spawn = /obj/effect/landmark/ert_spawns/distress_cryo
shuttle_id = ""
var/leaders = 0
+ spawn_max_amount = TRUE
/datum/emergency_call/cryo_squad/spawn_candidates(announce, override_spawn_loc, announce_dispatch_message)
var/datum/squad/marine/cryo/cryo_squad = RoleAuthority.squads_by_type[/datum/squad/marine/cryo]
leaders = cryo_squad.num_leaders
. = ..()
- if(length(members))
- shipwide_ai_announcement("Successfully deployed [length(members)] Foxtrot marines.")
+ shipwide_ai_announcement("Successfully deployed [mob_max] Foxtrot marines, of which [length(members)] are ready for duty.")
+ if(mob_max > length(members))
+ announce_dchat("Some cryomarines were not taken, use the Join As Freed Mob verb to take one of them.")
-/datum/emergency_call/cryo_squad/create_member(datum/mind/M, turf/override_spawn_loc)
+/datum/emergency_call/cryo_squad/create_member(datum/mind/mind, turf/override_spawn_loc)
set waitfor = 0
if(SSmapping.configs[GROUND_MAP].map_name == MAP_WHISKEY_OUTPOST)
name_of_spawn = /obj/effect/landmark/ert_spawns/distress_wo
@@ -28,49 +30,61 @@
if(!istype(spawn_loc)) return //Didn't find a useable spawn point.
- var/mob/living/carbon/human/H = new(spawn_loc)
- M.transfer_to(H, TRUE)
+ var/mob/living/carbon/human/human = new(spawn_loc)
+
+ if(mind)
+ mind.transfer_to(human, TRUE)
+ else
+ human.create_hud()
+
+ if(!mind)
+ for(var/obj/structure/machinery/cryopod/pod in view(7,human))
+ if(pod && !pod.occupant)
+ pod.go_in_cryopod(human, silent = TRUE)
+ break
sleep(5)
var/datum/squad/marine/cryo/cryo_squad = RoleAuthority.squads_by_type[/datum/squad/marine/cryo]
- if(leaders < cryo_squad.max_leaders && HAS_FLAG(H.client.prefs.toggles_ert, PLAY_LEADER) && check_timelock(H.client, JOB_SQUAD_LEADER, time_required_for_job))
- leader = H
+ if(leaders < cryo_squad.max_leaders && (!mind || (HAS_FLAG(human.client.prefs.toggles_ert, PLAY_LEADER) && check_timelock(human.client, JOB_SQUAD_LEADER, time_required_for_job))))
+ leader = human
leaders++
- H.client.prefs.copy_all_to(H, JOB_SQUAD_LEADER, TRUE, TRUE)
- arm_equipment(H, /datum/equipment_preset/uscm/leader/cryo, FALSE, TRUE)
- to_chat(H, SPAN_ROLE_HEADER("You are a Squad Leader in the USCM"))
- to_chat(H, SPAN_ROLE_BODY("You are here to assist in the defence of the [SSmapping.configs[GROUND_MAP].map_name]. Listen to the chain of command."))
- to_chat(H, SPAN_BOLDWARNING("If you wish to cryo or ghost upon spawning in, you must ahelp and inform staff so you can be replaced."))
- else if (heavies < max_heavies && HAS_FLAG(H.client.prefs.toggles_ert, PLAY_HEAVY) && check_timelock(H.client, JOB_SQUAD_SPECIALIST, time_required_for_job))
+ human.client?.prefs.copy_all_to(human, JOB_SQUAD_LEADER, TRUE, TRUE)
+ arm_equipment(human, /datum/equipment_preset/uscm/leader/cryo, mind == null, TRUE)
+ to_chat(human, SPAN_ROLE_HEADER("You are a Squad Leader in the USCM"))
+ to_chat(human, SPAN_ROLE_BODY("You are here to assist in the defence of the [SSmapping.configs[GROUND_MAP].map_name]. Listen to the chain of command."))
+ to_chat(human, SPAN_BOLDWARNING("If you wish to cryo or ghost upon spawning in, you must ahelp and inform staff so you can be replaced."))
+ else if (heavies < max_heavies && (!mind || (HAS_FLAG(human.client.prefs.toggles_ert, PLAY_HEAVY) && check_timelock(human.client, JOB_SQUAD_SPECIALIST, time_required_for_job))))
heavies++
- H.client.prefs.copy_all_to(H, JOB_SQUAD_SPECIALIST, TRUE, TRUE)
- arm_equipment(H, /datum/equipment_preset/uscm/spec/cryo, FALSE, TRUE)
- to_chat(H, SPAN_ROLE_HEADER("You are a Weapons Specialist in the USCM"))
- to_chat(H, SPAN_ROLE_BODY("Your squad is here to assist in the defence of the [SSmapping.configs[GROUND_MAP].map_name]. Listen to the chain of command."))
- to_chat(H, SPAN_BOLDWARNING("If you wish to cryo or ghost upon spawning in, you must ahelp and inform staff so you can be replaced."))
- else if (medics < max_medics && HAS_FLAG(H.client.prefs.toggles_ert, PLAY_MEDIC) && check_timelock(H.client, JOB_SQUAD_MEDIC, time_required_for_job))
+ human.client?.prefs.copy_all_to(human, JOB_SQUAD_SPECIALIST, TRUE, TRUE)
+ arm_equipment(human, /datum/equipment_preset/uscm/spec/cryo, mind == null, TRUE)
+ to_chat(human, SPAN_ROLE_HEADER("You are a Weapons Specialist in the USCM"))
+ to_chat(human, SPAN_ROLE_BODY("Your squad is here to assist in the defence of the [SSmapping.configs[GROUND_MAP].map_name]. Listen to the chain of command."))
+ to_chat(human, SPAN_BOLDWARNING("If you wish to cryo or ghost upon spawning in, you must ahelp and inform staff so you can be replaced."))
+ else if (medics < max_medics && (!mind || (HAS_FLAG(human.client.prefs.toggles_ert, PLAY_MEDIC) && check_timelock(human.client, JOB_SQUAD_MEDIC, time_required_for_job))))
medics++
- H.client.prefs.copy_all_to(H, JOB_SQUAD_MEDIC, TRUE, TRUE)
- arm_equipment(H, /datum/equipment_preset/uscm/medic/cryo, FALSE, TRUE)
- to_chat(H, SPAN_ROLE_HEADER("You are a Hospital Corpsman in the USCM"))
- to_chat(H, SPAN_ROLE_BODY("You are here to assist in the defence of the [SSmapping.configs[GROUND_MAP].map_name]. Listen to the chain of command."))
- to_chat(H, SPAN_BOLDWARNING("If you wish to cryo or ghost upon spawning in, you must ahelp and inform staff so you can be replaced."))
- else if (engineers < max_engineers && HAS_FLAG(H.client.prefs.toggles_ert, PLAY_ENGINEER) && check_timelock(H.client, JOB_SQUAD_ENGI, time_required_for_job))
+ human.client?.prefs.copy_all_to(human, JOB_SQUAD_MEDIC, TRUE, TRUE)
+ arm_equipment(human, /datum/equipment_preset/uscm/medic/cryo, mind == null, TRUE)
+ to_chat(human, SPAN_ROLE_HEADER("You are a Hospital Corpsman in the USCM"))
+ to_chat(human, SPAN_ROLE_BODY("You are here to assist in the defence of the [SSmapping.configs[GROUND_MAP].map_name]. Listen to the chain of command."))
+ to_chat(human, SPAN_BOLDWARNING("If you wish to cryo or ghost upon spawning in, you must ahelp and inform staff so you can be replaced."))
+ else if (engineers < max_engineers && (!mind || (HAS_FLAG(human.client.prefs.toggles_ert, PLAY_ENGINEER) && check_timelock(human.client, JOB_SQUAD_ENGI, time_required_for_job))))
engineers++
- H.client.prefs.copy_all_to(H, JOB_SQUAD_ENGI, TRUE, TRUE)
- arm_equipment(H, /datum/equipment_preset/uscm/engineer/cryo, FALSE, TRUE)
- to_chat(H, SPAN_ROLE_HEADER("You are an Engineer in the USCM"))
- to_chat(H, SPAN_ROLE_BODY("You are here to assist in the defence of the [SSmapping.configs[GROUND_MAP].map_name]. Listen to the chain of command."))
- to_chat(H, SPAN_BOLDWARNING("If you wish to cryo or ghost upon spawning in, you must ahelp and inform staff so you can be replaced."))
+ human.client?.prefs.copy_all_to(human, JOB_SQUAD_ENGI, TRUE, TRUE)
+ arm_equipment(human, /datum/equipment_preset/uscm/engineer/cryo, mind == null, TRUE)
+ to_chat(human, SPAN_ROLE_HEADER("You are an Engineer in the USCM"))
+ to_chat(human, SPAN_ROLE_BODY("You are here to assist in the defence of the [SSmapping.configs[GROUND_MAP].map_name]. Listen to the chain of command."))
+ to_chat(human, SPAN_BOLDWARNING("If you wish to cryo or ghost upon spawning in, you must ahelp and inform staff so you can be replaced."))
else
- H.client.prefs.copy_all_to(H, JOB_SQUAD_MARINE, TRUE, TRUE)
- arm_equipment(H, /datum/equipment_preset/uscm/pfc/cryo, FALSE, TRUE)
- to_chat(H, SPAN_ROLE_HEADER("You are a Rifleman in the USCM"))
- to_chat(H, SPAN_ROLE_BODY("You are here to assist in the defence of the [SSmapping.configs[GROUND_MAP].map_name]. Listen to the chain of command."))
- to_chat(H, SPAN_BOLDWARNING("If you wish to cryo or ghost upon spawning in, you must ahelp and inform staff so you can be replaced."))
+ human.client?.prefs.copy_all_to(human, JOB_SQUAD_MARINE, TRUE, TRUE)
+ arm_equipment(human, /datum/equipment_preset/uscm/pfc/cryo, mind == null, TRUE)
+ to_chat(human, SPAN_ROLE_HEADER("You are a Rifleman in the USCM"))
+ to_chat(human, SPAN_ROLE_BODY("You are here to assist in the defence of the [SSmapping.configs[GROUND_MAP].map_name]. Listen to the chain of command."))
+ to_chat(human, SPAN_BOLDWARNING("If you wish to cryo or ghost upon spawning in, you must ahelp and inform staff so you can be replaced."))
sleep(10)
- to_chat(H, SPAN_BOLD("Objectives: [objectives]"))
+ if(!mind)
+ human.free_for_ghosts()
+ to_chat(human, SPAN_BOLD("Objectives: [objectives]"))
/datum/emergency_call/cryo_squad/platoon
name = "Marine Cryo Reinforcements (Platoon)"
diff --git a/code/datums/factions/uscm.dm b/code/datums/factions/uscm.dm
index 4d13e7d285ca..cf77142ce5d6 100644
--- a/code/datums/factions/uscm.dm
+++ b/code/datums/factions/uscm.dm
@@ -77,6 +77,9 @@
if(JOB_SO)
marine_rk = "so"
border_rk = "command"
+ if(JOB_AUXILIARY_OFFICER)
+ marine_rk = "aso"
+ border_rk = "command"
if(JOB_GENERAL, JOB_COLONEL, JOB_ACMC, JOB_CMC)
marine_rk = "general"
border_rk = "command"
diff --git a/code/datums/medal_awards.dm b/code/datums/medal_awards.dm
index a7db6f7bd6e3..54af48fd3345 100644
--- a/code/datums/medal_awards.dm
+++ b/code/datums/medal_awards.dm
@@ -20,9 +20,10 @@ GLOBAL_LIST_EMPTY(jelly_awards)
var/recipient_rank
var/recipient_ckey
var/mob/recipient_mob
- var/list/giver_name // Actually key for xenos
- var/list/giver_rank // Actually name for xenos
+ var/list/giver_name // Designation for xenos
+ var/list/giver_rank // "Name" for xenos
var/list/giver_mob
+ var/list/giver_ckey
/datum/recipient_awards/New()
medal_names = list()
@@ -32,6 +33,7 @@ GLOBAL_LIST_EMPTY(jelly_awards)
giver_name = list()
giver_rank = list()
giver_mob = list()
+ giver_ckey = list()
/proc/give_medal_award(medal_location, as_admin = FALSE)
@@ -116,12 +118,13 @@ GLOBAL_LIST_EMPTY(jelly_awards)
recipient_award.medal_names += medal_type
recipient_award.medal_citations += citation
recipient_award.posthumous += posthumous
+ recipient_award.giver_ckey += usr.ckey
if(!as_admin)
recipient_award.giver_rank += recipient_ranks[usr.real_name] // Currently not used in marine award message
recipient_award.giver_name += usr.real_name // Currently not used in marine award message
else
- recipient_award.giver_rank += "([usr.ckey])" // Just because it'll be displayed in the panel
+ recipient_award.giver_rank += null
recipient_award.giver_name += null
// Create an actual medal item
@@ -258,15 +261,21 @@ GLOBAL_LIST_EMPTY(jelly_awards)
recipient_award.medal_names += medal_type
recipient_award.medal_citations += citation
recipient_award.posthumous += posthumous
+ recipient_award.giver_ckey += usr.ckey
+
if(!admin_attribution)
recipient_award.giver_rank += usr.name
- recipient_award.giver_name += usr.key
+ var/mob/living/carbon/xenomorph/giving_xeno = usr
+ if(istype(giving_xeno))
+ recipient_award.giver_name += giving_xeno.full_designation
+ else
+ recipient_award.giver_name += null
else if(admin_attribution == "none")
recipient_award.giver_rank += null
recipient_award.giver_name += null
else
recipient_award.giver_rank += admin_attribution
- recipient_award.giver_name += null // If not null, rescinding it will take stats away from a mob with this key
+ recipient_award.giver_name += null
recipient_award.medal_items += null // TODO: Xeno award item?
@@ -337,6 +346,7 @@ GLOBAL_LIST_EMPTY(jelly_awards)
recipient_award.giver_name.Cut(index, index + 1)
recipient_award.giver_rank.Cut(index, index + 1)
recipient_award.giver_mob.Cut(index, index + 1)
+ recipient_award.giver_ckey.Cut(index, index + 1)
recipient_award.medal_items.Cut(index, index + 1)
// Remove giver's stat
diff --git a/code/datums/mob_hud.dm b/code/datums/mob_hud.dm
index c1f67e93a53c..aa1bc9b40783 100644
--- a/code/datums/mob_hud.dm
+++ b/code/datums/mob_hud.dm
@@ -441,9 +441,9 @@ var/list/datum/mob_hud/huds = list(
holder2_set = 1
return
- holder.icon_state = "huddead"
+ holder.icon_state = HAS_TRAIT(src, TRAIT_HARDCORE) || MODE_HAS_TOGGLEABLE_FLAG(MODE_HARDCORE_PERMA) ? "hudhcdead" : "huddead"
if(!holder2_set)
- holder2.icon_state = "huddead"
+ holder2.icon_state = holder.icon_state
holder3.icon_state = "huddead"
holder2_set = 1
diff --git a/code/datums/redis/callbacks/asay.dm b/code/datums/redis/callbacks/asay.dm
index 2ccbca08fb6c..9c60a394a4ac 100644
--- a/code/datums/redis/callbacks/asay.dm
+++ b/code/datums/redis/callbacks/asay.dm
@@ -7,10 +7,10 @@
if(data["source"] == SSredis.instance_name)
return
- var/msg = SPAN_ADMINSAY("[data["rank"]]: [data["author"]]@[data["source"]]: [strip_html(data["message"])]")
+ var/msg = SPAN_MOD("[data["rank"]]: [data["author"]]@[data["source"]]: [strip_html(data["message"])]")
for(var/client/client in GLOB.admins)
- if(!(R_ADMIN & client.admin_holder.rights))
+ if(!(R_ADMIN & client.admin_holder.rights) && !(R_MOD & client.admin_holder.rights))
continue
to_chat(client, msg)
diff --git a/code/datums/skills.dm b/code/datums/skills.dm
index 7d58a64d9d13..9bc53007173d 100644
--- a/code/datums/skills.dm
+++ b/code/datums/skills.dm
@@ -597,6 +597,7 @@ COMMAND STAFF
SKILL_SURGERY = SKILL_SURGERY_NOVICE,
SKILL_POLICE = SKILL_POLICE_SKILLED,
SKILL_FIREMAN = SKILL_FIREMAN_SKILLED,
+ SKILL_VEHICLE = SKILL_VEHICLE_SMALL,
SKILL_CQC = SKILL_CQC_SKILLED,
SKILL_SPEC_WEAPONS = SKILL_SPEC_SMARTGUN,
SKILL_POWERLOADER = SKILL_POWERLOADER_MASTER,
@@ -616,6 +617,7 @@ COMMAND STAFF
SKILL_MEDICAL = SKILL_MEDICAL_DOCTOR,
SKILL_SURGERY = SKILL_SURGERY_NOVICE,
SKILL_POLICE = SKILL_POLICE_FLASH,
+ SKILL_VEHICLE = SKILL_VEHICLE_SMALL,
SKILL_FIREMAN = SKILL_FIREMAN_SKILLED,
SKILL_CQC = SKILL_CQC_SKILLED,
SKILL_POWERLOADER = SKILL_POWERLOADER_MASTER,
@@ -699,6 +701,24 @@ COMMAND STAFF
SKILL_INTEL = SKILL_INTEL_TRAINED,
)
+/datum/skills/auxiliary_officer
+ name = "Auxiliary Support Officer"
+ skills = list(
+ SKILL_PILOT = SKILL_PILOT_EXPERT,
+ SKILL_POWERLOADER = SKILL_POWERLOADER_MASTER,
+ SKILL_LEADERSHIP = SKILL_LEAD_MASTER,
+ SKILL_MEDICAL = SKILL_MEDICAL_MEDIC,
+ SKILL_SURGERY = SKILL_SURGERY_NOVICE,
+ SKILL_JTAC = SKILL_JTAC_EXPERT,
+ SKILL_INTEL = SKILL_INTEL_EXPERT,
+ SKILL_VEHICLE = SKILL_VEHICLE_SMALL,
+ SKILL_ENGINEER = SKILL_ENGINEER_ENGI,
+ SKILL_CONSTRUCTION = SKILL_CONSTRUCTION_ENGI,
+ SKILL_POLICE = SKILL_POLICE_FLASH,
+ SKILL_NAVIGATIONS = SKILL_NAVIGATIONS_TRAINED,
+ SKILL_FIREMAN = SKILL_FIREMAN_TRAINED,
+ )
+
/datum/skills/CE
name = "Chief Engineer"
skills = list(
@@ -989,7 +1009,7 @@ United States Colonial Marines
SKILL_CQC = SKILL_CQC_TRAINED,
SKILL_CONSTRUCTION = SKILL_CONSTRUCTION_TRAINED,
SKILL_ENGINEER = SKILL_ENGINEER_TRAINED, //to use c4 in demo set.
- SKILL_SPEC_WEAPONS = SKILL_SPEC_ALL,
+ SKILL_SPEC_WEAPONS = SKILL_SPEC_TRAINED,
SKILL_MELEE_WEAPONS = SKILL_MELEE_TRAINED,
SKILL_ENDURANCE = SKILL_ENDURANCE_TRAINED,
SKILL_JTAC = SKILL_JTAC_BEGINNER
diff --git a/code/datums/statistics/random_facts/random_fact.dm b/code/datums/statistics/random_facts/random_fact.dm
index 2a83c7b2c1ad..76c6e82f776d 100644
--- a/code/datums/statistics/random_facts/random_fact.dm
+++ b/code/datums/statistics/random_facts/random_fact.dm
@@ -41,6 +41,8 @@
list_to_check += GLOB.living_xeno_list
for(var/mob/checked_mob as anything in list_to_check)
+ if(!checked_mob?.persistent_ckey)
+ continue // We don't care about NPCs
if(living_stat_gotten < life_grab_stat(checked_mob))
mob_to_report = checked_mob
living_stat_gotten = life_grab_stat(checked_mob)
diff --git a/code/datums/supply_packs/attachments.dm b/code/datums/supply_packs/attachments.dm
index 2a812e94cfc1..b685e5c3c37f 100644
--- a/code/datums/supply_packs/attachments.dm
+++ b/code/datums/supply_packs/attachments.dm
@@ -84,17 +84,6 @@
containername = "extended barrel attachment crate"
group = "Attachments"
-/datum/supply_packs/muzzle_heavy
- name = "barrel charger attachment crate (x2)"
- contains = list(
- /obj/item/attachable/heavy_barrel,
- /obj/item/attachable/heavy_barrel,
- )
- cost = 30
- containertype = /obj/structure/closet/crate
- containername = "heavy barrel attachment crate"
- group = "Attachments"
-
/datum/supply_packs/muzzle_compensator
name = "compensator attachment crate (x6)"
contains = list(
diff --git a/code/datums/supply_packs/clothing.dm b/code/datums/supply_packs/clothing.dm
index 0e7604ead7c7..1c7241bb253b 100644
--- a/code/datums/supply_packs/clothing.dm
+++ b/code/datums/supply_packs/clothing.dm
@@ -110,7 +110,7 @@
/datum/supply_packs/officer_outfits//lmao this shit is so hideously out of date
contains = list(
- /obj/item/clothing/under/rank/ro_suit,
+ /obj/item/clothing/under/rank/qm_suit,
/obj/item/clothing/under/marine/officer/bridge,
/obj/item/clothing/under/marine/officer/bridge,
/obj/item/clothing/under/marine/officer/exec,
diff --git a/code/game/area/Sulaco.dm b/code/game/area/Sulaco.dm
index ffc087ad9851..851025e1b63a 100644
--- a/code/game/area/Sulaco.dm
+++ b/code/game/area/Sulaco.dm
@@ -13,6 +13,7 @@
is_resin_allowed = FALSE
flags_area = AREA_NOTUNNEL
is_landing_zone = TRUE
+ ceiling = CEILING_REINFORCED_METAL
/area/shuttle/drop1/Enter(atom/movable/O, atom/oldloc)
if(istype(O, /obj/structure/barricade))
@@ -23,36 +24,30 @@
name = "\improper Dropship Alamo"
icon_state = "shuttlered"
base_muffle = MUFFLE_HIGH
- ceiling = CEILING_REINFORCED_METAL
/area/shuttle/drop1/LV624
name = "\improper Dropship Alamo"
ambience_exterior = AMBIENCE_LV624
icon_state = "shuttle"
- ceiling = CEILING_REINFORCED_METAL
/area/shuttle/drop1/prison
name = "\improper Dropship Alamo"
ambience_exterior = AMBIENCE_PRISON
icon_state = "shuttle"
- ceiling = CEILING_REINFORCED_METAL
/area/shuttle/drop1/BigRed
name = "\improper Dropship Alamo"
ambience_exterior = AMBIENCE_BIGRED
icon_state = "shuttle"
- ceiling = CEILING_REINFORCED_METAL
/area/shuttle/drop1/ice_colony
name = "\improper Dropship Alamo"
icon_state = "shuttle"
- ceiling = CEILING_REINFORCED_METAL
/area/shuttle/drop1/DesertDam
name = "\improper Dropship Alamo"
ambience_exterior = AMBIENCE_TRIJENT
icon_state = "shuttle"
- ceiling = CEILING_REINFORCED_METAL
/area/shuttle/drop1/transit
ambience_exterior = 'sound/ambience/dropship_ambience_loop.ogg'
@@ -75,41 +70,36 @@
is_resin_allowed = FALSE
flags_area = AREA_NOTUNNEL
is_landing_zone = TRUE
+ ceiling = CEILING_REINFORCED_METAL
/area/shuttle/drop2/sulaco
name = "\improper Dropship Normandy"
icon_state = "shuttle"
base_muffle = MUFFLE_HIGH
- ceiling = CEILING_REINFORCED_METAL
/area/shuttle/drop2/LV624
name = "\improper Dropship Normandy"
ambience_exterior = AMBIENCE_LV624
icon_state = "shuttle2"
- ceiling = CEILING_REINFORCED_METAL
/area/shuttle/drop2/prison
name = "\improper Dropship Normandy"
ambience_exterior = AMBIENCE_PRISON
icon_state = "shuttle2"
- ceiling = CEILING_REINFORCED_METAL
/area/shuttle/drop2/BigRed
name = "\improper Dropship Normandy"
ambience_exterior = AMBIENCE_BIGRED
icon_state = "shuttle2"
- ceiling = CEILING_REINFORCED_METAL
/area/shuttle/drop2/ice_colony
name = "\improper Dropship Normandy"
icon_state = "shuttle2"
- ceiling = CEILING_REINFORCED_METAL
/area/shuttle/drop2/DesertDam
name = "\improper Dropship Normandy"
ambience_exterior = AMBIENCE_TRIJENT
icon_state = "shuttle2"
- ceiling = CEILING_REINFORCED_METAL
/area/shuttle/drop2/transit
ambience_exterior = 'sound/ambience/dropship_ambience_loop.ogg'
diff --git a/code/game/area/almayer.dm b/code/game/area/almayer.dm
index d19cbd3a6dec..6ced81a22b15 100644
--- a/code/game/area/almayer.dm
+++ b/code/game/area/almayer.dm
@@ -317,6 +317,11 @@
icon_state = "livingspace"
fake_zlevel = 2
+/area/almayer/living/auxiliary_officer_office
+ name = "\improper Auxiliary Support Officer office"
+ icon_state = "livingspace"
+ fake_zlevel = 2
+
/area/almayer/squads/tankdeliveries
name = "\improper Vehicle ASRS"
icon_state = "req"
diff --git a/code/game/area/strata.dm b/code/game/area/strata.dm
index 91bdff277c3d..1cf0eac58d1c 100644
--- a/code/game/area/strata.dm
+++ b/code/game/area/strata.dm
@@ -50,6 +50,10 @@ EXTERIOR is FUCKING FREEZING, and refers to areas out in the open and or exposed
temperature = T20C //Nice and room temp
ceiling = CEILING_METAL
+/area/strata/ag/interior/mountain
+ name = "Outside mountain"
+ icon_state = "ag_e"
+
/area/strata/ag/interior/restricted
is_resin_allowed = FALSE
flags_area = AREA_NOTUNNEL
diff --git a/code/game/gamemodes/cm_initialize.dm b/code/game/gamemodes/cm_initialize.dm
index efb92dd1678e..becee89adb6d 100644
--- a/code/game/gamemodes/cm_initialize.dm
+++ b/code/game/gamemodes/cm_initialize.dm
@@ -969,7 +969,7 @@ Additional game mode variables.
log_debug("Null client attempted to transform_joe")
return
- var/turf/spawn_point = get_turf(pick(GLOB.latejoin))
+ var/turf/spawn_point = get_turf(pick(GLOB.latejoin_by_job[JOB_WORKING_JOE]))
var/mob/living/carbon/human/synthetic/new_joe = new(spawn_point)
joe_candidate.mind.transfer_to(new_joe, TRUE)
var/datum/job/joe_job = RoleAuthority.roles_by_name[JOB_WORKING_JOE]
diff --git a/code/game/gamemodes/cm_process.dm b/code/game/gamemodes/cm_process.dm
index 82f0902e2f8c..33377f7dc6fd 100644
--- a/code/game/gamemodes/cm_process.dm
+++ b/code/game/gamemodes/cm_process.dm
@@ -58,18 +58,18 @@ of predators), but can be added to include variant game modes (like humans vs. h
if(LAZYLEN(xenomorphs) || LAZYLEN(dead_queens))
var/dat = "
"
dat += SPAN_ROUNDBODY("
The xenomorph Queen(s) were:")
- var/mob/M
+ var/mob/living/carbon/xenomorph/xeno_mob
for (var/msg in dead_queens)
dat += msg
- for(var/datum/mind/X in xenomorphs)
- if(!istype(X))
+ for(var/datum/mind/xeno_mind in xenomorphs)
+ if(!istype(xeno_mind))
continue
- M = X.current
- if(!M || !M.loc)
- M = X.original
- if(M && M.loc && isqueen(M) && M.stat != DEAD) // Dead queens handled separately
- dat += "
[X.key] was [M] [SPAN_BOLDNOTICE("(SURVIVED)")]"
+ xeno_mob = xeno_mind.current
+ if(!xeno_mob || !xeno_mob.loc)
+ xeno_mob = xeno_mind.original
+ if(xeno_mob && xeno_mob.loc && isqueen(xeno_mob) && xeno_mob.stat != DEAD) // Dead queens handled separately
+ dat += "
[xeno_mob.full_designation] was [xeno_mob] [SPAN_BOLDNOTICE("(SURVIVED)")]"
to_world("[dat]")
diff --git a/code/game/jobs/access.dm b/code/game/jobs/access.dm
index 54f79ce32881..425a09afb591 100644
--- a/code/game/jobs/access.dm
+++ b/code/game/jobs/access.dm
@@ -156,6 +156,7 @@
ACCESS_MARINE_KITCHEN,
ACCESS_MARINE_SYNTH,
ACCESS_PRESS,
+ ACCESS_MARINE_ASO,
)
/proc/get_all_weyland_access()
diff --git a/code/game/jobs/job/civilians/other/mess_seargent.dm b/code/game/jobs/job/civilians/other/mess_seargent.dm
index 37e0b01ad711..615df24ecb47 100644
--- a/code/game/jobs/job/civilians/other/mess_seargent.dm
+++ b/code/game/jobs/job/civilians/other/mess_seargent.dm
@@ -4,7 +4,7 @@
spawn_positions = 1
selection_class = "job_ot"
flags_startup_parameters = ROLE_ADD_TO_DEFAULT
- supervisors = "the acting commanding officer"
+ supervisors = "the auxiliary support officer"
gear_preset = /datum/equipment_preset/uscm_ship/chef
entry_message_body = "Your job is to service the marines with excellent food, drinks and entertaining the shipside crew when needed. You have a lot of freedom and it is up to you, to decide what to do with it. Good luck!"
diff --git a/code/game/jobs/job/command/auxiliary/auxiliary_support_officer.dm b/code/game/jobs/job/command/auxiliary/auxiliary_support_officer.dm
new file mode 100644
index 000000000000..262ba271edbf
--- /dev/null
+++ b/code/game/jobs/job/command/auxiliary/auxiliary_support_officer.dm
@@ -0,0 +1,26 @@
+/datum/job/command/auxiliary_officer
+ title = JOB_AUXILIARY_OFFICER
+ total_positions = 1
+ spawn_positions = 1
+ allow_additional = TRUE
+ flags_startup_parameters = ROLE_ADD_TO_DEFAULT
+ gear_preset = /datum/equipment_preset/uscm_ship/auxiliary_officer
+ entry_message_body = "Your job is to oversee the hangar crew, the intel officers, the engineering department, and requisition department. You have many responsibilities and a few plates to keep spinning but your subordinates are mostly self-reliant. Assist where you can and make sure command personnel are confident the auxiliary departments are operating at peak efficiency."
+
+AddTimelock(/datum/job/command/auxiliary_officer, list(
+ JOB_SQUAD_ROLES = 5 HOURS,
+ JOB_REQUISITION_ROLES = 5 HOURS,
+ JOB_ENGINEER_ROLES = 5 HOURS,
+ JOB_AUXILIARY_ROLES = 5 HOURS,
+))
+
+/obj/effect/landmark/start/auxiliary_officer
+ name = JOB_AUXILIARY_OFFICER
+ job = /datum/job/command/auxiliary_officer
+
+/datum/timelock/auxiliary
+ name = "Auxiliary Roles"
+
+/datum/timelock/auxiliary/New(name, time_required, list/roles)
+ . = ..()
+ src.roles = JOB_AUXILIARY_ROLES_LIST
diff --git a/code/game/jobs/job/command/auxiliary/crew_chief.dm b/code/game/jobs/job/command/auxiliary/crew_chief.dm
index 3bf7f0bcd33e..5f846bf6581e 100644
--- a/code/game/jobs/job/command/auxiliary/crew_chief.dm
+++ b/code/game/jobs/job/command/auxiliary/crew_chief.dm
@@ -4,6 +4,7 @@
spawn_positions = 2
allow_additional = TRUE
scaled = TRUE
+ supervisors = "the pilot officers"
flags_startup_parameters = ROLE_ADD_TO_DEFAULT
gear_preset = /datum/equipment_preset/uscm_ship/dcc
entry_message_body = "Your job is to assist the pilot officer maintain the ship's dropship. You have authority only on the dropship, but you are expected to maintain order, as not to disrupt the pilot."
diff --git a/code/game/jobs/job/command/auxiliary/intel.dm b/code/game/jobs/job/command/auxiliary/intel.dm
index f30bb62e8d72..10b8381c417e 100644
--- a/code/game/jobs/job/command/auxiliary/intel.dm
+++ b/code/game/jobs/job/command/auxiliary/intel.dm
@@ -5,6 +5,7 @@
spawn_positions = 3
allow_additional = 1
scaled = 1
+ supervisors = "the auxiliary support officer"
flags_startup_parameters = ROLE_ADD_TO_DEFAULT
gear_preset = "USCM Intelligence Officer (IO) (Cryo)"
entry_message_body = "Your job is to assist the marines in collecting intelligence related to the current operation to better inform command of their opposition. You are in charge of gathering any data disks, folders, and notes you may find on the operational grounds and decrypt them to grant the USCM additional resources."
diff --git a/code/game/jobs/job/command/auxiliary/pilot.dm b/code/game/jobs/job/command/auxiliary/pilot.dm
index b7c9d15fa366..57495fe8be28 100644
--- a/code/game/jobs/job/command/auxiliary/pilot.dm
+++ b/code/game/jobs/job/command/auxiliary/pilot.dm
@@ -4,6 +4,7 @@
spawn_positions = 2
allow_additional = TRUE
scaled = TRUE
+ supervisors = "the auxiliary support officer"
flags_startup_parameters = ROLE_ADD_TO_DEFAULT
gear_preset = /datum/equipment_preset/uscm_ship/po
entry_message_body = "Your job is to fly, protect, and maintain the ship's dropship. While you are an officer, your authority is limited to the dropship, where you have authority over the enlisted personnel. If you are not piloting, there is an autopilot fallback for command, but don't leave the dropship without reason."
diff --git a/code/game/jobs/job/logistics/cargo/chief_req.dm b/code/game/jobs/job/logistics/cargo/chief_req.dm
index ffdb04da3421..3b6fb7262a80 100644
--- a/code/game/jobs/job/logistics/cargo/chief_req.dm
+++ b/code/game/jobs/job/logistics/cargo/chief_req.dm
@@ -1,9 +1,8 @@
-//Requisitions Officer
/datum/job/logistics/requisition
title = JOB_CHIEF_REQUISITION
- selection_class = "job_ro"
+ selection_class = "job_qm"
flags_startup_parameters = ROLE_ADD_TO_DEFAULT
- gear_preset = /datum/equipment_preset/uscm_ship/ro
+ gear_preset = /datum/equipment_preset/uscm_ship/qm
entry_message_body = "Your job is to dispense supplies to the marines, including weapon attachments. Your cargo techs can help you out, but you have final say in your department. Make sure they're not goofing off. While you may request paperwork for supplies, do not go out of your way to screw with marines, unless you want to get deposed. A happy ship is a well-functioning ship."
AddTimelock(/datum/job/logistics/requisition, list(
diff --git a/code/game/jobs/job/logistics/logistics.dm b/code/game/jobs/job/logistics/logistics.dm
index 6c0a2d0447e1..ef4364354067 100644
--- a/code/game/jobs/job/logistics/logistics.dm
+++ b/code/game/jobs/job/logistics/logistics.dm
@@ -1,5 +1,5 @@
/datum/job/logistics
- supervisors = "the acting commanding officer"
+ supervisors = "the auxiliary support officer"
total_positions = 1
spawn_positions = 1
diff --git a/code/game/machinery/cryopod.dm b/code/game/machinery/cryopod.dm
index 9c0a227008c3..ed7335ea8778 100644
--- a/code/game/machinery/cryopod.dm
+++ b/code/game/machinery/cryopod.dm
@@ -193,7 +193,7 @@ GLOBAL_LIST_INIT(frozen_items, list(SQUAD_MARINE_1 = list(), SQUAD_MARINE_2 = li
//Lifted from Unity stasis.dm and refactored. ~Zuhayr
/obj/structure/machinery/cryopod/process()
- if(occupant)
+ if(occupant && !(WEAKREF(occupant) in GLOB.freed_mob_list)) //ignore freed mobs
//if occupant ghosted, time till despawn is severely shorter
if(!occupant.key && time_till_despawn == 10 MINUTES)
time_till_despawn -= 8 MINUTES
diff --git a/code/game/machinery/iv_drip.dm b/code/game/machinery/iv_drip.dm
index b538f55292c1..ef6c74a052cd 100644
--- a/code/game/machinery/iv_drip.dm
+++ b/code/game/machinery/iv_drip.dm
@@ -11,6 +11,8 @@
var/mode = 1 // 1 is injecting, 0 is taking blood.
var/obj/item/reagent_container/beaker = null
var/datum/beam/current_beam
+ //make it so that IV doesn't require power to function.
+ use_power = USE_POWER_NONE
/obj/structure/machinery/iv_drip/update_icon()
if(attached)
@@ -39,38 +41,31 @@
overlays += filling
/obj/structure/machinery/iv_drip/proc/update_beam()
- if(current_beam)
+ if(current_beam && !attached)
QDEL_NULL(current_beam)
- else if(!QDELETED(src) && attached)
+ else if(!current_beam && attached && !QDELETED(src))
current_beam = beam(attached, "iv_tube")
-/obj/structure/machinery/iv_drip/power_change()
- . = ..()
- if(stat & NOPOWER && attached)
- visible_message("\The [src] retracts its IV tube and shuts down.")
- attached.active_transfusions -= src
- attached = null
- update_beam()
- update_icon()
-
/obj/structure/machinery/iv_drip/Destroy()
attached?.active_transfusions -= src
+ attached = null
update_beam()
. = ..()
/obj/structure/machinery/iv_drip/MouseDrop(over_object, src_location, over_location)
..()
- if(inoperable())
- visible_message("\The [src] is not powered.")
- return
if(ishuman(usr))
- var/mob/living/carbon/human/H = usr
- if(H.stat || get_dist(H, src) > 1 || H.blinded || H.lying)
+ var/mob/living/carbon/human/user = usr
+ if(user.stat || get_dist(user, src) > 1 || user.blinded || user.lying)
+ return
+
+ if(!skillcheck(user, SKILL_SURGERY, SKILL_SURGERY_NOVICE))
+ to_chat(user, SPAN_WARNING("You don't know how to [attached ? "disconnect" : "connect"] this!"))
return
if(attached)
- H.visible_message("[H] detaches \the [src] from \the [attached].", \
+ user.visible_message("[user] detaches \the [src] from \the [attached].", \
"You detach \the [src] from \the [attached].")
attached.active_transfusions -= src
attached = null
@@ -80,7 +75,7 @@
return
if(in_range(src, usr) && iscarbon(over_object) && get_dist(over_object, src) <= 1)
- H.visible_message("[H] attaches \the [src] to \the [over_object].", \
+ user.visible_message("[user] attaches \the [src] to \the [over_object].", \
"You attach \the [src] to \the [over_object].")
attached = over_object
attached.active_transfusions += src
@@ -88,27 +83,27 @@
update_icon()
start_processing()
-
-/obj/structure/machinery/iv_drip/attackby(obj/item/W, mob/living/user)
- if (istype(W, /obj/item/reagent_container))
+/obj/structure/machinery/iv_drip/attackby(obj/item/container, mob/living/user)
+ if (istype(container, /obj/item/reagent_container))
if(beaker)
to_chat(user, SPAN_WARNING("There is already a reagent container loaded!"))
return
- if((!istype(W, /obj/item/reagent_container/blood) && !istype(W, /obj/item/reagent_container/glass)) || istype(W, /obj/item/reagent_container/glass/bucket))
+ if((!istype(container, /obj/item/reagent_container/blood) && !istype(container, /obj/item/reagent_container/glass)) || istype(container, /obj/item/reagent_container/glass/bucket))
to_chat(user, SPAN_WARNING("That won't fit!"))
return
- if(user.drop_inv_item_to_loc(W, src))
- beaker = W
+ if(user.drop_inv_item_to_loc(container, src))
+ beaker = container
var/reagentnames = ""
- for(var/datum/reagent/R in beaker.reagents.reagent_list)
- reagentnames += ";[R.name]"
+
+ for(var/datum/reagent/chem in beaker.reagents.reagent_list)
+ reagentnames += ";[chem.name]"
log_admin("[key_name(user)] put a [beaker] into [src], containing [reagentnames] at ([src.loc.x],[src.loc.y],[src.loc.z]).")
- to_chat(user, "You attach \the [W] to \the [src].")
+ to_chat(user, "You attach \the [container] to \the [src].")
update_beam()
update_icon()
return
@@ -151,20 +146,20 @@
if(prob(5)) visible_message("\The [src] pings.")
return
- var/mob/living/carbon/T = attached
+ var/mob/living/carbon/patient = attached
- if(!istype(T))
+ if(!istype(patient))
return
- if(ishuman(T))
- var/mob/living/carbon/human/H = T
- if(H.species && H.species.flags & NO_BLOOD)
+ if(ishuman(patient))
+ var/mob/living/carbon/human/human_patient = patient
+ if(human_patient.species && human_patient.species.flags & NO_BLOOD)
return
// If the human is losing too much blood, beep.
- if(T.blood_volume < BLOOD_VOLUME_SAFE) if(prob(5))
+ if(patient.blood_volume < BLOOD_VOLUME_SAFE) if(prob(5))
visible_message("\The [src] beeps loudly.")
- T.take_blood(beaker,amount)
+ patient.take_blood(beaker,amount)
update_icon()
/obj/structure/machinery/iv_drip/attack_hand(mob/user as mob)
diff --git a/code/game/machinery/telecomms/presets.dm b/code/game/machinery/telecomms/presets.dm
index c56360953650..47d4bb20849b 100644
--- a/code/game/machinery/telecomms/presets.dm
+++ b/code/game/machinery/telecomms/presets.dm
@@ -212,12 +212,27 @@ GLOBAL_LIST_EMPTY(all_static_telecomms_towers)
freq_listening = list(COLONY_FREQ)
var/toggle_cooldown = 0
+ /// Tower has been taken over by xenos, is not usable
+ var/corrupted = FALSE
+
+ /// Held image for the current overlay on the tower from xeno corruption
+ var/image/corruption_image
+
+/obj/structure/machinery/telecomms/relay/preset/tower/mapcomms/Initialize()
+ . = ..()
+
+ RegisterSignal(src, COMSIG_ATOM_TURF_CHANGE, PROC_REF(register_with_turf))
+ register_with_turf()
+
/obj/structure/machinery/telecomms/relay/preset/tower/mapcomms/attack_hand(mob/user)
if(user.action_busy)
return
if(toggle_cooldown > world.time) //cooldown only to prevent spam toggling
to_chat(user, SPAN_WARNING("\The [src]'s processors are still cooling! Wait before trying to flip the switch again."))
return
+ if(corrupted)
+ to_chat(user, SPAN_WARNING("[src] is entangled in resin. Impossible to interact with."))
+ return
var/current_state = on
if(!do_after(user, 20, INTERRUPT_NO_NEEDHAND|BEHAVIOR_IMMOBILE, BUSY_ICON_FRIENDLY, src))
return
@@ -282,6 +297,84 @@ GLOBAL_LIST_EMPTY(all_static_telecomms_towers)
else
update_icon()
+/// Handles xenos corrupting the tower when weeds touch the turf it is located on
+/obj/structure/machinery/telecomms/relay/preset/tower/mapcomms/proc/handle_xeno_acquisition(turf/weeded_turf)
+ SIGNAL_HANDLER
+
+ if(corrupted)
+ return
+
+ if(!weeded_turf.weeds)
+ return
+
+ if(weeded_turf.weeds.weed_strength < WEED_LEVEL_HIVE)
+ return
+
+ if(!weeded_turf.weeds.parent)
+ return
+
+ if(!istype(weeded_turf.weeds.parent, /obj/effect/alien/weeds/node/pylon/cluster))
+ return
+
+ if(SSticker.mode.is_in_endgame)
+ return
+
+ if(ROUND_TIME < XENO_COMM_ACQUISITION_TIME)
+ addtimer(CALLBACK(src, PROC_REF(handle_xeno_acquisition), weeded_turf), (XENO_COMM_ACQUISITION_TIME - ROUND_TIME))
+ return
+
+ var/obj/effect/alien/weeds/node/pylon/cluster/parent_node = weeded_turf.weeds.parent
+
+ var/obj/effect/alien/resin/special/cluster/cluster_parent = parent_node.resin_parent
+
+ var/list/held_children_weeds = parent_node.children
+ var/cluster_loc = cluster_parent.loc
+ var/linked_hive = cluster_parent.linked_hive
+
+ parent_node.children = list()
+
+ qdel(cluster_parent)
+
+ var/obj/effect/alien/resin/special/pylon/endgame/new_pylon = new(cluster_loc, linked_hive)
+ new_pylon.node.children = held_children_weeds
+
+ for(var/obj/effect/alien/weeds/weed in new_pylon.node.children)
+ weed.parent = new_pylon.node
+
+ RegisterSignal(new_pylon, COMSIG_PARENT_QDELETING, PROC_REF(uncorrupt))
+
+ corrupted = TRUE
+
+ corruption_image = image(icon, icon_state = "resin_growing")
+
+ flick_overlay(src, corruption_image, (2 SECONDS))
+ addtimer(CALLBACK(src, PROC_REF(switch_to_idle_corruption)), (2 SECONDS))
+
+ new_pylon.comms_relay_connection()
+
+/// Handles removing corruption effects from the comms relay
+/obj/structure/machinery/telecomms/relay/preset/tower/mapcomms/proc/uncorrupt(datum/deleting_datum)
+ SIGNAL_HANDLER
+
+ corrupted = FALSE
+
+ overlays -= corruption_image
+
+/// Handles moving the overlay from growing to idle
+/obj/structure/machinery/telecomms/relay/preset/tower/mapcomms/proc/switch_to_idle_corruption()
+ if(!corrupted)
+ return
+
+ corruption_image = image(icon, icon_state = "resin_idle")
+
+ overlays += corruption_image
+
+/// Handles re-registering signals on new turfs if changed
+/obj/structure/machinery/telecomms/relay/preset/tower/mapcomms/proc/register_with_turf()
+ SIGNAL_HANDLER
+
+ RegisterSignal(get_turf(src), COMSIG_WEEDNODE_GROWTH, PROC_REF(handle_xeno_acquisition))
+
/obj/structure/machinery/telecomms/relay/preset/telecomms
id = "Telecomms Relay"
autolinkers = list("relay")
diff --git a/code/game/machinery/vending/cm_vending.dm b/code/game/machinery/vending/cm_vending.dm
index 57d0e49a58bc..bf7c4fffee65 100644
--- a/code/game/machinery/vending/cm_vending.dm
+++ b/code/game/machinery/vending/cm_vending.dm
@@ -472,7 +472,7 @@ GLOBAL_LIST_EMPTY(vending_products)
to_chat(user, SPAN_WARNING("Only specialists can take specialist sets."))
vend_fail()
return FALSE
- else if(!user.skills || user.skills.get_skill_level(SKILL_SPEC_WEAPONS) != SKILL_SPEC_ALL)
+ else if(!user.skills || user.skills.get_skill_level(SKILL_SPEC_WEAPONS) != SKILL_SPEC_TRAINED)
to_chat(user, SPAN_WARNING("You already have a specialization."))
vend_fail()
return FALSE
diff --git a/code/game/machinery/vending/vendor_types/crew/commanding_officer.dm b/code/game/machinery/vending/vendor_types/crew/commanding_officer.dm
index 3d6a48b45daa..fac4182ea5fe 100644
--- a/code/game/machinery/vending/vendor_types/crew/commanding_officer.dm
+++ b/code/game/machinery/vending/vendor_types/crew/commanding_officer.dm
@@ -42,7 +42,6 @@ GLOBAL_LIST_INIT(cm_vending_gear_commanding_officer, list(
list("Underbarrel Flamethrower", 15, /obj/item/attachable/attached_gun/flamer, null, VENDOR_ITEM_REGULAR),
list("BARREL ATTACHMENTS", 0, null, null, null),
- list("Barrel Charger", 25, /obj/item/attachable/heavy_barrel, null, VENDOR_ITEM_RECOMMENDED),
list("Suppressor", 15, /obj/item/attachable/suppressor, null, VENDOR_ITEM_REGULAR),
list("Extended Barrel", 15, /obj/item/attachable/extended_barrel, null, VENDOR_ITEM_REGULAR),
list("Recoil Compensator", 15, /obj/item/attachable/compensator, null, VENDOR_ITEM_REGULAR),
diff --git a/code/game/machinery/vending/vendor_types/crew/mp.dm b/code/game/machinery/vending/vendor_types/crew/mp.dm
index cdf374249211..b63a02248168 100644
--- a/code/game/machinery/vending/vendor_types/crew/mp.dm
+++ b/code/game/machinery/vending/vendor_types/crew/mp.dm
@@ -1,38 +1,50 @@
//------------ MP CLOTHING VENDOR---------------
GLOBAL_LIST_INIT(cm_vending_clothing_military_police, list(
+ list("POLICE SET (MANDATORY)", 0, null, null, null),
+ list("Essential Police Set", 0, /obj/effect/essentials_set/police, MARINE_CAN_BUY_ESSENTIALS, VENDOR_ITEM_MANDATORY),
+
list("STANDARD EQUIPMENT (TAKE ALL)", 0, null, null, null),
list("Gloves", 0, /obj/item/clothing/gloves/marine, MARINE_CAN_BUY_GLOVES, VENDOR_ITEM_MANDATORY),
list("Uniform", 0, /obj/item/clothing/under/marine/mp, MARINE_CAN_BUY_UNIFORM, VENDOR_ITEM_MANDATORY),
list("Headset", 0, /obj/item/device/radio/headset/almayer/mmpo, MARINE_CAN_BUY_EAR, VENDOR_ITEM_MANDATORY),
- list("Satchel", 0, /obj/item/storage/backpack/satchel/sec, MARINE_CAN_BUY_BACKPACK, VENDOR_ITEM_MANDATORY),
-
- list("PERSONAL SIDEARM (CHOOSE 1)", 0, null, null, null),
- list("M44 Revolver", 0, /obj/item/storage/belt/gun/m44/mp, MARINE_CAN_BUY_BELT, VENDOR_ITEM_RECOMMENDED),
- list("M4A3 Pistol", 0, /obj/item/storage/belt/gun/m4a3/full, MARINE_CAN_BUY_BELT, VENDOR_ITEM_RECOMMENDED),
- list("Mod 88 Pistol", 0, /obj/item/storage/belt/gun/m4a3/mod88, MARINE_CAN_BUY_BELT, VENDOR_ITEM_RECOMMENDED),
+ list("Marine Combat Boots", 0, /obj/item/clothing/shoes/marine/knife, MARINE_CAN_BUY_SHOES, VENDOR_ITEM_MANDATORY),
list("ARMOR (TAKE ALL)", 0, null, null, null),
list("Military Police M2 Armor", 0, /obj/item/clothing/suit/storage/marine/MP, MARINE_CAN_BUY_ARMOR, VENDOR_ITEM_MANDATORY),
+ list("MP Beret", 0, /obj/item/clothing/head/beret/marine/mp, MARINE_CAN_BUY_HELMET, VENDOR_ITEM_MANDATORY),
- list("COMBAT EQUIPMENT (TAKE ALL)", 0, null, null, null),
- list("Military Police M10 Helmet", 0, /obj/item/clothing/head/helmet/marine/MP, MARINE_CAN_BUY_HELMET, VENDOR_ITEM_MANDATORY),
- list("Marine Combat Boots", 0, /obj/item/clothing/shoes/marine/knife, MARINE_CAN_BUY_SHOES, VENDOR_ITEM_MANDATORY),
+ list("HANDGUN CASE (CHOOSE 1)", 0, null, null, null),
+ list("88 mod 4 Combat Pistol Case", 0, /obj/item/storage/box/guncase/mod88, MARINE_CAN_BUY_SECONDARY, VENDOR_ITEM_MANDATORY),
+ list("M44 Combat Revolver Case", 0, /obj/item/storage/box/guncase/m44, MARINE_CAN_BUY_SECONDARY, VENDOR_ITEM_MANDATORY),
+ list("M4A3 Service Pistol Case", 0, /obj/item/storage/box/guncase/m4a3, MARINE_CAN_BUY_SECONDARY, VENDOR_ITEM_MANDATORY),
- list("EYEWEAR (TAKE ALL)", 0, null, null, null),
- list("Security HUD Glasses", 0, /obj/item/clothing/glasses/sunglasses/sechud, MARINE_CAN_BUY_GLASSES, VENDOR_ITEM_REGULAR),
+ list("BACKPACK (CHOOSE 1)", 0, null, null, null),
+ list("Military Police Satchel", 0, /obj/item/storage/backpack/satchel/sec, MARINE_CAN_BUY_BACKPACK, VENDOR_ITEM_MANDATORY),
+
+ list("BELT (CHOOSE 1)", 0, null, null, null),
+ list("M276 General Pistol Holster Rig", 0, /obj/item/storage/belt/gun/m4a3, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
+ list("M276 M44 Holster Rig", 0, /obj/item/storage/belt/gun/m44, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
+ list("M276 G8-A General Utility Pouch", 0, /obj/item/storage/backpack/general_belt, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
list("POUCHES (CHOOSE 2)", 0, null, null, null),
- list("First-Aid Pouch (Full)", 0, /obj/item/storage/pouch/firstaid/full, MARINE_CAN_BUY_POUCH, VENDOR_ITEM_REGULAR),
list("Medium General Pouch", 0, /obj/item/storage/pouch/general/medium, MARINE_CAN_BUY_POUCH, VENDOR_ITEM_REGULAR),
+ list("First-Aid Pouch (Refillable Injectors)", 0, /obj/item/storage/pouch/firstaid/full, MARINE_CAN_BUY_POUCH, VENDOR_ITEM_RECOMMENDED),
+ list("First-Aid Pouch (Splints, Gauze, Ointment)", 0, /obj/item/storage/pouch/firstaid/full/alternate, MARINE_CAN_BUY_POUCH, VENDOR_ITEM_RECOMMENDED),
+ list("First-Aid Pouch (Pill Packets)", 0, /obj/item/storage/pouch/firstaid/full/pills, MARINE_CAN_BUY_POUCH, VENDOR_ITEM_RECOMMENDED),
+ list("Pistol Magazine Pouch", 0, /obj/item/storage/pouch/magazine/pistol, MARINE_CAN_BUY_POUCH, VENDOR_ITEM_REGULAR),
+ list("Pistol Pouch", 0, /obj/item/storage/pouch/pistol, MARINE_CAN_BUY_POUCH, VENDOR_ITEM_REGULAR),
+
+ list("MASK (CHOOSE 1)", 0, null, null, null),
+ list("Gas Mask", 0, /obj/item/clothing/mask/gas, MARINE_CAN_BUY_MASK, VENDOR_ITEM_REGULAR),
+ list("Heat Absorbent Coif", 0, /obj/item/clothing/mask/rebreather/scarf, MARINE_CAN_BUY_MASK, VENDOR_ITEM_REGULAR),
+ list("Rebreather", 0, /obj/item/clothing/mask/rebreather, MARINE_CAN_BUY_MASK, VENDOR_ITEM_REGULAR),
list("ACCESSORIES (CHOOSE 1)", 0, null, null, null),
+ list("Brown Webbing Vest", 0, /obj/item/clothing/accessory/storage/black_vest/brown_vest, MARINE_CAN_BUY_ACCESSORY, VENDOR_ITEM_RECOMMENDED),
+ list("Black Webbing Vest", 0, /obj/item/clothing/accessory/storage/black_vest, MARINE_CAN_BUY_ACCESSORY, VENDOR_ITEM_REGULAR),
list("Shoulder Holster", 0, /obj/item/clothing/accessory/storage/holster, MARINE_CAN_BUY_ACCESSORY, VENDOR_ITEM_REGULAR),
list("Webbing", 0, /obj/item/clothing/accessory/storage/webbing, MARINE_CAN_BUY_ACCESSORY, VENDOR_ITEM_REGULAR),
-
- list("HAT (CHOOSE 1)", 0, null, null, null),
- list("MP Beret", 0, /obj/item/clothing/head/beret/marine/mp, MARINE_CAN_BUY_MASK, VENDOR_ITEM_MANDATORY),
-
))
/obj/structure/machinery/cm_vending/clothing/military_police
@@ -47,38 +59,50 @@ GLOBAL_LIST_INIT(cm_vending_clothing_military_police, list(
//------------ Warden CLOTHING VENDOR---------------
GLOBAL_LIST_INIT(cm_vending_clothing_military_police_warden, list(
+ list("POLICE SET (MANDATORY)", 0, null, null, null),
+ list("Essential Police Set", 0, /obj/effect/essentials_set/police, MARINE_CAN_BUY_ESSENTIALS, VENDOR_ITEM_MANDATORY),
list("STANDARD EQUIPMENT (TAKE ALL)", 0, null, null, null),
list("Gloves", 0, /obj/item/clothing/gloves/marine, MARINE_CAN_BUY_GLOVES, VENDOR_ITEM_MANDATORY),
list("Warden Uniform", 0, /obj/item/clothing/under/marine/warden, MARINE_CAN_BUY_UNIFORM, VENDOR_ITEM_MANDATORY),
list("Headset", 0, /obj/item/device/radio/headset/almayer/cmpcom, MARINE_CAN_BUY_EAR, VENDOR_ITEM_MANDATORY),
- list("Satchel", 0, /obj/item/storage/backpack/satchel/sec, MARINE_CAN_BUY_BACKPACK, VENDOR_ITEM_MANDATORY),
-
- list("PERSONAL SIDEARM (Take ALL)", 0, null, null, null),
- list("M4A3 Service Pistol ", 0, /obj/item/storage/belt/gun/m4a3/full, MARINE_CAN_BUY_BELT, VENDOR_ITEM_RECOMMENDED),
- list("Mod 88 Pistol", 0, /obj/item/storage/belt/gun/m4a3/mod88, MARINE_CAN_BUY_BELT, VENDOR_ITEM_RECOMMENDED),
- list("M44 Revolver", 0, /obj/item/storage/belt/gun/m44/mp, MARINE_CAN_BUY_BELT, VENDOR_ITEM_RECOMMENDED),
+ list("Marine Combat Boots", 0, /obj/item/clothing/shoes/marine/knife, MARINE_CAN_BUY_SHOES, VENDOR_ITEM_MANDATORY),
list("ARMOR (TAKE ALL)", 0, null, null, null),
list("Military Warden M3 Armor", 0, /obj/item/clothing/suit/storage/marine/MP/warden, MARINE_CAN_BUY_ARMOR, VENDOR_ITEM_MANDATORY),
+ list("Warden Peaked Cap", 0, /obj/item/clothing/head/beret/marine/mp/warden, MARINE_CAN_BUY_HELMET, VENDOR_ITEM_MANDATORY),
- list("COMBAT EQUIPMENT (TAKE ALL)", 0, null, null, null),
- list("Military Police M10 Helmet", 0, /obj/item/clothing/head/helmet/marine/MP, MARINE_CAN_BUY_HELMET, VENDOR_ITEM_MANDATORY),
- list("Marine Combat Boots", 0, /obj/item/clothing/shoes/marine/knife, MARINE_CAN_BUY_SHOES, VENDOR_ITEM_MANDATORY),
+ list("HANDGUN CASE (CHOOSE 1)", 0, null, null, null),
+ list("88 mod 4 Combat Pistol Case", 0, /obj/item/storage/box/guncase/mod88, MARINE_CAN_BUY_SECONDARY, VENDOR_ITEM_MANDATORY),
+ list("M44 Combat Revolver Case", 0, /obj/item/storage/box/guncase/m44, MARINE_CAN_BUY_SECONDARY, VENDOR_ITEM_MANDATORY),
+ list("M4A3 Service Pistol Case", 0, /obj/item/storage/box/guncase/m4a3, MARINE_CAN_BUY_SECONDARY, VENDOR_ITEM_MANDATORY),
+
+ list("BACKPACK (CHOOSE 1)", 0, null, null, null),
+ list("Military Police Satchel", 0, /obj/item/storage/backpack/satchel/sec, MARINE_CAN_BUY_BACKPACK, VENDOR_ITEM_MANDATORY),
- list("EYEWEAR (TAKE ALL)", 0, null, null, null),
- list("Security HUD Glasses", 0, /obj/item/clothing/glasses/sunglasses/sechud, MARINE_CAN_BUY_GLASSES, VENDOR_ITEM_REGULAR),
+ list("BELT (CHOOSE 1)", 0, null, null, null),
+ list("M276 General Pistol Holster Rig", 0, /obj/item/storage/belt/gun/m4a3, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
+ list("M276 M44 Holster Rig", 0, /obj/item/storage/belt/gun/m44, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
+ list("M276 G8-A General Utility Pouch", 0, /obj/item/storage/backpack/general_belt, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
list("POUCHES (CHOOSE 2)", 0, null, null, null),
- list("First-Aid Pouch (Full)", 0, /obj/item/storage/pouch/firstaid/full, MARINE_CAN_BUY_POUCH, VENDOR_ITEM_REGULAR),
list("Medium General Pouch", 0, /obj/item/storage/pouch/general/medium, MARINE_CAN_BUY_POUCH, VENDOR_ITEM_REGULAR),
+ list("First-Aid Pouch (Refillable Injectors)", 0, /obj/item/storage/pouch/firstaid/full, MARINE_CAN_BUY_POUCH, VENDOR_ITEM_RECOMMENDED),
+ list("First-Aid Pouch (Splints, Gauze, Ointment)", 0, /obj/item/storage/pouch/firstaid/full/alternate, MARINE_CAN_BUY_POUCH, VENDOR_ITEM_RECOMMENDED),
+ list("First-Aid Pouch (Pill Packets)", 0, /obj/item/storage/pouch/firstaid/full/pills, MARINE_CAN_BUY_POUCH, VENDOR_ITEM_RECOMMENDED),
+ list("Pistol Magazine Pouch", 0, /obj/item/storage/pouch/magazine/pistol, MARINE_CAN_BUY_POUCH, VENDOR_ITEM_REGULAR),
+ list("Pistol Pouch", 0, /obj/item/storage/pouch/pistol, MARINE_CAN_BUY_POUCH, VENDOR_ITEM_REGULAR),
+
+ list("MASK (CHOOSE 1)", 0, null, null, null),
+ list("Gas Mask", 0, /obj/item/clothing/mask/gas, MARINE_CAN_BUY_MASK, VENDOR_ITEM_REGULAR),
+ list("Heat Absorbent Coif", 0, /obj/item/clothing/mask/rebreather/scarf, MARINE_CAN_BUY_MASK, VENDOR_ITEM_REGULAR),
+ list("Rebreather", 0, /obj/item/clothing/mask/rebreather, MARINE_CAN_BUY_MASK, VENDOR_ITEM_REGULAR),
list("ACCESSORIES (CHOOSE 1)", 0, null, null, null),
+ list("Brown Webbing Vest", 0, /obj/item/clothing/accessory/storage/black_vest/brown_vest, MARINE_CAN_BUY_ACCESSORY, VENDOR_ITEM_RECOMMENDED),
+ list("Black Webbing Vest", 0, /obj/item/clothing/accessory/storage/black_vest, MARINE_CAN_BUY_ACCESSORY, VENDOR_ITEM_REGULAR),
list("Shoulder Holster", 0, /obj/item/clothing/accessory/storage/holster, MARINE_CAN_BUY_ACCESSORY, VENDOR_ITEM_REGULAR),
list("Webbing", 0, /obj/item/clothing/accessory/storage/webbing, MARINE_CAN_BUY_ACCESSORY, VENDOR_ITEM_REGULAR),
-
- list("HAT (CHOOSE 1)", 0, null, null, null),
- list("Warden Peaked Cap", 0, /obj/item/clothing/head/beret/marine/mp/warden, MARINE_CAN_BUY_MASK, VENDOR_ITEM_MANDATORY),
))
/obj/structure/machinery/cm_vending/clothing/military_police_warden
@@ -89,3 +113,10 @@ GLOBAL_LIST_INIT(cm_vending_clothing_military_police_warden, list(
/obj/structure/machinery/cm_vending/clothing/military_police_warden/get_listed_products(mob/user)
return GLOB.cm_vending_clothing_military_police_warden
+
+/obj/effect/essentials_set/police
+ spawned_gear_list = list(
+ /obj/item/clothing/glasses/sunglasses/sechud,
+ /obj/item/storage/belt/security/MP/full,
+ /obj/item/clothing/head/helmet/marine/MP,
+ )
diff --git a/code/game/machinery/vending/vendor_types/crew/pilot_officer.dm b/code/game/machinery/vending/vendor_types/crew/pilot_officer.dm
index 231e02bb5118..8d86669a1f70 100644
--- a/code/game/machinery/vending/vendor_types/crew/pilot_officer.dm
+++ b/code/game/machinery/vending/vendor_types/crew/pilot_officer.dm
@@ -65,11 +65,11 @@ GLOBAL_LIST_INIT(cm_vending_clothing_pilot_officer, list(
list("M30 Tactical Helmet", 0, /obj/item/clothing/head/helmet/marine/pilot, MARINE_CAN_BUY_HELMET, VENDOR_ITEM_MANDATORY),
list("Leather Satchel", 0, /obj/item/storage/backpack/satchel, MARINE_CAN_BUY_BACKPACK, VENDOR_ITEM_MANDATORY),
list("MRE", 0, /obj/item/storage/box/MRE, MARINE_CAN_BUY_MRE, VENDOR_ITEM_MANDATORY),
-
+
list("ARMOR (CHOOSE 1)", 0, null, null, null),
list("M70 Flak Jacket", 0, /obj/item/clothing/suit/armor/vest/pilot, MARINE_CAN_BUY_ARMOR, VENDOR_ITEM_MANDATORY),
list("M3-VL Pattern Flak Vest", 0, /obj/item/clothing/suit/storage/marine/light/vest/dcc, MARINE_CAN_BUY_ARMOR, VENDOR_ITEM_MANDATORY),
-
+
list("PERSONAL SIDEARM (CHOOSE 1)", 0, null, null, null),
list("88 Mod 4 Combat Pistol", 0, /obj/item/weapon/gun/pistol/mod88, MARINE_CAN_BUY_ATTACHMENT, VENDOR_ITEM_REGULAR),
list("VP78 Pistol", 0, /obj/item/weapon/gun/pistol/vp78, MARINE_CAN_BUY_ATTACHMENT, VENDOR_ITEM_REGULAR),
@@ -79,7 +79,7 @@ GLOBAL_LIST_INIT(cm_vending_clothing_pilot_officer, list(
list("M276 Ammo Load Rig", 0, /obj/item/storage/belt/marine, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
list("M276 Lifesaver Bag (Full)", 0, /obj/item/storage/belt/medical/lifesaver/full, MARINE_CAN_BUY_BELT, VENDOR_ITEM_RECOMMENDED),
list("M276 Medical Storage Rig (Full)", 0, /obj/item/storage/belt/medical/full, MARINE_CAN_BUY_BELT, VENDOR_ITEM_RECOMMENDED),
- list("M276 M39 Holster Rig", 0, /obj/item/storage/large_holster/m39, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
+ list("M276 M39 Holster Rig", 0, /obj/item/storage/belt/gun/m39, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
list("M276 M44 Holster Rig", 0, /obj/item/storage/belt/gun/m44, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
list("M276 M82F Holster Rig", 0, /obj/item/storage/belt/gun/flaregun, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
list("M276 General Pistol Holster Rig", 0, /obj/item/storage/belt/gun/m4a3, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
@@ -153,8 +153,8 @@ GLOBAL_LIST_INIT(cm_vending_clothing_dropship_crew_chief, list(
list("Gloves", 0, /obj/item/clothing/gloves/yellow, MARINE_CAN_BUY_GLOVES, VENDOR_ITEM_MANDATORY),
list("Patrol Cap", 0, /obj/item/clothing/head/cmcap, MARINE_CAN_BUY_HELMET, VENDOR_ITEM_MANDATORY),
list("Leather Satchel", 0, /obj/item/storage/backpack/satchel, MARINE_CAN_BUY_BACKPACK, VENDOR_ITEM_MANDATORY),
- list("MRE", 0, /obj/item/storage/box/MRE, MARINE_CAN_BUY_MRE, VENDOR_ITEM_MANDATORY),
-
+ list("MRE", 0, /obj/item/storage/box/MRE, MARINE_CAN_BUY_MRE, VENDOR_ITEM_MANDATORY),
+
list("ARMOR (CHOOSE 1)", 0, null, null, null),
list("M70 Flak Jacket", 0, /obj/item/clothing/suit/armor/vest/pilot, MARINE_CAN_BUY_ARMOR, VENDOR_ITEM_MANDATORY),
list("M3-VL Pattern Flak Vest", 0, /obj/item/clothing/suit/storage/marine/light/vest/dcc, MARINE_CAN_BUY_ARMOR, VENDOR_ITEM_MANDATORY),
@@ -168,7 +168,7 @@ GLOBAL_LIST_INIT(cm_vending_clothing_dropship_crew_chief, list(
list("M276 Ammo Load Rig", 0, /obj/item/storage/belt/marine, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
list("M276 Lifesaver Bag (Full)", 0, /obj/item/storage/belt/medical/lifesaver/full, MARINE_CAN_BUY_BELT, VENDOR_ITEM_RECOMMENDED),
list("M276 Medical Storage Rig (Full)", 0, /obj/item/storage/belt/medical/full, MARINE_CAN_BUY_BELT, VENDOR_ITEM_RECOMMENDED),
- list("M276 M39 Holster Rig", 0, /obj/item/storage/large_holster/m39, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
+ list("M276 M39 Holster Rig", 0, /obj/item/storage/belt/gun/m39, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
list("M276 M44 Holster Rig", 0, /obj/item/storage/belt/gun/m44, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
list("M276 M82F Holster Rig", 0, /obj/item/storage/belt/gun/flaregun, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
list("M276 General Pistol Holster Rig", 0, /obj/item/storage/belt/gun/m4a3, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
diff --git a/code/game/machinery/vending/vendor_types/crew/senior_officers.dm b/code/game/machinery/vending/vendor_types/crew/senior_officers.dm
index 24b60079692b..55053bd724bd 100644
--- a/code/game/machinery/vending/vendor_types/crew/senior_officers.dm
+++ b/code/game/machinery/vending/vendor_types/crew/senior_officers.dm
@@ -2,7 +2,7 @@
name = "\improper ColMarTech Senior Officer Equipment Rack"
desc = "An automated equipment vendor for Senior Officers."
req_access = list(ACCESS_MARINE_SENIOR)
- vendor_role = list(JOB_CHIEF_POLICE,JOB_CMO,JOB_XO,JOB_CHIEF_ENGINEER,JOB_CHIEF_REQUISITION)
+ vendor_role = list(JOB_CHIEF_POLICE, JOB_CMO, JOB_XO, JOB_CHIEF_ENGINEER, JOB_CHIEF_REQUISITION, JOB_AUXILIARY_OFFICER)
/obj/structure/machinery/cm_vending/clothing/senior_officer/get_listed_products(mob/user)
if(!user)
@@ -23,53 +23,62 @@
return GLOB.cm_vending_clothing_cmo
else if(user.job == JOB_CHIEF_POLICE)
return GLOB.cm_vending_clothing_military_police_chief
+ else if(user.job == JOB_AUXILIARY_OFFICER)
+ return GLOB.cm_vending_clothing_auxiliary_officer
return ..()
-
//------------ CHIEF MP ---------------
GLOBAL_LIST_INIT(cm_vending_clothing_military_police_chief, list(
+ list("POLICE SET (MANDATORY)", 0, null, null, null),
+ list("Essential Police Set", 0, /obj/effect/essentials_set/chiefmilitarypolice, MARINE_CAN_BUY_ESSENTIALS, VENDOR_ITEM_MANDATORY),
list("STANDARD EQUIPMENT (TAKE ALL)", 0, null, null, null),
list("Gloves", 0, /obj/item/clothing/gloves/marine, MARINE_CAN_BUY_GLOVES, VENDOR_ITEM_MANDATORY),
list("CMP Uniform", 0, /obj/item/clothing/under/marine/officer/warrant, MARINE_CAN_BUY_UNIFORM, VENDOR_ITEM_MANDATORY),
list("Headset", 0, /obj/item/device/radio/headset/almayer/cmpcom, MARINE_CAN_BUY_EAR, VENDOR_ITEM_MANDATORY),
- list("Satchel", 0, /obj/item/storage/backpack/satchel/sec, MARINE_CAN_BUY_BACKPACK, VENDOR_ITEM_MANDATORY),
- list("Gear Belt", 0, /obj/item/storage/belt/security/MP/full, MARINE_CAN_BUY_BELT, VENDOR_ITEM_MANDATORY),
-
- list("PERSONAL SIDEARM (CHOOSE 1)", 0, null, null, null),
- list("M4A3 Service Pistol", 0, /obj/item/storage/belt/gun/m4a3/full, MARINE_CAN_BUY_SECONDARY, VENDOR_ITEM_REGULAR),
- list("Mod 88 Pistol", 0, /obj/item/storage/belt/gun/m4a3/mod88, MARINE_CAN_BUY_SECONDARY, VENDOR_ITEM_REGULAR),
- list("M44 Revolver", 0, /obj/item/storage/belt/gun/m44/mp, MARINE_CAN_BUY_SECONDARY, VENDOR_ITEM_RECOMMENDED),
+ list("Marine Combat Boots", 0, /obj/item/clothing/shoes/marine/knife, MARINE_CAN_BUY_SHOES, VENDOR_ITEM_MANDATORY),
list("ARMOR (TAKE ALL)", 0, null, null, null),
list("Military Police Chief M3 Armor", 0, /obj/item/clothing/suit/storage/marine/MP/WO, MARINE_CAN_BUY_ARMOR, VENDOR_ITEM_RECOMMENDED),
-
- list("COMBAT EQUIPMENT (TAKE ALL)", 0, null, null, null),
list("Chief MP M10 Helmet", 0, /obj/item/clothing/head/helmet/marine/MP/WO, MARINE_CAN_BUY_HELMET, VENDOR_ITEM_MANDATORY),
- list("Marine Combat Boots", 0, /obj/item/clothing/shoes/marine/knife, MARINE_CAN_BUY_SHOES, VENDOR_ITEM_MANDATORY),
+ list("CMP Beret", 0, /obj/item/clothing/head/beret/marine/mp/cmp, MARINE_CAN_BUY_HELMET, VENDOR_ITEM_MANDATORY),
- list("EYEWEAR (TAKE ALL)", 0, null, null, null),
- list("Security HUD Glasses", 0, /obj/item/clothing/glasses/sunglasses/sechud, MARINE_CAN_BUY_GLASSES, VENDOR_ITEM_MANDATORY),
+ list("HANDGUN CASE (CHOOSE 1)", 0, null, null, null),
+ list("88 mod 4 Combat Pistol Case", 0, /obj/item/storage/box/guncase/mod88, MARINE_CAN_BUY_SECONDARY, VENDOR_ITEM_MANDATORY),
+ list("M44 Combat Revolver Case", 0, /obj/item/storage/box/guncase/m44, MARINE_CAN_BUY_SECONDARY, VENDOR_ITEM_MANDATORY),
+ list("M4A3 Service Pistol Case", 0, /obj/item/storage/box/guncase/m4a3, MARINE_CAN_BUY_SECONDARY, VENDOR_ITEM_MANDATORY),
+
+ list("BACKPACK (CHOOSE 1)", 0, null, null, null),
+ list("Military Police Satchel", 0, /obj/item/storage/backpack/satchel/sec, MARINE_CAN_BUY_BACKPACK, VENDOR_ITEM_MANDATORY),
+
+ list("BELT (CHOOSE 1)", 0, null, null, null),
+ list("M276 General Pistol Holster Rig", 0, /obj/item/storage/belt/gun/m4a3, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
+ list("M276 M44 Holster Rig", 0, /obj/item/storage/belt/gun/m44, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
+ list("M276 G8-A General Utility Pouch", 0, /obj/item/storage/backpack/general_belt, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
list("POUCHES (CHOOSE 2)", 0, null, null, null),
- list("First-Aid Pouch (Refillable Injectors)", 0, /obj/item/storage/pouch/firstaid/full, MARINE_CAN_BUY_POUCH, VENDOR_ITEM_REGULAR),
- list("First-Aid Pouch (Splints, Gauze, Ointment)", 0, /obj/item/storage/pouch/firstaid/full/alternate, MARINE_CAN_BUY_POUCH, VENDOR_ITEM_REGULAR),
+ list("Medium General Pouch", 0, /obj/item/storage/pouch/general/medium, MARINE_CAN_BUY_POUCH, VENDOR_ITEM_REGULAR),
+ list("First-Aid Pouch (Refillable Injectors)", 0, /obj/item/storage/pouch/firstaid/full, MARINE_CAN_BUY_POUCH, VENDOR_ITEM_RECOMMENDED),
+ list("First-Aid Pouch (Splints, Gauze, Ointment)", 0, /obj/item/storage/pouch/firstaid/full/alternate, MARINE_CAN_BUY_POUCH, VENDOR_ITEM_RECOMMENDED),
list("First-Aid Pouch (Pill Packets)", 0, /obj/item/storage/pouch/firstaid/full/pills, MARINE_CAN_BUY_POUCH, VENDOR_ITEM_RECOMMENDED),
+ list("Pistol Magazine Pouch", 0, /obj/item/storage/pouch/magazine/pistol, MARINE_CAN_BUY_POUCH, VENDOR_ITEM_REGULAR),
+ list("Pistol Pouch", 0, /obj/item/storage/pouch/pistol, MARINE_CAN_BUY_POUCH, VENDOR_ITEM_REGULAR),
list("Large General Pouch", 0, /obj/item/storage/pouch/general/large, MARINE_CAN_BUY_POUCH, VENDOR_ITEM_REGULAR),
+ list("MASK (CHOOSE 1)", 0, null, null, null),
+ list("Gas Mask", 0, /obj/item/clothing/mask/gas, MARINE_CAN_BUY_MASK, VENDOR_ITEM_REGULAR),
+ list("Heat Absorbent Coif", 0, /obj/item/clothing/mask/rebreather/scarf, MARINE_CAN_BUY_MASK, VENDOR_ITEM_REGULAR),
+ list("Rebreather", 0, /obj/item/clothing/mask/rebreather, MARINE_CAN_BUY_MASK, VENDOR_ITEM_REGULAR),
+
list("ACCESSORIES (CHOOSE 1)", 0, null, null, null),
- list("Shoulder Holster", 0, /obj/item/clothing/accessory/storage/holster, MARINE_CAN_BUY_ACCESSORY, VENDOR_ITEM_REGULAR),
+ list("Brown Webbing Vest", 0, /obj/item/clothing/accessory/storage/black_vest/brown_vest, MARINE_CAN_BUY_ACCESSORY, VENDOR_ITEM_RECOMMENDED),
list("Black Webbing Vest", 0, /obj/item/clothing/accessory/storage/black_vest, MARINE_CAN_BUY_ACCESSORY, VENDOR_ITEM_REGULAR),
- list("Brown Webbing Vest", 0, /obj/item/clothing/accessory/storage/black_vest/brown_vest, MARINE_CAN_BUY_ACCESSORY, VENDOR_ITEM_REGULAR),
+ list("Shoulder Holster", 0, /obj/item/clothing/accessory/storage/holster, MARINE_CAN_BUY_ACCESSORY, VENDOR_ITEM_REGULAR),
list("Webbing", 0, /obj/item/clothing/accessory/storage/webbing, MARINE_CAN_BUY_ACCESSORY, VENDOR_ITEM_REGULAR),
-
- list("HAT (CHOOSE 1)", 0, null, null, null),
- list("CMP Beret", 0, /obj/item/clothing/head/beret/marine/mp/cmp, MARINE_CAN_BUY_MASK, VENDOR_ITEM_MANDATORY),
))
-
//------------ CHIEF ENGINEER ---------------
GLOBAL_LIST_INIT(cm_vending_clothing_chief_engineer, list(
@@ -161,11 +170,11 @@ GLOBAL_LIST_INIT(cm_vending_clothing_req_officer, list(
list("STANDARD EQUIPMENT (TAKE ALL)", 0, null, null, null),
list("Insulated Gloves", 0, /obj/item/clothing/gloves/yellow, MARINE_CAN_BUY_GLOVES, VENDOR_ITEM_MANDATORY),
- list("RO Uniform", 0, /obj/item/clothing/under/rank/ro_suit, MARINE_CAN_BUY_UNIFORM, VENDOR_ITEM_MANDATORY),
- list("Headset", 0, /obj/item/device/radio/headset/almayer/ro, MARINE_CAN_BUY_EAR, VENDOR_ITEM_MANDATORY),
+ list("Quartermaster Uniform", 0, /obj/item/clothing/under/rank/qm_suit, MARINE_CAN_BUY_UNIFORM, VENDOR_ITEM_MANDATORY),
+ list("Headset", 0, /obj/item/device/radio/headset/almayer/qm, MARINE_CAN_BUY_EAR, VENDOR_ITEM_MANDATORY),
list("Satchel", 0, /obj/item/storage/backpack/marine/satchel/tech, MARINE_CAN_BUY_BACKPACK, VENDOR_ITEM_MANDATORY),
list("Req Cap", 0, /obj/item/clothing/head/cmcap/req, MARINE_CAN_BUY_MASK, VENDOR_ITEM_MANDATORY),
- list("RO Jacket", 0, /obj/item/clothing/suit/storage/RO, MARINE_CAN_BUY_MRE, VENDOR_ITEM_MANDATORY),
+ list("Quartermaster Jacket", 0, /obj/item/clothing/suit/storage/RO, MARINE_CAN_BUY_MRE, VENDOR_ITEM_MANDATORY),
list("PERSONAL SIDEARM (CHOOSE 1)", 0, null, null, null),
list("M4A3 Service Pistol", 0, /obj/item/storage/belt/gun/m4a3/full, MARINE_CAN_BUY_SECONDARY, VENDOR_ITEM_RECOMMENDED),
@@ -201,9 +210,12 @@ GLOBAL_LIST_INIT(cm_vending_clothing_cmo, list(
list("STANDARD EQUIPMENT (TAKE ALL)", 0, null, null, null),
list("Gloves", 0, /obj/item/clothing/gloves/latex, MARINE_CAN_BUY_GLOVES, VENDOR_ITEM_MANDATORY),
list("Headset", 0, /obj/item/device/radio/headset/almayer/cmo, MARINE_CAN_BUY_EAR, VENDOR_ITEM_MANDATORY),
- list("Medical HUD Glasses", 0, /obj/item/clothing/glasses/hud/health, MARINE_CAN_BUY_GLASSES, VENDOR_ITEM_MANDATORY),
list("Labcoat", 0, /obj/item/clothing/suit/storage/labcoat, MARINE_CAN_BUY_MRE, VENDOR_ITEM_MANDATORY),
+ list("EYEWARE (CHOOSE 1)", 0, null, null, null),
+ list("Medical HUD Glasses", 0, /obj/item/clothing/glasses/hud/health, MARINE_CAN_BUY_GLASSES, VENDOR_ITEM_MANDATORY),
+ list("Reagent Scanner HUD Goggles", 0, /obj/item/clothing/glasses/science, MARINE_CAN_BUY_GLASSES, VENDOR_ITEM_REGULAR),
+
list("UNIFORM (CHOOSE 1)", 0, null, null, null),
list("Green Scrubs", 0, /obj/item/clothing/under/rank/medical/green, MARINE_CAN_BUY_UNIFORM, VENDOR_ITEM_RECOMMENDED),
list("Blue Scrubs", 0, /obj/item/clothing/under/rank/medical/blue, MARINE_CAN_BUY_UNIFORM, VENDOR_ITEM_REGULAR),
@@ -308,3 +320,47 @@ GLOBAL_LIST_INIT(cm_vending_clothing_xo, list(
list("Patrol Cap", 0, /obj/item/clothing/head/cmcap, MARINE_CAN_BUY_MASK, VENDOR_ITEM_REGULAR),
list("Officer Cap", 0, /obj/item/clothing/head/cmcap/ro, MARINE_CAN_BUY_MASK, VENDOR_ITEM_REGULAR),
))
+
+
+
+//------------ AUXILIARY SUPPORT OFFICER ---------------
+GLOBAL_LIST_INIT(cm_vending_clothing_auxiliary_officer, list(
+
+ list("STANDARD EQUIPMENT (TAKE ALL)", 0, null, null, null),
+ list("Insulated Gloves", 0, /obj/item/clothing/gloves/yellow, MARINE_CAN_BUY_GLOVES, VENDOR_ITEM_MANDATORY),
+ list("Officer Uniform", 0, /obj/item/clothing/under/marine/officer/bridge, MARINE_CAN_BUY_UNIFORM, VENDOR_ITEM_MANDATORY),
+ list("Headset", 0, /obj/item/device/radio/headset/almayer/qm, MARINE_CAN_BUY_EAR, VENDOR_ITEM_MANDATORY),
+ list("Satchel", 0, /obj/item/storage/backpack/marine/satchel/tech, MARINE_CAN_BUY_BACKPACK, VENDOR_ITEM_MANDATORY),
+ list("Patrol Cap", 0, /obj/item/clothing/head/cmcap, MARINE_CAN_BUY_MASK, VENDOR_ITEM_MANDATORY),
+ list("Auxiliary Support Officer Jacket", 0, /obj/item/clothing/suit/storage/jacket/marine/service/aso, MARINE_CAN_BUY_MRE, VENDOR_ITEM_MANDATORY),
+
+ list("PERSONAL SIDEARM (CHOOSE 1)", 0, null, null, null),
+ list("M4A3 Service Pistol", 0, /obj/item/storage/belt/gun/m4a3/full, MARINE_CAN_BUY_SECONDARY, VENDOR_ITEM_RECOMMENDED),
+ list("Mod 88 Pistol", 0, /obj/item/storage/belt/gun/m4a3/mod88, MARINE_CAN_BUY_SECONDARY, VENDOR_ITEM_RECOMMENDED),
+ list("M44 Custom Revolver", 0, /obj/item/storage/belt/gun/m44/custom, MARINE_CAN_BUY_SECONDARY, VENDOR_ITEM_RECOMMENDED),
+
+ list("COMBAT EQUIPMENT (TAKE ALL)", 0, null, null, null),
+ list("Officer M3 Armor", 0, /obj/item/clothing/suit/storage/marine/MP/SO, MARINE_CAN_BUY_ARMOR, VENDOR_ITEM_MANDATORY),
+ list("Officer M10 Helmet", 0, /obj/item/clothing/head/helmet/marine/MP/SO, MARINE_CAN_BUY_HELMET, VENDOR_ITEM_MANDATORY),
+ list("Marine Combat Boots", 0, /obj/item/clothing/shoes/marine/knife, MARINE_CAN_BUY_SHOES, VENDOR_ITEM_MANDATORY),
+
+ list("POUCHES (CHOOSE 2)", 0, null, null, null),
+ list("First-Aid Pouch (Refillable Injectors)", 0, /obj/item/storage/pouch/firstaid/full, MARINE_CAN_BUY_POUCH, VENDOR_ITEM_REGULAR),
+ list("First-Aid Pouch (Splints, Gauze, Ointment)", 0, /obj/item/storage/pouch/firstaid/full/alternate, MARINE_CAN_BUY_POUCH, VENDOR_ITEM_REGULAR),
+ list("First-Aid Pouch (Pill Packets)", 0, /obj/item/storage/pouch/firstaid/full/pills, MARINE_CAN_BUY_POUCH, VENDOR_ITEM_RECOMMENDED),
+ list("Large General Pouch", 0, /obj/item/storage/pouch/general/large, MARINE_CAN_BUY_POUCH, VENDOR_ITEM_REGULAR),
+ list("Tools Pouch (Empty)", 0, /obj/item/storage/pouch/tools, MARINE_CAN_BUY_POUCH, VENDOR_ITEM_REGULAR),
+ list("Construction Pouch", 0, /obj/item/storage/pouch/construction, MARINE_CAN_BUY_POUCH, VENDOR_ITEM_REGULAR),
+
+ list("ACCESSORIES (CHOOSE 1)", 0, null, null, null),
+ list("Black Webbing Vest", 0, /obj/item/clothing/accessory/storage/black_vest, MARINE_CAN_BUY_ACCESSORY, VENDOR_ITEM_REGULAR),
+ list("Brown Webbing Vest", 0, /obj/item/clothing/accessory/storage/black_vest/brown_vest, MARINE_CAN_BUY_ACCESSORY, VENDOR_ITEM_RECOMMENDED),
+ list("Webbing", 0, /obj/item/clothing/accessory/storage/webbing, MARINE_CAN_BUY_ACCESSORY, VENDOR_ITEM_REGULAR),
+ ))
+
+/obj/effect/essentials_set/chiefmilitarypolice
+ spawned_gear_list = list(
+ /obj/item/clothing/glasses/sunglasses/sechud,
+ /obj/item/storage/belt/security/MP/full,
+ /obj/item/clothing/head/helmet/marine/MP/WO,
+ )
diff --git a/code/game/machinery/vending/vendor_types/crew/staff_officer.dm b/code/game/machinery/vending/vendor_types/crew/staff_officer.dm
index 103efeedde61..3edbee6bbc47 100644
--- a/code/game/machinery/vending/vendor_types/crew/staff_officer.dm
+++ b/code/game/machinery/vending/vendor_types/crew/staff_officer.dm
@@ -41,7 +41,7 @@ GLOBAL_LIST_INIT(cm_vending_clothing_staff_officer, list(
list("M276 Ammo Load Rig", 0, /obj/item/storage/belt/marine, MARINE_CAN_BUY_BELT, VENDOR_ITEM_RECOMMENDED),
list("M276 Lifesaver Bag (Full)", 0, /obj/item/storage/belt/medical/lifesaver/full, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
list("M276 Medical Storage Rig (Full)", 0, /obj/item/storage/belt/medical/full, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
- list("M276 M39 Holster Rig", 0, /obj/item/storage/large_holster/m39, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
+ list("M276 M39 Holster Rig", 0, /obj/item/storage/belt/gun/m39, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
list("M276 M82F Holster Rig", 0, /obj/item/storage/belt/gun/flaregun, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
list("M276 Shotgun Shell Loading Rig", 0, /obj/item/storage/belt/shotgun, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
list("M276 M40 Grenade Rig", 0, /obj/item/storage/belt/grenade, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
diff --git a/code/game/machinery/vending/vendor_types/crew/synthetic.dm b/code/game/machinery/vending/vendor_types/crew/synthetic.dm
index 4cd6857f8dc4..0496530be861 100644
--- a/code/game/machinery/vending/vendor_types/crew/synthetic.dm
+++ b/code/game/machinery/vending/vendor_types/crew/synthetic.dm
@@ -21,6 +21,7 @@
list("Industrial Blowtorch", 2, /obj/item/tool/weldingtool/largetank, null, VENDOR_ITEM_REGULAR),
list("High-Capacity Industrial Blowtorch", 4, /obj/item/tool/weldingtool/hugetank, null, VENDOR_ITEM_REGULAR),
list("Plastic Explosive", 3, /obj/item/explosive/plastic, null, VENDOR_ITEM_REGULAR),
+ list("Toolkit", 1, /obj/item/storage/firstaid/toolkit/empty, null, VENDOR_ITEM_REGULAR),
list("FIRSTAID KITS", 0, null, null, null),
list("Advanced Firstaid Kit", 12, /obj/item/storage/firstaid/adv, null, VENDOR_ITEM_REGULAR),
@@ -251,7 +252,7 @@ GLOBAL_LIST_INIT(cm_vending_clothing_synth_snowflake, list(
list("Windbreaker, Exploration", 12, /obj/item/clothing/suit/storage/windbreaker/windbreaker_covenant, null, VENDOR_ITEM_REGULAR),
list("Labcoat", 12, /obj/item/clothing/suit/storage/labcoat, null, VENDOR_ITEM_REGULAR),
list("Labcoat, Researcher", 12, /obj/item/clothing/suit/storage/labcoat/researcher, null, VENDOR_ITEM_REGULAR),
- list("RO Jacket", 12, /obj/item/clothing/suit/storage/RO, null, VENDOR_ITEM_REGULAR),
+ list("Quartermaster Jacket", 12, /obj/item/clothing/suit/storage/RO, null, VENDOR_ITEM_REGULAR),
list("USCM Poncho", 12, /obj/item/clothing/accessory/poncho, null, VENDOR_ITEM_REGULAR),
list("BACKPACK", 0, null, null, null),
diff --git a/code/game/machinery/vending/vendor_types/crew/vehicle_crew.dm b/code/game/machinery/vending/vendor_types/crew/vehicle_crew.dm
index 023bbe390bfc..fb9b662be1bc 100644
--- a/code/game/machinery/vending/vendor_types/crew/vehicle_crew.dm
+++ b/code/game/machinery/vending/vendor_types/crew/vehicle_crew.dm
@@ -319,7 +319,7 @@ GLOBAL_LIST_INIT(cm_vending_clothing_vehicle_crew, list(
list("M103 Vehicle-Ammo Rig", 0, /obj/item/storage/belt/tank, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
list("M276 Ammo Load Rig", 0, /obj/item/storage/belt/marine, MARINE_CAN_BUY_BELT, VENDOR_ITEM_RECOMMENDED),
list("M276 General Pistol Holster Rig", 0, /obj/item/storage/belt/gun/m4a3, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
- list("M276 M39 Holster Rig", 0, /obj/item/storage/large_holster/m39, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
+ list("M276 M39 Holster Rig", 0, /obj/item/storage/belt/gun/m39, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
list("M276 M44 Holster Rig", 0, /obj/item/storage/belt/gun/m44, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
list("M276 M82F Holster Rig", 0, /obj/item/storage/belt/gun/flaregun, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
list("M276 Shotgun Shell Loading Rig", 0, /obj/item/storage/belt/shotgun, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
diff --git a/code/game/machinery/vending/vendor_types/engineering.dm b/code/game/machinery/vending/vendor_types/engineering.dm
index 83f69ae09889..2fe6962e93bb 100644
--- a/code/game/machinery/vending/vendor_types/engineering.dm
+++ b/code/game/machinery/vending/vendor_types/engineering.dm
@@ -25,6 +25,7 @@
list("Utility Tool Belt", round(scale * 2), /obj/item/storage/belt/utility, VENDOR_ITEM_REGULAR),
list("Welding Goggles", round(scale * 2), /obj/item/clothing/glasses/welding, VENDOR_ITEM_REGULAR),
list("Welding Helmet", round(scale * 2), /obj/item/clothing/head/welding, VENDOR_ITEM_REGULAR),
+ list("Toolkit", round(scale * 4), /obj/item/storage/firstaid/toolkit/empty, VENDOR_ITEM_REGULAR),
list("SCANNERS", -1, null, null),
list("Atmos Scanner", round(scale * 2), /obj/item/device/analyzer, VENDOR_ITEM_REGULAR),
@@ -54,6 +55,8 @@
list("EQUIPMENT", -1, null, null),
list("Utility Tool Belt", round(scale * 4), /obj/item/storage/belt/utility, VENDOR_ITEM_REGULAR),
list("Cable Coil", round(scale * 4), /obj/item/stack/cable_coil/random, VENDOR_ITEM_REGULAR),
+ list("Welding Goggles", round(scale * 2), /obj/item/clothing/glasses/welding, VENDOR_ITEM_REGULAR),
+ list("Toolkit", round(scale * 12), /obj/item/storage/firstaid/toolkit/empty, VENDOR_ITEM_REGULAR),
list("TOOLS", -1, null, null),
list("Blowtorch", round(scale * 4), /obj/item/tool/weldingtool, VENDOR_ITEM_REGULAR),
diff --git a/code/game/machinery/vending/vendor_types/intelligence_officer.dm b/code/game/machinery/vending/vendor_types/intelligence_officer.dm
index 829c542f6b26..a2afe897b495 100644
--- a/code/game/machinery/vending/vendor_types/intelligence_officer.dm
+++ b/code/game/machinery/vending/vendor_types/intelligence_officer.dm
@@ -73,7 +73,7 @@ GLOBAL_LIST_INIT(cm_vending_clothing_intelligence_officer, list(
list("G8-A General Utility Pouch", 0, /obj/item/storage/backpack/general_belt, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
list("M276 Ammo Load Rig", 0, /obj/item/storage/belt/marine, MARINE_CAN_BUY_BELT, VENDOR_ITEM_RECOMMENDED),
list("M276 General Pistol Holster Rig", 0, /obj/item/storage/belt/gun/m4a3, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
- list("M276 M39 Holster Rig", 0, /obj/item/storage/large_holster/m39, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
+ list("M276 M39 Holster Rig", 0, /obj/item/storage/belt/gun/m39, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
list("M276 M44 Holster Rig", 0, /obj/item/storage/belt/gun/m44, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
list("M276 Shotgun Shell Loading Rig", 0, /obj/item/storage/belt/shotgun, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
list("M276 Toolbelt Rig (Full)", 0, /obj/item/storage/belt/utility/full, MARINE_CAN_BUY_BELT, VENDOR_ITEM_RECOMMENDED),
diff --git a/code/game/machinery/vending/vendor_types/requisitions.dm b/code/game/machinery/vending/vendor_types/requisitions.dm
index f85657e887a8..b979fe4a03a9 100644
--- a/code/game/machinery/vending/vendor_types/requisitions.dm
+++ b/code/game/machinery/vending/vendor_types/requisitions.dm
@@ -82,7 +82,7 @@
list("M276 Ammo Load Rig", round(scale * 15), /obj/item/storage/belt/marine, VENDOR_ITEM_REGULAR),
list("M276 General Pistol Holster Rig", round(scale * 10), /obj/item/storage/belt/gun/m4a3, VENDOR_ITEM_REGULAR),
list("M276 Knife Rig", round(scale * 5), /obj/item/storage/belt/knifepouch, VENDOR_ITEM_REGULAR),
- list("M276 M39 Holster Rig", round(scale * 5), /obj/item/storage/large_holster/m39, VENDOR_ITEM_REGULAR),
+ list("M276 M39 Holster Rig", round(scale * 5), /obj/item/storage/belt/gun/m39, VENDOR_ITEM_REGULAR),
list("M276 M40 Grenade Rig", round(scale * 2), /obj/item/storage/belt/grenade, VENDOR_ITEM_REGULAR),
list("M276 M44 Holster Rig", round(scale * 5), /obj/item/storage/belt/gun/m44, VENDOR_ITEM_REGULAR),
list("M276 M82F Holster Rig", round(scale * 2), /obj/item/storage/belt/gun/flaregun, VENDOR_ITEM_REGULAR),
@@ -342,7 +342,6 @@
/obj/structure/machinery/cm_vending/sorted/attachments/populate_product_list(scale)
listed_products = list(
list("BARREL", -1, null, null),
- list("Barrel Charger", round(scale * 2.5), /obj/item/attachable/heavy_barrel, VENDOR_ITEM_REGULAR),
list("Extended Barrel", round(scale * 6.5), /obj/item/attachable/extended_barrel, VENDOR_ITEM_REGULAR),
list("M5 Bayonet", round(scale * 10.5), /obj/item/attachable/bayonet, VENDOR_ITEM_REGULAR),
list("Recoil Compensator", round(scale * 6.5), /obj/item/attachable/compensator, VENDOR_ITEM_REGULAR),
diff --git a/code/game/machinery/vending/vendor_types/squad_prep/squad_engineer.dm b/code/game/machinery/vending/vendor_types/squad_prep/squad_engineer.dm
index 445ae80d401c..faff01f7f299 100644
--- a/code/game/machinery/vending/vendor_types/squad_prep/squad_engineer.dm
+++ b/code/game/machinery/vending/vendor_types/squad_prep/squad_engineer.dm
@@ -116,7 +116,7 @@ GLOBAL_LIST_INIT(cm_vending_clothing_engi, list(
list("G8-A General Utility Pouch", 0, /obj/item/storage/backpack/general_belt, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
list("M276 Ammo Load Rig", 0, /obj/item/storage/belt/marine, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
list("M276 General Pistol Holster Rig", 0, /obj/item/storage/belt/gun/m4a3, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
- list("M276 M39 Holster Rig", 0, /obj/item/storage/large_holster/m39, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
+ list("M276 M39 Holster Rig", 0, /obj/item/storage/belt/gun/m39, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
list("M276 M44 Holster Rig", 0, /obj/item/storage/belt/gun/m44, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
list("M276 M82F Holster Rig", 0, /obj/item/storage/belt/gun/flaregun, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
list("M276 Shotgun Shell Loading Rig", 0, /obj/item/storage/belt/shotgun, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
diff --git a/code/game/machinery/vending/vendor_types/squad_prep/squad_leader.dm b/code/game/machinery/vending/vendor_types/squad_prep/squad_leader.dm
index fdfdabd8335e..9757576e6d0b 100644
--- a/code/game/machinery/vending/vendor_types/squad_prep/squad_leader.dm
+++ b/code/game/machinery/vending/vendor_types/squad_prep/squad_leader.dm
@@ -127,7 +127,7 @@ GLOBAL_LIST_INIT(cm_vending_clothing_leader, list(
list("M276 General Pistol Holster Rig", 0, /obj/item/storage/belt/gun/m4a3, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
list("M276 Lifesaver Bag", 0, /obj/item/storage/belt/medical/lifesaver, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
list("M276 Medical Storage Rig", 0, /obj/item/storage/belt/medical, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
- list("M276 M39 Holster Rig", 0, /obj/item/storage/large_holster/m39, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
+ list("M276 M39 Holster Rig", 0, /obj/item/storage/belt/gun/m39, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
list("M276 M44 Holster Rig", 0, /obj/item/storage/belt/gun/m44, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
list("M276 M82F Holster Rig", 0, /obj/item/storage/belt/gun/flaregun, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
list("M276 Shotgun Shell Loading Rig", 0, /obj/item/storage/belt/shotgun, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
diff --git a/code/game/machinery/vending/vendor_types/squad_prep/squad_medic.dm b/code/game/machinery/vending/vendor_types/squad_prep/squad_medic.dm
index 532c8e58dd02..7c9682985298 100644
--- a/code/game/machinery/vending/vendor_types/squad_prep/squad_medic.dm
+++ b/code/game/machinery/vending/vendor_types/squad_prep/squad_medic.dm
@@ -130,7 +130,7 @@ GLOBAL_LIST_INIT(cm_vending_clothing_medic, list(
list("M276 General Pistol Holster Rig", 0, /obj/item/storage/belt/gun/m4a3, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
list("M276 Lifesaver Bag (Full)", 0, /obj/item/storage/belt/medical/lifesaver/full, MARINE_CAN_BUY_BELT, VENDOR_ITEM_RECOMMENDED),
list("M276 Medical Storage Rig (Full)", 0, /obj/item/storage/belt/medical/full, MARINE_CAN_BUY_BELT, VENDOR_ITEM_RECOMMENDED),
- list("M276 M39 Holster Rig", 0, /obj/item/storage/large_holster/m39, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
+ list("M276 M39 Holster Rig", 0, /obj/item/storage/belt/gun/m39, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
list("M276 M44 Holster Rig", 0, /obj/item/storage/belt/gun/m44, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
list("M276 M82F Holster Rig", 0, /obj/item/storage/belt/gun/flaregun, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
list("M276 Shotgun Shell Loading Rig", 0, /obj/item/storage/belt/shotgun, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
diff --git a/code/game/machinery/vending/vendor_types/squad_prep/squad_prep.dm b/code/game/machinery/vending/vendor_types/squad_prep/squad_prep.dm
index 4f10d956ee3c..d2e50aee9042 100644
--- a/code/game/machinery/vending/vendor_types/squad_prep/squad_prep.dm
+++ b/code/game/machinery/vending/vendor_types/squad_prep/squad_prep.dm
@@ -55,6 +55,7 @@
//------------SQUAD PREP UNIFORM VENDOR---------------
+
/obj/structure/machinery/cm_vending/sorted/uniform_supply/squad_prep
name = "\improper ColMarTech Surplus Uniform Vendor"
desc = "An automated supply rack hooked up to a small storage of standard marine uniforms."
@@ -68,46 +69,92 @@
/obj/structure/machinery/cm_vending/sorted/uniform_supply/squad_prep/populate_product_list(scale)
listed_products = list(
- list("UNIFORM & STORAGE", -1, null, null),
- list("Lightweight IMP Backpack", 10, /obj/item/storage/backpack/marine, VENDOR_ITEM_REGULAR),
- list("Marine Radio Headset", 10, /obj/item/device/radio/headset/almayer, VENDOR_ITEM_REGULAR),
- list("Marine Combat Gloves", 10, /obj/item/clothing/gloves/marine, VENDOR_ITEM_REGULAR),
- list("Marine Black Combat Gloves", 10, /obj/item/clothing/gloves/marine/black, VENDOR_ITEM_REGULAR),
- list("Marine Combat Boots", 20, /obj/item/clothing/shoes/marine, VENDOR_ITEM_REGULAR),
- list("Shotgun Scabbard", 5, /obj/item/storage/large_holster/m37, VENDOR_ITEM_REGULAR),
- list("USCM Satchel", 10, /obj/item/storage/backpack/marine/satchel, VENDOR_ITEM_REGULAR),
- list("USCM Technical Satchel", 10, /obj/item/storage/backpack/marine/satchel/tech, VENDOR_ITEM_REGULAR),
- list("USCM Technical Chestrig", 10, /obj/item/storage/backpack/marine/engineerpack/welder_chestrig, VENDOR_ITEM_REGULAR),
- list("USCM Uniform", 20, /obj/item/clothing/under/marine, VENDOR_ITEM_REGULAR),
+ list("STANDARD EQUIPMENT", -1, null, null, null),
+ list("Marine Combat Boots", round(scale * 15), /obj/item/clothing/shoes/marine, VENDOR_ITEM_REGULAR),
+ list("USCM Uniform", round(scale * 15), /obj/item/clothing/under/marine, VENDOR_ITEM_REGULAR),
+ list("Marine Combat Gloves", round(scale * 15), /obj/item/clothing/gloves/marine, VENDOR_ITEM_REGULAR),
+ list("Marine Black Combat Gloves", round(scale * 15), /obj/item/clothing/gloves/marine/black, VENDOR_ITEM_REGULAR),
+ list("Marine Radio Headset", round(scale * 15), /obj/item/device/radio/headset/almayer, VENDOR_ITEM_REGULAR),
+ list("M10 Pattern Marine Helmet", round(scale * 15), /obj/item/clothing/head/helmet/marine, VENDOR_ITEM_REGULAR),
- list("BELTS", -1, null, null),
- list("M276 Pattern Ammo Load Rig", 10, /obj/item/storage/belt/marine, VENDOR_ITEM_REGULAR),
- list("M276 Pattern M40 Grenade Rig", 8, /obj/item/storage/belt/grenade, VENDOR_ITEM_REGULAR),
- list("M276 Pattern Shotgun Shell Loading Rig", 10, /obj/item/storage/belt/shotgun, VENDOR_ITEM_REGULAR),
- list("M276 Pattern General Pistol Holster Rig", 10, /obj/item/storage/belt/gun/m4a3, VENDOR_ITEM_REGULAR),
- list("M276 Pattern M39 Holster Rig", 10, /obj/item/storage/large_holster/m39, VENDOR_ITEM_REGULAR),
- list("M276 Pattern M44 Holster Rig", 10, /obj/item/storage/belt/gun/m44, VENDOR_ITEM_REGULAR),
- list("M276 Pattern M82F Holster Rig", 5, /obj/item/storage/belt/gun/flaregun, VENDOR_ITEM_REGULAR),
+ list("WEBBINGS", -1, null, null),
+ list("Brown Webbing Vest", round(scale * 1.25), /obj/item/clothing/accessory/storage/black_vest/brown_vest, VENDOR_ITEM_REGULAR),
+ list("Black Webbing Vest", round(scale * 0.5), /obj/item/clothing/accessory/storage/black_vest, VENDOR_ITEM_REGULAR),
+ list("Webbing", round(scale * 2), /obj/item/clothing/accessory/storage/webbing, VENDOR_ITEM_REGULAR),
+ list("Drop Pouch", round(scale * 0.5), /obj/item/clothing/accessory/storage/droppouch, VENDOR_ITEM_REGULAR),
+ list("Shoulder Holster", round(scale * 0.5), /obj/item/clothing/accessory/storage/holster, VENDOR_ITEM_REGULAR),
list("ARMOR", -1, null, null),
- list("M10 Pattern Marine Helmet", 20, /obj/item/clothing/head/helmet/marine, VENDOR_ITEM_REGULAR),
- list("M3 Pattern Carrier Marine Armor", 20, /obj/item/clothing/suit/storage/marine/carrier, VENDOR_ITEM_REGULAR),
- list("M3 Pattern Padded Marine Armor", 20, /obj/item/clothing/suit/storage/marine/padded, VENDOR_ITEM_REGULAR),
- list("M3 Pattern Padless Marine Armor", 20, /obj/item/clothing/suit/storage/marine/padless, VENDOR_ITEM_REGULAR),
- list("M3 Pattern Ridged Marine Armor", 20, /obj/item/clothing/suit/storage/marine/padless_lines, VENDOR_ITEM_REGULAR),
- list("M3 Pattern Skull Marine Armor", 20, /obj/item/clothing/suit/storage/marine/skull, VENDOR_ITEM_REGULAR),
- list("M3 Pattern Smooth Marine Armor", 20, /obj/item/clothing/suit/storage/marine/smooth, VENDOR_ITEM_REGULAR),
- list("M3-EOD Pattern Heavy Armor", 10, /obj/item/clothing/suit/storage/marine/heavy, VENDOR_ITEM_REGULAR),
- list("M3-L Pattern Light Armor", 10, /obj/item/clothing/suit/storage/marine/light, VENDOR_ITEM_REGULAR),
+ list("M3 Pattern Carrier Marine Armor", round(scale * 15), /obj/item/clothing/suit/storage/marine/carrier, VENDOR_ITEM_REGULAR),
+ list("M3 Pattern Padded Marine Armor", round(scale * 15), /obj/item/clothing/suit/storage/marine/padded, VENDOR_ITEM_REGULAR),
+ list("M3 Pattern Padless Marine Armor", round(scale * 15), /obj/item/clothing/suit/storage/marine/padless, VENDOR_ITEM_REGULAR),
+ list("M3 Pattern Ridged Marine Armor", round(scale * 15), /obj/item/clothing/suit/storage/marine/padless_lines, VENDOR_ITEM_REGULAR),
+ list("M3 Pattern Skull Marine Armor", round(scale * 15), /obj/item/clothing/suit/storage/marine/skull, VENDOR_ITEM_REGULAR),
+ list("M3 Pattern Smooth Marine Armor", round(scale * 15), /obj/item/clothing/suit/storage/marine/smooth, VENDOR_ITEM_REGULAR),
+ list("M3-EOD Pattern Heavy Armor", round(scale * 10), /obj/item/clothing/suit/storage/marine/heavy, VENDOR_ITEM_REGULAR),
+ list("M3-L Pattern Light Armor", round(scale * 10), /obj/item/clothing/suit/storage/marine/light, VENDOR_ITEM_REGULAR),
+
+ list("BACKPACK", -1, null, null, null),
+ list("Lightweight IMP Backpack", round(scale * 15), /obj/item/storage/backpack/marine, VENDOR_ITEM_REGULAR),
+ list("Technician Backpack", round(scale * 15), /obj/item/storage/backpack/marine/tech, VENDOR_ITEM_REGULAR),
+ list("Medical Backpack", round(scale * 15), /obj/item/storage/backpack/marine/medic, VENDOR_ITEM_REGULAR),
+ list("USCM Satchel", round(scale * 15), /obj/item/storage/backpack/marine/satchel, VENDOR_ITEM_REGULAR),
+ list("USCM Technical Satchel", round(scale * 15), /obj/item/storage/backpack/marine/satchel/tech, VENDOR_ITEM_REGULAR),
+ list("USCM Technical Chestrig", round(scale * 15), /obj/item/storage/backpack/marine/engineerpack/welder_chestrig, VENDOR_ITEM_REGULAR),
+ list("Medical Satchel", round(scale * 15), /obj/item/storage/backpack/marine/satchel/medic, VENDOR_ITEM_REGULAR),
+ list("Shotgun Scabbard", round(scale * 5), /obj/item/storage/large_holster/m37, VENDOR_ITEM_REGULAR),
+
+ list("RESTRICTED BACKPACKS", -1, null, null),
+ list("USCM Technician Welderpack", round(scale * 1.25), /obj/item/storage/backpack/marine/engineerpack, VENDOR_ITEM_REGULAR),
+ list("Technician Welder-Satchel", round(scale * 2), /obj/item/storage/backpack/marine/engineerpack/satchel, VENDOR_ITEM_REGULAR),
+ list("Radio Telephone Backpack", round(scale * 0.5), /obj/item/storage/backpack/marine/satchel/rto, VENDOR_ITEM_REGULAR),
+
+ list("BELTS", -1, null, null),
+ list("M276 Pattern Ammo Load Rig", round(scale * 15), /obj/item/storage/belt/marine, VENDOR_ITEM_REGULAR),
+ list("M276 Pattern M40 Grenade Rig", round(scale * 10), /obj/item/storage/belt/grenade, VENDOR_ITEM_REGULAR),
+ list("M276 Pattern Shotgun Shell Loading Rig", round(scale * 15), /obj/item/storage/belt/shotgun, VENDOR_ITEM_REGULAR),
+ list("M276 Pattern General Pistol Holster Rig", round(scale * 15), /obj/item/storage/belt/gun/m4a3, VENDOR_ITEM_REGULAR),
+ list("M276 Pattern M39 Holster Rig", round(scale * 15), /obj/item/storage/large_holster/m39, VENDOR_ITEM_REGULAR),
+ list("M276 Pattern M39 Holster Rig And Pouch", round(scale * 10), /obj/item/storage/belt/gun/m39, VENDOR_ITEM_REGULAR),
+ list("M276 Pattern M44 Holster Rig", round(scale * 15), /obj/item/storage/belt/gun/m44, VENDOR_ITEM_REGULAR),
+ list("M276 Pattern M82F Holster Rig", round(scale * 5), /obj/item/storage/belt/gun/flaregun, VENDOR_ITEM_REGULAR),
+ list("M276 Knife Rig (Full)", round(scale * 15), /obj/item/storage/belt/knifepouch, VENDOR_ITEM_REGULAR),
+ list("M276 G8-A General Utility Pouch", round(scale * 15), /obj/item/storage/backpack/general_belt, VENDOR_ITEM_REGULAR),
+
+ list("POUCHES", -1, null, null, null),
+ list("Bayonet Sheath (Full)",round(scale * 15), /obj/item/storage/pouch/bayonet, VENDOR_ITEM_REGULAR),
+ list("First-Aid Pouch (Splints, Gauze, Ointment)", round(scale * 15), /obj/item/storage/pouch/firstaid/full/alternate, VENDOR_ITEM_REGULAR),
+ list("First-Aid Pouch (Pill Packets)", round(scale * 15), /obj/item/storage/pouch/firstaid/full/pills, VENDOR_ITEM_REGULAR),
+ list("Flare Pouch (Full)", round(scale * 15), /obj/item/storage/pouch/flare/full, VENDOR_ITEM_REGULAR),
+ list("Small Document Pouch", round(scale * 15), /obj/item/storage/pouch/document/small, VENDOR_ITEM_REGULAR),
+ list("Magazine Pouch", round(scale * 15), /obj/item/storage/pouch/magazine, VENDOR_ITEM_REGULAR),
+ list("Shotgun Shell Pouch", round(scale * 15), /obj/item/storage/pouch/shotgun, VENDOR_ITEM_REGULAR),
+ list("Medium General Pouch", round(scale * 15), /obj/item/storage/pouch/general/medium, VENDOR_ITEM_REGULAR),
+ list("Pistol Magazine Pouch", round(scale * 15), /obj/item/storage/pouch/magazine/pistol, VENDOR_ITEM_REGULAR),
+ list("Pistol Pouch", round(scale * 15), /obj/item/storage/pouch/pistol, VENDOR_ITEM_REGULAR),
+
+ list("RESTRICTED POUCHES", -1, null, null, null),
+ list("Construction Pouch", round(scale * 1.25), /obj/item/storage/pouch/construction, VENDOR_ITEM_REGULAR),
+ list("Explosive Pouch", round(scale * 1.25), /obj/item/storage/pouch/explosive, VENDOR_ITEM_REGULAR),
+ list("First Responder Pouch (Empty)", round(scale * 2.5), /obj/item/storage/pouch/first_responder, VENDOR_ITEM_REGULAR),
+ list("Large Pistol Magazine Pouch", round(scale * 2), /obj/item/storage/pouch/magazine/pistol/large, VENDOR_ITEM_REGULAR),
+ list("Tools Pouch", round(scale * 1.25), /obj/item/storage/pouch/tools, VENDOR_ITEM_REGULAR),
+ list("Sling Pouch", round(scale * 1.25), /obj/item/storage/pouch/sling, VENDOR_ITEM_REGULAR),
+
+ list("MASK", -1, null, null, null),
+ list("Gas Mask", round(scale * 15), /obj/item/clothing/mask/gas, VENDOR_ITEM_REGULAR),
+ list("Heat Absorbent Coif", round(scale * 10), /obj/item/clothing/mask/rebreather/scarf, VENDOR_ITEM_REGULAR),
+ list("Rebreather", round(scale * 10), /obj/item/clothing/mask/rebreather, MARINE_CAN_BUY_MASK, VENDOR_ITEM_REGULAR),
list("MISCELLANEOUS", -1, null, null, null),
- list("Gas Mask", 20, /obj/item/clothing/mask/gas, VENDOR_ITEM_REGULAR),
- list("Heat Absorbent Coif", 10, /obj/item/clothing/mask/rebreather/scarf, VENDOR_ITEM_REGULAR),
- list("M5 Integrated Gas Mask", 10, /obj/item/prop/helmetgarb/helmet_gasmask, VENDOR_ITEM_REGULAR),
- list("M10 Helmet Netting", 10, /obj/item/prop/helmetgarb/netting, VENDOR_ITEM_REGULAR),
- list("M10 Helmet Rain Cover", 10, /obj/item/prop/helmetgarb/raincover, VENDOR_ITEM_REGULAR),
- list("Firearm Lubricant", 20, /obj/item/prop/helmetgarb/gunoil, VENDOR_ITEM_REGULAR),
- list("USCM Flair", 20, /obj/item/prop/helmetgarb/flair_uscm, VENDOR_ITEM_REGULAR),
+ list("Ballistic goggles", round(scale * 10), /obj/item/clothing/glasses/mgoggles, VENDOR_ITEM_REGULAR),
+ list("Prescription ballistic goggles", round(scale * 10), /obj/item/clothing/glasses/mgoggles/prescription, VENDOR_ITEM_REGULAR),
+ list("Marine RPG glasses", round(scale * 10), /obj/item/clothing/glasses/regular, VENDOR_ITEM_REGULAR),
+ list("M5 Integrated Gas Mask", round(scale * 10), /obj/item/prop/helmetgarb/helmet_gasmask, VENDOR_ITEM_REGULAR),
+ list("M10 Helmet Netting", round(scale * 10), /obj/item/prop/helmetgarb/netting, VENDOR_ITEM_REGULAR),
+ list("M10 Helmet Rain Cover", round(scale * 10), /obj/item/prop/helmetgarb/raincover, VENDOR_ITEM_REGULAR),
+ list("Firearm Lubricant", round(scale * 15), /obj/item/prop/helmetgarb/gunoil, VENDOR_ITEM_REGULAR),
+ list("USCM Flair", round(scale * 15), /obj/item/prop/helmetgarb/flair_uscm, VENDOR_ITEM_REGULAR),
)
//--------------SQUAD SPECIFIC VERSIONS--------------
@@ -172,7 +219,6 @@
/obj/structure/machinery/cm_vending/sorted/cargo_ammo/squad/populate_product_list(scale)
listed_products = list(
-
list("ARMOR-PIERCING AMMUNITION", -1, null, null),
list("M4RA AP Magazine (10x24mm)", round(scale * 3.5), /obj/item/ammo_magazine/rifle/m4ra/ap, VENDOR_ITEM_REGULAR),
list("M39 AP Magazine (10x20mm)", round(scale * 3), /obj/item/ammo_magazine/smg/m39/ap, VENDOR_ITEM_REGULAR),
@@ -201,8 +247,8 @@
//--------------SQUAD ARMAMENTS VENDOR--------------
/obj/structure/machinery/cm_vending/sorted/cargo_guns/squad
- name = "\improper ColMarTech Automated Armaments Squad Vendor"
- desc = "An automated supply rack hooked up to a small storage of various firearms and explosives. Can be accessed by any Marine Rifleman."
+ name = "\improper ColMarTech Automated Utilities Squad Vendor"
+ desc = "An automated supply rack hooked up to a small storage of various utilities and tools. Can be accessed by any Marine Rifleman."
req_access = list(ACCESS_MARINE_ALPHA)
req_one_access = list(ACCESS_MARINE_LEADER, ACCESS_MARINE_SPECPREP, ACCESS_MARINE_RO)
hackable = TRUE
@@ -216,47 +262,30 @@
/obj/structure/machinery/cm_vending/sorted/cargo_guns/squad/populate_product_list(scale)
listed_products = list(
- list("WEBBINGS", -1, null, null),
- list("Brown Webbing Vest", round(scale * 2), /obj/item/clothing/accessory/storage/black_vest/brown_vest, VENDOR_ITEM_REGULAR),
- list("Black Webbing Vest", round(scale * 1), /obj/item/clothing/accessory/storage/black_vest, VENDOR_ITEM_REGULAR),
- list("Webbing", round(scale * 3), /obj/item/clothing/accessory/storage/webbing, VENDOR_ITEM_REGULAR),
- list("Drop Pouch", round(scale * 1), /obj/item/clothing/accessory/storage/droppouch, VENDOR_ITEM_REGULAR),
- list("Shoulder Holster", round(scale * 1), /obj/item/clothing/accessory/storage/holster, VENDOR_ITEM_REGULAR),
+ list("FOOD", -1, null, null),
+ list("MRE", round(scale * 5), /obj/item/storage/box/MRE, VENDOR_ITEM_REGULAR),
+ list("MRE Box", round(scale * 1), /obj/item/ammo_box/magazine/misc/mre, VENDOR_ITEM_REGULAR),
- list("BACKPACKS", -1, null, null),
- list("Lightweight IMP Backpack", round(scale * 15), /obj/item/storage/backpack/marine, VENDOR_ITEM_REGULAR),
- list("Shotgun Scabbard", round(scale * 5), /obj/item/storage/large_holster/m37, VENDOR_ITEM_REGULAR),
- list("USCM Technician Welderpack", round(scale * 2), /obj/item/storage/backpack/marine/engineerpack, VENDOR_ITEM_REGULAR),
- list("Technician Welder-Satchel", round(scale * 3), /obj/item/storage/backpack/marine/engineerpack/satchel, VENDOR_ITEM_REGULAR),
- list("Radio Telephone Backpack", round(scale * 1), /obj/item/storage/backpack/marine/satchel/rto, VENDOR_ITEM_REGULAR),
-
- list("BELTS", -1, null, null),
- list("G8-A General Utility Pouch", round(scale * 2), /obj/item/storage/backpack/general_belt, VENDOR_ITEM_REGULAR),
- list("M276 General Pistol Holster Rig", round(scale * 10), /obj/item/storage/belt/gun/m4a3, VENDOR_ITEM_REGULAR),
- list("M276 M39 Holster Rig", round(scale * 2), /obj/item/storage/large_holster/m39, VENDOR_ITEM_REGULAR),
- list("M276 M44 Holster Rig", round(scale * 5), /obj/item/storage/belt/gun/m44, VENDOR_ITEM_REGULAR),
- list("M276 M82F Holster Rig", round(scale * 2), /obj/item/storage/belt/gun/flaregun, VENDOR_ITEM_REGULAR),
- list("M276 M40 Grenade Rig", round(scale * 3), /obj/item/storage/belt/grenade, VENDOR_ITEM_REGULAR),
-
- list("POUCHES", -1, null, null),
- list("Construction Pouch", round(scale * 2), /obj/item/storage/pouch/construction, VENDOR_ITEM_REGULAR),
- list("Document Pouch", round(scale * 2), /obj/item/storage/pouch/document/small, VENDOR_ITEM_REGULAR),
- list("Explosive Pouch", round(scale * 2), /obj/item/storage/pouch/explosive, VENDOR_ITEM_REGULAR),
- list("First-Aid Pouch (Full)", round(scale * 5), /obj/item/storage/pouch/firstaid/full/alternate, VENDOR_ITEM_REGULAR),
- list("First Responder Pouch (Empty)", round(scale * 4), /obj/item/storage/pouch/first_responder, VENDOR_ITEM_REGULAR),
- list("Flare Pouch", round(scale * 5), /obj/item/storage/pouch/flare/full, VENDOR_ITEM_REGULAR),
- list("Large Pistol Magazine Pouch", round(scale * 3), /obj/item/storage/pouch/magazine/pistol/large, VENDOR_ITEM_REGULAR),
- list("Magazine Pouch", round(scale * 5), /obj/item/storage/pouch/magazine, VENDOR_ITEM_REGULAR),
- list("Medium General Pouch", round(scale * 2), /obj/item/storage/pouch/general/medium, VENDOR_ITEM_REGULAR),
- list("Shotgun Shell Pouch", round(scale *5), /obj/item/storage/pouch/shotgun, VENDOR_ITEM_REGULAR),
- list("Sidearm Pouch", round(scale * 15), /obj/item/storage/pouch/pistol, VENDOR_ITEM_REGULAR),
- list("Tools Pouch", round(scale * 2), /obj/item/storage/pouch/tools, VENDOR_ITEM_REGULAR),
- list("Sling Pouch", round(scale * 2), /obj/item/storage/pouch/sling, VENDOR_ITEM_REGULAR),
+ list("TOOLS", -1, null, null),
+ list("Entrenching Tool (ET)", round(scale * 2), /obj/item/tool/shovel/etool/folded, VENDOR_ITEM_REGULAR),
+ list("Screwdriver", round(scale * 5), /obj/item/tool/screwdriver, VENDOR_ITEM_REGULAR),
+ list("Wirecutters", round(scale * 5), /obj/item/tool/wirecutters, VENDOR_ITEM_REGULAR),
+ list("Crowbar", round(scale * 5), /obj/item/tool/crowbar, VENDOR_ITEM_REGULAR),
+ list("Wrench", round(scale * 5), /obj/item/tool/wrench, VENDOR_ITEM_REGULAR),
+ list("ME3 hand welder", round(scale * 2), /obj/item/tool/weldingtool/simple, VENDOR_ITEM_REGULAR),
- list("MISCELLANEOUS", -1, null, null),
+ list("FLARE AND LIGHT", -1, null, null),
list("Combat Flashlight", round(scale * 5), /obj/item/device/flashlight/combat, VENDOR_ITEM_REGULAR),
- list("Entrenching Tool (ET)", round(scale * 2), /obj/item/tool/shovel/etool/folded, VENDOR_ITEM_REGULAR),
+ list("Flashlight", round(scale * 5), /obj/item/device/flashlight/combat, VENDOR_ITEM_REGULAR),
+ list("Box of Flashlight", round(scale * 1), /obj/item/ammo_box/magazine/misc/flashlight, VENDOR_ITEM_REGULAR),
+ list("Box of Flares", round(scale * 1), /obj/item/ammo_box/magazine/misc/flares, VENDOR_ITEM_REGULAR),
+ list("M94 Marking Flare Pack", round(scale * 10), /obj/item/storage/box/m94, VENDOR_ITEM_REGULAR),
list("M89-S Signal Flare Pack", round(scale * 1), /obj/item/storage/box/m94/signal, VENDOR_ITEM_REGULAR),
+
+ list("MISCELLANEOUS", -1, null, null),
+ list("Toolkit", round(scale * 1), /obj/item/storage/firstaid/toolkit/empty, VENDOR_ITEM_REGULAR),
+ list("Map", round(scale * 5), /obj/item/map/current_map, VENDOR_ITEM_REGULAR),
+ list("Extinguisher", round(scale * 5), /obj/item/tool/extinguisher, VENDOR_ITEM_REGULAR),
list("Machete Scabbard (Full)", round(scale * 5), /obj/item/storage/large_holster/machete/full, VENDOR_ITEM_REGULAR),
list("Binoculars", round(scale * 1), /obj/item/device/binoculars, VENDOR_ITEM_REGULAR),
list("MB-6 Folding Barricades (x3)", round(scale * 2), /obj/item/stack/folding_barricade/three, VENDOR_ITEM_REGULAR),
@@ -281,7 +310,6 @@
/obj/structure/machinery/cm_vending/sorted/attachments/squad/populate_product_list(scale)
listed_products = list(
list("BARREL", -1, null, null),
- list("Barrel Charger", round(scale * 0.9), /obj/item/attachable/heavy_barrel, VENDOR_ITEM_REGULAR),
list("Extended Barrel", round(scale * 2.5), /obj/item/attachable/extended_barrel, VENDOR_ITEM_REGULAR),
list("Recoil Compensator", round(scale * 2.5), /obj/item/attachable/compensator, VENDOR_ITEM_REGULAR),
list("Suppressor", round(scale * 2.5), /obj/item/attachable/suppressor, VENDOR_ITEM_REGULAR),
diff --git a/code/game/machinery/vending/vendor_types/squad_prep/squad_rifleman.dm b/code/game/machinery/vending/vendor_types/squad_prep/squad_rifleman.dm
index 543288c71706..d92eaabf52c1 100644
--- a/code/game/machinery/vending/vendor_types/squad_prep/squad_rifleman.dm
+++ b/code/game/machinery/vending/vendor_types/squad_prep/squad_rifleman.dm
@@ -20,7 +20,7 @@ GLOBAL_LIST_INIT(cm_vending_clothing_marine, list(
list("M276 Ammo Load Rig", 0, /obj/item/storage/belt/marine, MARINE_CAN_BUY_BELT, VENDOR_ITEM_RECOMMENDED),
list("M276 General Pistol Holster Rig", 0, /obj/item/storage/belt/gun/m4a3, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
list("M276 Knife Rig (Full)", 0, /obj/item/storage/belt/knifepouch, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
- list("M276 M39 Holster Rig", 0, /obj/item/storage/large_holster/m39, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
+ list("M276 M39 Holster Rig", 0, /obj/item/storage/belt/gun/m39, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
list("M276 M44 Holster Rig", 0, /obj/item/storage/belt/gun/m44, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
list("M276 M82F Holster Rig", 0, /obj/item/storage/belt/gun/flaregun, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
list("M276 Shotgun Shell Loading Rig", 0, /obj/item/storage/belt/shotgun, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
diff --git a/code/game/machinery/vending/vendor_types/squad_prep/squad_specialist.dm b/code/game/machinery/vending/vendor_types/squad_prep/squad_specialist.dm
index 6b763936fdc8..e0900c3fd3c8 100644
--- a/code/game/machinery/vending/vendor_types/squad_prep/squad_specialist.dm
+++ b/code/game/machinery/vending/vendor_types/squad_prep/squad_specialist.dm
@@ -90,7 +90,7 @@ GLOBAL_LIST_INIT(cm_vending_clothing_specialist, list(
list("G8-A General Utility Pouch", 0, /obj/item/storage/backpack/general_belt, MARINE_CAN_BUY_BELT, VENDOR_ITEM_RECOMMENDED),
list("M276 Ammo Load Rig", 0, /obj/item/storage/belt/marine, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
list("M276 General Pistol Holster Rig", 0, /obj/item/storage/belt/gun/m4a3, MARINE_CAN_BUY_BELT, VENDOR_ITEM_RECOMMENDED),
- list("M276 M39 Holster Rig", 0, /obj/item/storage/large_holster/m39, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
+ list("M276 M39 Holster Rig", 0, /obj/item/storage/belt/gun/m39, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
list("M276 M44 Holster Rig", 0, /obj/item/storage/belt/gun/m44, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
list("M276 M82F Holster Rig", 0, /obj/item/storage/belt/gun/flaregun, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
list("M276 Shotgun Shell Loading Rig", 0, /obj/item/storage/belt/shotgun, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
diff --git a/code/game/machinery/vending/vendor_types/squad_prep/squad_tl.dm b/code/game/machinery/vending/vendor_types/squad_prep/squad_tl.dm
index 4311a3982c86..ceef80ab6952 100644
--- a/code/game/machinery/vending/vendor_types/squad_prep/squad_tl.dm
+++ b/code/game/machinery/vending/vendor_types/squad_prep/squad_tl.dm
@@ -84,7 +84,7 @@ GLOBAL_LIST_INIT(cm_vending_clothing_tl, list(
list("G8-A General Utility Pouch", 0, /obj/item/storage/backpack/general_belt, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
list("M276 Ammo Load Rig", 0, /obj/item/storage/belt/marine, MARINE_CAN_BUY_BELT, VENDOR_ITEM_RECOMMENDED),
list("M276 General Pistol Holster Rig", 0, /obj/item/storage/belt/gun/m4a3, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
- list("M276 M39 Holster Rig", 0, /obj/item/storage/large_holster/m39, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
+ list("M276 M39 Holster Rig", 0, /obj/item/storage/belt/gun/m39, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
list("M276 M44 Holster Rig", 0, /obj/item/storage/belt/gun/m44, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
list("M276 M82F Holster Rig", 0, /obj/item/storage/belt/gun/flaregun, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
list("M276 Shotgun Shell Loading Rig", 0, /obj/item/storage/belt/shotgun, MARINE_CAN_BUY_BELT, VENDOR_ITEM_REGULAR),
diff --git a/code/game/machinery/vending/vendor_types/wo_vendors.dm b/code/game/machinery/vending/vendor_types/wo_vendors.dm
index bdba638c577e..645640f9dc84 100644
--- a/code/game/machinery/vending/vendor_types/wo_vendors.dm
+++ b/code/game/machinery/vending/vendor_types/wo_vendors.dm
@@ -12,7 +12,7 @@
list("Lightweight IMP Backpack", 10, /obj/item/storage/backpack/marine, VENDOR_ITEM_REGULAR),
list("M276 Ammo Load Rig", 10, /obj/item/storage/belt/marine, VENDOR_ITEM_REGULAR),
list("M276 General Pistol Holster Rig", 10, /obj/item/storage/belt/gun/m4a3, VENDOR_ITEM_REGULAR),
- list("M276 M39 Holster Rig", 10, /obj/item/storage/large_holster/m39, VENDOR_ITEM_REGULAR),
+ list("M276 M39 Holster Rig", 10, /obj/item/storage/belt/gun/m39, VENDOR_ITEM_REGULAR),
list("M276 M44 Holster Rig", 10, /obj/item/storage/belt/gun/m44, VENDOR_ITEM_REGULAR),
list("M276 M82F Holster Rig", 10, /obj/item/storage/belt/gun/flaregun, VENDOR_ITEM_REGULAR),
list("M276 Shotgun Shell Loading Rig", 10, /obj/item/storage/belt/shotgun, VENDOR_ITEM_REGULAR),
@@ -236,7 +236,7 @@
list("G8-A General Utility Pouch", round(scale * 3), /obj/item/storage/backpack/general_belt, VENDOR_ITEM_REGULAR),
list("M276 Pattern Ammo Load Rig", round(scale * 15), /obj/item/storage/belt/marine, VENDOR_ITEM_REGULAR),
list("M276 Pattern General Pistol Holster Rig", round(scale * 10), /obj/item/storage/belt/gun/m4a3, VENDOR_ITEM_REGULAR),
- list("M276 Pattern M39 Holster Rig", round(scale * 5), /obj/item/storage/large_holster/m39, VENDOR_ITEM_REGULAR),
+ list("M276 Pattern M39 Holster Rig", round(scale * 5), /obj/item/storage/belt/gun/m39, VENDOR_ITEM_REGULAR),
list("M276 Pattern M44 Holster Rig", round(scale * 5), /obj/item/storage/belt/gun/m44, VENDOR_ITEM_REGULAR),
list("M276 M82F Holster Rig", round(scale * 2), /obj/item/storage/belt/gun/flaregun, VENDOR_ITEM_REGULAR),
list("M276 Pattern Shotgun Shell Loading Rig", round(scale * 10), /obj/item/storage/belt/shotgun, VENDOR_ITEM_REGULAR),
diff --git a/code/game/objects/effects/decals/cleanable/misc.dm b/code/game/objects/effects/decals/cleanable/misc.dm
index 0399d0996411..43c3500813a4 100644
--- a/code/game/objects/effects/decals/cleanable/misc.dm
+++ b/code/game/objects/effects/decals/cleanable/misc.dm
@@ -169,7 +169,7 @@
/obj/effect/decal/cleanable/blackgoo/Crossed(mob/living/carbon/human/H)
if(!istype(H)) return
if(H.species.name == "Human")
- if(!H.shoes || prob(25))
+ if(!H.shoes && prob(50))
H.contract_disease(new /datum/disease/black_goo)
diff --git a/code/game/objects/effects/spawners/wo_spawners/supplies.dm b/code/game/objects/effects/spawners/wo_spawners/supplies.dm
index f2ef887d076c..28f9936b972f 100644
--- a/code/game/objects/effects/spawners/wo_spawners/supplies.dm
+++ b/code/game/objects/effects/spawners/wo_spawners/supplies.dm
@@ -175,7 +175,7 @@
/obj/effect/landmark/wo_supplies/storage/belts/m39holster
icon_state = "m39_holster"
amount = list(1,5)
- stuff = list(/obj/item/storage/large_holster/m39)
+ stuff = list(/obj/item/storage/belt/gun/m39)
diff --git a/code/game/objects/items/backpack_sprayers.dm b/code/game/objects/items/backpack_sprayers.dm
index 09f620c345d5..427a1dd597c7 100644
--- a/code/game/objects/items/backpack_sprayers.dm
+++ b/code/game/objects/items/backpack_sprayers.dm
@@ -8,6 +8,7 @@
w_class = SIZE_LARGE
flags_equip_slot = SLOT_BACK
flags_atom = OPENCONTAINER
+ possible_transfer_amounts = null//no point giving it possibility when mister can't it just confuse people
volume = 500
var/fill_reagent = "water"
var/spawn_empty = FALSE
@@ -83,8 +84,10 @@
/obj/item/reagent_container/glass/watertank/verb/toggle_mister_verb()
set name = "Toggle Mister"
set category = "Object"
+ set src in usr
toggle_mister(usr)
+
/obj/item/reagent_container/glass/watertank/MouseDrop(obj/over_object as obj)
if(!CAN_PICKUP(usr, src))
return ..()
@@ -132,7 +135,7 @@
item_state = "nozzle"
w_class = SIZE_LARGE
flags_equip_slot = null
- amount_per_transfer_from_this = 50
+ amount_per_transfer_from_this = 5
possible_transfer_amounts = null
spray_size = 5
volume = 500
diff --git a/code/game/objects/items/devices/defibrillator.dm b/code/game/objects/items/devices/defibrillator.dm
index 0596ae9d14b8..30d0467a9b76 100644
--- a/code/game/objects/items/devices/defibrillator.dm
+++ b/code/game/objects/items/devices/defibrillator.dm
@@ -11,7 +11,10 @@
w_class = SIZE_MEDIUM
var/blocked_by_suit = TRUE
- var/heart_damage_to_deal = 5
+ /// Min damage defib deals to victims' heart
+ var/min_heart_damage_dealt = 3
+ /// Max damage defib deals to victims' heart
+ var/max_heart_damage_dealt = 5
var/ready = 0
var/damage_heal_threshold = 12 //This is the maximum non-oxy damage the defibrillator will heal to get a patient above -100, in all categories
var/datum/effect_system/spark_spread/spark_system = new /datum/effect_system/spark_spread
@@ -191,8 +194,11 @@
shock_cooldown = world.time + 10 //1 second cooldown before you can shock again
var/datum/internal_organ/heart/heart = H.internal_organs_by_name["heart"]
+ /// Has the defib already caused the chance of heart damage, to not potentially double up later
+ var/heart_already_damaged = FALSE
if(heart && prob(25))
- heart.take_damage(heart_damage_to_deal, TRUE) //Allow the defibrillator to possibly worsen heart damage. Still rare enough to just be the "clone damage" of the defib
+ heart.take_damage(rand(min_heart_damage_dealt, max_heart_damage_dealt), TRUE) // Make death and revival leave lasting consequences
+ heart_already_damaged = TRUE
if(!H.is_revivable())
playsound(get_turf(src), 'sound/items/defib_failed.ogg', 25, 0)
@@ -230,6 +236,9 @@
user.track_life_saved(user.job)
user.life_revives_total++
H.handle_revive()
+ if(heart && !heart_already_damaged)
+ heart.take_damage(rand(min_heart_damage_dealt, max_heart_damage_dealt), TRUE) // Make death and revival leave lasting consequences
+
to_chat(H, SPAN_NOTICE("You suddenly feel a spark and your consciousness returns, dragging you back to the mortal plane."))
if(H.client?.prefs.toggles_flashing & FLASH_CORPSEREVIVE)
window_flash(H.client)
@@ -239,13 +248,14 @@
/obj/item/device/defibrillator/compact_adv
name = "advanced compact defibrillator"
- desc = "An advanced compact defibrillator that trades capacity for strong immediate power. Ignores armor and heals strongly and quickly, at the cost of very low charge."
+ desc = "An advanced compact defibrillator that trades capacity for strong immediate power. Ignores armor and heals strongly and quickly, at the cost of very low charge. It does not damage the heart."
icon = 'icons/obj/items/experimental_tools.dmi'
icon_state = "compact_defib"
item_state = "defib"
w_class = SIZE_MEDIUM
blocked_by_suit = FALSE
- heart_damage_to_deal = 0
+ min_heart_damage_dealt = 0
+ max_heart_damage_dealt = 0
damage_heal_threshold = 40
charge_cost = 198
diff --git a/code/game/objects/items/devices/radio/encryptionkey.dm b/code/game/objects/items/devices/radio/encryptionkey.dm
index 9fa85f03b9b1..d724e1cec10f 100644
--- a/code/game/objects/items/devices/radio/encryptionkey.dm
+++ b/code/game/objects/items/devices/radio/encryptionkey.dm
@@ -68,6 +68,9 @@
icon_state = "cap_key"
channels = list(RADIO_CHANNEL_COMMAND = TRUE, SQUAD_MARINE_1 = TRUE, SQUAD_MARINE_2 = TRUE, SQUAD_MARINE_3 = TRUE, SQUAD_MARINE_4 = TRUE, SQUAD_MARINE_5 = TRUE, SQUAD_MARINE_CRYO = TRUE, RADIO_CHANNEL_ENGI = TRUE, RADIO_CHANNEL_MEDSCI = TRUE, RADIO_CHANNEL_REQ = TRUE, RADIO_CHANNEL_JTAC = TRUE, RADIO_CHANNEL_INTEL = TRUE)
+/obj/item/device/encryptionkey/mcom/alt
+ channels = list(RADIO_CHANNEL_COMMAND = TRUE, SQUAD_MARINE_1 = FALSE, SQUAD_MARINE_2 = FALSE, SQUAD_MARINE_3 = FALSE, SQUAD_MARINE_4 = FALSE, SQUAD_MARINE_5 = FALSE, SQUAD_MARINE_CRYO = FALSE, RADIO_CHANNEL_ENGI = TRUE, RADIO_CHANNEL_MEDSCI = TRUE, RADIO_CHANNEL_REQ = TRUE, RADIO_CHANNEL_JTAC = TRUE, RADIO_CHANNEL_INTEL = TRUE)
+
// MARINE ENGINEERING
/obj/item/device/encryptionkey/ce
@@ -85,7 +88,7 @@
/obj/item/device/encryptionkey/cmo
name = "Chief Medical Officer's Encryption Key"
icon_state = "cmo_key"
- channels = list(RADIO_CHANNEL_MEDSCI = TRUE, RADIO_CHANNEL_COMMAND = TRUE)
+ channels = list(RADIO_CHANNEL_MEDSCI = TRUE, RADIO_CHANNEL_COMMAND = TRUE, RADIO_CHANNEL_INTEL = TRUE)
/obj/item/device/encryptionkey/med
name = "Medical Radio Encryption Key"
@@ -116,7 +119,7 @@
// MARINE REQUISTIONS
-/obj/item/device/encryptionkey/ro
+/obj/item/device/encryptionkey/qm
name = "Requisition Officer's Encryption Key"
icon_state = "ce_key"
channels = list(RADIO_CHANNEL_REQ = TRUE, RADIO_CHANNEL_COMMAND = TRUE, RADIO_CHANNEL_ENGI = FALSE, RADIO_CHANNEL_MEDSCI = FALSE, SQUAD_MARINE_1 = FALSE, SQUAD_MARINE_2 = FALSE, SQUAD_MARINE_3 = FALSE, SQUAD_MARINE_4 = FALSE, SQUAD_MARINE_5 = FALSE, SQUAD_MARINE_CRYO = FALSE)
diff --git a/code/game/objects/items/devices/radio/headset.dm b/code/game/objects/items/devices/radio/headset.dm
index 0bd0fae364e5..7e6b0db056d0 100644
--- a/code/game/objects/items/devices/radio/headset.dm
+++ b/code/game/objects/items/devices/radio/headset.dm
@@ -451,11 +451,11 @@
icon_state = "req_headset"
initial_keys = list(/obj/item/device/encryptionkey/req/ct)
-/obj/item/device/radio/headset/almayer/ro
- desc = "A headset used by the RO for controlling their slave(s). Channels are as follows: :u - requisitions, :v - marine command, :a - alpha squad, :b - bravo squad, :c - charlie squad, :d - delta squad."
+/obj/item/device/radio/headset/almayer/qm
+ desc = "A headset used by the quartermaster for controlling their slave(s). Channels are as follows: :u - requisitions, :v - marine command, :a - alpha squad, :b - bravo squad, :c - charlie squad, :d - delta squad."
name = "requisition officer radio headset"
icon_state = "ro_headset"
- initial_keys = list(/obj/item/device/encryptionkey/ro)
+ initial_keys = list(/obj/item/device/encryptionkey/qm)
volume = RADIO_VOLUME_CRITICAL
multibroadcast_cooldown = LOW_MULTIBROADCAST_COOLDOWN
@@ -494,6 +494,9 @@
volume = RADIO_VOLUME_CRITICAL
multibroadcast_cooldown = LOW_MULTIBROADCAST_COOLDOWN
+/obj/item/device/radio/headset/almayer/mcom/alt
+ initial_keys = list(/obj/item/device/encryptionkey/mcom/alt)
+
/obj/item/device/radio/headset/almayer/marine/mp_honor/com
name = "marine honor guard command radio headset"
desc = "Given to highly trusted marine honor guard only. It features a non-standard brace. Channels are as follows: :v - marine command, :p - military police, :n - engineering, :m - medbay, :u - requisitions, :a - alpha squad, :b - bravo squad, :c - charlie squad, :d - delta squad."
diff --git a/code/game/objects/items/storage/belt.dm b/code/game/objects/items/storage/belt.dm
index d12e5b2808a1..7721a9643fb5 100644
--- a/code/game/objects/items/storage/belt.dm
+++ b/code/game/objects/items/storage/belt.dm
@@ -16,6 +16,26 @@
///TRUE Means that it closes a flap over its contents, and therefore update_icon should lift that flap when opened. If it doesn't have _half and _full iconstates, this doesn't matter either way.
var/flap = TRUE
+/obj/item/storage/belt/gun/flaregun/dump_into(obj/item/storage/origin_storage, mob/user)
+
+ if(length(holstered_guns) < 1 && length(contents) >= (storage_slots-1))
+
+ to_chat(user, SPAN_WARNING("[src] is full."))
+ return FALSE
+ return ..()
+
+/obj/item/storage/belt/gun/flaregun/handle_item_insertion(obj/item/new_item, prevent_warning = FALSE, mob/user)
+
+ if(istype(new_item, /obj/item/device/flashlight/flare) && length(holstered_guns) < 1 && length(contents) >= (storage_slots-1))
+ return FALSE
+ return ..()
+
+/obj/item/storage/belt/gun/flaregun/has_room(obj/item/new_item, W_class_override = null)
+
+ if(istype(new_item, /obj/item/device/flashlight/flare) && length(holstered_guns) < 1 && length(contents) >= (storage_slots-1))
+ return FALSE //No slot open because gun in holster.
+ return ..()
+
/obj/item/storage/belt/equipped(mob/user, slot)
switch(slot)
if(WEAR_WAIST, WEAR_J_STORE, WEAR_BACK)
@@ -766,7 +786,7 @@
for(var/i = 1 to storage_slots)
new /obj/item/weapon/throwing_knife(src)
-/obj/item/storage/belt/knifepouch/_item_insertion(obj/item/W, prevent_warning = 0)
+/obj/item/storage/belt/knifepouch/_item_insertion(obj/item/new_item, prevent_warning = FALSE)
..()
playsound(src, 'sound/weapons/gun_shotgun_shell_insert.ogg', 15, TRUE)
@@ -913,6 +933,7 @@
for(var/slot in holster_slots)
if(AM == holster_slots[slot]["gun"])
holster_slots[slot]["gun"] = null
+
update_gun_icon(slot)
return
@@ -988,7 +1009,7 @@
to_chat(usr, SPAN_WARNING("[src] can't hold any more ammo."))
return FALSE
-/obj/item/storage/belt/gun/_item_insertion(obj/item/W, prevent_warning = 0)
+/obj/item/storage/belt/gun/_item_insertion(obj/item/W, prevent_warning = FALSE)
if(isgun(W))
holstered_guns += W
for(var/slot in holster_slots)
@@ -1146,6 +1167,22 @@
for(var/i = 1 to storage_slots - 1)
new /obj/item/ammo_magazine/pistol/highpower/black(src)
+/obj/item/storage/belt/gun/m39
+ name = "\improper M276 pattern M39 holster rig"
+ desc = "Special issue variant of the M276 designed to holster a M39 submachine gun and two spare magazines. Uncommonly issued to USCM support and specialist personnel."
+ icon_state = "m39_armor"
+ item_state = "s_marinebelt"
+ storage_slots = 3
+ max_w_class = 5
+ can_hold = list(
+ /obj/item/weapon/gun/smg/m39,
+ /obj/item/ammo_magazine/smg,
+ )
+ holster_slots = list(
+ "1" = list(
+ "icon_x" = -11,
+ "icon_y" = -5))
+
/obj/item/storage/belt/gun/m44
name = "\improper M276 pattern M44 holster rig"
desc = "The M276 is the standard load-bearing equipment of the USCM. It consists of a modular belt with various clips. This version is for the M44 magnum revolver, along with six small pouches for speedloaders. It smells faintly of hay."
diff --git a/code/game/objects/items/storage/fancy.dm b/code/game/objects/items/storage/fancy.dm
index 2e54d725511d..ea43d6b074b9 100644
--- a/code/game/objects/items/storage/fancy.dm
+++ b/code/game/objects/items/storage/fancy.dm
@@ -12,6 +12,8 @@
* Crayon Box
* Cigarette Box
* Cigar Box
+ * Match Box
+ * Vial Box
*/
/obj/item/storage/fancy
@@ -20,9 +22,10 @@
name = "donut box"
desc = "A box where round, heavenly, holey pastries reside."
var/icon_type = "donut"
+ var/plural = "s"
/obj/item/storage/fancy/update_icon()
- icon_state = "[icon_type]box[contents.len]"
+ icon_state = "[icon_type]box[length(contents)]"
/obj/item/storage/fancy/remove_from_storage(obj/item/W, atom/new_location)
. = ..()
@@ -32,17 +35,14 @@
/obj/item/storage/fancy/get_examine_text(mob/user)
. = ..()
- if(contents.len <= 0)
- . += "There are no [src.icon_type]s left in the box."
- else if(contents.len == 1)
+ if(!length(contents))
+ . += "There are no [src.icon_type][plural] left in the box."
+ else if(length(contents) == 1)
. += "There is one [src.icon_type] left in the box."
else
- . += "There are [src.contents.len] [src.icon_type]s in the box."
-
+ . += "There are [length(src.contents)] [src.icon_type][plural] in the box."
-/*
- * Egg Box
- */
+// EGG BOX
/obj/item/storage/fancy/egg_box
icon = 'icons/obj/items/food.dmi'
@@ -59,9 +59,7 @@
new /obj/item/reagent_container/food/snacks/egg(src)
return
-/*
- * Candle Box
- */
+// CANDLE BOX
/obj/item/storage/fancy/candle_box
name = "candle pack"
@@ -80,9 +78,7 @@
new /obj/item/tool/candle(src)
return
-/*
- * Crayon Box
- */
+// CRAYON BOX
/obj/item/storage/fancy/crayons
name = "box of crayons"
@@ -120,9 +116,8 @@
return
..()
-////////////
-//CIG PACK//
-////////////
+// CIGARETTES BOX
+
/obj/item/storage/fancy/cigarettes
icon = 'icons/obj/items/cigarettes.dmi'
icon_state = "cigpacket"
@@ -153,14 +148,14 @@
icon_state = "[initial(icon_state)]"
/obj/item/storage/fancy/cigarettes/update_icon()
- icon_state = "[initial(icon_state)][contents.len]"
+ icon_state = "[initial(icon_state)][length(contents)]"
return
/obj/item/storage/fancy/cigarettes/attack(mob/living/carbon/M as mob, mob/living/carbon/user as mob)
if(!istype(M, /mob))
return
- if(M == user && user.zone_selected == "mouth" && contents.len > 0 && !user.wear_mask)
+ if(M == user && user.zone_selected == "mouth" && length(contents) > 0 && !user.wear_mask)
var/obj/item/clothing/mask/cigarette/C = locate() in src
if(C)
remove_from_storage(C, get_turf(user))
@@ -223,9 +218,7 @@
default_cig_type = /obj/item/clothing/mask/cigarette/ucigarette
storage_slots = 4
-/////////////
-//CIGAR BOX//
-/////////////
+// CIGAR BOX
/obj/item/storage/fancy/cigar
name = "cigar case"
@@ -253,14 +246,14 @@
icon_state = "[initial(icon_state)]"
/obj/item/storage/fancy/cigar/update_icon()
- icon_state = "[initial(icon_state)][contents.len]"
+ icon_state = "[initial(icon_state)][length(contents)]"
return
/obj/item/storage/fancy/cigar/attack(mob/living/carbon/M as mob, mob/living/carbon/user as mob)
if(!istype(M, /mob))
return
- if(M == user && user.zone_selected == "mouth" && contents.len > 0 && !user.wear_mask)
+ if(M == user && user.zone_selected == "mouth" && length(contents) > 0 && !user.wear_mask)
var/obj/item/clothing/mask/cigarette/cigar/C = locate() in src
if(C)
remove_from_storage(C, get_turf(user))
@@ -286,6 +279,8 @@
storage_slots = 1
default_cigar_type = /obj/item/clothing/mask/cigarette/cigar/tarbacks
+// MATCH BOX
+
/obj/item/storage/fancy/cigar/matchbook
name = "\improper Lucky Strikes matchbook"
desc = "A small book of cheap paper matches. Good luck getting them to light. Made by Lucky Strikes, but you'll be anything but lucky when you burn your hand trying to light a match on this."
@@ -298,6 +293,7 @@
w_class = SIZE_TINY
var/light_chance = 70 //how likely you are to light the match on the book
var/burn_chance = 20 //how likely you are to burn yourself once you light it
+ plural = "es"
/obj/item/storage/fancy/cigar/matchbook/attackby(obj/item/tool/match/W as obj, mob/living/carbon/human/user as mob)
if(!istype(user))
@@ -340,9 +336,7 @@
light_chance = 60
burn_chance = 40
-/*
- * Vial Box
- */
+// VIAL BOX
/obj/item/storage/fancy/vials
icon = 'icons/obj/items/vialbox.dmi'
@@ -401,7 +395,7 @@
req_access = list(ACCESS_MARINE_MEDBAY)
/obj/item/storage/lockbox/vials/update_icon(itemremoved = 0)
- var/total_contents = src.contents.len - itemremoved
+ var/total_contents = length(src.contents) - itemremoved
src.icon_state = "vialbox[total_contents]"
src.overlays.Cut()
if (!broken)
diff --git a/code/game/objects/items/storage/firstaid.dm b/code/game/objects/items/storage/firstaid.dm
index ccab1bf3dfc7..0d976b4cdf57 100644
--- a/code/game/objects/items/storage/firstaid.dm
+++ b/code/game/objects/items/storage/firstaid.dm
@@ -212,6 +212,22 @@
/obj/item/storage/firstaid/surgical/empty/fill_preset_inventory()
return
+//---------TOOLKIT---------
+
+/obj/item/storage/firstaid/toolkit
+ name = "toolkit"
+ desc = "An combat engineering toolkit intended to carry electrical and mechanical supplies into combat."
+ icon_state = "toolkit"
+ item_state = "fulton"
+
+/obj/item/storage/firstaid/toolkit/update_icon()
+ if(content_watchers || !length(contents))
+ icon_state = "toolkit_empty"
+ else
+ icon_state = icon_full
+
+/obj/item/storage/firstaid/toolkit/empty/fill_preset_inventory()
+ return
//---------SYRINGE CASE---------
@@ -265,7 +281,14 @@
/obj/item/storage/surgical_case
name = "surgical case"
- desc = "It's a medical case for storing basic surgical tools."
+ desc = "It's a medical case for storing basic surgical tools. It comes with a brief description for treating common internal bleeds.\
+ \nBefore surgery: Verify correct location and patient is adequately numb to pain.\
+ \nStep one: Open an incision at the site with the scalpel.\
+ \nStep two: Clamp bleeders with the hemostat.\
+ \nStep three: Draw back the skin with the retracter.\
+ \nStep four: Patch the damaged vein with a surgical line.\
+ \nStep five: Close the incision with a surgical line."
+
icon_state = "surgical_case"
throw_speed = SPEED_FAST
throw_range = 8
diff --git a/code/game/objects/items/storage/storage.dm b/code/game/objects/items/storage/storage.dm
index 36f946efdfdc..5a6b7d2b9b05 100644
--- a/code/game/objects/items/storage/storage.dm
+++ b/code/game/objects/items/storage/storage.dm
@@ -31,7 +31,6 @@
var/storage_flags = STORAGE_FLAGS_DEFAULT
var/has_gamemode_skin = FALSE ///Whether to use map-variant skins.
-
/obj/item/storage/MouseDrop(obj/over_object as obj)
if(CAN_PICKUP(usr, src))
if(over_object == usr) // this must come before the screen objects only block
@@ -378,12 +377,12 @@ var/list/global/item_storage_box_cache = list()
return
///Returns TRUE if there is room for the given item. W_class_override allows checking for just a generic W_class, meant for checking shotgun handfuls without having to spawn and delete one just to check.
-/obj/item/storage/proc/has_room(obj/item/W as obj, W_class_override = null)
+/obj/item/storage/proc/has_room(obj/item/new_item, W_class_override = null)
if(storage_slots != null && contents.len < storage_slots)
return TRUE //At least one open slot.
//calculate storage space only for containers that don't have slots
if (storage_slots == null)
- var/sum_storage_cost = W_class_override ? W_class_override : W.get_storage_cost() //Takes the override if there is one, the given item otherwise.
+ var/sum_storage_cost = W_class_override ? W_class_override : new_item.get_storage_cost() //Takes the override if there is one, the given item otherwise.
for(var/obj/item/I in contents)
sum_storage_cost += I.get_storage_cost() //Adds up the combined storage costs which will be in the storage item if the item is added to it.
@@ -455,23 +454,23 @@ That's done by can_be_inserted(). Its checks are whether the item exists, is an
The stop_warning parameter will stop the insertion message from being displayed. It is intended for cases where you are inserting multiple
items at once, such as when picking up all the items on a tile with one click.
user can be null, it refers to the potential mob doing the insertion.**/
-/obj/item/storage/proc/handle_item_insertion(obj/item/W, prevent_warning = 0, mob/user)
- if(!istype(W))
+/obj/item/storage/proc/handle_item_insertion(obj/item/new_item, prevent_warning = FALSE, mob/user)
+ if(!istype(new_item))
return FALSE
- if(user && W.loc == user)
- if(!user.drop_inv_item_to_loc(W, src))
+ if(user && new_item.loc == user)
+ if(!user.drop_inv_item_to_loc(new_item, src))
return FALSE
else
- W.forceMove(src)
+ new_item.forceMove(src)
- _item_insertion(W, prevent_warning, user)
+ _item_insertion(new_item, prevent_warning, user)
return TRUE
/**Inserts the item. Separate proc because handle_item_insertion isn't guaranteed to insert
and it therefore isn't safe to override it before calling parent. Updates icon when done.
Can be called directly but only if the item was spawned inside src - handle_item_insertion is safer.
W is always an item. stop_warning prevents messaging. user may be null.**/
-/obj/item/storage/proc/_item_insertion(obj/item/W, prevent_warning = 0, mob/user)
+/obj/item/storage/proc/_item_insertion(obj/item/W, prevent_warning = FALSE, mob/user)
W.on_enter_storage(src)
if(user)
if (user.client && user.s_active != src)
@@ -721,25 +720,26 @@ W is always an item. stop_warning prevents messaging. user may be null.**/
to_chat(user, SPAN_WARNING("[ammo_dumping] is empty."))
return TRUE
-/obj/item/storage/proc/dump_into(obj/item/storage/M, mob/user)
+/obj/item/storage/proc/dump_into(obj/item/storage/origin_storage, mob/user)
+
if(user.action_busy)
return
- if(!M.contents.len)
- to_chat(user, SPAN_WARNING("[M] is empty."))
+ if(!origin_storage.contents.len)
+ to_chat(user, SPAN_WARNING("[origin_storage] is empty."))
return
- if(!has_room(M.contents[1])) //Does it have room for the first item to be inserted?
+ if(!has_room(origin_storage.contents[1])) //Does it have room for the first item to be inserted?
to_chat(user, SPAN_WARNING("[src] is full."))
return
- to_chat(user, SPAN_NOTICE("You start refilling [src] with [M]."))
+ to_chat(user, SPAN_NOTICE("You start refilling [src] with [origin_storage]."))
if(!do_after(user, 1.5 SECONDS, INTERRUPT_ALL, BUSY_ICON_GENERIC))
return
- for(var/obj/item/I in M)
- if(!has_room(I))
+ for(var/obj/item/new_item in origin_storage)
+ if(!has_room(new_item))
break
- M.remove_from_storage(I)
- handle_item_insertion(I, TRUE, user) //quiet insertion
+ origin_storage.remove_from_storage(new_item)
+ handle_item_insertion(new_item, TRUE, user) //quiet insertion
playsound(user.loc, "rustle", 15, TRUE, 6)
return TRUE
diff --git a/code/game/objects/items/tools/shovel_tools.dm b/code/game/objects/items/tools/shovel_tools.dm
index 29bc19f65bbf..008b37705fe3 100644
--- a/code/game/objects/items/tools/shovel_tools.dm
+++ b/code/game/objects/items/tools/shovel_tools.dm
@@ -233,7 +233,7 @@
/obj/item/tool/shovel/etool/attack_self(mob/user as mob)
folded = !folded
if(folded)
- w_class = SIZE_MEDIUM
+ w_class = SIZE_SMALL
force = 2
else
w_class = SIZE_LARGE
@@ -242,7 +242,7 @@
/obj/item/tool/shovel/etool/folded
folded = TRUE
- w_class = SIZE_MEDIUM
+ w_class = SIZE_SMALL
force = 2
icon_state = "etool_c"
item_state = "etool_c"
diff --git a/code/game/objects/structures/crates_lockers/closets/secure/cm_closets.dm b/code/game/objects/structures/crates_lockers/closets/secure/cm_closets.dm
index 4d275ee7b9d8..5772db33198d 100644
--- a/code/game/objects/structures/crates_lockers/closets/secure/cm_closets.dm
+++ b/code/game/objects/structures/crates_lockers/closets/secure/cm_closets.dm
@@ -134,7 +134,7 @@ GLOBAL_LIST_EMPTY(co_secure_boxes)
new /obj/item/clothing/under/marine/officer/pilot(src)
new /obj/item/clothing/shoes/marine(src)
new /obj/item/clothing/suit/armor/vest/pilot(src)
- new /obj/item/storage/large_holster/m39(src)
+ new /obj/item/storage/belt/gun/m39(src)
new /obj/item/storage/backpack/marine/satchel(src)
new /obj/item/clothing/gloves/yellow(src)
new /obj/item/clothing/glasses/sunglasses(src)
@@ -306,8 +306,8 @@ GLOBAL_LIST_EMPTY(co_secure_boxes)
/obj/structure/closet/secure_closet/req_officer/Initialize()
. = ..()
- new /obj/item/device/radio/headset/almayer/ro(src)
- new /obj/item/clothing/under/rank/ro_suit(src)
+ new /obj/item/device/radio/headset/almayer/qm(src)
+ new /obj/item/clothing/under/rank/qm_suit(src)
new /obj/item/clothing/shoes/marine(src)
new /obj/item/storage/belt/marine(src)
new /obj/item/clothing/head/cmcap/req(src)
diff --git a/code/game/objects/structures/props.dm b/code/game/objects/structures/props.dm
index ea3a2af391bc..66598d602691 100644
--- a/code/game/objects/structures/props.dm
+++ b/code/game/objects/structures/props.dm
@@ -1016,13 +1016,6 @@
icon_state = "arcadeb"
name = "Spirit Phone, The Game, The Movie: II"
-/obj/structure/prop/maintenance_hatch
- name = "\improper Maintenance Hatch"
- icon = 'icons/obj/structures/structures.dmi'
- icon_state = "hatchclosed"
- desc = "Looks like it's rusted shut. Creepy."
- layer = HATCH_LAYER
-
//INVULNERABLE PROPS
/obj/structure/prop/invuln
diff --git a/code/game/objects/structures/stool_bed_chair_nest/xeno_nest.dm b/code/game/objects/structures/stool_bed_chair_nest/xeno_nest.dm
index c8f5a7f82c0f..7a4274c2c16e 100644
--- a/code/game/objects/structures/stool_bed_chair_nest/xeno_nest.dm
+++ b/code/game/objects/structures/stool_bed_chair_nest/xeno_nest.dm
@@ -20,8 +20,6 @@
var/force_nest = FALSE
/// counterpart to buckling_y --> offsets the buckled mob when it buckles
var/list/buckling_x
- /// saves the density of the buckled_mob
- var/buckled_mob_density
/obj/structure/bed/nest/Initialize(mapload, hive)
. = ..()
@@ -52,7 +50,6 @@
resisting_ready = FALSE
if(buckled_mob == current_mob)
- buckled_mob_density = current_mob.density
current_mob.pixel_y = buckling_y["[dir]"]
current_mob.pixel_x = buckling_x["[dir]"]
current_mob.dir = turn(dir, 180)
@@ -70,7 +67,7 @@
current_mob.pixel_y = initial(buckled_mob.pixel_y)
current_mob.pixel_x = initial(buckled_mob.pixel_x)
- current_mob.density = buckled_mob_density
+ current_mob.density = !(current_mob.lying || current_mob.stat == DEAD)
if(dir == SOUTH)
current_mob.layer = initial(current_mob.layer)
if(!ishuman(current_mob))
@@ -281,8 +278,6 @@
buckled_mob.old_y = 0
REMOVE_TRAIT(buckled_mob, TRAIT_NESTED, TRAIT_SOURCE_BUCKLE)
var/mob/living/carbon/human/buckled_human = buckled_mob
- if(buckled_human.stat == DEAD )
- buckled_mob_density = FALSE
var/mob/dead/observer/G = ghost_of_buckled_mob
var/datum/mind/M = G?.mind
@@ -311,7 +306,6 @@
/obj/structure/bed/nest/proc/healthcheck()
if(health <= 0)
- buckled_mob_density = FALSE
deconstruct()
/obj/structure/bed/nest/fire_act()
diff --git a/code/game/verbs/ooc.dm b/code/game/verbs/ooc.dm
index 1c94eb485300..3c964cf4011b 100644
--- a/code/game/verbs/ooc.dm
+++ b/code/game/verbs/ooc.dm
@@ -57,24 +57,38 @@
display_colour = CONFIG_GET(string/ooc_color_default)
msg = process_chat_markup(msg, list("*"))
-
+ var/ooc_prefix = handle_ooc_prefix()
for(var/client/C in GLOB.clients)
if(C.prefs.toggles_chat & CHAT_OOC)
var/display_name = src.key
- if(prefs.unlock_content)
- if(prefs.toggle_prefs & TOGGLE_MEMBER_PUBLIC)
- var/byond = icon('icons/effects/effects.dmi', "byondlogo")
- display_name = "[icon2html(byond, GLOB.clients)][display_name]"
- if(CONFIG_GET(flag/ooc_country_flags))
- if(prefs.toggle_prefs & TOGGLE_OOC_FLAG)
- display_name = "[country2chaticon(src.country, GLOB.clients)][display_name]"
- to_chat(C, "[src.donator ? "\[D\] " : ""]OOC: [display_name]: [msg]")
+ to_chat(C, "[ooc_prefix]OOC: [display_name]: [msg]")
+
/client/proc/set_ooc_color_global(newColor as color)
set name = "OOC Text Color - Global"
set desc = "Set to yellow for eye burning goodness."
set category = "OOC.OOC"
GLOB.ooc_color_override = newColor
+///Used by OOC chat to generate icons for player prefix. Intended to make it easy to see at a glance if someone is staff, WL Council or Mentor.
+/client/proc/handle_ooc_prefix()
+ var/prefix = ""
+ if(prefs.unlock_content && (prefs.toggle_prefs & TOGGLE_MEMBER_PUBLIC))
+ var/byond = icon('icons/effects/effects.dmi', "byondlogo")
+ prefix += "[icon2html(byond, GLOB.clients)]"
+ if(CONFIG_GET(flag/ooc_country_flags) && (prefs.toggle_prefs & TOGGLE_OOC_FLAG))
+ prefix += "[country2chaticon(src.country, GLOB.clients)]"
+ if(donator)
+ prefix += "[icon2html('icons/ooc.dmi', GLOB.clients, "Donator")]"
+ if(isCouncil(src))
+ prefix += "[icon2html('icons/ooc.dmi', GLOB.clients, "WhitelistCouncil")]"
+ if(admin_holder)
+ var/list/rank_icons = icon_states('icons/ooc.dmi')
+ var/rankname = admin_holder.rank
+ if(rankname in rank_icons)
+ prefix += "[icon2html('icons/ooc.dmi', GLOB.clients, admin_holder.rank)]"
+ if(prefix)
+ prefix = "[prefix] "
+ return prefix
/client/verb/looc(msg as text)
set name = "LOOC" //Gave this shit a shorter name so you only have to time out "ooc" rather than "ooc message" to use it --NeoFite
diff --git a/code/game/world.dm b/code/game/world.dm
index 25cd609646da..cff799800a49 100644
--- a/code/game/world.dm
+++ b/code/game/world.dm
@@ -61,7 +61,7 @@ var/list/reboot_sfx = file2list("config/reboot_sfx.txt")
var/testing_locally = (world.params && world.params["local_test"])
var/running_tests = (world.params && world.params["run_tests"])
- #ifdef UNIT_TESTS
+ #if defined(AUTOWIKI) || defined(UNIT_TESTS)
running_tests = TRUE
#endif
// Only do offline sleeping when the server isn't running unit tests or hosting a local dev test
@@ -84,6 +84,10 @@ var/list/reboot_sfx = file2list("config/reboot_sfx.txt")
HandleTestRun()
#endif
+ #ifdef AUTOWIKI
+ setup_autowiki()
+ #endif
+
update_status()
//Scramble the coords obsfucator
diff --git a/code/global.dm b/code/global.dm
index 28a8926cade4..bdde529a9af8 100644
--- a/code/global.dm
+++ b/code/global.dm
@@ -32,6 +32,7 @@
#define CLIENT_HAS_RIGHTS(cli, flags) ((cli?.admin_holder?.rights & flags) == flags)
#define CLIENT_IS_STAFF(cli) (cli?.admin_holder?.rights & (R_MOD|R_ADMIN))
+#define CLIENT_IS_MENTOR(cli) CLIENT_HAS_RIGHTS(cli, R_MENTOR)
#define AHOLD_IS_MOD(ahold) (ahold && (ahold.rights & R_MOD))
#define AHOLD_IS_ADMIN(ahold) (ahold && (ahold.rights & R_ADMIN))
diff --git a/code/modules/admin/IsBanned.dm b/code/modules/admin/IsBanned.dm
index 36e70d311ac0..bf6d8e261ab3 100644
--- a/code/modules/admin/IsBanned.dm
+++ b/code/modules/admin/IsBanned.dm
@@ -12,7 +12,7 @@
return //don't recheck connected clients.
//Guest Checking
- if(IsGuestKey(key))
+ if(!real_bans_only && CONFIG_GET(flag/guest_ban) && IsGuestKey(key))
log_access("Failed Login: [key] - Guests not allowed")
message_admins("Failed Login: [key] - Guests not allowed")
return list("reason"="guest", "desc"="\nReason: Guests not allowed. Please sign in with a byond account.")
diff --git a/code/modules/admin/admin_verbs.dm b/code/modules/admin/admin_verbs.dm
index 05e27625daeb..368e2766ccfc 100644
--- a/code/modules/admin/admin_verbs.dm
+++ b/code/modules/admin/admin_verbs.dm
@@ -344,7 +344,7 @@ var/list/roundstart_mod_verbs = list(
add_verb(src, clan_verbs)
/client/proc/add_admin_whitelists()
- if(CLIENT_HAS_RIGHTS(src, R_MENTOR))
+ if(CLIENT_IS_MENTOR(src))
RoleAuthority.roles_whitelist[ckey] |= WHITELIST_MENTOR
if(CLIENT_IS_STAFF(src))
RoleAuthority.roles_whitelist[ckey] |= WHITELIST_JOE
diff --git a/code/modules/admin/medal_panel/medals_panel_tgui.dm b/code/modules/admin/medal_panel/medals_panel_tgui.dm
index ee8728670544..49c4bb5f96ad 100644
--- a/code/modules/admin/medal_panel/medals_panel_tgui.dm
+++ b/code/modules/admin/medal_panel/medals_panel_tgui.dm
@@ -19,22 +19,22 @@ GLOBAL_DATUM_INIT(medals_panel, /datum/medals_panel_tgui, new)
var/list/xeno_awards = list()
var/list/uscm_award_ckeys = list()
var/list/xeno_award_ckeys = list()
-
+
// Break the medals up by recipient and then pack each medal into a string
for(var/recipient_name as anything in GLOB.medal_awards)
var/datum/recipient_awards/recipient_award = GLOB.medal_awards[recipient_name]
uscm_awards[recipient_name] = list()
uscm_award_ckeys[recipient_name] = recipient_award.recipient_ckey ? " ([recipient_award.recipient_ckey])" : ""
for(var/i in 1 to recipient_award.medal_names.len) // We're assuming everything is same length
- uscm_awards[recipient_name] += "[recipient_award.medal_names[i]]: \'[recipient_award.medal_citations[i]]\' by [recipient_award.giver_rank[i]] [recipient_award.giver_name[i]]."
-
+ uscm_awards[recipient_name] += "[recipient_award.medal_names[i]]: \'[recipient_award.medal_citations[i]]\' by [recipient_award.giver_rank[i] ? "[recipient_award.giver_rank[i]] " : ""][recipient_award.giver_name[i] ? "[recipient_award.giver_name[i]] " : ""]([recipient_award.giver_ckey[i]])."
+
for(var/recipient_name as anything in GLOB.jelly_awards)
var/datum/recipient_awards/recipient_award = GLOB.jelly_awards[recipient_name]
xeno_awards[recipient_name] = list()
xeno_award_ckeys[recipient_name] = recipient_award.recipient_ckey ? " ([recipient_award.recipient_ckey])" : ""
for(var/i in 1 to recipient_award.medal_names.len) // We're assuming everything is same length
- xeno_awards[recipient_name] += "[recipient_award.medal_names[i]]: \'[recipient_award.medal_citations[i]]\'[recipient_award.giver_rank[i] ? " by [recipient_award.giver_rank[i]]" : ""][recipient_award.giver_name[i] ? " ([recipient_award.giver_name[i]])" : ""]."
-
+ xeno_awards[recipient_name] += "[recipient_award.medal_names[i]]: \'[recipient_award.medal_citations[i]]\' by [recipient_award.giver_rank[i] ? "[recipient_award.giver_rank[i]] " : ""][recipient_award.giver_name[i] ? "[recipient_award.giver_name[i]] " : ""]([recipient_award.giver_ckey[i]])."
+
data["uscm_awards"] = uscm_awards
data["xeno_awards"] = xeno_awards
data["uscm_award_ckeys"] = uscm_award_ckeys
@@ -61,8 +61,8 @@ GLOBAL_DATUM_INIT(medals_panel, /datum/medals_panel_tgui, new)
if("delete_medal")
remove_award(params["recipient"], TRUE, params["index"] + 1) // Why is byond not 0 indexed?
return TRUE
-
+
if("delete_jelly")
- remove_award(params["recipient"], FALSE, params["index"] + 1) // Why is byond not 0 indexed?
+ remove_award(params["recipient"], FALSE, params["index"] + 1) // Why is byond not 0 indexed?
return TRUE
-
+
diff --git a/code/modules/admin/player_panel/actions/transform.dm b/code/modules/admin/player_panel/actions/transform.dm
index 185165357e05..91a62b1a1d02 100644
--- a/code/modules/admin/player_panel/actions/transform.dm
+++ b/code/modules/admin/player_panel/actions/transform.dm
@@ -127,7 +127,7 @@ GLOBAL_LIST_INIT(pp_transformables, list(
"Alien Tier 4" = list(
list(
- name = XENO_CASTE_QUEEN+" (Young)",
+ name = XENO_CASTE_QUEEN+" (Immature)",
key = /mob/living/carbon/xenomorph/queen,
color = "purple"
),
diff --git a/code/modules/admin/tabs/admin_tab.dm b/code/modules/admin/tabs/admin_tab.dm
index 6dc08c63e5de..1298d6150036 100644
--- a/code/modules/admin/tabs/admin_tab.dm
+++ b/code/modules/admin/tabs/admin_tab.dm
@@ -255,9 +255,9 @@
log_adminpm("ADMIN: [key_name(src)] : [msg]")
- var/color = "adminsay"
- if(ishost(usr))
- color = "headminsay"
+ var/color = "mod"
+ if(check_rights(R_PERMISSIONS, show_msg = FALSE))
+ color = "adminmod"
var/channel = "ADMIN:"
channel = "[admin_holder.rank]:"
diff --git a/code/modules/admin/tabs/event_tab.dm b/code/modules/admin/tabs/event_tab.dm
index fdf70d314c21..32eaeb674b8d 100644
--- a/code/modules/admin/tabs/event_tab.dm
+++ b/code/modules/admin/tabs/event_tab.dm
@@ -218,21 +218,22 @@
if(!istype(chosen_ert))
return
- var/is_announcing = TRUE
- switch(alert(src, "Would you like to announce the distress beacon to the server population? This will reveal the distress beacon to all players.", "Announce distress beacon?", "Yes", "No", "Cancel"))
- if("Cancel")
- qdel(chosen_ert)
- return
- if("No")
- is_announcing = FALSE
+ var/is_announcing = tgui_alert(usr, "Would you like to announce the distress beacon to the server population? This will reveal the distress beacon to all players.", "Announce distress beacon?", list("Yes", "No"), 20 SECONDS)
+ if(!is_announcing)
+ qdel(chosen_ert)
+ return
+ if(is_announcing == "No")
+ is_announcing = FALSE
+ if (is_announcing == "Yes")
+ is_announcing = TRUE
var/turf/override_spawn_loc
- switch(alert(usr, "Spawn at their assigned spawnpoints, or at your location?", "Spawnpoint Selection", "Assigned Spawnpoint", "Current Location", "Cancel"))
- if("Cancel")
- qdel(chosen_ert)
- return
- if("Current Location")
- override_spawn_loc = get_turf(usr)
+ var/prompt = tgui_alert(usr, "Spawn at their assigned spawn, or at your location?", "Spawnpoint Selection", list("Spawn", "Current Location"), 0)
+ if(!prompt)
+ qdel(chosen_ert)
+ return
+ if(prompt == "Current Location")
+ override_spawn_loc = get_turf(usr)
chosen_ert.activate(is_announcing, override_spawn_loc)
diff --git a/code/modules/admin/verbs/randomverbs.dm b/code/modules/admin/verbs/randomverbs.dm
index d73a69f3eb95..4a4f6fa830a9 100644
--- a/code/modules/admin/verbs/randomverbs.dm
+++ b/code/modules/admin/verbs/randomverbs.dm
@@ -12,7 +12,7 @@
return
if(!CLIENT_IS_STAFF(src))
- if(!CLIENT_HAS_RIGHTS(src, R_MENTOR))
+ if(!CLIENT_IS_MENTOR(src))
to_chat(src, "Only staff members have permission to use this.")
return
if(!CONFIG_GET(flag/mentor_tools))
diff --git a/code/modules/asset_cache/asset_list_items.dm b/code/modules/asset_cache/asset_list_items.dm
index f5f1122fa795..3f0775c0b65d 100644
--- a/code/modules/asset_cache/asset_list_items.dm
+++ b/code/modules/asset_cache/asset_list_items.dm
@@ -205,10 +205,10 @@
/datum/asset/spritesheet/playtime_rank/register()
var/icon_file = 'icons/mob/hud/hud.dmi'
- var/tier1_state = "hudxenoupgrade1"
- var/tier2_state = "hudxenoupgrade2"
- var/tier3_state = "hudxenoupgrade3"
- var/tier4_state = "hudxenoupgrade4"
+ var/tier1_state = "hudxenoupgrade2"
+ var/tier2_state = "hudxenoupgrade3"
+ var/tier3_state = "hudxenoupgrade4"
+ var/tier4_state = "hudxenoupgrade5"
var/icon/tier1_icon = icon(icon_file, tier1_state, SOUTH)
var/icon/tier2_icon = icon(icon_file, tier2_state, SOUTH)
diff --git a/code/modules/autowiki/autowiki.dm b/code/modules/autowiki/autowiki.dm
new file mode 100644
index 000000000000..8b38ec76706b
--- /dev/null
+++ b/code/modules/autowiki/autowiki.dm
@@ -0,0 +1,36 @@
+/// When the `AUTOWIKI` define is enabled, will generate an output file for tools/autowiki/autowiki.js to consume.
+/// Autowiki code intentionally still *exists* even without the define, to ensure developers notice
+/// when they break it immediately, rather than until CI or worse, call time.
+#if defined(AUTOWIKI) || defined(UNIT_TESTS)
+/proc/setup_autowiki()
+ Master.sleep_offline_after_initializations = FALSE
+ UNTIL(SSticker.current_state == GAME_STATE_PREGAME)
+
+ //trigger things to run the whole process
+ SSticker.request_start()
+ CONFIG_SET(number/round_end_countdown, 0)
+ SSticker.OnRoundstart(CALLBACK(GLOBAL_PROC, GLOBAL_PROC_REF(generate_autowiki)))
+
+/proc/generate_autowiki()
+ var/output = generate_autowiki_output()
+ rustg_file_write(output, "data/autowiki_edits.txt")
+ qdel(world)
+#endif
+
+/// Returns a string of the autowiki output file
+/proc/generate_autowiki_output()
+ var/total_output = ""
+
+ for (var/datum/autowiki/autowiki_type as anything in subtypesof(/datum/autowiki))
+ var/datum/autowiki/autowiki = new autowiki_type
+ var/output = autowiki.generate()
+
+ if (!istext(output))
+ CRASH("[autowiki_type] does not generate a proper output!")
+
+ total_output += json_encode(list(
+ "title" = autowiki.page,
+ "text" = output,
+ )) + "\n"
+
+ return total_output
diff --git a/code/modules/autowiki/pages/_page.dm b/code/modules/autowiki/pages/_page.dm
new file mode 100644
index 000000000000..8e745ace61c2
--- /dev/null
+++ b/code/modules/autowiki/pages/_page.dm
@@ -0,0 +1,54 @@
+/// A representation of an automated wiki page.
+/datum/autowiki
+ /// The page on the wiki to be replaced.
+ /// This should never be a user-facing page, like "Guide to circuits".
+ /// It should always be a template that only Autowiki should touch.
+ /// For example: "Template:Autowiki/CircuitInfo".
+ var/page
+
+/// Override and return the new text of the page.
+/// This proc can be impure, usually to call `upload_file`.
+/datum/autowiki/proc/generate()
+ SHOULD_CALL_PARENT(FALSE)
+ CRASH("[type] does not implement generate()!")
+
+/// Generates an auto formatted template user.
+/// Your autowiki should ideally be a *lot* of these.
+/// It lets wiki editors edit it much easier later, without having to enter repo.
+/// Parameters will be passed in by name. That means your template should expect
+/// something that looks like `{{ Autowiki_Circuit|name=Combiner|description=This combines }}`
+/// Lists, which must be array-like (no keys), will be turned into a flat list with their key and a number,
+/// such that list("food" = list("fruit", "candy")) -> food1=fruit|food2=candy
+/datum/autowiki/proc/include_template(name, parameters)
+ var/template_text = "{{[name]"
+
+ var/list/prepared_parameters = list()
+ for (var/key in parameters)
+ var/value = parameters[key]
+ if (islist(value))
+ for (var/index in 1 to length(value))
+ prepared_parameters["[key][index]"] = "[value[index]]"
+ else
+ prepared_parameters[key] = value
+
+ for (var/parameter_name in prepared_parameters)
+ template_text += "|[parameter_name]="
+ template_text += "[prepared_parameters[parameter_name]]"
+
+ template_text += "}}"
+
+ return template_text
+
+/// Takes an icon and uploads it to Autowiki-name.png.
+/// Do your best to make sure this is unique, so it doesn't clash with other autowiki icons.
+/datum/autowiki/proc/upload_icon(icon/icon, name)
+ // Fuck you
+ if (IsAdminAdvancedProcCall())
+ return
+
+ fcopy(icon, "data/autowiki_files/[name].png")
+
+/// Escape a parameter such that it can be correctly put inside a wiki output
+/datum/autowiki/proc/escape_value(parameter)
+ // | is a special character in MediaWiki, and must be escaped by...using another template.
+ return replacetextEx(parameter, "|", "{{!}}")
diff --git a/code/modules/autowiki/pages/guns.dm b/code/modules/autowiki/pages/guns.dm
new file mode 100644
index 000000000000..0946b552fe31
--- /dev/null
+++ b/code/modules/autowiki/pages/guns.dm
@@ -0,0 +1,118 @@
+/datum/autowiki/guns
+ page = "Template:Autowiki/Content/GunData"
+
+
+/datum/autowiki/guns/generate()
+ var/output = ""
+
+ var/list/gun_to_ammo = list()
+
+ for(var/obj/item/ammo_magazine/typepath as anything in subtypesof(/obj/item/ammo_magazine) - subtypesof(/obj/item/ammo_magazine/internal))
+ LAZYADD(gun_to_ammo[initial(typepath.gun_type)], typepath)
+
+ for(var/typepath in sort_list(subtypesof(/obj/item/weapon/gun), GLOBAL_PROC_REF(cmp_typepaths_asc)))
+ var/obj/item/weapon/gun/generating_gun = new typepath()
+
+ var/filename = SANITIZE_FILENAME(escape_value(format_text(generating_gun.name)))
+
+ var/list/gun_data = generating_gun.ui_data()
+
+ var/list/valid_mag_types = list()
+ for(var/path in gun_to_ammo)
+ if(!istype(generating_gun, path))
+ continue
+
+ valid_mag_types += gun_to_ammo[path]
+
+ var/ammo = ""
+ var/damage_table = ""
+ for(var/ammo_typepath in valid_mag_types)
+ var/obj/item/ammo_magazine/generating_mag = new ammo_typepath()
+
+ var/ammo_filename = SANITIZE_FILENAME(escape_value(format_text(generating_mag.name)))
+
+ if(!fexists("data/autowiki_files/[ammo_filename].png"))
+ upload_icon(getFlatIcon(generating_mag, no_anim = TRUE), ammo_filename)
+
+ var/datum/ammo/current_ammo = GLOB.ammo_list[generating_mag.default_ammo]
+
+ ammo += include_template("Autowiki/AmmoMagazine", list(
+ "icon" = escape_value(ammo_filename),
+ "name" = escape_value(generating_mag.name),
+ "capacity" = escape_value(generating_mag.max_rounds),
+ "damage" = escape_value(current_ammo.damage),
+ "max_range" = escape_value(current_ammo.max_range),
+ "fall_off" = escape_value(current_ammo.damage_falloff),
+ "penetration" = escape_value(current_ammo.penetration),
+ "punch" = escape_value(current_ammo.pen_armor_punch),
+ ))
+
+ generating_gun.current_mag = generating_mag
+
+ var/list/gun_ammo_data = generating_gun.ui_data()
+ var/list/armor_data = list()
+
+ var/iterator = 1
+ for(var/header in gun_ammo_data["damage_armor_profile_headers"])
+ var/damage = gun_ammo_data["damage_armor_profile_marine"][iterator]
+ armor_data["armor-[header]"] = damage
+ iterator++
+
+ var/list/damage = list("ammo_name" = escape_value(generating_mag.name))
+ damage += armor_data
+
+ damage_table += include_template("Autowiki/DamageVersusArmorRow", damage)
+
+ qdel(generating_mag)
+
+ gun_data["ammo_types"] = ammo
+ gun_data["damage_table"] = damage_table
+
+ var/list/attachments_by_slot = list()
+ for(var/obj/item/attachable/attachment_typepath as anything in generating_gun.attachable_allowed)
+ LAZYADD(attachments_by_slot[capitalize(initial(attachment_typepath.slot))], attachment_typepath)
+
+ var/attachments = ""
+ for(var/slot in attachments_by_slot)
+ var/list/attachments_in_slot = ""
+
+ for(var/attachment_typepath in attachments_by_slot[slot])
+ var/obj/item/attachable/generating_attachment = new attachment_typepath()
+
+ var/attachment_filename = SANITIZE_FILENAME(escape_value(format_text(generating_attachment.name)))
+
+ if(!fexists("data/autowiki_files/[attachment_filename].png"))
+ upload_icon(getFlatIcon(generating_attachment, no_anim = TRUE), attachment_filename)
+
+ attachments_in_slot += include_template("Autowiki/AvailableAttachment", list(
+ "icon" = escape_value(attachment_filename),
+ "name" = escape_value(generating_attachment.name),
+ ))
+
+ qdel(generating_attachment)
+
+ attachments += include_template("Autowiki/AttachmentsBySlot", list(
+ "slot" = escape_value(slot),
+ "attachments" = attachments_in_slot,
+ ))
+ gun_data["attachments"] = attachments
+
+
+ upload_icon(getFlatIcon(generating_gun, no_anim = TRUE), filename)
+ gun_data["icon"] = filename
+
+ output += include_template("Autowiki/Gun", gun_data)
+
+ qdel(generating_gun)
+
+ return output
+
+/datum/autowiki/guns/proc/wiki_sanitize_assoc(list/sanitizing_list)
+ var/list/sanitized = list()
+
+ for(var/key in sanitizing_list)
+ var/value = sanitizing_list[key]
+
+ sanitized[escape_value(key)] = escape_value(value)
+
+ return sanitized
diff --git a/code/modules/client/client_defines.dm b/code/modules/client/client_defines.dm
index 8f0939474427..2facce7c3a59 100644
--- a/code/modules/client/client_defines.dm
+++ b/code/modules/client/client_defines.dm
@@ -27,7 +27,7 @@
var/area = null
var/time_died_as_mouse = null //when the client last died as a mouse
- var/donator = 0
+ var/donator = FALSE
var/adminhelped = 0
var/datum/click_intercept = null
diff --git a/code/modules/client/client_procs.dm b/code/modules/client/client_procs.dm
index ad0b6e1d89fb..3722b32fb2b4 100644
--- a/code/modules/client/client_procs.dm
+++ b/code/modules/client/client_procs.dm
@@ -287,11 +287,6 @@ GLOBAL_LIST_INIT(whitelisted_client_procs, list(
if(!(connection in list("seeker", "web"))) //Invalid connection type.
return null
- if(IsGuestKey(key))
- alert(src,"This server doesn't allow guest accounts to play. Please go to http://www.byond.com/ and register for a key.","Guest","OK")
- qdel(src)
- return
-
GLOB.clients += src
GLOB.directory[ckey] = src
@@ -435,7 +430,7 @@ GLOBAL_LIST_INIT(whitelisted_client_procs, list(
for(var/line in lines)
if(src.ckey == line)
- src.donator = 1
+ src.donator = TRUE
add_verb(src, /client/proc/set_ooc_color_self)
//if(prefs.window_skin & TOGGLE_WINDOW_SKIN)
diff --git a/code/modules/client/tgui_macro.dm b/code/modules/client/tgui_macro.dm
index 684cf90942ea..f245f1d657d4 100644
--- a/code/modules/client/tgui_macro.dm
+++ b/code/modules/client/tgui_macro.dm
@@ -45,6 +45,7 @@ GLOBAL_LIST_EMPTY(ui_data_keybindings)
if(!ui)
ui = new(user, src, "KeyBinds", "Keybind Preference")
ui.open()
+ ui.set_autoupdate(FALSE)
/datum/tgui_macro/ui_act(action, list/params, datum/tgui/ui, datum/ui_state/state)
. = ..()
diff --git a/code/modules/clothing/glasses/meson.dm b/code/modules/clothing/glasses/meson.dm
index 859368cd7afc..b0823910365d 100644
--- a/code/modules/clothing/glasses/meson.dm
+++ b/code/modules/clothing/glasses/meson.dm
@@ -16,19 +16,6 @@
desc = "Used for shield the user's eyes from harmful electromagnetic emissions, can also be used as safety googles. Contains prescription lenses."
prescription = TRUE
-/obj/item/clothing/glasses/meson/yautja
- name = "bio-mask x-ray"
- desc = "A vision overlay generated by the Bio-Mask. Used to see through objects."
- icon = 'icons/obj/items/hunter/pred_gear.dmi'
- icon_state = "visor_meson"
- item_state = "securityhud"
- darkness_view = 12
- lighting_alpha = LIGHTING_PLANE_ALPHA_MOSTLY_INVISIBLE
- vision_flags = SEE_TURFS
- flags_inventory = COVEREYES
- flags_item = NODROP|DELONDROP
- actions_types = null
-
/obj/item/clothing/glasses/meson/refurbished
name = "refurbished meson scanner"
desc = "Used to shield the user's eyes from harmful electromagnetic emissions, also used as general safety goggles. A special version with upgraded optics."
diff --git a/code/modules/clothing/glasses/thermal.dm b/code/modules/clothing/glasses/thermal.dm
index 607e53cf65f1..bfc60d271724 100644
--- a/code/modules/clothing/glasses/thermal.dm
+++ b/code/modules/clothing/glasses/thermal.dm
@@ -70,18 +70,6 @@
item_state = "syringe_kit"
toggleable = FALSE
-/obj/item/clothing/glasses/thermal/yautja
- name = "bio-mask thermal"
- desc = "A vision overlay generated by the Bio-Mask. Used to sense the heat of prey."
- icon = 'icons/obj/items/hunter/pred_gear.dmi'
- icon_state = "visor_thermal"
- item_state = "securityhud"
- vision_flags = SEE_MOBS
- invisa_view = 2
- flags_inventory = COVEREYES
- flags_item = NODROP|DELONDROP
- toggleable = FALSE
-
/obj/item/clothing/glasses/thermal/empproof
desc = "Thermals in the shape of glasses. This one is EMP proof."
blinds_on_emp = FALSE
diff --git a/code/modules/clothing/suits/marine_armor.dm b/code/modules/clothing/suits/marine_armor.dm
index 713b6df355c2..910bb032349e 100644
--- a/code/modules/clothing/suits/marine_armor.dm
+++ b/code/modules/clothing/suits/marine_armor.dm
@@ -75,6 +75,7 @@
/obj/item/storage/belt/gun/flaregun,
/obj/item/device/motiondetector,
/obj/item/device/walkman,
+ /obj/item/storage/belt/gun/m39,
)
valid_accessory_slots = list(ACCESSORY_SLOT_MEDAL, ACCESSORY_SLOT_PONCHO)
@@ -271,7 +272,7 @@
/obj/item/clothing/suit/storage/marine/rto/intel
name = "\improper XM4 pattern intelligence officer armor"
- uniform_restricted = list(/obj/item/clothing/under/marine/officer, /obj/item/clothing/under/rank/ro_suit, /obj/item/clothing/under/marine/officer/intel)
+ uniform_restricted = list(/obj/item/clothing/under/marine/officer, /obj/item/clothing/under/rank/qm_suit, /obj/item/clothing/under/marine/officer/intel)
specialty = "XM4 pattern intel"
/obj/item/clothing/suit/storage/marine/MP
@@ -347,7 +348,7 @@
icon_state = "officer"
storage_slots = 3
flags_atom = null
- uniform_restricted = list(/obj/item/clothing/under/marine/officer, /obj/item/clothing/under/rank/ro_suit, /obj/item/clothing/under/rank/chief_medical_officer)
+ uniform_restricted = list(/obj/item/clothing/under/marine/officer, /obj/item/clothing/under/rank/qm_suit, /obj/item/clothing/under/rank/chief_medical_officer)
specialty = "M2 pattern officer"
item_state_slots = list(WEAR_JACKET = "officer")
@@ -362,7 +363,7 @@
storage_slots = 3
flags_atom = NO_SNOW_TYPE
flags_inventory = BLOCKSHARPOBJ|SMARTGUN_HARNESS
- uniform_restricted = list(/obj/item/clothing/under/marine, /obj/item/clothing/under/rank/ro_suit)
+ uniform_restricted = list(/obj/item/clothing/under/marine, /obj/item/clothing/under/rank/qm_suit)
specialty = "M3 pattern captain"
item_state_slots = list(WEAR_JACKET = "co_officer")
valid_accessory_slots = list(ACCESSORY_SLOT_MEDAL, ACCESSORY_SLOT_RANK, ACCESSORY_SLOT_DECOR, ACCESSORY_SLOT_PONCHO)
@@ -1516,7 +1517,7 @@
pockets.max_storage_space = 8
/obj/item/clothing/suit/storage/RO
- name = "\improper RO jacket"
+ name = "quartermaster jacket"
desc = "A green jacket worn by USCM personnel. The back has the flag of the United Americas on it."
icon_state = "RO_jacket"
blood_overlay_type = "coat"
diff --git a/code/modules/clothing/suits/marine_coat.dm b/code/modules/clothing/suits/marine_coat.dm
index 3113b38e6e41..4ca2a54af4bf 100644
--- a/code/modules/clothing/suits/marine_coat.dm
+++ b/code/modules/clothing/suits/marine_coat.dm
@@ -217,6 +217,13 @@
icon_state = "bridge_coat_grey"
valid_accessory_slots = list(ACCESSORY_SLOT_ARMBAND, ACCESSORY_SLOT_RANK, ACCESSORY_SLOT_MEDAL)
+/obj/item/clothing/suit/storage/jacket/marine/service/aso
+ name = "auxiliary support officer jacket"
+ desc = "A comfortable vest for officers who are expected to work long hours staring at rows of numbers and inspecting equipment from knives to torpedos to entire dropships."
+ icon_state = "aso_jacket"
+ blood_overlay_type = "coat"
+ flags_armor_protection = BODY_FLAG_CHEST
+ has_buttons = FALSE
//=========================//PROVOST\\================================\\
diff --git a/code/modules/clothing/under/marine_uniform.dm b/code/modules/clothing/under/marine_uniform.dm
index 01598eeb2785..a4b38b657735 100644
--- a/code/modules/clothing/under/marine_uniform.dm
+++ b/code/modules/clothing/under/marine_uniform.dm
@@ -839,9 +839,9 @@
desc = "A formal white undersuit."
flags_jumpsuit = FALSE
-/obj/item/clothing/under/rank/ro_suit
- name = "requisition officer suit"
- desc = "A nicely-fitting military suit for a requisition officer. It has shards of light Kevlar to help protect against stabbing weapons and bullets."
+/obj/item/clothing/under/rank/qm_suit
+ name = "quartermaster suit"
+ desc = "A nicely-fitting military suit for a quartermaster. It has shards of light Kevlar to help protect against stabbing weapons and bullets."
icon_state = "RO_jumpsuit"
worn_state = "RO_jumpsuit"
flags_jumpsuit = UNIFORM_SLEEVE_ROLLABLE
diff --git a/code/modules/cm_aliens/structures/special/pylon_core.dm b/code/modules/cm_aliens/structures/special/pylon_core.dm
index 993d4f833fa6..068ffeb659eb 100644
--- a/code/modules/cm_aliens/structures/special/pylon_core.dm
+++ b/code/modules/cm_aliens/structures/special/pylon_core.dm
@@ -12,6 +12,7 @@
block_range = 0
var/cover_range = WEED_RANGE_PYLON
var/node_type = /obj/effect/alien/weeds/node/pylon
+ var/obj/effect/alien/weeds/node/node
var/linked_turfs = list()
var/damaged = FALSE
@@ -25,7 +26,7 @@
/obj/effect/alien/resin/special/pylon/Initialize(mapload, hive_ref)
. = ..()
- place_node()
+ node = place_node()
for(var/turf/A in range(round(cover_range*PYLON_COVERAGE_MULT), loc))
LAZYADD(A.linked_pylons, src)
linked_turfs += A
@@ -34,9 +35,8 @@
for(var/turf/A as anything in linked_turfs)
LAZYREMOVE(A.linked_pylons, src)
- var/obj/effect/alien/weeds/node/pylon/W = locate() in loc
- if(W)
- qdel(W)
+ if(node)
+ QDEL_NULL(node)
. = ..()
/obj/effect/alien/resin/special/pylon/attack_alien(mob/living/carbon/xenomorph/M)
@@ -87,8 +87,78 @@
playsound(loc, "alien_resin_build", 25)
/obj/effect/alien/resin/special/pylon/proc/place_node()
- var/obj/effect/alien/weeds/node/pylon/W = new node_type(loc, null, null, linked_hive)
- W.resin_parent = src
+ var/obj/effect/alien/weeds/node/pylon/pylon_node = new node_type(loc, null, null, linked_hive)
+ pylon_node.resin_parent = src
+ return pylon_node
+
+/obj/effect/alien/resin/special/pylon/endgame
+ cover_range = WEED_RANGE_CORE
+ var/activated = FALSE
+
+/obj/effect/alien/resin/special/pylon/endgame/Destroy()
+ if(activated)
+ activated = FALSE
+
+ if(hijack_delete)
+ return ..()
+
+ marine_announcement("ALERT.\n\nEnergy build up around communication relay at [get_area(src)] halted.", "[MAIN_AI_SYSTEM] Biological Scanner")
+
+ for(var/hivenumber in GLOB.hive_datum)
+ var/datum/hive_status/checked_hive = GLOB.hive_datum[hivenumber]
+ if(!length(checked_hive.totalXenos))
+ continue
+
+ if(checked_hive == linked_hive)
+ xeno_announcement(SPAN_XENOANNOUNCE("We have lost our control of the tall's communication relay at [get_area(src)]."), hivenumber, XENO_GENERAL_ANNOUNCE)
+ else
+ xeno_announcement(SPAN_XENOANNOUNCE("Another hive has lost control of the tall's communication relay at [get_area(src)]."), hivenumber, XENO_GENERAL_ANNOUNCE)
+
+ return ..()
+
+/// Checks if all comms towers are connected and then starts end game content on all pylons if they are
+/obj/effect/alien/resin/special/pylon/endgame/proc/comms_relay_connection()
+ marine_announcement("ALERT.\n\nIrregular build up of energy around communication relays at [get_area(src)].", "[MAIN_AI_SYSTEM] Biological Scanner")
+
+ for(var/hivenumber in GLOB.hive_datum)
+ var/datum/hive_status/checked_hive = GLOB.hive_datum[hivenumber]
+ if(!length(checked_hive.totalXenos))
+ continue
+
+ if(checked_hive == linked_hive)
+ xeno_announcement(SPAN_XENOANNOUNCE("We have harnessed the tall's communication relay at [get_area(src)]. Hold it!"), hivenumber, XENO_GENERAL_ANNOUNCE)
+ else
+ xeno_announcement(SPAN_XENOANNOUNCE("Another hive has harnessed the tall's communication relay at [get_area(src)].[linked_hive.faction_is_ally(checked_hive.name) ? "" : " Stop them!"]"), hivenumber, XENO_GENERAL_ANNOUNCE)
+
+ activated = TRUE
+ addtimer(CALLBACK(src, PROC_REF(give_larva)), XENO_PYLON_ACTIVATION_COOLDOWN, TIMER_UNIQUE|TIMER_OVERRIDE|TIMER_LOOP|TIMER_DELETE_ME)
+
+#define ENDGAME_LARVA_CAP_MULTIPLIER 0.4
+#define LARVA_ADDITION_MULTIPLIER 0.10
+
+/// Looped proc via timer to give larva after time
+/obj/effect/alien/resin/special/pylon/endgame/proc/give_larva()
+ if(!activated)
+ return
+
+ if(!linked_hive.hive_location || !linked_hive.living_xeno_queen)
+ return
+
+ var/list/hive_xenos = linked_hive.totalXenos
+
+ for(var/mob/living/carbon/xenomorph/xeno in hive_xenos)
+ if(!xeno.counts_for_slots)
+ hive_xenos -= xeno
+
+ if(length(hive_xenos) > (length(GLOB.alive_human_list) * ENDGAME_LARVA_CAP_MULTIPLIER))
+ return
+
+ linked_hive.partial_larva += length(hive_xenos) * LARVA_ADDITION_MULTIPLIER
+ linked_hive.convert_partial_larva_to_full_larva()
+ linked_hive.hive_ui.update_burrowed_larva()
+
+#undef ENDGAME_LARVA_CAP_MULTIPLIER
+#undef LARVA_ADDITION_MULTIPLIER
//Hive Core - Generates strong weeds, supports other buildings
/obj/effect/alien/resin/special/pylon/core
diff --git a/code/modules/cm_aliens/structures/special_structure.dm b/code/modules/cm_aliens/structures/special_structure.dm
index caa729f1df87..69bdcc2438ac 100644
--- a/code/modules/cm_aliens/structures/special_structure.dm
+++ b/code/modules/cm_aliens/structures/special_structure.dm
@@ -39,6 +39,9 @@
plane = FLOOR_PLANE
+ /// Tells the structure if they are being deleted because of hijack
+ var/hijack_delete = FALSE
+
/obj/effect/alien/resin/special/Initialize(mapload, hive_ref)
. = ..()
maxhealth = health
diff --git a/code/modules/cm_aliens/structures/tunnel.dm b/code/modules/cm_aliens/structures/tunnel.dm
index a5d623bff189..0e1008cfbf12 100644
--- a/code/modules/cm_aliens/structures/tunnel.dm
+++ b/code/modules/cm_aliens/structures/tunnel.dm
@@ -254,3 +254,12 @@
else
to_chat(M, SPAN_WARNING("\The [src] ended unexpectedly, so you return back up."))
return XENO_NO_DELAY_ACTION
+
+/obj/structure/tunnel/maint_tunnel
+ name = "\improper Maintenance Hatch"
+ desc = "An entrance to a maintenance tunnel. You can see bits of slime and resin within. Pieces of debris keep you from getting a closer look."
+ icon = 'icons/obj/structures/structures.dmi'
+ icon_state = "hatchclosed"
+
+/obj/structure/tunnel/maint_tunnel/no_xeno_desc
+ desc = "An entrance to a maintenance tunnel. Pieces of debris keep you from getting a closer look."
diff --git a/code/modules/cm_aliens/weeds.dm b/code/modules/cm_aliens/weeds.dm
index f20fa842e446..01140beae304 100644
--- a/code/modules/cm_aliens/weeds.dm
+++ b/code/modules/cm_aliens/weeds.dm
@@ -55,7 +55,7 @@
linked_hive = GLOB.hive_datum[hivenumber]
set_hive_data(src, hivenumber)
- if(spread_on_semiweedable)
+ if(spread_on_semiweedable && weed_strength < WEED_LEVEL_HIVE)
if(color)
var/list/RGB = ReadRGB(color)
RGB[1] = Clamp(RGB[1] + 35, 0, 255)
@@ -588,9 +588,13 @@
weed_strength = WEED_LEVEL_HIVE
node_range = WEED_RANGE_PYLON
overlay_node = FALSE
+ spread_on_semiweedable = TRUE
var/obj/effect/alien/resin/special/resin_parent
/obj/effect/alien/weeds/node/pylon/proc/set_parent_damaged()
+ if(!resin_parent)
+ return
+
var/obj/effect/alien/resin/special/pylon/parent_pylon = resin_parent
parent_pylon.damaged = TRUE
@@ -616,7 +620,13 @@
/obj/effect/alien/weeds/node/pylon/acid_spray_act()
return
+/obj/effect/alien/weeds/node/pylon/cluster
+ spread_on_semiweedable = FALSE
+
/obj/effect/alien/weeds/node/pylon/cluster/set_parent_damaged()
+ if(!resin_parent)
+ return
+
var/obj/effect/alien/resin/special/cluster/parent_cluster = resin_parent
parent_cluster.damaged = TRUE
diff --git a/code/modules/cm_marines/equipment/guncases.dm b/code/modules/cm_marines/equipment/guncases.dm
index 8538af7ca90e..a9a3855a53e4 100644
--- a/code/modules/cm_marines/equipment/guncases.dm
+++ b/code/modules/cm_marines/equipment/guncases.dm
@@ -295,3 +295,47 @@
new /obj/item/weapon/gun/shotgun/double/cane(src)
new /obj/item/ammo_magazine/handful/revolver/marksman/six_rounds(src)
new /obj/item/ammo_magazine/handful/revolver/marksman/six_rounds(src)
+
+//Handgun case for Military police vendor three mag , a railflashligh and the handgun.
+
+//88 Mod 4 Combat Pistol
+/obj/item/storage/box/guncase/mod88
+ name = "\improper 88 Mod 4 Combat Pistol case"
+ desc = "A gun case containing an 88 Mod 4 Combat Pistol."
+ storage_slots = 5
+ can_hold = list(/obj/item/attachable/flashlight, /obj/item/weapon/gun/pistol/mod88, /obj/item/ammo_magazine/pistol/mod88)
+
+/obj/item/storage/box/guncase/mod88/fill_preset_inventory()
+ new /obj/item/attachable/flashlight(src)
+ new /obj/item/weapon/gun/pistol/mod88(src)
+ new /obj/item/ammo_magazine/pistol/mod88(src)
+ new /obj/item/ammo_magazine/pistol/mod88(src)
+ new /obj/item/ammo_magazine/pistol/mod88(src)
+
+//M44 Combat Revolver
+/obj/item/storage/box/guncase/m44
+ name = "\improper M44 Combat Revolver case"
+ desc = "A gun case containing an M44 Combat Revolver."
+ storage_slots = 5
+ can_hold = list(/obj/item/attachable/flashlight, /obj/item/weapon/gun/revolver/m44, /obj/item/ammo_magazine/revolver)
+
+/obj/item/storage/box/guncase/m44/fill_preset_inventory()
+ new /obj/item/attachable/flashlight(src)
+ new /obj/item/weapon/gun/revolver/m44(src)
+ new /obj/item/ammo_magazine/revolver(src)
+ new /obj/item/ammo_magazine/revolver(src)
+ new /obj/item/ammo_magazine/revolver(src)
+
+//M4A3 Service Pistol
+/obj/item/storage/box/guncase/m4a3
+ name = "\improper M4A3 Service Pistol case"
+ desc = "A gun case containing an M4A3 Service Pistol."
+ storage_slots = 5
+ can_hold = list(/obj/item/attachable/flashlight, /obj/item/weapon/gun/pistol/m4a3, /obj/item/ammo_magazine/pistol)
+
+/obj/item/storage/box/guncase/m4a3/fill_preset_inventory()
+ new /obj/item/attachable/flashlight(src)
+ new /obj/item/weapon/gun/pistol/m4a3(src)
+ new /obj/item/ammo_magazine/pistol(src)
+ new /obj/item/ammo_magazine/pistol(src)
+ new /obj/item/ammo_magazine/pistol(src)
diff --git a/code/modules/cm_marines/equipment/kit_boxes.dm b/code/modules/cm_marines/equipment/kit_boxes.dm
index 4ce6be802f3d..a552b8eb0927 100644
--- a/code/modules/cm_marines/equipment/kit_boxes.dm
+++ b/code/modules/cm_marines/equipment/kit_boxes.dm
@@ -207,7 +207,7 @@
for(var/allowed_role in allowed_roles_list)
if(user.job == allowed_role)
- if(!skillcheckexplicit(user, SKILL_SPEC_WEAPONS, SKILL_SPEC_DEFAULT) && !skillcheckexplicit(user, SKILL_SPEC_WEAPONS, SKILL_SPEC_ALL))
+ if(!skillcheckexplicit(user, SKILL_SPEC_WEAPONS, SKILL_SPEC_TRAINED) && !skillcheckexplicit(user, SKILL_SPEC_WEAPONS, SKILL_SPEC_ALL))
to_chat(user, SPAN_WARNING("You already have specialization, give this kit to someone else!"))
return FALSE
return TRUE
@@ -216,7 +216,7 @@
var/selection = tgui_input_list(user, "Pick your specialist equipment type.", "Specialist Kit Selection", available_specialist_kit_boxes)
if(!selection || QDELETED(src))
return FALSE
- if(!skillcheckexplicit(user, SKILL_SPEC_WEAPONS, SKILL_SPEC_DEFAULT) && !skillcheckexplicit(user, SKILL_SPEC_WEAPONS, SKILL_SPEC_ALL))
+ if(!skillcheckexplicit(user, SKILL_SPEC_WEAPONS, SKILL_SPEC_TRAINED) && !skillcheckexplicit(user, SKILL_SPEC_WEAPONS, SKILL_SPEC_ALL))
to_chat(user, SPAN_WARNING("You already unwrapped your [name], give this one to someone else!"))
return
if(!available_specialist_kit_boxes[selection] || available_specialist_kit_boxes[selection] <= 0)
diff --git a/code/modules/cm_marines/equipment/maps.dm b/code/modules/cm_marines/equipment/maps.dm
index 98ad238fe055..f41c8d6f971b 100644
--- a/code/modules/cm_marines/equipment/maps.dm
+++ b/code/modules/cm_marines/equipment/maps.dm
@@ -82,7 +82,7 @@
/obj/item/map/big_red_map
name = "\improper Solaris Ridge Map"
desc = "A censored blueprint of the Solaris Ridge facility"
- html_link = "images/c/c5/Big_Red.png"
+ html_link = "images/9/9e/Solaris_Ridge.png"
color = "#e88a10"
/obj/item/map/FOP_map
@@ -104,10 +104,11 @@
color = "#ad8d0e"
/obj/item/map/sorokyne_map
- name = "\improper Sorokyne Outpost Map"
- desc = "A labelled schematic of the Sorokyne Outpost and the surrounding caves."
+ name = "\improper Sorokyne Strata map"
+ desc = "A map of the Weyland-Yutani colony Sorokyne Outpost, commonly known as Sorokyne Strata."
html_link = "images/2/21/Sorokyne_Wiki_Map.jpg" //The fact that this is just a wiki-link makes me sad and amused.
color = "cyan"
+
/obj/item/map/corsat
name = "\improper CORSAT map"
desc = "A blueprint of CORSAT station"
@@ -125,83 +126,46 @@
desc = "An overview of LV-522 schematics."
html_link = "images/b/bb/C_claim.png"
color = "cyan"
+
/obj/item/map/new_varadero
name = "\improper New Varadero map"
desc = "A labeled blueprint of the UA outpost New Varadero"
html_link = "images/9/94/New_Varadero.png"
color = "red"
+GLOBAL_LIST_INIT_TYPED(map_type_list, /obj/item/map, setup_all_maps())
+
+/proc/setup_all_maps()
+ return list(
+ MAP_LV_624 = new /obj/item/map/lazarus_landing_map(),
+ MAP_ICE_COLONY = new /obj/item/map/ice_colony_map(),
+ MAP_ICE_COLONY_V3 = new /obj/item/map/ice_colony_map_v3(),
+ MAP_WHISKEY_OUTPOST = new /obj/item/map/whiskey_outpost_map(),
+ MAP_BIG_RED = new /obj/item/map/big_red_map(),
+ MAP_PRISON_STATION = new /obj/item/map/FOP_map(),
+ MAP_PRISON_STATION_V3 = new /obj/item/map/FOP_map_v3(),
+ MAP_DESERT_DAM = new /obj/item/map/desert_dam(),
+ MAP_SOROKYNE_STRATA = new /obj/item/map/sorokyne_map(),
+ MAP_CORSAT = new /obj/item/map/corsat(),
+ MAP_KUTJEVO = new /obj/item/map/kutjevo_map(),
+ MAP_LV522_CHANCES_CLAIM = new /obj/item/map/lv522_map(),
+ MAP_NEW_VARADERO = new /obj/item/map/new_varadero()
+ )
+
//used by marine equipment machines to spawn the correct map.
/obj/item/map/current_map
/obj/item/map/current_map/Initialize(mapload, ...)
. = ..()
- switch(SSmapping.configs[GROUND_MAP].map_name)
- if(MAP_LV_624)
- name = "\improper Lazarus Landing Map"
- desc = "A satellite printout of the Lazarus Landing colony on LV-624."
- html_link = "images/6/6f/LV624.png"
- if(MAP_ICE_COLONY)
- name = "\improper Ice Colony map"
- desc = "A satellite printout of the Ice Colony."
- html_link = "images/1/18/Map_icecolony.png"
- color = "cyan"
- if(MAP_ICE_COLONY_V3)
- name = "\improper Shivas Snowball map"
- desc = "A labelled print out of the anterior scan of the UA colony Shivas Snowball."
- html_link = "images/1/18/Map_icecolony.png"//needs to be replaced at some point
- color = "cyan"
- if(MAP_BIG_RED)
- name = "\improper Solaris Ridge Map"
- desc = "A censored blueprint of the Solaris Ridge facility"
- html_link = "images/9/9e/Solaris_Ridge.png"
- color = "#e88a10"
- if(MAP_PRISON_STATION)
- name = "\improper Fiorina Orbital Penitentiary Map"
- desc = "A labelled interior scan of Fiorina Orbital Penitentiary"
- html_link = "images/4/4c/Map_Prison.png"
- color = "#e88a10"
- if(MAP_PRISON_STATION_V3)
- name = "\improper Fiorina Orbital Penitentiary Map"
- desc = "A scan produced by the Almayer's sensor array of the Fiorina Orbital Penitentiary Civilian Annex. It appears to have broken off from the rest of the station and is now in free geo-sync orbit around the planet."
- html_link = "images/e/e0/Prison_Station_Science_Annex.png"
- color = "#e88a10"
- if(MAP_DESERT_DAM)
- name = "\improper Trijent Dam map"
- desc = "A map of Trijent Dam"
- html_link = "images/9/92/Trijent_Dam.png"
- color = "#cec13f"
- //did only the basics todo change later
- if(MAP_SOROKYNE_STRATA)
- name = "\improper Sorokyne Strata map"
- desc = "A map of the Weyland-Yutani colony Sorokyne Outpost, commonly known as Sorokyne Strata."
- html_link = "images/1/1c/Sorokyne_map.png"
- color = "cyan"
- if (MAP_CORSAT)
- name = "\improper CORSAT map"
- desc = "A blueprint of CORSAT station"
- html_link = "images/8/8e/CORSAT_Satellite.png"
- color = "red"
- if (MAP_KUTJEVO)
- name = "\improper Kutjevo Refinery map"
- desc = "An orbital scan of Kutjevo Refinery"
- html_link = "images/0/0d/Kutjevo_a1.jpg"
- color = "red"
- if (MAP_LV522_CHANCES_CLAIM)
- name = "\improper LV-522 Map"
- desc = "An overview of LV-522 schematics."
- html_link = "images/b/bb/C_claim.png"
- color = "cyan"
- if (MAP_NEW_VARADERO)
- name = "\improper New Varadero map"
- desc = "The blueprint and readout of the UA outpost New Varadero"
- html_link = "images/9/94/New_Varadero.png"//replace later
- color = "red"
-
- else
- return INITIALIZE_HINT_QDEL
-
+ var/map_name = SSmapping.configs[GROUND_MAP].map_name
+ var/obj/item/map/map = GLOB.map_type_list[map_name]
+ if (!map && (map_name == MAP_RUNTIME || map_name == MAP_CHINOOK || map_name == MAIN_SHIP_DEFAULT_NAME))
+ return // "Maps" we don't have maps for so we don't need to throw a runtime for (namely in unit_testing)
+ name = map.name
+ desc = map.desc
+ html_link = map.html_link
+ color = map.color
// Landmark - Used for mapping. Will spawn the appropriate map for each gamemode (LV map items will spawn when LV is the gamemode, etc)
/obj/effect/landmark/map_item
diff --git a/code/modules/cm_marines/marines_consoles.dm b/code/modules/cm_marines/marines_consoles.dm
index 4743034a68f4..ad0ebac8307b 100644
--- a/code/modules/cm_marines/marines_consoles.dm
+++ b/code/modules/cm_marines/marines_consoles.dm
@@ -910,10 +910,11 @@ GLOBAL_LIST_EMPTY_TYPED(crewmonitor, /datum/crewmonitor)
RAIDER_OFFICER_SQUAD = 11,
JOB_SO = 12,
JOB_SEA = 13,
- // 20-29: Aux Command (Synth isn't Aux head, but important - make him bold)
- JOB_SYNTH = 20,
- JOB_PILOT = 21,
- JOB_DROPSHIP_CREW_CHIEF = 22,
+ // 20-29: Aux Command
+ JOB_AUXILIARY_OFFICER = 20,
+ JOB_SYNTH = 21,
+ JOB_PILOT = 22,
+ JOB_DROPSHIP_CREW_CHIEF = 23,
JOB_INTEL = 24,
// 30-39: Security
JOB_CHIEF_POLICE = 30,
@@ -937,11 +938,11 @@ GLOBAL_LIST_EMPTY_TYPED(crewmonitor, /datum/crewmonitor)
// 60-69: Cargo
JOB_CHIEF_REQUISITION = 60,
JOB_CARGO_TECH = 61,
+ JOB_MESS_SERGEANT = 62,
// 70-139: SQUADS (look below)
// 140+: Civilian/other
JOB_CORPORATE_LIAISON = 140,
- JOB_MESS_SERGEANT = 141,
- JOB_PASSENGER = 142,
+ JOB_PASSENGER = 141,
// Non Almayer jobs lower then registered
JOB_SYNTH_SURVIVOR = 150,
JOB_SURVIVOR = 151,
diff --git a/code/modules/cm_preds/yaut_bracers.dm b/code/modules/cm_preds/yaut_bracers.dm
index 305badf6fceb..a94cde9887c3 100644
--- a/code/modules/cm_preds/yaut_bracers.dm
+++ b/code/modules/cm_preds/yaut_bracers.dm
@@ -997,19 +997,10 @@
if(.)
return
- for(var/obj/item/weapon/yautja/combistick/C in range(7))
- if(C in caller.contents) //Can't yank if they are wearing it
- return FALSE
- if(caller.put_in_active_hand(C))//Try putting it in our active hand, or, if it's full...
- if(!drain_power(caller, 70)) //We should only drain power if we actually yank the chain back. Failed attempts can quickly drain the charge away.
- return TRUE
- caller.visible_message(SPAN_WARNING("[caller] yanks [C]'s chain back!"), SPAN_WARNING("You yank [C]'s chain back!"))
- else if(caller.put_in_inactive_hand(C))///...Try putting it in our inactive hand.
- if(!drain_power(caller, 70)) //We should only drain power if we actually yank the chain back. Failed attempts can quickly drain the charge away.
- return TRUE
- caller.visible_message(SPAN_WARNING("[caller] yanks [C]'s chain back!"), SPAN_WARNING("You yank [C]'s chain back!"))
- else //If neither hand can hold it, you must not have a free hand.
- to_chat(caller, SPAN_WARNING("You need a free hand to do this!"))
+ for(var/datum/effects/tethering/tether in caller.effects_list)
+ if(istype(tether.tethered.affected_atom, /obj/item/weapon/yautja/combistick))
+ var/obj/item/weapon/yautja/combistick/stick = tether.tethered.affected_atom
+ stick.recall()
/obj/item/clothing/gloves/yautja/hunter/verb/translate()
set name = "Translator"
diff --git a/code/modules/cm_preds/yaut_mask.dm b/code/modules/cm_preds/yaut_mask.dm
index 5d4d21c46c80..be0aa8ed761a 100644
--- a/code/modules/cm_preds/yaut_mask.dm
+++ b/code/modules/cm_preds/yaut_mask.dm
@@ -1,7 +1,5 @@
#define VISION_MODE_OFF 0
#define VISION_MODE_NVG 1
-#define VISION_MODE_THERMAL 2
-#define VISION_MODE_MESON 3
///parent type
/obj/item/clothing/mask/gas/yautja
@@ -65,8 +63,32 @@
/obj/item/clothing/mask/gas/yautja/Destroy()
remove_from_missing_pred_gear(src)
+ STOP_PROCESSING(SSobj, src)
return ..()
+/obj/item/clothing/mask/gas/yautja/process()
+ if(!ishuman(loc))
+ return PROCESS_KILL
+ var/mob/living/carbon/human/human_holder = loc
+
+ if(current_goggles && !drain_power(human_holder, 3))
+ to_chat(human_holder, SPAN_WARNING("Your bracers lack sufficient power to operate the visor."))
+ current_goggles = VISION_MODE_OFF
+ var/obj/item/visor = human_holder.glasses
+ if(istype(visor, /obj/item/clothing/glasses/night/yautja))//To change if any new vision modes are made
+ human_holder.temp_drop_inv_item(visor)
+ qdel(visor)
+ human_holder.update_inv_glasses()
+ human_holder.update_sight()
+
+/obj/item/clothing/mask/gas/yautja/proc/drain_power(mob/living/carbon/human/human_holder, drain_amount)
+ var/obj/item/clothing/gloves/yautja/bracer = human_holder.gloves
+ if(!bracer || !istype(bracer))
+ return FALSE
+ if(!(bracer.drain_power(human_holder, drain_amount)))
+ return FALSE
+ return TRUE
+
/obj/item/clothing/mask/gas/yautja/verb/toggle_zoom()
set name = "Toggle Mask Zoom"
set desc = "Toggle your mask's zoom function."
@@ -82,40 +104,36 @@
set src in usr
if(!usr || usr.stat)
return
- var/mob/living/carbon/human/M = usr
- if(!istype(M))
+ var/mob/living/carbon/human/user = usr
+ if(!istype(user))
return
- if(!HAS_TRAIT(M, TRAIT_YAUTJA_TECH) && !M.hunter_data.thralled)
- to_chat(M, SPAN_WARNING("You have no idea how to work this thing!"))
+ if(!HAS_TRAIT(user, TRAIT_YAUTJA_TECH) && !user.hunter_data.thralled)
+ to_chat(user, SPAN_WARNING("You have no idea how to work this thing!"))
return
- if(src != M.wear_mask) //sanity
- to_chat(M, SPAN_WARNING("You must wear \the [src]!"))
+ if(src != user.wear_mask) //sanity
+ to_chat(user, SPAN_WARNING("You must wear \the [src]!"))
return
- var/obj/item/clothing/gloves/yautja/Y = M.gloves //Doesn't actually reduce power, but needs the bracers anyway.
- if(!Y || !istype(Y))
- to_chat(M, SPAN_WARNING("You must be wearing your bracers, as they have the power source."))
+ var/obj/item/clothing/gloves/yautja/bracer = user.gloves
+ if(!bracer || !istype(bracer))
+ to_chat(user, SPAN_WARNING("You must be wearing your bracers, as they have the power source."))
return
- var/obj/item/G = M.glasses
- if(G)
- if(!istype(G,/obj/item/clothing/glasses/night/yautja) && !istype(G,/obj/item/clothing/glasses/meson/yautja) && !istype(G,/obj/item/clothing/glasses/thermal/yautja))
- to_chat(M, SPAN_WARNING("You need to remove your glasses first. Why are you even wearing these?"))
+ var/obj/item/visor = user.glasses
+ if(visor)
+ if(!istype(visor, /obj/item/clothing/glasses/night/yautja))
+ to_chat(user, SPAN_WARNING("You need to remove your glasses first. Why are you even wearing these?"))
return
- M.temp_drop_inv_item(G) //Get rid of ye existing maicerinho goggles
- qdel(G)
- M.update_inv_glasses()
- M.update_sight()
+ user.temp_drop_inv_item(visor) //Get rid of ye existing maicerinho goggles
+ qdel(visor)
+ user.update_inv_glasses()
+ user.update_sight()
switch_vision_mode()
- add_vision(M)
+ add_vision(user)
/obj/item/clothing/mask/gas/yautja/proc/switch_vision_mode() //switches to the next one
switch(current_goggles)
if(VISION_MODE_OFF)
current_goggles = VISION_MODE_NVG
if(VISION_MODE_NVG)
- current_goggles = VISION_MODE_THERMAL
- if(VISION_MODE_THERMAL)
- current_goggles = VISION_MODE_MESON
- if(VISION_MODE_MESON)
current_goggles = VISION_MODE_OFF
/obj/item/clothing/mask/gas/yautja/proc/add_vision(mob/living/carbon/human/user) //applies current_goggles
@@ -123,38 +141,40 @@
if(VISION_MODE_NVG)
user.equip_to_slot_or_del(new /obj/item/clothing/glasses/night/yautja(user), WEAR_EYES)
to_chat(user, SPAN_NOTICE("Low-light vision module: activated."))
- if(VISION_MODE_THERMAL)
- user.equip_to_slot_or_del(new /obj/item/clothing/glasses/thermal/yautja(user), WEAR_EYES)
- to_chat(user, SPAN_NOTICE("Thermal vision module: activated."))
- if(VISION_MODE_MESON)
- user.equip_to_slot_or_del(new /obj/item/clothing/glasses/meson/yautja(user), WEAR_EYES)
- to_chat(user, SPAN_NOTICE("Material vision module: activated."))
if(VISION_MODE_OFF)
to_chat(user, SPAN_NOTICE("You deactivate your visor."))
playsound(src, 'sound/effects/pred_vision.ogg', 15, 1)
user.update_inv_glasses()
+#undef VISION_MODE_OFF
+#undef VISION_MODE_NVG
+
/obj/item/clothing/mask/gas/yautja/dropped(mob/living/carbon/human/user) //Clear the gogglors if the helmet is removed.
+ STOP_PROCESSING(SSobj, src)
if(istype(user) && user.wear_mask == src) //inventory reference is only cleared after dropped().
for(var/listed_hud in mask_huds)
var/datum/mob_hud/H = huds[listed_hud]
H.remove_hud_from(user)
- var/obj/item/G = user.glasses
- if(G) //make your hud fuck off
- if(istype(G,/obj/item/clothing/glasses/night/yautja) || istype(G,/obj/item/clothing/glasses/meson/yautja) || istype(G,/obj/item/clothing/glasses/thermal/yautja))
- user.temp_drop_inv_item(G)
- qdel(G)
+ var/obj/item/visor = user.glasses
+ if(visor) //make your hud fuck off
+ if(istype(visor, /obj/item/clothing/glasses/night/yautja))
+ user.temp_drop_inv_item(visor)
+ qdel(visor)
user.update_inv_glasses()
user.update_sight()
..()
/obj/item/clothing/mask/gas/yautja/equipped(mob/living/carbon/human/user, slot)
if(slot == WEAR_FACE)
+ START_PROCESSING(SSobj, src)
for(var/listed_hud in mask_huds)
var/datum/mob_hud/H = huds[listed_hud]
H.add_hud_to(user)
if(current_goggles)
+ var/obj/item/clothing/gloves/yautja/bracer = user.gloves
+ if(!bracer || !istype(bracer))
+ return FALSE
add_vision(user)
..()
@@ -205,30 +225,6 @@
name = "ancient alien mask"
desc = "A beautifully designed metallic face mask, both ornate and functional. This one seems to be old and degraded."
-/obj/item/clothing/mask/gas/yautja/damaged/switch_vision_mode()
- switch(current_goggles)
- if(VISION_MODE_OFF)
- current_goggles = VISION_MODE_NVG
- if(VISION_MODE_NVG)
- current_goggles = VISION_MODE_OFF
-
-/obj/item/clothing/mask/gas/yautja/damaged/add_vision(mob/living/carbon/human/user)
- switch(current_goggles)
- if(VISION_MODE_NVG)
- user.equip_to_slot_or_del(new /obj/item/clothing/glasses/night/yautja(user), WEAR_EYES)
- to_chat(user, SPAN_NOTICE("You activate your visor."))
- if(VISION_MODE_OFF)
- to_chat(user, SPAN_NOTICE("You deactivate your visor."))
-
- playsound(src, 'sound/effects/pred_vision.ogg', 15, 1)
- user.update_inv_glasses()
-
-#undef VISION_MODE_OFF
-#undef VISION_MODE_NVG
-#undef VISION_MODE_THERMAL
-#undef VISION_MODE_MESON
-
-
//flavor, not a subtype
/obj/item/clothing/mask/yautja_flavor
name = "alien stone mask"
diff --git a/code/modules/cm_preds/yaut_weapons.dm b/code/modules/cm_preds/yaut_weapons.dm
index fbbe6c183aaa..5ff13c843ee3 100644
--- a/code/modules/cm_preds/yaut_weapons.dm
+++ b/code/modules/cm_preds/yaut_weapons.dm
@@ -254,6 +254,17 @@
var/force_wielded = MELEE_FORCE_TIER_6
var/force_unwielded = MELEE_FORCE_TIER_2
var/force_storage = MELEE_FORCE_TIER_1
+ /// Ref to the tether effect when thrown
+ var/datum/effects/tethering/chain
+
+/obj/item/weapon/yautja/combistick/Destroy()
+ cleanup_chain()
+ return ..()
+
+/obj/item/weapon/yautja/combistick/dropped(mob/user)
+ . = ..()
+ if(on && isturf(loc))
+ setup_chain(user)
/obj/item/weapon/yautja/combistick/try_to_throw(mob/living/user)
if(!charged)
@@ -262,8 +273,66 @@
charged = FALSE
remove_filter("combistick_charge")
unwield(user) //Otherwise stays wielded even when thrown
+ if(on)
+ setup_chain(user)
return TRUE
+/obj/item/weapon/yautja/combistick/proc/setup_chain(mob/living/user)
+ var/list/tether_effects = apply_tether(user, src, range = 6, resistable = FALSE)
+ chain = tether_effects["tetherer_tether"]
+ RegisterSignal(chain, COMSIG_PARENT_QDELETING, PROC_REF(cleanup_chain))
+ RegisterSignal(src, COMSIG_ITEM_PICKUP, PROC_REF(on_pickup))
+ RegisterSignal(src, COMSIG_MOVABLE_MOVED, PROC_REF(on_move))
+
+/// The chain normally breaks if it's put into a container, so let's yank it back if that's the case
+/obj/item/weapon/yautja/combistick/proc/on_move(datum/source, atom/moved, dir, forced)
+ SIGNAL_HANDLER
+ if(!z && !is_type_in_list(loc, list(/obj/structure/surface, /mob))) // I rue for the day I can remove the surface snowflake check
+ recall()
+
+/// Clean up the chain, deleting/nulling/unregistering as needed
+/obj/item/weapon/yautja/combistick/proc/cleanup_chain()
+ SIGNAL_HANDLER
+ if(!QDELETED(chain))
+ QDEL_NULL(chain)
+
+ else
+ chain = null
+
+ UnregisterSignal(src, COMSIG_ITEM_PICKUP)
+ UnregisterSignal(src, COMSIG_MOVABLE_MOVED)
+
+/obj/item/weapon/yautja/combistick/proc/on_pickup(datum/source, mob/user)
+ SIGNAL_HANDLER
+ if(user != chain.affected_atom)
+ to_chat(chain.affected_atom, SPAN_WARNING("You feel the chain of [src] be torn from your grasp!")) // Recall the fuckin combi my man
+
+ cleanup_chain()
+
+/// recall the combistick to the pred's hands or to be at their feet
+/obj/item/weapon/yautja/combistick/proc/recall()
+ SIGNAL_HANDLER
+ if(!chain)
+ return
+
+ var/mob/living/carbon/human/user = chain.affected_atom
+ if((src in user.contents) || !istype(user.gloves, /obj/item/clothing/gloves/yautja/hunter))
+ cleanup_chain()
+ return
+
+ var/obj/item/clothing/gloves/yautja/hunter/pred_gloves = user.gloves
+
+ if(user.put_in_hands(src, TRUE))
+ if(!pred_gloves.drain_power(user, 70))
+ return TRUE
+ user.visible_message(SPAN_WARNING("[user] yanks [src]'s chain back, catching it in [user.p_their()] hand!"), SPAN_WARNING("You yank [src]'s chain back, catching it inhand!"))
+ cleanup_chain()
+
+ else
+ if(!pred_gloves.drain_power(user, 70))
+ return TRUE
+ user.visible_message(SPAN_WARNING("[user] yanks [src]'s chain back, letting [src] fall at [user.p_their()]!"), SPAN_WARNING("You yank [src]'s chain back, letting it drop at your feet!"))
+ cleanup_chain()
/obj/item/weapon/yautja/combistick/IsShield()
return on
@@ -823,7 +892,7 @@
/obj/item/weapon/gun/energy/yautja/plasmarifle
name = "plasma rifle"
- desc = "A long-barreled heavy plasma weapon capable of taking down large game. It has a mounted scope for distant shots and an integrated battery."
+ desc = "A long-barreled heavy plasma weapon. Intended for combat, not hunting. Has an integrated battery that allows for a functionally unlimited amount of shots to be discharged. Equipped with an internal gyroscopic stabilizer allowing its operator to fire the weapon one-handed if desired"
icon_state = "plasmarifle"
item_state = "plasmarifle"
unacidable = TRUE
@@ -836,7 +905,7 @@
var/charge_time = 0
var/last_regen = 0
flags_gun_features = GUN_UNUSUAL_DESIGN
- flags_item = ITEM_PREDATOR
+ flags_item = ITEM_PREDATOR|TWOHANDED
/obj/item/weapon/gun/energy/yautja/plasmarifle/Initialize(mapload, spawn_empty)
. = ..()
@@ -889,12 +958,8 @@
return ..()
/obj/item/weapon/gun/energy/yautja/plasmarifle/load_into_chamber()
- if(charge_time >= 80)
- ammo = GLOB.ammo_list[/datum/ammo/energy/yautja/rifle/blast]
- charge_time -= 80
- else
- ammo = GLOB.ammo_list[/datum/ammo/energy/yautja/rifle/bolt]
- charge_time -= 10
+ ammo = GLOB.ammo_list[/datum/ammo/energy/yautja/rifle/bolt]
+ charge_time -= 10
var/obj/item/projectile/projectile = create_bullet(ammo, initial(name))
projectile.SetLuminosity(1)
in_chamber = projectile
diff --git a/code/modules/cm_tech/implements/medical_czsp.dm b/code/modules/cm_tech/implements/medical_czsp.dm
index e0b00ebf5afd..3eed2fc9f619 100644
--- a/code/modules/cm_tech/implements/medical_czsp.dm
+++ b/code/modules/cm_tech/implements/medical_czsp.dm
@@ -83,10 +83,11 @@
/obj/item/device/defibrillator/upgraded
name = "upgraded emergency defibrillator"
icon_state = "adv_defib"
- desc = "An advanced rechargeable defibrillator using induction to deliver shocks through metallic objects, such as armor, and does so with much greater efficiency than the standard variant."
+ desc = "An advanced rechargeable defibrillator using induction to deliver shocks through metallic objects, such as armor, and does so with much greater efficiency than the standard variant, not damaging the heart."
blocked_by_suit = FALSE
- heart_damage_to_deal = 0
+ min_heart_damage_dealt = 0
+ max_heart_damage_dealt = 0
damage_heal_threshold = 35
/obj/item/ammo_magazine/internal/pillgun
diff --git a/code/modules/gear_presets/synths.dm b/code/modules/gear_presets/synths.dm
index 7976ad6c2351..eaab23630ed2 100644
--- a/code/modules/gear_presets/synths.dm
+++ b/code/modules/gear_presets/synths.dm
@@ -1,7 +1,7 @@
/datum/equipment_preset/synth
name = "Synth"
uses_special_name = TRUE
- languages = ALL_SYNTH_LANGUAGES_UPP
+ languages = ALL_SYNTH_LANGUAGES
skills = /datum/skills/synthetic
paygrade = "SYN"
@@ -458,6 +458,7 @@
/datum/equipment_preset/synth/survivor/upp
name = "Survivor - Synthetic - UPP Synth"
flags = EQUIPMENT_PRESET_EXTRA
+ languages = ALL_SYNTH_LANGUAGES_UPP
assignment = JOB_UPP_COMBAT_SYNTH
rank = JOB_SURVIVOR
faction = FACTION_UPP
diff --git a/code/modules/gear_presets/uscm_ship.dm b/code/modules/gear_presets/uscm_ship.dm
index 2714dd063786..457ef71e9a46 100644
--- a/code/modules/gear_presets/uscm_ship.dm
+++ b/code/modules/gear_presets/uscm_ship.dm
@@ -193,7 +193,6 @@
ACCESS_MARINE_ENGINEERING,
ACCESS_MARINE_COMMAND,
ACCESS_CIVILIAN_ENGINEERING,
- ACCESS_MARINE_SENIOR,
ACCESS_MARINE_DATABASE,
ACCESS_MARINE_MAINT,
ACCESS_MARINE_OT,
@@ -202,7 +201,7 @@
)
assignment = JOB_CHIEF_ENGINEER
rank = JOB_CHIEF_ENGINEER
- paygrade = "MO2"
+ paygrade = "MO1"
role_comm_title = "CE"
minimum_age = 27
skills = /datum/skills/CE
@@ -308,8 +307,8 @@
//*****************************************************************************************************/
-/datum/equipment_preset/uscm_ship/ro
- name = "USCM Requisitions Officer (RO)"
+/datum/equipment_preset/uscm_ship/qm
+ name = "USCM Quartermaster (QM)"
flags = EQUIPMENT_PRESET_START_OF_ROUND|EQUIPMENT_PRESET_MARINE
idtype = /obj/item/card/id/silver
@@ -318,7 +317,6 @@
ACCESS_MARINE_RO,
ACCESS_MARINE_COMMAND,
ACCESS_MARINE_DATABASE,
- ACCESS_MARINE_SENIOR,
ACCESS_MARINE_ALPHA,
ACCESS_MARINE_BRAVO,
ACCESS_MARINE_CHARLIE,
@@ -327,23 +325,23 @@
)
assignment = JOB_CHIEF_REQUISITION
rank = JOB_CHIEF_REQUISITION
- paygrade = "MO2"
- role_comm_title = "RO"
+ paygrade = "ME7"
+ role_comm_title = "QM"
minimum_age = 27
skills = /datum/skills/RO
minimap_background = MINIMAP_ICON_BACKGROUND_CIC
minimap_icon = list("ct" = MINIMAP_ICON_COLOR_HEAD)
- utility_under = list(/obj/item/clothing/under/rank/ro_suit)
+ utility_under = list(/obj/item/clothing/under/rank/qm_suit)
-/datum/equipment_preset/uscm_ship/ro/load_gear(mob/living/carbon/human/new_human)
+/datum/equipment_preset/uscm_ship/qm/load_gear(mob/living/carbon/human/new_human)
var/back_item = /obj/item/storage/backpack/marine/satchel/tech
if (new_human.client && new_human.client.prefs && (new_human.client.prefs.backbag == 1))
back_item = /obj/item/storage/backpack/industrial
- new_human.equip_to_slot_or_del(new /obj/item/device/radio/headset/almayer/ro(new_human), WEAR_L_EAR)
- new_human.equip_to_slot_or_del(new /obj/item/clothing/under/rank/ro_suit(new_human), WEAR_BODY)
+ new_human.equip_to_slot_or_del(new /obj/item/device/radio/headset/almayer/qm(new_human), WEAR_L_EAR)
+ new_human.equip_to_slot_or_del(new /obj/item/clothing/under/rank/qm_suit(new_human), WEAR_BODY)
new_human.equip_to_slot_or_del(new /obj/item/clothing/shoes/marine(new_human), WEAR_FEET)
new_human.equip_to_slot_or_del(new /obj/item/clothing/gloves/yellow(new_human), WEAR_HANDS)
new_human.equip_to_slot_or_del(new /obj/item/clothing/head/cmcap/req(new_human), WEAR_HEAD)
@@ -616,6 +614,63 @@
//*****************************************************************************************************/
+/datum/equipment_preset/uscm_ship/auxiliary_officer
+ name = "USCM Auxiliary Support Officer (ASO)"
+ flags = EQUIPMENT_PRESET_START_OF_ROUND|EQUIPMENT_PRESET_MARINE
+
+ idtype = /obj/item/card/id/silver
+ assignment = JOB_AUXILIARY_OFFICER
+ rank = JOB_AUXILIARY_OFFICER
+ paygrade = "MO2"
+ role_comm_title = "ASO"
+ minimum_age = 27
+ skills = /datum/skills/auxiliary_officer
+
+ minimap_icon = list("cic" = MINIMAP_ICON_COLOR_SILVER)
+ minimap_background = MINIMAP_ICON_BACKGROUND_CIC
+
+/datum/equipment_preset/uscm_ship/auxiliary_officer/New()
+ . = ..()
+ access = list(
+ ACCESS_MARINE_SENIOR,
+ ACCESS_MARINE_ASO,
+ ACCESS_MARINE_COMMAND,
+ ACCESS_MARINE_BRIG,
+ ACCESS_MARINE_ARMORY,
+ ACCESS_MARINE_MEDBAY,
+ ACCESS_MARINE_CE,
+ ACCESS_MARINE_ENGINEERING,
+ ACCESS_MARINE_MAINT,
+ ACCESS_MARINE_OT,
+ ACCESS_MARINE_RO,
+ ACCESS_MARINE_CARGO,
+ ACCESS_MARINE_PREP,
+ ACCESS_MARINE_ALPHA,
+ ACCESS_MARINE_BRAVO,
+ ACCESS_MARINE_CHARLIE,
+ ACCESS_MARINE_DELTA,
+ ACCESS_MARINE_PILOT,
+ ACCESS_MARINE_DROPSHIP,
+ ACCESS_MARINE_KITCHEN,
+ ACCESS_PRESS,
+ )
+
+/datum/equipment_preset/uscm_ship/auxiliary_officer/load_gear(mob/living/carbon/human/new_human)
+ var/back_item = /obj/item/storage/backpack/satchel
+ if (new_human.client && new_human.client.prefs && (new_human.client.prefs.backbag == 1))
+ back_item = /obj/item/storage/backpack/marine
+
+ new_human.equip_to_slot_or_del(new /obj/item/device/radio/headset/almayer/mcom/alt(new_human), WEAR_L_EAR)
+ new_human.equip_to_slot_or_del(new /obj/item/clothing/under/marine/officer/bridge(new_human), WEAR_BODY)
+ new_human.equip_to_slot_or_del(new /obj/item/clothing/suit/storage/jacket/marine/service/aso(new_human), WEAR_JACKET)
+ new_human.equip_to_slot_or_del(new /obj/item/clothing/shoes/marine(new_human), WEAR_FEET)
+ new_human.equip_to_slot_or_del(new back_item(new_human), WEAR_BACK)
+ new_human.equip_to_slot_or_del(new /obj/item/storage/pouch/general/large(new_human), WEAR_L_STORE)
+ new_human.equip_to_slot_or_del(new /obj/item/storage/pouch/general/large(new_human), WEAR_R_STORE)
+ new_human.equip_to_slot_or_del(new /obj/item/device/binoculars/range(new_human), WEAR_L_STORE)
+
+//*****************************************************************************************************/
+
/datum/equipment_preset/uscm_ship/po
name = "USCM Pilot (DP) (Cryo)"
flags = EQUIPMENT_PRESET_START_OF_ROUND|EQUIPMENT_PRESET_MARINE
diff --git a/code/modules/hydroponics/hydro_tray.dm b/code/modules/hydroponics/hydro_tray.dm
index 65cf76b19a4a..9549b8fa59c1 100644
--- a/code/modules/hydroponics/hydro_tray.dm
+++ b/code/modules/hydroponics/hydro_tray.dm
@@ -210,11 +210,14 @@
// Make sure the plant is not starving or thirsty. Adequate
// water and nutrients will cause a plant to become healthier.
+ // Checks if there are sufficient enough nutrients, if not the plant dies.
var/healthmod = rand(1,3) * HYDRO_SPEED_MULTIPLIER
if(seed.requires_nutrients && prob(35))
plant_health += (nutrilevel < 2 ? -healthmod : healthmod)
if(seed.requires_water && prob(35))
plant_health += (waterlevel < 10 ? -healthmod : healthmod)
+ if(nutrilevel < 1)
+ plant_health = 0
// Check that pressure, heat and light are all within bounds.
// First, handle an open system or an unconnected closed system.
diff --git a/code/modules/mentor/mentorhelp.dm b/code/modules/mentor/mentorhelp.dm
index 84dacf4f8bfb..9aaf1cae517b 100644
--- a/code/modules/mentor/mentorhelp.dm
+++ b/code/modules/mentor/mentorhelp.dm
@@ -64,7 +64,7 @@
if(to_thread_mentor && mentor)
hitlist |= mentor
for(var/client/candidate in GLOB.admins)
- if(to_mentors && CLIENT_HAS_RIGHTS(candidate, R_MENTOR))
+ if(to_mentors && CLIENT_IS_MENTOR(candidate))
hitlist |= candidate
else if(to_staff && CLIENT_IS_STAFF(candidate))
hitlist |= candidate
@@ -137,7 +137,7 @@
if(!sender || !check_open(sender))
return
if(sender != author)
- if(!CLIENT_HAS_RIGHTS(sender, R_MENTOR))
+ if(!CLIENT_IS_MENTOR(sender))
return
// If the mentor forgot to mark the mentorhelp, mark it for them
@@ -201,7 +201,7 @@
return
// Not a mentor/staff
- if(!CLIENT_HAS_RIGHTS(thread_mentor, R_MENTOR))
+ if(!CLIENT_IS_MENTOR(thread_mentor))
return
mentor = thread_mentor
@@ -294,7 +294,7 @@
if(!check_open(responder))
return
- if(!CLIENT_HAS_RIGHTS(responder, R_MENTOR))
+ if(!CLIENT_IS_MENTOR(responder))
return
// If the mentor forgot to mark the mentorhelp, mark it for them
@@ -314,7 +314,7 @@
if(!check_open(responder))
return
- if(!CLIENT_HAS_RIGHTS(responder, R_MENTOR))
+ if(!CLIENT_IS_MENTOR(responder))
return
// Re-mark if they unmarked it while the dialog was open (???)
diff --git a/code/modules/mob/dead/observer/observer.dm b/code/modules/mob/dead/observer/observer.dm
index 9e8fa264af1d..ee36d25fc687 100644
--- a/code/modules/mob/dead/observer/observer.dm
+++ b/code/modules/mob/dead/observer/observer.dm
@@ -544,6 +544,27 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp
if(!istype(target))
return
+ if(check_client_rights(client, R_MOD, FALSE))
+ view_health_scan(target)
+ return
+
+ if(!mind.original)
+ view_health_scan(target)
+ return
+
+ if(!ishuman(mind.original))
+ view_health_scan(target)
+ return
+
+ var/mob/living/carbon/human/original_human = mind.original
+
+ if(!original_human.check_tod() || !original_human.is_revivable() || !can_reenter_corpse)
+ view_health_scan(target)
+ return
+
+ to_chat(src, SPAN_NOTICE("You must be permanently unrevivable or unable to reenter your body to use the scan health verb."))
+
+/mob/dead/observer/proc/view_health_scan(mob/living/target)
if (!last_health_display)
last_health_display = new(target)
else
diff --git a/code/modules/mob/living/blood.dm b/code/modules/mob/living/blood.dm
index 61848eda251c..a6062276bd8e 100644
--- a/code/modules/mob/living/blood.dm
+++ b/code/modules/mob/living/blood.dm
@@ -29,27 +29,35 @@
b_volume = 0
else if(chem_effect_flags & CHEM_EFFECT_ORGAN_STASIS)
b_volume *= 1
- else if(heart.damage > 1 && heart.damage < heart.min_bruised_damage)
- b_volume *= 0.8
- else if(heart.damage >= heart.min_bruised_damage && heart.damage < heart.min_broken_damage)
- b_volume *= 0.6
- else if(heart.damage >= heart.min_broken_damage && heart.damage < INFINITY)
- b_volume *= 0.3
+ else if(heart.damage >= heart.organ_status >= ORGAN_BRUISED)
+ b_volume *= Clamp(100 - (2 * heart.damage), 30, 100) / 100
//Effects of bloodloss
+ if(b_volume <= BLOOD_VOLUME_SAFE)
+ /// The blood volume turned into a %, with BLOOD_VOLUME_NORMAL being 100%
+ var/blood_percentage = b_volume / (BLOOD_VOLUME_NORMAL / 100)
+ /// How much oxyloss will there be from the next time blood processes
+ var/additional_oxyloss = (100 - blood_percentage) / 5
+ /// The limit of the oxyloss gained, ignoring oxyloss from the switch statement
+ var/maximum_oxyloss = Clamp((100 - blood_percentage) / 2, oxyloss, 100)
+ if(oxyloss < maximum_oxyloss)
+ oxyloss += round(max(additional_oxyloss, 0))
+
+ //Bloodloss effects on nutrition
+ if(nutrition >= 300)
+ nutrition -= 10
+ else if(nutrition >= 200)
+ nutrition -= 3
+
switch(b_volume)
if(BLOOD_VOLUME_OKAY to BLOOD_VOLUME_SAFE)
if(prob(1))
var/word = pick("dizzy","woozy","faint")
to_chat(src, SPAN_DANGER("You feel [word]."))
- if(oxyloss < 20)
- oxyloss += 3
if(BLOOD_VOLUME_BAD to BLOOD_VOLUME_OKAY)
if(eye_blurry < 50)
AdjustEyeBlur(6)
- if(oxyloss < 50)
- oxyloss += 10
- oxyloss += 2
+ oxyloss += 3
if(prob(15))
apply_effect(rand(1,3), PARALYZE)
var/word = pick("dizzy","woozy","faint")
@@ -57,7 +65,7 @@
if(BLOOD_VOLUME_SURVIVE to BLOOD_VOLUME_BAD)
if(eye_blurry < 50)
AdjustEyeBlur(6)
- oxyloss += 5
+ oxyloss += 8
toxloss += 3
if(prob(15))
apply_effect(rand(1,3), PARALYZE)
@@ -66,13 +74,6 @@
if(0 to BLOOD_VOLUME_SURVIVE)
death(create_cause_data("blood loss"))
- // Without enough blood you slowly go hungry.
- if(blood_volume < BLOOD_VOLUME_SAFE)
- if(nutrition >= 300)
- nutrition -= 10
- else if(nutrition >= 200)
- nutrition -= 3
-
// Xeno blood regeneration
/mob/living/carbon/xenomorph/handle_blood()
if(stat != DEAD) //Only living xenos regenerate blood
diff --git a/code/modules/mob/living/carbon/human/human.dm b/code/modules/mob/living/carbon/human/human.dm
index d01416b2443f..0d67e7cafd74 100644
--- a/code/modules/mob/living/carbon/human/human.dm
+++ b/code/modules/mob/living/carbon/human/human.dm
@@ -509,8 +509,11 @@
if(U == w_uniform)
U.remove_accessory(usr, A)
else
+ if(HAS_TRAIT(src, TRAIT_UNSTRIPPABLE) && !is_mob_incapacitated()) //Can't strip the unstrippable!
+ to_chat(usr, SPAN_DANGER("[src] has an unbreakable grip on their equipment!"))
+ return
visible_message(SPAN_DANGER("[usr] is trying to take off \a [A] from [src]'s [U]!"), null, null, 5)
- if(do_after(usr, HUMAN_STRIP_DELAY, INTERRUPT_ALL, BUSY_ICON_GENERIC, src, INTERRUPT_MOVED, BUSY_ICON_GENERIC))
+ if(do_after(usr, get_strip_delay(usr, src), INTERRUPT_ALL, BUSY_ICON_GENERIC, src, INTERRUPT_MOVED, BUSY_ICON_GENERIC))
if(U == w_uniform)
U.remove_accessory(usr, A)
@@ -529,7 +532,7 @@
else
var/oldsens = U.has_sensor
visible_message(SPAN_DANGER("[usr] is trying to modify [src]'s sensors!"), null, null, 4)
- if(do_after(usr, HUMAN_STRIP_DELAY, INTERRUPT_ALL, BUSY_ICON_GENERIC, src, INTERRUPT_MOVED, BUSY_ICON_GENERIC))
+ if(do_after(usr, get_strip_delay(usr, src), INTERRUPT_ALL, BUSY_ICON_GENERIC, src, INTERRUPT_MOVED, BUSY_ICON_GENERIC))
if(U == w_uniform)
if(U.has_sensor >= UNIFORM_FORCED_SENSORS)
to_chat(usr, "The controls are locked.")
@@ -1387,6 +1390,7 @@
lighting_alpha = default_lighting_alpha
sight &= ~(SEE_TURFS|SEE_MOBS|SEE_OBJS)
see_in_dark = species.darksight
+ sight |= species.flags_sight
if(glasses)
process_glasses(glasses)
diff --git a/code/modules/mob/living/carbon/human/inventory.dm b/code/modules/mob/living/carbon/human/inventory.dm
index 835e03c8e042..45fb65771069 100644
--- a/code/modules/mob/living/carbon/human/inventory.dm
+++ b/code/modules/mob/living/carbon/human/inventory.dm
@@ -486,63 +486,82 @@
return WEAR_LEGCUFFS
return ..()
-
-
-/mob/living/carbon/human/stripPanelUnequip(obj/item/I, mob/M, slot_to_process)
- if(I.flags_item & ITEM_ABSTRACT)
+/mob/living/carbon/human/proc/get_strip_delay(mob/living/carbon/human/user, mob/living/carbon/human/target)
+ /// Default delay
+ var/target_delay = HUMAN_STRIP_DELAY
+ /// Multiplier for how quickly the user can strip things.
+ var/user_speed = user.get_skill_duration_multiplier(SKILL_CQC)
+ /// The total skill level of CQC & Police
+ var/target_skills = (target.skills.get_skill_level(SKILL_CQC) + target.skills.get_skill_level(SKILL_POLICE))
+
+ /// Delay then gets + 0.5s per skill level, so long as not dead or cuffed.
+ if(!(target.stat || target.handcuffed))
+ target_delay += (target_skills * 5)
+
+ /// Final result is overall delay * speed multiplier
+ return target_delay * user_speed
+
+/mob/living/carbon/human/stripPanelUnequip(obj/item/interact_item, mob/target_mob, slot_to_process)
+ if(HAS_TRAIT(target_mob, TRAIT_UNSTRIPPABLE) && !target_mob.is_mob_incapacitated()) //Can't strip the unstrippable!
+ to_chat(src, SPAN_DANGER("[target_mob] has an unbreakable grip on their equipment!"))
+ return
+ if(interact_item.flags_item & ITEM_ABSTRACT)
+ return
+ if(interact_item.flags_item & NODROP)
+ to_chat(src, SPAN_WARNING("You can't remove \the [interact_item.name], it appears to be stuck!"))
return
- if(I.flags_item & NODROP)
- to_chat(src, SPAN_WARNING("You can't remove \the [I.name], it appears to be stuck!"))
+ if(interact_item.flags_inventory & CANTSTRIP)
+ to_chat(src, SPAN_WARNING("You're having difficulty removing \the [interact_item.name]."))
return
- if(I.flags_inventory & CANTSTRIP)
- to_chat(src, SPAN_WARNING("You're having difficulty removing \the [I.name]."))
+ target_mob.attack_log += "\[[time_stamp()]\] Has had their [interact_item.name] ([slot_to_process]) attempted to be removed by [key_name(src)]"
+ attack_log += "\[[time_stamp()]\] Attempted to remove [key_name(target_mob)]'s [interact_item.name] ([slot_to_process])"
+ log_interact(src, target_mob, "[key_name(src)] tried to remove [key_name(target_mob)]'s [interact_item.name] ([slot_to_process]).")
+
+ src.visible_message(SPAN_DANGER("[src] tries to remove [target_mob]'s [interact_item.name]."), \
+ SPAN_DANGER("You are trying to remove [target_mob]'s [interact_item.name]."), null, 5)
+ interact_item.add_fingerprint(src)
+ if(do_after(src, get_strip_delay(src, target_mob), INTERRUPT_ALL, BUSY_ICON_GENERIC, target_mob, INTERRUPT_MOVED, BUSY_ICON_GENERIC))
+ if(interact_item && Adjacent(target_mob) && interact_item == target_mob.get_item_by_slot(slot_to_process))
+ target_mob.drop_inv_item_on_ground(interact_item)
+ log_interact(src, target_mob, "[key_name(src)] removed [key_name(target_mob)]'s [interact_item.name] ([slot_to_process]) successfully.")
+
+ if(target_mob)
+ if(interactee == target_mob && Adjacent(target_mob))
+ target_mob.show_inv(src)
+
+
+/mob/living/carbon/human/stripPanelEquip(obj/item/interact_item, mob/target_mob, slot_to_process)
+ if(HAS_TRAIT(target_mob, TRAIT_UNSTRIPPABLE) && !target_mob.is_mob_incapacitated())
+ to_chat(src, SPAN_DANGER("[target_mob] is too strong to force [interact_item.name] onto them!"))
return
- M.attack_log += "\[[time_stamp()]\] Has had their [I.name] ([slot_to_process]) attempted to be removed by [key_name(src)]"
- attack_log += "\[[time_stamp()]\] Attempted to remove [key_name(M)]'s [I.name] ([slot_to_process])"
- log_interact(src, M, "[key_name(src)] tried to remove [key_name(M)]'s [I.name] ([slot_to_process]).")
-
- src.visible_message(SPAN_DANGER("[src] tries to remove [M]'s [I.name]."), \
- SPAN_DANGER("You are trying to remove [M]'s [I.name]."), null, 5)
- I.add_fingerprint(src)
- if(do_after(src, HUMAN_STRIP_DELAY * src.get_skill_duration_multiplier(SKILL_CQC), INTERRUPT_ALL, BUSY_ICON_GENERIC, M, INTERRUPT_MOVED, BUSY_ICON_GENERIC))
- if(I && Adjacent(M) && I == M.get_item_by_slot(slot_to_process))
- M.drop_inv_item_on_ground(I)
- log_interact(src, M, "[key_name(src)] removed [key_name(M)]'s [I.name] ([slot_to_process]) successfully.")
-
- if(M)
- if(interactee == M && Adjacent(M))
- M.show_inv(src)
-
-
-/mob/living/carbon/human/stripPanelEquip(obj/item/I, mob/M, slot_to_process)
- if(I && !(I.flags_item & ITEM_ABSTRACT))
- if(I.flags_item & NODROP)
- to_chat(src, SPAN_WARNING("You can't put \the [I.name] on [M], it's stuck to your hand!"))
+ if(interact_item && !(interact_item.flags_item & ITEM_ABSTRACT))
+ if(interact_item.flags_item & NODROP)
+ to_chat(src, SPAN_WARNING("You can't put \the [interact_item.name] on [target_mob], it's stuck to your hand!"))
return
- if(I.flags_inventory & CANTSTRIP)
- to_chat(src, SPAN_WARNING("You're having difficulty putting \the [I.name] on [M]."))
+ if(interact_item.flags_inventory & CANTSTRIP)
+ to_chat(src, SPAN_WARNING("You're having difficulty putting \the [interact_item.name] on [target_mob]."))
return
- if(I.flags_item & WIELDED)
- I.unwield(src)
- if(!I.mob_can_equip(M, slot_to_process, TRUE))
- to_chat(src, SPAN_WARNING("You can't put \the [I.name] on [M]!"))
+ if(interact_item.flags_item & WIELDED)
+ interact_item.unwield(src)
+ if(!interact_item.mob_can_equip(target_mob, slot_to_process, TRUE))
+ to_chat(src, SPAN_WARNING("You can't put \the [interact_item.name] on [target_mob]!"))
return
- visible_message(SPAN_NOTICE("[src] tries to put \the [I.name] on [M]."), null, null, 5)
- if(do_after(src, HUMAN_STRIP_DELAY * src.get_skill_duration_multiplier(SKILL_CQC), INTERRUPT_ALL, BUSY_ICON_GENERIC, M, INTERRUPT_MOVED, BUSY_ICON_GENERIC))
- if(I == get_active_hand() && !M.get_item_by_slot(slot_to_process) && Adjacent(M))
- if(I.flags_item & WIELDED) //to prevent re-wielding it during the do_after
- I.unwield(src)
- if(I.mob_can_equip(M, slot_to_process, TRUE))//Placing an item on the mob
- drop_inv_item_on_ground(I)
- if(I && !QDELETED(I)) //Might be self-deleted?
- M.equip_to_slot_if_possible(I, slot_to_process, 1, 0, 1, 1)
- if(ishuman(M) && M.stat == DEAD)
- var/mob/living/carbon/human/H = M
- H.disable_lights() // take that powergamers -spookydonut
-
- if(M)
- if(interactee == M && Adjacent(M))
- M.show_inv(src)
+ visible_message(SPAN_NOTICE("[src] tries to put \the [interact_item.name] on [target_mob]."), null, null, 5)
+ if(do_after(src, get_strip_delay(src, target_mob), INTERRUPT_ALL, BUSY_ICON_GENERIC, target_mob, INTERRUPT_MOVED, BUSY_ICON_GENERIC))
+ if(interact_item == get_active_hand() && !target_mob.get_item_by_slot(slot_to_process) && Adjacent(target_mob))
+ if(interact_item.flags_item & WIELDED) //to prevent re-wielding it during the do_after
+ interact_item.unwield(src)
+ if(interact_item.mob_can_equip(target_mob, slot_to_process, TRUE))//Placing an item on the mob
+ drop_inv_item_on_ground(interact_item)
+ if(interact_item && !QDELETED(interact_item)) //Might be self-deleted?
+ target_mob.equip_to_slot_if_possible(interact_item, slot_to_process, 1, 0, 1, 1)
+ if(ishuman(target_mob) && target_mob.stat == DEAD)
+ var/mob/living/carbon/human/human_target = target_mob
+ human_target.disable_lights() // take that powergamers -spookydonut
+
+ if(target_mob)
+ if(interactee == target_mob && Adjacent(target_mob))
+ target_mob.show_inv(src)
/mob/living/carbon/human/drop_inv_item_on_ground(obj/item/I, nomoveupdate, force)
remember_dropped_object(I)
diff --git a/code/modules/mob/living/carbon/human/species/species.dm b/code/modules/mob/living/carbon/human/species/species.dm
index b6eeb68e95d3..f6487d1faf1c 100644
--- a/code/modules/mob/living/carbon/human/species/species.dm
+++ b/code/modules/mob/living/carbon/human/species/species.dm
@@ -63,6 +63,7 @@
var/darksight = 2
var/default_lighting_alpha = LIGHTING_PLANE_ALPHA_VISIBLE
+ var/flags_sight = 0
var/brute_mod = null // Physical damage reduction/malus.
var/burn_mod = null // Burn damage reduction/malus.
diff --git a/code/modules/mob/living/carbon/human/species/working_joe/_species.dm b/code/modules/mob/living/carbon/human/species/working_joe/_species.dm
index 139b339fbfd7..292c302f9317 100644
--- a/code/modules/mob/living/carbon/human/species/working_joe/_species.dm
+++ b/code/modules/mob/living/carbon/human/species/working_joe/_species.dm
@@ -4,7 +4,7 @@
death_message = "violently gargles fluid and seizes up, the glow in their eyes dimming..."
uses_ethnicity = FALSE
burn_mod = 0.65 // made for hazardous environments, withstanding temperatures up to 1210 degrees
- mob_inherent_traits = list(TRAIT_SUPER_STRONG, TRAIT_INTENT_EYES, TRAIT_EMOTE_CD_EXEMPT, TRAIT_CANNOT_EAT)
+ mob_inherent_traits = list(TRAIT_SUPER_STRONG, TRAIT_INTENT_EYES, TRAIT_EMOTE_CD_EXEMPT, TRAIT_CANNOT_EAT, TRAIT_UNSTRIPPABLE)
slowdown = 0.45
hair_color = "#000000"
diff --git a/code/modules/mob/living/carbon/human/species/yautja/_species.dm b/code/modules/mob/living/carbon/human/species/yautja/_species.dm
index 8e8849f5ad4c..f8ecb3e0591b 100644
--- a/code/modules/mob/living/carbon/human/species/yautja/_species.dm
+++ b/code/modules/mob/living/carbon/human/species/yautja/_species.dm
@@ -25,6 +25,8 @@
speech_chance = 100
death_message = "clicks in agony and falls still, motionless and completely lifeless..."
darksight = 5
+ default_lighting_alpha = LIGHTING_PLANE_ALPHA_YAUTJA
+ flags_sight = SEE_MOBS
slowdown = -0.5
total_health = 175 //more health than regular humans
timed_hug = FALSE
diff --git a/code/modules/mob/living/carbon/human/species/zombie.dm b/code/modules/mob/living/carbon/human/species/zombie.dm
index 532d9413102c..07fe8f5e1255 100644
--- a/code/modules/mob/living/carbon/human/species/zombie.dm
+++ b/code/modules/mob/living/carbon/human/species/zombie.dm
@@ -1,8 +1,12 @@
+// DEFINES
+///Time until a zombie rises from the dead
+#define ZOMBIE_REVIVE_TIME 1 MINUTES
+
/datum/species/zombie
group = SPECIES_HUMAN
name = SPECIES_ZOMBIE
name_plural = "Zombies"
- slowdown = 1
+ slowdown = 0.75
blood_color = BLOOD_COLOR_ZOMBIE
icobase = 'icons/mob/humans/species/r_goo_zed.dmi'
deform = 'icons/mob/humans/species/r_goo_zed.dmi'
@@ -12,7 +16,7 @@
death_message = "seizes up and falls limp..."
flags = NO_BREATHE|NO_CLONE_LOSS|NO_POISON|NO_NEURO|NO_SHRAPNEL
mob_inherent_traits = list(TRAIT_FOREIGN_BIO)
- brute_mod = 0.25 //EXTREME BULLET RESISTANCE
+ brute_mod = 0.6 //Minor bullet resistance
burn_mod = 0.8 //Lowered burn damage since it would 1-shot zombies from 2 to 0.8.
speech_chance = 5
cold_level_1 = -1 //zombies don't mind the cold
@@ -96,7 +100,7 @@
zombie.play_screen_text("You are dead...
You will rise again in one minute.", /atom/movable/screen/text/screen_text/command_order, rgb(155, 0, 200))
to_chat(zombie, SPAN_XENOWARNING("You fall... but your body is slowly regenerating itself."))
var/weak_ref = WEAKREF(zombie)
- to_revive[weak_ref] = addtimer(CALLBACK(src, PROC_REF(revive_from_death), zombie, "[REF(zombie)]"), 1 MINUTES, TIMER_STOPPABLE|TIMER_OVERRIDE|TIMER_UNIQUE|TIMER_NO_HASH_WAIT)
+ to_revive[weak_ref] = addtimer(CALLBACK(src, PROC_REF(revive_from_death), zombie, "[REF(zombie)]"), ZOMBIE_REVIVE_TIME, TIMER_STOPPABLE|TIMER_OVERRIDE|TIMER_UNIQUE|TIMER_NO_HASH_WAIT)
revive_times[weak_ref] = world.time + 1 MINUTES
else
if(zombie.client)
diff --git a/code/modules/mob/living/carbon/xenomorph/XenoProcs.dm b/code/modules/mob/living/carbon/xenomorph/XenoProcs.dm
index 667367339698..37b0aa037cd1 100644
--- a/code/modules/mob/living/carbon/xenomorph/XenoProcs.dm
+++ b/code/modules/mob/living/carbon/xenomorph/XenoProcs.dm
@@ -18,7 +18,7 @@
if(SSticker.mode && SSticker.mode.xenomorphs.len) //Send to only xenos in our gamemode list. This is faster than scanning all mobs
for(var/datum/mind/L in SSticker.mode.xenomorphs)
var/mob/living/carbon/M = L.current
- if(M && istype(M) && !M.stat && M.client && (!hivenumber || M.ally_of_hivenumber(hivenumber))) //Only living and connected xenos
+ if(M && istype(M) && !M.stat && M.client && (!hivenumber || M.hivenumber == hivenumber)) //Only living and connected xenos
to_chat(M, SPAN_XENODANGER(" [message]"))
//Sends a maptext alert to our currently selected squad. Does not make sound.
diff --git a/code/modules/mob/living/carbon/xenomorph/XenoUpgrade.dm b/code/modules/mob/living/carbon/xenomorph/XenoUpgrade.dm
index a89a3ad32e85..ae03d0646657 100644
--- a/code/modules/mob/living/carbon/xenomorph/XenoUpgrade.dm
+++ b/code/modules/mob/living/carbon/xenomorph/XenoUpgrade.dm
@@ -3,6 +3,7 @@
return
age = XENO_NORMAL
+ var/hours_as_xeno = client.get_total_xeno_playtime()
var/hours_as_caste = get_job_playtime(client, caste.caste_type)
switch(hours_as_caste)
@@ -15,11 +16,16 @@
if(JOB_PLAYTIME_TIER_4 to INFINITY)
age = XENO_PRIME
+ if(hours_as_xeno < JOB_PLAYTIME_TIER_1)
+ age = XENO_YOUNG
+
// For people who wish to remain anonymous
if(!client.prefs.playtime_perks)
age = XENO_NORMAL
switch(age)
+ if(XENO_YOUNG)
+ age_prefix = "Young "
if(XENO_NORMAL)
age_prefix = ""
if(XENO_MATURE)
diff --git a/code/modules/mob/living/carbon/xenomorph/castes/Queen.dm b/code/modules/mob/living/carbon/xenomorph/castes/Queen.dm
index 53e30d374b2c..8a7425e2071a 100644
--- a/code/modules/mob/living/carbon/xenomorph/castes/Queen.dm
+++ b/code/modules/mob/living/carbon/xenomorph/castes/Queen.dm
@@ -413,17 +413,24 @@
if(queen_aged)
age_xeno()
switch(age)
- if(XENO_NORMAL) name = "[name_prefix]Queen" //Young
- if(XENO_MATURE) name = "[name_prefix]Elder Queen" //Mature
- if(XENO_ELDER) name = "[name_prefix]Elder Empress" //Elite
- if(XENO_ANCIENT) name = "[name_prefix]Ancient Empress" //Ancient
- if(XENO_PRIME) name = "[name_prefix]Prime Empress" //Primordial
+ if(XENO_YOUNG)
+ name = "[name_prefix]Young Queen" //Young
+ if(XENO_NORMAL)
+ name = "[name_prefix]Queen" //Regular
+ if(XENO_MATURE)
+ name = "[name_prefix]Elder Queen" //Mature
+ if(XENO_ELDER)
+ name = "[name_prefix]Elder Empress" //Elite
+ if(XENO_ANCIENT)
+ name = "[name_prefix]Ancient Empress" //Ancient
+ if(XENO_PRIME)
+ name = "[name_prefix]Prime Empress" //Primordial
else
age = XENO_NORMAL
if(client)
hud_update()
- name = "[name_prefix]Young Queen"
+ name = "[name_prefix]Immature Queen"
var/name_client_prefix = ""
var/name_client_postfix = ""
diff --git a/code/modules/mob/living/carbon/xenomorph/death.dm b/code/modules/mob/living/carbon/xenomorph/death.dm
index 12c9b3e37c9b..56f9460f5c71 100644
--- a/code/modules/mob/living/carbon/xenomorph/death.dm
+++ b/code/modules/mob/living/carbon/xenomorph/death.dm
@@ -69,10 +69,11 @@
if(!QDELETED(Q) && Q != src && Q.hivenumber == hivenumber)
hive.set_living_xeno_queen(Q)
break
+ hive.on_queen_death()
hive.handle_xeno_leader_pheromones()
if(SSticker.mode)
INVOKE_ASYNC(SSticker.mode, TYPE_PROC_REF(/datum/game_mode, check_queen_status), hivenumber)
- LAZYADD(SSticker.mode.dead_queens, "
[!isnull(src.key) ? src.key : "?"] was [src] [SPAN_BOLDNOTICE("(DIED)")]")
+ LAZYADD(SSticker.mode.dead_queens, "
[!isnull(full_designation) ? full_designation : "?"] was [src] [SPAN_BOLDNOTICE("(DIED)")]")
else if(ispredalien(src))
playsound(loc,'sound/voice/predalien_death.ogg', 25, TRUE)
diff --git a/code/modules/mob/living/carbon/xenomorph/hive_faction.dm b/code/modules/mob/living/carbon/xenomorph/hive_faction.dm
index 10af37b8d8e8..e16a5cccd915 100644
--- a/code/modules/mob/living/carbon/xenomorph/hive_faction.dm
+++ b/code/modules/mob/living/carbon/xenomorph/hive_faction.dm
@@ -56,6 +56,5 @@ GLOBAL_LIST_INIT(hive_alliable_factions, generate_alliable_factions())
return
var/should_ally = text2num(params["should_ally"])
- assoc_hive.allies[params["target_faction"]] = should_ally
- assoc_hive.on_stance_change(params["target_faction"])
+ assoc_hive.change_stance(params["target_faction"], should_ally)
. = TRUE
diff --git a/code/modules/mob/living/carbon/xenomorph/xeno_defines.dm b/code/modules/mob/living/carbon/xenomorph/xeno_defines.dm
index cfca16f70a51..c2bf91edde6e 100644
--- a/code/modules/mob/living/carbon/xenomorph/xeno_defines.dm
+++ b/code/modules/mob/living/carbon/xenomorph/xeno_defines.dm
@@ -317,6 +317,7 @@
XENO_STRUCTURE_EGGMORPH = 6,
XENO_STRUCTURE_EVOPOD = 2,
XENO_STRUCTURE_RECOVERY = 6,
+ XENO_STRUCTURE_PYLON = 2,
)
var/global/list/hive_structure_types = list(
@@ -370,17 +371,25 @@
if(hivenumber != XENO_HIVE_NORMAL)
return
- RegisterSignal(SSdcs, COMSIG_GLOB_POST_SETUP, PROC_REF(setup_evolution_announcements))
+ RegisterSignal(SSdcs, COMSIG_GLOB_POST_SETUP, PROC_REF(post_setup))
-/datum/hive_status/proc/setup_evolution_announcements()
+/datum/hive_status/proc/post_setup()
SIGNAL_HANDLER
+ setup_evolution_announcements()
+ setup_pylon_limits()
+
+/datum/hive_status/proc/setup_evolution_announcements()
for(var/time in GLOB.xeno_evolve_times)
if(time == "0")
continue
addtimer(CALLBACK(src, PROC_REF(announce_evolve_available), GLOB.xeno_evolve_times[time]), text2num(time))
+/// Sets up limits on pylons in New() for potential futureproofing with more static comms
+/datum/hive_status/proc/setup_pylon_limits()
+ hive_structures_limit[XENO_STRUCTURE_PYLON] = length(GLOB.all_static_telecomms_towers) || 2
+
/datum/hive_status/proc/announce_evolve_available(list/datum/caste_datum/available_castes)
var/list/castes_available = list()
@@ -883,6 +892,7 @@
for(var/obj/effect/alien/resin/special/S in hive_structures[name_ref])
if(get_area(S) == hijacked_dropship)
continue
+ S.hijack_delete = TRUE
hive_structures[name_ref] -= S
qdel(S)
for(var/mob/living/carbon/xenomorph/xeno as anything in totalXenos)
@@ -920,10 +930,14 @@
embryo.hivenumber = XENO_HIVE_FORSAKEN
potential_host.update_med_icon()
for(var/mob/living/carbon/human/current_human as anything in GLOB.alive_human_list)
- if((isspecieshuman(current_human) || isspeciessynth(current_human)) && current_human.job)
- var/turf/turf = get_turf(current_human)
- if(is_mainship_level(turf?.z))
- shipside_humans_weighted_count += RoleAuthority.calculate_role_weight(current_human.job)
+ if(!(isspecieshuman(current_human) || isspeciessynth(current_human)))
+ continue
+ var/datum/job/job = RoleAuthority.roles_for_mode[current_human.job]
+ if(!job)
+ continue
+ var/turf/turf = get_turf(current_human)
+ if(is_mainship_level(turf?.z))
+ shipside_humans_weighted_count += RoleAuthority.calculate_role_weight(job)
hijack_burrowed_surge = TRUE
hijack_burrowed_left = max(n_ceil(shipside_humans_weighted_count * 0.5) - xenos_count, 5)
hivecore_cooldown = FALSE
@@ -1122,6 +1136,10 @@
/datum/hive_status/proc/increase_larva_after_burst()
var/extra_per_burst = CONFIG_GET(number/extra_larva_per_burst)
partial_larva += extra_per_burst
+ convert_partial_larva_to_full_larva()
+
+///Called after times when partial larva are added to process them to stored larva
+/datum/hive_status/proc/convert_partial_larva_to_full_larva()
for(var/i = 1 to partial_larva)
partial_larva--
stored_larva++
@@ -1372,13 +1390,32 @@
/datum/hive_status/corrupted/renegade/faction_is_ally(faction, ignore_queen_check = TRUE)
return ..()
-/datum/hive_status/proc/on_stance_change(faction)
- if(!living_xeno_queen)
+/datum/hive_status/proc/on_queen_death() //break alliances on queen's death
+ if(allow_no_queen_actions || living_xeno_queen)
return
- if(allies[faction])
- xeno_message(SPAN_XENOANNOUNCE("Your Queen set up an alliance with [faction]!"), 3, hivenumber)
- else
- xeno_message(SPAN_XENOANNOUNCE("Your Queen broke the alliance with [faction]!"), 3, hivenumber)
+ var/broken_alliances = FALSE
+ for(var/faction in allies)
+ if(!allies[faction])
+ continue
+ change_stance(faction, FALSE)
+ broken_alliances = TRUE
+
+
+ if(broken_alliances)
+ xeno_message(SPAN_XENOANNOUNCE("With the death of the Queen, all alliances have been broken."), 3, hivenumber)
+
+/datum/hive_status/proc/change_stance(faction, should_ally)
+ if(faction == name)
+ return
+ if(allies[faction] == should_ally)
+ return
+ allies[faction] = should_ally
+
+ if(living_xeno_queen)
+ if(allies[faction])
+ xeno_message(SPAN_XENOANNOUNCE("Your Queen set up an alliance with [faction]!"), 3, hivenumber)
+ else
+ xeno_message(SPAN_XENOANNOUNCE("Your Queen broke the alliance with [faction]!"), 3, hivenumber)
for(var/number in GLOB.hive_datum)
var/datum/hive_status/target_hive = GLOB.hive_datum[number]
@@ -1387,12 +1424,15 @@
if(!target_hive.living_xeno_queen && !target_hive.allow_no_queen_actions)
return
if(allies[faction])
- xeno_message(SPAN_XENOANNOUNCE("You sense that [name] Queen set up an alliance with us!"), 3, target_hive.hivenumber)
+ xeno_message(SPAN_XENOANNOUNCE("You sense that [name] [living_xeno_queen ? "Queen " : ""]set up an alliance with us!"), 3, target_hive.hivenumber)
return
- xeno_message(SPAN_XENOANNOUNCE("You sense that [name] Queen broke the alliance with us!"), 3, target_hive.hivenumber)
+ xeno_message(SPAN_XENOANNOUNCE("You sense that [name] [living_xeno_queen ? "Queen " : ""]broke the alliance with us!"), 3, target_hive.hivenumber)
+ if(target_hive.allies[name]) //autobreak alliance on betrayal
+ target_hive.change_stance(name, FALSE)
+
-/datum/hive_status/corrupted/on_stance_change(faction)
+/datum/hive_status/corrupted/change_stance(faction, should_ally)
. = ..()
if(allies[faction])
return
diff --git a/code/modules/mob/new_player/preferences_setup.dm b/code/modules/mob/new_player/preferences_setup.dm
index f8c86f9c5171..1839fe191627 100644
--- a/code/modules/mob/new_player/preferences_setup.dm
+++ b/code/modules/mob/new_player/preferences_setup.dm
@@ -245,6 +245,8 @@
return /datum/equipment_preset/uscm_ship/so
if(JOB_XO)
return /datum/equipment_preset/uscm_ship/xo
+ if(JOB_AUXILIARY_OFFICER)
+ return /datum/equipment_preset/uscm_ship/auxiliary_officer
if(JOB_INTEL)
return /datum/equipment_preset/uscm/intel/full
if(JOB_PILOT)
@@ -277,7 +279,7 @@
if(JOB_MAINT_TECH)
return /datum/equipment_preset/uscm_ship/maint
if(JOB_CHIEF_REQUISITION)
- return /datum/equipment_preset/uscm_ship/ro
+ return /datum/equipment_preset/uscm_ship/qm
if(JOB_CARGO_TECH)
return /datum/equipment_preset/uscm_ship/cargo
if(JOB_CMO)
diff --git a/code/modules/projectiles/ammo_datums.dm b/code/modules/projectiles/ammo_datums.dm
index f97195d5ac32..d09c7ad7bb26 100644
--- a/code/modules/projectiles/ammo_datums.dm
+++ b/code/modules/projectiles/ammo_datums.dm
@@ -2367,32 +2367,7 @@
flags_ammo_behavior = AMMO_IGNORE_RESIST
damage = 55
-
-/datum/ammo/energy/yautja/rifle/blast
- name = "plasma shatterer"
- icon_state = "bluespace"
- damage_type = BURN
-
- shell_speed = AMMO_SPEED_TIER_4
- damage = 40
-
-/datum/ammo/energy/yautja/rifle/blast/on_hit_mob(mob/M, obj/item/projectile/P)
- var/L = get_turf(M)
- cell_explosion(L, 90, 30, EXPLOSION_FALLOFF_SHAPE_LINEAR, null, P.weapon_cause_data)
- ..()
-
-/datum/ammo/energy/yautja/rifle/blast/on_hit_turf(turf/T, obj/item/projectile/P)
- cell_explosion(T, 90, 30, EXPLOSION_FALLOFF_SHAPE_LINEAR, null, P.weapon_cause_data)
- ..()
-
-/datum/ammo/energy/yautja/rifle/blast/on_hit_obj(obj/O, obj/item/projectile/P)
- cell_explosion(get_turf(O), 100, 30, EXPLOSION_FALLOFF_SHAPE_LINEAR, null, P.weapon_cause_data)
- ..()
-
-/datum/ammo/energy/yautja/rifle/blast/do_at_max_range(obj/item/projectile/P)
- cell_explosion(get_turf(P), 100, 30, EXPLOSION_FALLOFF_SHAPE_LINEAR, null, P.weapon_cause_data)
- ..()
-
+ penetration = 50
/*
//======
diff --git a/code/modules/projectiles/gun.dm b/code/modules/projectiles/gun.dm
index 7a2a5f85c5b3..832f243a9602 100644
--- a/code/modules/projectiles/gun.dm
+++ b/code/modules/projectiles/gun.dm
@@ -314,7 +314,7 @@
accuracy_mult_unwielded = BASE_ACCURACY_MULT
scatter = SCATTER_AMOUNT_TIER_6
burst_scatter_mult = SCATTER_AMOUNT_TIER_7
- set_burst_amount(BURST_AMOUNT_TIER_5)
+ set_burst_amount(BURST_AMOUNT_TIER_1)
scatter_unwielded = SCATTER_AMOUNT_TIER_6
damage_mult = BASE_BULLET_DAMAGE_MULT
damage_falloff_mult = DAMAGE_FALLOFF_TIER_10
@@ -616,7 +616,7 @@ As sniper rifles have both and weapon mods can change them as well. ..() deals w
if(in_chamber && in_chamber.ammo)
in_ammo = in_chamber.ammo
else if(current_mag && current_mag.current_rounds > 0)
- if(istype(current_mag) && current_mag.chamber_contents[current_mag.chamber_position] != "empty")
+ if(istype(current_mag) && length(current_mag.chamber_contents) && current_mag.chamber_contents[current_mag.chamber_position] != "empty")
in_ammo = GLOB.ammo_list[current_mag.chamber_contents[current_mag.chamber_position]]
if(!istype(in_ammo))
in_ammo = GLOB.ammo_list[current_mag.default_ammo]
@@ -705,7 +705,7 @@ As sniper rifles have both and weapon mods can change them as well. ..() deals w
data["recoil_max"] = RECOIL_AMOUNT_TIER_1
data["scatter_max"] = SCATTER_AMOUNT_TIER_1
- data["firerate_max"] = 1 MINUTES / FIRE_DELAY_TIER_10
+ data["firerate_max"] = 1 MINUTES / FIRE_DELAY_TIER_12
data["damage_max"] = 100
data["accuracy_max"] = 32
data["range_max"] = 32
@@ -1775,13 +1775,11 @@ not all weapons use normal magazines etc. load_into_chamber() itself is designed
/obj/item/weapon/gun/proc/set_burst_amount(value, mob/user)
burst_amount = value
SEND_SIGNAL(src, COMSIG_GUN_BURST_SHOTS_TO_FIRE_MODIFIED, burst_amount)
- setup_firemodes()
/// adder for burst_amount
/obj/item/weapon/gun/proc/modify_burst_amount(value, mob/user)
burst_amount += value
SEND_SIGNAL(src, COMSIG_GUN_BURST_SHOTS_TO_FIRE_MODIFIED, burst_amount)
- setup_firemodes()
/// Adder for burst_delay
/obj/item/weapon/gun/proc/modify_burst_delay(value, mob/user)
diff --git a/code/modules/projectiles/gun_attachables.dm b/code/modules/projectiles/gun_attachables.dm
index 2a77a6ba6a68..7d2dbf5288be 100644
--- a/code/modules/projectiles/gun_attachables.dm
+++ b/code/modules/projectiles/gun_attachables.dm
@@ -368,6 +368,7 @@ Defined in conflicts.dm of the #defines folder.
icon_state = "ebarrel"
attach_icon = "ebarrel_a"
hud_offset_mod = -3
+ wield_delay_mod = WIELD_DELAY_FAST
/obj/item/attachable/extended_barrel/New()
..()
@@ -387,7 +388,7 @@ Defined in conflicts.dm of the #defines folder.
..()
accuracy_mod = -HIT_ACCURACY_MULT_TIER_3
damage_mod = BULLET_DAMAGE_MULT_TIER_6
- delay_mod = FIRE_DELAY_TIER_9
+ delay_mod = FIRE_DELAY_TIER_11
accuracy_unwielded_mod = -HIT_ACCURACY_MULT_TIER_7
@@ -842,13 +843,13 @@ Defined in conflicts.dm of the #defines folder.
/obj/item/attachable/scope/New()
..()
- delay_mod = FIRE_DELAY_TIER_10
+ delay_mod = FIRE_DELAY_TIER_12
accuracy_mod = -HIT_ACCURACY_MULT_TIER_1
movement_onehanded_acc_penalty_mod = MOVEMENT_ACCURACY_PENALTY_MULT_TIER_4
accuracy_unwielded_mod = 0
accuracy_scoped_buff = HIT_ACCURACY_MULT_TIER_8 //to compensate initial debuff
- delay_scoped_nerf = FIRE_DELAY_TIER_9 //to compensate initial debuff. We want "high_fire_delay"
+ delay_scoped_nerf = FIRE_DELAY_TIER_11 //to compensate initial debuff. We want "high_fire_delay"
damage_falloff_scoped_buff = -0.4 //has to be negative
/obj/item/attachable/scope/proc/apply_scoped_buff(obj/item/weapon/gun/G, mob/living/carbon/user)
@@ -1007,7 +1008,7 @@ Defined in conflicts.dm of the #defines folder.
accuracy_unwielded_mod = 0
accuracy_scoped_buff = HIT_ACCURACY_MULT_TIER_8
- delay_scoped_nerf = FIRE_DELAY_TIER_8
+ delay_scoped_nerf = FIRE_DELAY_TIER_9
/obj/item/attachable/scope/mini/hunting
name = "2x hunting mini-scope"
@@ -1530,7 +1531,7 @@ Defined in conflicts.dm of the #defines folder.
scatter_mod = -SCATTER_AMOUNT_TIER_7
burst_scatter_mod = -1
burst_mod = BURST_AMOUNT_TIER_2
- delay_mod = -FIRE_DELAY_TIER_9
+ delay_mod = -FIRE_DELAY_TIER_11
movement_onehanded_acc_penalty_mod = -MOVEMENT_ACCURACY_PENALTY_MULT_TIER_4
//1h
accuracy_unwielded_mod = HIT_ACCURACY_MULT_TIER_1
@@ -2522,10 +2523,9 @@ Defined in conflicts.dm of the #defines folder.
accuracy_unwielded_mod = -HIT_ACCURACY_MULT_TIER_3
scatter_unwielded_mod = SCATTER_AMOUNT_TIER_10
-
/obj/item/attachable/angledgrip
name = "angled grip"
- desc = "An angled foregrip that improves weapon ergonomics and offers less recoil, and faster wielding time. \nHowever, it also increases weapon size."
+ desc = "An angled foregrip that improves weapon ergonomics resulting in faster wielding time. \nHowever, it also increases weapon size."
icon = 'icons/obj/items/weapons/guns/attachments/under.dmi'
icon_state = "angledgrip"
attach_icon = "angledgrip_a"
@@ -2534,16 +2534,6 @@ Defined in conflicts.dm of the #defines folder.
slot = "under"
pixel_shift_x = 20
-/obj/item/attachable/angledgrip/New()
- ..()
- recoil_mod = -RECOIL_AMOUNT_TIER_4
- accuracy_mod = HIT_ACCURACY_MULT_TIER_1
- accuracy_unwielded_mod = -HIT_ACCURACY_MULT_TIER_1
- scatter_mod = -SCATTER_AMOUNT_TIER_10
- scatter_unwielded_mod = SCATTER_AMOUNT_TIER_10
-
-
-
/obj/item/attachable/gyro
name = "gyroscopic stabilizer"
desc = "A set of weights and balances to stabilize the weapon when fired with one hand. Slightly decreases firing speed."
@@ -2554,7 +2544,7 @@ Defined in conflicts.dm of the #defines folder.
/obj/item/attachable/gyro/New()
..()
- delay_mod = FIRE_DELAY_TIER_9
+ delay_mod = FIRE_DELAY_TIER_11
scatter_mod = -SCATTER_AMOUNT_TIER_10
burst_scatter_mod = -2
movement_onehanded_acc_penalty_mod = -MOVEMENT_ACCURACY_PENALTY_MULT_TIER_3
@@ -2606,7 +2596,7 @@ Defined in conflicts.dm of the #defines folder.
/obj/item/attachable/bipod/New()
..()
- delay_mod = FIRE_DELAY_TIER_9
+ delay_mod = FIRE_DELAY_TIER_11
wield_delay_mod = WIELD_DELAY_FAST
accuracy_mod = -HIT_ACCURACY_MULT_TIER_5
scatter_mod = SCATTER_AMOUNT_TIER_9
@@ -2654,7 +2644,7 @@ Defined in conflicts.dm of the #defines folder.
scatter_mod = SCATTER_AMOUNT_TIER_9
recoil_mod = RECOIL_AMOUNT_TIER_5
burst_scatter_mod = 0
- delay_mod = FIRE_DELAY_TIER_10
+ delay_mod = FIRE_DELAY_TIER_12
G.recalculate_attachment_bonuses()
var/mob/living/user
if(isliving(G.loc))
@@ -2691,7 +2681,7 @@ Defined in conflicts.dm of the #defines folder.
if(istype(G,/obj/item/weapon/gun/rifle/sniper/M42A))
delay_mod = -FIRE_DELAY_TIER_7
else
- delay_mod = -FIRE_DELAY_TIER_10
+ delay_mod = -FIRE_DELAY_TIER_12
G.recalculate_attachment_bonuses()
initial_mob_dir = user.dir
diff --git a/code/modules/projectiles/guns/energy.dm b/code/modules/projectiles/guns/energy.dm
index 25efbd420ec6..61ea0442a427 100644
--- a/code/modules/projectiles/guns/energy.dm
+++ b/code/modules/projectiles/guns/energy.dm
@@ -133,7 +133,7 @@
/obj/item/weapon/gun/energy/rxfm5_eva/set_gun_config_values()
..()
- set_fire_delay(FIRE_DELAY_TIER_8)
+ set_fire_delay(FIRE_DELAY_TIER_9)
accuracy_mult = BASE_ACCURACY_MULT - HIT_ACCURACY_MULT_TIER_3
scatter = SCATTER_AMOUNT_TIER_7
damage_mult = BASE_BULLET_DAMAGE_MULT
diff --git a/code/modules/projectiles/guns/flamer/flamer.dm b/code/modules/projectiles/guns/flamer/flamer.dm
index f327a92ffc9c..a108b3a9948f 100644
--- a/code/modules/projectiles/guns/flamer/flamer.dm
+++ b/code/modules/projectiles/guns/flamer/flamer.dm
@@ -51,7 +51,7 @@
/obj/item/weapon/gun/flamer/set_gun_config_values()
..()
- set_fire_delay(FIRE_DELAY_TIER_4 * 5)
+ set_fire_delay(FIRE_DELAY_TIER_5 * 5)
/obj/item/weapon/gun/flamer/unique_action(mob/user)
toggle_gun_safety()
diff --git a/code/modules/projectiles/guns/lever_action.dm b/code/modules/projectiles/guns/lever_action.dm
index 986f42716e64..73d9330e2a53 100644
--- a/code/modules/projectiles/guns/lever_action.dm
+++ b/code/modules/projectiles/guns/lever_action.dm
@@ -45,7 +45,7 @@ their unique feature is that a direct hit will buff your damage and firerate
/obj/item/weapon/gun/lever_action/set_gun_config_values()
..()
- set_fire_delay(FIRE_DELAY_TIER_1 + FIRE_DELAY_TIER_10)
+ set_fire_delay(FIRE_DELAY_TIER_1 + FIRE_DELAY_TIER_12)
lever_delay = FIRE_DELAY_TIER_3
accuracy_mult = BASE_ACCURACY_MULT + HIT_ACCURACY_MULT_TIER_5
accuracy_mult_unwielded = BASE_ACCURACY_MULT - HIT_ACCURACY_MULT_TIER_10
@@ -116,7 +116,7 @@ their unique feature is that a direct hit will buff your damage and firerate
lever_sound = lever_super_sound
lever_message = "You quickly work the [lever_name]!"
last_fired = world.time - buff_fire_reduc //to shoot the next round faster
- lever_delay = FIRE_DELAY_TIER_10
+ lever_delay = FIRE_DELAY_TIER_12
damage_mult = initial(damage_mult) + BULLET_DAMAGE_MULT_TIER_10
set_fire_delay(FIRE_DELAY_TIER_5)
for(var/slot in attachments)
@@ -392,7 +392,7 @@ their unique feature is that a direct hit will buff your damage and firerate
/obj/item/weapon/gun/lever_action/xm88/set_gun_config_values()
..()
- set_fire_delay(FIRE_DELAY_TIER_1)
+ set_fire_delay(FIRE_DELAY_TIER_2)
lever_delay = FIRE_DELAY_TIER_3
accuracy_mult = BASE_ACCURACY_MULT + HIT_ACCURACY_MULT_TIER_5
accuracy_mult_unwielded = BASE_ACCURACY_MULT - HIT_ACCURACY_MULT_TIER_10
@@ -529,7 +529,7 @@ their unique feature is that a direct hit will buff your damage and firerate
P.ammo = GLOB.ammo_list[/datum/ammo/bullet/lever_action/xm88]
floating_penetration = FLOATING_PENETRATION_TIER_0
//these are init configs and so cannot be initial()
- set_fire_delay(FIRE_DELAY_TIER_1 + FIRE_DELAY_TIER_10)
+ set_fire_delay(FIRE_DELAY_TIER_1 + FIRE_DELAY_TIER_12)
lever_delay = FIRE_DELAY_TIER_3
damage_mult = BASE_BULLET_DAMAGE_MULT
recalculate_attachment_bonuses() //stock wield delay
diff --git a/code/modules/projectiles/guns/misc.dm b/code/modules/projectiles/guns/misc.dm
index 2aa6b2dfc4d3..373587ff881a 100644
--- a/code/modules/projectiles/guns/misc.dm
+++ b/code/modules/projectiles/guns/misc.dm
@@ -24,7 +24,7 @@
/obj/item/weapon/gun/minigun/set_gun_config_values()
..()
- set_fire_delay(FIRE_DELAY_TIER_10)
+ set_fire_delay(FIRE_DELAY_TIER_12)
accuracy_mult = BASE_ACCURACY_MULT + HIT_ACCURACY_MULT_TIER_3
@@ -100,9 +100,9 @@
/obj/item/weapon/gun/m60/set_gun_config_values()
..()
- set_fire_delay(FIRE_DELAY_TIER_10)
+ set_fire_delay(FIRE_DELAY_TIER_12)
set_burst_amount(BURST_AMOUNT_TIER_5)
- set_burst_delay(FIRE_DELAY_TIER_10)
+ set_burst_delay(FIRE_DELAY_TIER_12)
accuracy_mult = BASE_ACCURACY_MULT
accuracy_mult_unwielded = BASE_ACCURACY_MULT
scatter = SCATTER_AMOUNT_TIER_10
diff --git a/code/modules/projectiles/guns/pistols.dm b/code/modules/projectiles/guns/pistols.dm
index 47b80f7b9218..e2985df6a12a 100644
--- a/code/modules/projectiles/guns/pistols.dm
+++ b/code/modules/projectiles/guns/pistols.dm
@@ -72,7 +72,7 @@
/obj/item/weapon/gun/pistol/m4a3/set_gun_config_values()
..()
- set_fire_delay(FIRE_DELAY_TIER_10)
+ set_fire_delay(FIRE_DELAY_TIER_12)
accuracy_mult = BASE_ACCURACY_MULT + HIT_ACCURACY_MULT_TIER_4
accuracy_mult_unwielded = BASE_ACCURACY_MULT
scatter = SCATTER_AMOUNT_TIER_6
@@ -93,7 +93,7 @@
/obj/item/weapon/gun/pistol/m4a3/custom/set_gun_config_values()
..()
- set_fire_delay(FIRE_DELAY_TIER_10)
+ set_fire_delay(FIRE_DELAY_TIER_12)
accuracy_mult = BASE_ACCURACY_MULT + HIT_ACCURACY_MULT_TIER_4
accuracy_mult_unwielded = BASE_ACCURACY_MULT
scatter = SCATTER_AMOUNT_TIER_6
@@ -122,7 +122,7 @@
/obj/item/weapon/gun/pistol/m1911/set_gun_config_values()
..()
- set_fire_delay(FIRE_DELAY_TIER_8)
+ set_fire_delay(FIRE_DELAY_TIER_9)
accuracy_mult = BASE_ACCURACY_MULT + HIT_ACCURACY_MULT_TIER_4
accuracy_mult_unwielded = BASE_ACCURACY_MULT
scatter = SCATTER_AMOUNT_TIER_6
@@ -140,7 +140,7 @@
/obj/item/weapon/gun/pistol/m1911/socom/set_gun_config_values()
..()
- set_fire_delay(FIRE_DELAY_TIER_8)
+ set_fire_delay(FIRE_DELAY_TIER_9)
accuracy_mult = BASE_ACCURACY_MULT + HIT_ACCURACY_MULT_TIER_4
accuracy_mult_unwielded = BASE_ACCURACY_MULT + HIT_ACCURACY_MULT_TIER_2
scatter = SCATTER_AMOUNT_TIER_8
@@ -178,7 +178,7 @@
/obj/item/weapon/gun/pistol/b92fs/set_gun_config_values()
..()
- set_fire_delay(FIRE_DELAY_TIER_10)
+ set_fire_delay(FIRE_DELAY_TIER_12)
accuracy_mult = BASE_ACCURACY_MULT + HIT_ACCURACY_MULT_TIER_5
accuracy_mult_unwielded = BASE_ACCURACY_MULT
scatter = SCATTER_AMOUNT_TIER_7
@@ -218,9 +218,9 @@
/obj/item/weapon/gun/pistol/heavy/set_gun_config_values()
..()
- set_fire_delay(FIRE_DELAY_TIER_4)
+ set_fire_delay(FIRE_DELAY_TIER_5)
set_burst_amount(BURST_AMOUNT_TIER_2)
- set_burst_delay(FIRE_DELAY_TIER_7)
+ set_burst_delay(FIRE_DELAY_TIER_8)
accuracy_mult = BASE_ACCURACY_MULT
accuracy_mult_unwielded = BASE_ACCURACY_MULT - HIT_ACCURACY_MULT_TIER_5
scatter = SCATTER_AMOUNT_TIER_6
@@ -285,7 +285,7 @@
/obj/item/weapon/gun/pistol/c99/set_gun_config_values()
..()
- set_fire_delay(FIRE_DELAY_TIER_10)
+ set_fire_delay(FIRE_DELAY_TIER_12)
accuracy_mult = BASE_ACCURACY_MULT + HIT_ACCURACY_MULT_TIER_4
accuracy_mult_unwielded = BASE_ACCURACY_MULT + HIT_ACCURACY_MULT_TIER_4
scatter = SCATTER_AMOUNT_TIER_6
@@ -337,7 +337,7 @@
/obj/item/weapon/gun/pistol/kt42/set_gun_config_values()
..()
- set_fire_delay(FIRE_DELAY_TIER_9)
+ set_fire_delay(FIRE_DELAY_TIER_11)
accuracy_mult = BASE_ACCURACY_MULT - HIT_ACCURACY_MULT_TIER_1
accuracy_mult_unwielded = BASE_ACCURACY_MULT - HIT_ACCURACY_MULT_TIER_2
scatter = SCATTER_AMOUNT_TIER_6
@@ -373,7 +373,7 @@
/obj/item/weapon/gun/pistol/holdout/set_gun_config_values()
..()
- set_fire_delay(FIRE_DELAY_TIER_9)
+ set_fire_delay(FIRE_DELAY_TIER_11)
accuracy_mult = BASE_ACCURACY_MULT
accuracy_mult_unwielded = BASE_ACCURACY_MULT
scatter = SCATTER_AMOUNT_TIER_6
@@ -410,7 +410,7 @@
/obj/item/weapon/gun/pistol/clfpistol/set_gun_config_values()
..()
- set_fire_delay(FIRE_DELAY_TIER_10)
+ set_fire_delay(FIRE_DELAY_TIER_12)
accuracy_mult = BASE_ACCURACY_MULT
accuracy_mult_unwielded = BASE_ACCURACY_MULT
scatter = SCATTER_AMOUNT_TIER_6
@@ -552,9 +552,9 @@
/obj/item/weapon/gun/pistol/mod88/set_gun_config_values()
..()
- set_fire_delay(FIRE_DELAY_TIER_9)
+ set_fire_delay(FIRE_DELAY_TIER_11)
set_burst_amount(BURST_AMOUNT_TIER_3)
- set_burst_delay(FIRE_DELAY_TIER_9)
+ set_burst_delay(FIRE_DELAY_TIER_11)
accuracy_mult = BASE_ACCURACY_MULT
accuracy_mult_unwielded = BASE_ACCURACY_MULT
scatter = SCATTER_AMOUNT_TIER_7
@@ -603,7 +603,7 @@
/obj/item/weapon/gun/pistol/es4/set_gun_config_values()
..()
- fire_delay = FIRE_DELAY_TIER_9
+ fire_delay = FIRE_DELAY_TIER_11
accuracy_mult = BASE_ACCURACY_MULT
accuracy_mult_unwielded = BASE_ACCURACY_MULT
scatter = SCATTER_AMOUNT_TIER_7
@@ -653,7 +653,7 @@
..()
set_fire_delay(FIRE_DELAY_TIER_4)
set_burst_amount(BURST_AMOUNT_TIER_3)
- set_burst_delay(FIRE_DELAY_TIER_9)
+ set_burst_delay(FIRE_DELAY_TIER_11)
accuracy_mult = BASE_ACCURACY_MULT
accuracy_mult_unwielded = BASE_ACCURACY_MULT
scatter = SCATTER_AMOUNT_TIER_6
@@ -685,7 +685,7 @@ It is a modified Beretta 93R, and can fire three-round burst or single fire. Whe
..()
set_fire_delay(FIRE_DELAY_TIER_7)
set_burst_amount(BURST_AMOUNT_TIER_3)
- set_burst_delay(FIRE_DELAY_TIER_10)
+ set_burst_delay(FIRE_DELAY_TIER_12)
accuracy_mult = BASE_ACCURACY_MULT
accuracy_mult_unwielded = BASE_ACCURACY_MULT
scatter = SCATTER_AMOUNT_TIER_6
@@ -715,8 +715,8 @@ It is a modified Beretta 93R, and can fire three-round burst or single fire. Whe
/obj/item/weapon/gun/pistol/chimp/set_gun_config_values()
..()
- set_fire_delay(FIRE_DELAY_TIER_8)
- set_burst_delay(FIRE_DELAY_TIER_9)
+ set_fire_delay(FIRE_DELAY_TIER_9)
+ set_burst_delay(FIRE_DELAY_TIER_11)
set_burst_amount(BURST_AMOUNT_TIER_2)
accuracy_mult = BASE_ACCURACY_MULT
accuracy_mult_unwielded = BASE_ACCURACY_MULT
@@ -747,9 +747,9 @@ It is a modified Beretta 93R, and can fire three-round burst or single fire. Whe
/obj/item/weapon/gun/pistol/smart/set_gun_config_values()
..()
- set_fire_delay(FIRE_DELAY_TIER_10)
+ set_fire_delay(FIRE_DELAY_TIER_12)
set_burst_amount(BURST_AMOUNT_TIER_3)
- set_burst_delay(FIRE_DELAY_TIER_9)
+ set_burst_delay(FIRE_DELAY_TIER_11)
accuracy_mult = BASE_ACCURACY_MULT
accuracy_mult_unwielded = BASE_ACCURACY_MULT
scatter = SCATTER_AMOUNT_TIER_6
@@ -796,7 +796,7 @@ It is a modified Beretta 93R, and can fire three-round burst or single fire. Whe
/obj/item/weapon/gun/pistol/skorpion/set_gun_config_values()
..()
- set_fire_delay(FIRE_DELAY_TIER_9)
+ set_fire_delay(FIRE_DELAY_TIER_11)
fa_scatter_peak = 15 //shots
fa_max_scatter = SCATTER_AMOUNT_TIER_4
diff --git a/code/modules/projectiles/guns/revolvers.dm b/code/modules/projectiles/guns/revolvers.dm
index 022a8cabd349..7a8782f34d7d 100644
--- a/code/modules/projectiles/guns/revolvers.dm
+++ b/code/modules/projectiles/guns/revolvers.dm
@@ -375,7 +375,7 @@
..()
accuracy_mult = BASE_ACCURACY_MULT + HIT_ACCURACY_MULT_TIER_4
damage_mult = BASE_BULLET_DAMAGE_MULT + BULLET_DAMAGE_MULT_TIER_2
- set_fire_delay(FIRE_DELAY_TIER_9)
+ set_fire_delay(FIRE_DELAY_TIER_11)
/obj/item/weapon/gun/revolver/m44/custom/pkd_special/k2049
name = "\improper M2049 Blaster"
@@ -414,9 +414,9 @@
..()
accuracy_mult = BASE_ACCURACY_MULT + HIT_ACCURACY_MULT_TIER_4
damage_mult = BASE_BULLET_DAMAGE_MULT + BULLET_DAMAGE_MULT_TIER_2
- set_fire_delay(FIRE_DELAY_TIER_9)
+ set_fire_delay(FIRE_DELAY_TIER_11)
set_burst_amount(BURST_AMOUNT_TIER_2)
- set_burst_delay(FIRE_DELAY_TIER_10)
+ set_burst_delay(FIRE_DELAY_TIER_12)
/obj/item/weapon/gun/revolver/m44/custom/webley //Van Bandolier's Webley.
@@ -469,7 +469,7 @@
/obj/item/weapon/gun/revolver/nagant/set_gun_config_values()
..()
- set_fire_delay(FIRE_DELAY_TIER_8)
+ set_fire_delay(FIRE_DELAY_TIER_9)
accuracy_mult = BASE_ACCURACY_MULT
scatter = SCATTER_AMOUNT_TIER_6
damage_mult = BASE_BULLET_DAMAGE_MULT + BULLET_DAMAGE_MULT_TIER_1
@@ -596,9 +596,9 @@
/obj/item/weapon/gun/revolver/mateba/set_gun_config_values()
..()
- set_fire_delay(FIRE_DELAY_TIER_2)
+ set_fire_delay(FIRE_DELAY_TIER_3)
set_burst_amount(BURST_AMOUNT_TIER_3)
- set_burst_delay(FIRE_DELAY_TIER_7)
+ set_burst_delay(FIRE_DELAY_TIER_8)
accuracy_mult = BASE_ACCURACY_MULT + HIT_ACCURACY_MULT_TIER_2
accuracy_mult_unwielded = BASE_ACCURACY_MULT - HIT_ACCURACY_MULT_TIER_5
scatter = SCATTER_AMOUNT_TIER_7
diff --git a/code/modules/projectiles/guns/rifles.dm b/code/modules/projectiles/guns/rifles.dm
index 09a0e2b683cf..18ffb082217c 100644
--- a/code/modules/projectiles/guns/rifles.dm
+++ b/code/modules/projectiles/guns/rifles.dm
@@ -20,7 +20,7 @@
..()
set_fire_delay(FIRE_DELAY_TIER_5)
set_burst_amount(BURST_AMOUNT_TIER_3)
- set_burst_delay(FIRE_DELAY_TIER_9)
+ set_burst_delay(FIRE_DELAY_TIER_11)
accuracy_mult = BASE_ACCURACY_MULT
accuracy_mult_unwielded = BASE_ACCURACY_MULT - HIT_ACCURACY_MULT_TIER_7
scatter = SCATTER_AMOUNT_TIER_6
@@ -82,9 +82,9 @@
/obj/item/weapon/gun/rifle/m41a/set_gun_config_values()
..()
- set_fire_delay(FIRE_DELAY_TIER_9)
+ set_fire_delay(FIRE_DELAY_TIER_11)
set_burst_amount(BURST_AMOUNT_TIER_3)
- set_burst_delay(FIRE_DELAY_TIER_9)
+ set_burst_delay(FIRE_DELAY_TIER_11)
accuracy_mult = BASE_ACCURACY_MULT + HIT_ACCURACY_MULT_TIER_4 + 2*HIT_ACCURACY_MULT_TIER_1
accuracy_mult_unwielded = BASE_ACCURACY_MULT - HIT_ACCURACY_MULT_TIER_7
scatter = SCATTER_AMOUNT_TIER_8
@@ -162,7 +162,7 @@
..()
set_fire_delay(FIRE_DELAY_TIER_7)
set_burst_amount(BURST_AMOUNT_TIER_3)
- set_burst_delay(FIRE_DELAY_TIER_8)
+ set_burst_delay(FIRE_DELAY_TIER_9)
accuracy_mult = BASE_ACCURACY_MULT + HIT_ACCURACY_MULT_TIER_10
accuracy_mult_unwielded = BASE_ACCURACY_MULT - HIT_ACCURACY_MULT_TIER_7
scatter = SCATTER_AMOUNT_TIER_9
@@ -232,9 +232,9 @@
/obj/item/weapon/gun/rifle/m41a/elite/set_gun_config_values()
..()
- set_fire_delay(FIRE_DELAY_TIER_9)
+ set_fire_delay(FIRE_DELAY_TIER_11)
set_burst_amount(BURST_AMOUNT_TIER_2)
- set_burst_delay(FIRE_DELAY_TIER_10)
+ set_burst_delay(FIRE_DELAY_TIER_12)
accuracy_mult = BASE_ACCURACY_MULT + HIT_ACCURACY_MULT_TIER_10
accuracy_mult_unwielded = BASE_ACCURACY_MULT - HIT_ACCURACY_MULT_TIER_4
scatter = SCATTER_AMOUNT_TIER_10
@@ -346,9 +346,9 @@
/obj/item/weapon/gun/rifle/m41a/elite/xm40/set_gun_config_values()
..()
- set_fire_delay(FIRE_DELAY_TIER_9)
+ set_fire_delay(FIRE_DELAY_TIER_11)
set_burst_amount(BURST_AMOUNT_TIER_3)
- set_burst_delay(FIRE_DELAY_TIER_10)
+ set_burst_delay(FIRE_DELAY_TIER_12)
accuracy_mult = BASE_ACCURACY_MULT + HIT_ACCURACY_MULT_TIER_10
accuracy_mult_unwielded = BASE_ACCURACY_MULT - HIT_ACCURACY_MULT_TIER_4
scatter = SCATTER_AMOUNT_TIER_10
@@ -390,9 +390,9 @@
/obj/item/weapon/gun/rifle/m41aMK1/set_gun_config_values()
..()
- set_fire_delay(FIRE_DELAY_TIER_9)
+ set_fire_delay(FIRE_DELAY_TIER_11)
set_burst_amount(BURST_AMOUNT_TIER_4)
- set_burst_delay(FIRE_DELAY_TIER_9)
+ set_burst_delay(FIRE_DELAY_TIER_11)
accuracy_mult = BASE_ACCURACY_MULT + HIT_ACCURACY_MULT_TIER_3
accuracy_mult_unwielded = BASE_ACCURACY_MULT - HIT_ACCURACY_MULT_TIER_7
scatter = SCATTER_AMOUNT_TIER_9
@@ -518,9 +518,9 @@
/obj/item/weapon/gun/rifle/m46c/set_gun_config_values()
..()
- set_fire_delay(FIRE_DELAY_TIER_8)
+ set_fire_delay(FIRE_DELAY_TIER_9)
set_burst_amount(BURST_AMOUNT_TIER_4)
- set_burst_delay(FIRE_DELAY_TIER_10)
+ set_burst_delay(FIRE_DELAY_TIER_12)
accuracy_mult = BASE_ACCURACY_MULT + HIT_ACCURACY_MULT_TIER_4
accuracy_mult_unwielded = BASE_ACCURACY_MULT - HIT_ACCURACY_MULT_TIER_8
scatter = SCATTER_AMOUNT_TIER_8
@@ -631,7 +631,7 @@
/obj/item/weapon/gun/rifle/m46c/recalculate_attachment_bonuses()
. = ..()
if(iff_enabled)
- modify_fire_delay(FIRE_DELAY_TIER_10)
+ modify_fire_delay(FIRE_DELAY_TIER_12)
remove_firemode(GUN_FIREMODE_BURSTFIRE)
else
@@ -730,7 +730,7 @@
..()
set_fire_delay(FIRE_DELAY_TIER_7)
set_burst_amount(BURST_AMOUNT_TIER_4)
- set_burst_delay(FIRE_DELAY_TIER_9)
+ set_burst_delay(FIRE_DELAY_TIER_11)
accuracy_mult = BASE_ACCURACY_MULT
accuracy_mult_unwielded = BASE_ACCURACY_MULT - HIT_ACCURACY_MULT_TIER_7
scatter = SCATTER_AMOUNT_TIER_6
@@ -801,7 +801,7 @@
/obj/item/weapon/gun/rifle/mar40/carbine/set_gun_config_values()
..()
- set_fire_delay(FIRE_DELAY_TIER_8)
+ set_fire_delay(FIRE_DELAY_TIER_9)
accuracy_mult_unwielded = BASE_ACCURACY_MULT - HIT_ACCURACY_MULT_TIER_4
damage_mult = BASE_BULLET_DAMAGE_MULT - BULLET_DAMAGE_MULT_TIER_2
scatter_unwielded = SCATTER_AMOUNT_TIER_4
@@ -847,9 +847,9 @@
/obj/item/weapon/gun/rifle/mar40/lmg/set_gun_config_values()
..()
- set_fire_delay(FIRE_DELAY_TIER_8)
+ set_fire_delay(FIRE_DELAY_TIER_9)
set_burst_amount(BURST_AMOUNT_TIER_5)
- set_burst_delay(FIRE_DELAY_TIER_9)
+ set_burst_delay(FIRE_DELAY_TIER_11)
accuracy_mult = BASE_ACCURACY_MULT
accuracy_mult_unwielded = BASE_ACCURACY_MULT - HIT_ACCURACY_MULT_TIER_7
scatter = SCATTER_AMOUNT_TIER_6
@@ -940,9 +940,9 @@
/obj/item/weapon/gun/rifle/m16/set_gun_config_values()
..()
- set_fire_delay(FIRE_DELAY_TIER_9)
+ set_fire_delay(FIRE_DELAY_TIER_11)
set_burst_amount(BURST_AMOUNT_TIER_3)
- set_burst_delay(FIRE_DELAY_TIER_9)
+ set_burst_delay(FIRE_DELAY_TIER_11)
accuracy_mult = BASE_ACCURACY_MULT + HIT_ACCURACY_MULT_TIER_7
accuracy_mult_unwielded = BASE_ACCURACY_MULT - HIT_ACCURACY_MULT_TIER_7
scatter = SCATTER_AMOUNT_TIER_10
@@ -1303,9 +1303,9 @@
/obj/item/weapon/gun/rifle/type71/set_gun_config_values()
..()
- set_fire_delay(FIRE_DELAY_TIER_9)
+ set_fire_delay(FIRE_DELAY_TIER_11)
set_burst_amount(BURST_AMOUNT_TIER_4)
- set_burst_delay(FIRE_DELAY_TIER_8)
+ set_burst_delay(FIRE_DELAY_TIER_9)
accuracy_mult = BASE_ACCURACY_MULT + HIT_ACCURACY_MULT_TIER_4
accuracy_mult_unwielded = BASE_ACCURACY_MULT - HIT_ACCURACY_MULT_TIER_7
scatter = SCATTER_AMOUNT_TIER_6
@@ -1418,7 +1418,7 @@
/obj/item/weapon/gun/rifle/type71/carbine/set_gun_config_values()
..()
- set_fire_delay(FIRE_DELAY_TIER_9)
+ set_fire_delay(FIRE_DELAY_TIER_11)
damage_mult = BASE_BULLET_DAMAGE_MULT - BULLET_DAMAGE_MULT_TIER_2
scatter_unwielded = SCATTER_AMOUNT_TIER_5
recoil_unwielded = RECOIL_AMOUNT_TIER_4
@@ -1483,8 +1483,8 @@
..()
accuracy_mult = BASE_ACCURACY_MULT + HIT_ACCURACY_MULT_TIER_7
accuracy_mult_unwielded = BASE_ACCURACY_MULT - HIT_ACCURACY_MULT_TIER_4
- set_fire_delay(FIRE_DELAY_TIER_9)
- set_burst_delay(FIRE_DELAY_TIER_10)
+ set_fire_delay(FIRE_DELAY_TIER_11)
+ set_burst_delay(FIRE_DELAY_TIER_12)
scatter = SCATTER_AMOUNT_TIER_8
//-------------------------------------------------------
@@ -1530,7 +1530,7 @@
/obj/item/weapon/gun/rifle/m4ra/set_gun_config_values()
..()
- set_fire_delay(FIRE_DELAY_TIER_8)
+ set_fire_delay(FIRE_DELAY_TIER_9)
set_burst_amount(0)
accuracy_mult = BASE_ACCURACY_MULT + HIT_ACCURACY_MULT_TIER_5
accuracy_mult_unwielded = BASE_ACCURACY_MULT - HIT_ACCURACY_MULT_TIER_4
@@ -1594,7 +1594,7 @@
/obj/item/weapon/gun/rifle/l42a/set_gun_config_values()
..()
- set_fire_delay(FIRE_DELAY_TIER_8)
+ set_fire_delay(FIRE_DELAY_TIER_9)
set_burst_amount(0)
accuracy_mult = BASE_ACCURACY_MULT + HIT_ACCURACY_MULT_TIER_5
accuracy_mult_unwielded = BASE_ACCURACY_MULT - HIT_ACCURACY_MULT_TIER_4
diff --git a/code/modules/projectiles/guns/shotguns.dm b/code/modules/projectiles/guns/shotguns.dm
index 8903be95db95..a154062c9d10 100644
--- a/code/modules/projectiles/guns/shotguns.dm
+++ b/code/modules/projectiles/guns/shotguns.dm
@@ -201,7 +201,7 @@ can cause issues with ammo types getting mixed up during the burst.
..()
set_fire_delay(FIRE_DELAY_TIER_6*2)
set_burst_amount(BURST_AMOUNT_TIER_2)
- set_burst_delay(FIRE_DELAY_TIER_9)
+ set_burst_delay(FIRE_DELAY_TIER_11)
accuracy_mult = BASE_ACCURACY_MULT - HIT_ACCURACY_MULT_TIER_4
accuracy_mult_unwielded = BASE_ACCURACY_MULT - HIT_ACCURACY_MULT_TIER_10
scatter = SCATTER_AMOUNT_TIER_6
@@ -522,7 +522,7 @@ can cause issues with ammo types getting mixed up during the burst.
/obj/item/weapon/gun/shotgun/double/set_gun_config_values()
..()
set_burst_amount(BURST_AMOUNT_TIER_2)
- set_fire_delay(FIRE_DELAY_TIER_9)
+ set_fire_delay(FIRE_DELAY_TIER_11)
accuracy_mult = BASE_ACCURACY_MULT + HIT_ACCURACY_MULT_TIER_3
accuracy_mult_unwielded = BASE_ACCURACY_MULT - HIT_ACCURACY_MULT_TIER_10
scatter = SCATTER_AMOUNT_TIER_6
@@ -655,7 +655,7 @@ can cause issues with ammo types getting mixed up during the burst.
/obj/item/weapon/gun/shotgun/double/sawn/set_gun_config_values()
..()
- set_fire_delay(FIRE_DELAY_TIER_9)
+ set_fire_delay(FIRE_DELAY_TIER_11)
accuracy_mult = BASE_ACCURACY_MULT + HIT_ACCURACY_MULT_TIER_3 - HIT_ACCURACY_MULT_TIER_5
accuracy_mult_unwielded = BASE_ACCURACY_MULT - HIT_ACCURACY_MULT_TIER_10
scatter = SCATTER_AMOUNT_TIER_6
@@ -789,7 +789,7 @@ can cause issues with ammo types getting mixed up during the burst.
/obj/item/weapon/gun/shotgun/double/mou53/set_gun_config_values()
..()
set_burst_amount(BURST_AMOUNT_TIER_1)
- set_fire_delay(FIRE_DELAY_TIER_8)
+ set_fire_delay(FIRE_DELAY_TIER_11)
accuracy_mult = BASE_ACCURACY_MULT
accuracy_mult_unwielded = BASE_ACCURACY_MULT - HIT_ACCURACY_MULT_TIER_10
scatter = SCATTER_AMOUNT_TIER_10
@@ -1101,7 +1101,7 @@ can cause issues with ammo types getting mixed up during the burst.
/obj/item/weapon/gun/shotgun/pump/Initialize(mapload, spawn_empty)
. = ..()
- pump_delay = FIRE_DELAY_TIER_4*2
+ pump_delay = FIRE_DELAY_TIER_5*2
additional_fire_group_delay += pump_delay
@@ -1112,7 +1112,7 @@ can cause issues with ammo types getting mixed up during the burst.
/obj/item/weapon/gun/shotgun/pump/set_gun_config_values()
..()
set_burst_amount(BURST_AMOUNT_TIER_1)
- set_fire_delay(FIRE_DELAY_TIER_7 * 5)
+ set_fire_delay(FIRE_DELAY_TIER_7 * 4)
accuracy_mult = BASE_ACCURACY_MULT + HIT_ACCURACY_MULT_TIER_3
accuracy_mult_unwielded = BASE_ACCURACY_MULT - HIT_ACCURACY_MULT_TIER_10
scatter = SCATTER_AMOUNT_TIER_6
diff --git a/code/modules/projectiles/guns/smartgun.dm b/code/modules/projectiles/guns/smartgun.dm
index 859f99b17908..2a88c9766ed8 100644
--- a/code/modules/projectiles/guns/smartgun.dm
+++ b/code/modules/projectiles/guns/smartgun.dm
@@ -687,11 +687,11 @@
/obj/item/weapon/gun/smartgun/dirty/elite/set_gun_config_values()
..()
set_burst_amount(BURST_AMOUNT_TIER_5)
- set_burst_delay(FIRE_DELAY_TIER_10)
+ set_burst_delay(FIRE_DELAY_TIER_12)
if(!recoil_compensation)
scatter = SCATTER_AMOUNT_TIER_8
burst_scatter_mult = SCATTER_AMOUNT_TIER_10
- set_fire_delay(FIRE_DELAY_TIER_10)
+ set_fire_delay(FIRE_DELAY_TIER_12)
fa_scatter_peak = FULL_AUTO_SCATTER_PEAK_TIER_10
fa_max_scatter = SCATTER_AMOUNT_NONE
diff --git a/code/modules/projectiles/guns/smgs.dm b/code/modules/projectiles/guns/smgs.dm
index 699f05ed318c..70b0acb3f2c8 100644
--- a/code/modules/projectiles/guns/smgs.dm
+++ b/code/modules/projectiles/guns/smgs.dm
@@ -176,7 +176,7 @@
/obj/item/weapon/gun/smg/mp5/set_gun_config_values()
..()
- set_fire_delay(FIRE_DELAY_TIER_9)
+ set_fire_delay(FIRE_DELAY_TIER_11)
set_burst_delay(FIRE_DELAY_TIER_SMG)
set_burst_amount(BURST_AMOUNT_TIER_3)
@@ -371,7 +371,7 @@
fa_scatter_peak = FULL_AUTO_SCATTER_PEAK_TIER_7
fa_max_scatter = SCATTER_AMOUNT_TIER_3
- set_fire_delay(FIRE_DELAY_TIER_10)
+ set_fire_delay(FIRE_DELAY_TIER_12)
accuracy_mult = BASE_ACCURACY_MULT
scatter = SCATTER_AMOUNT_TIER_5
burst_scatter_mult = SCATTER_AMOUNT_TIER_8
@@ -421,7 +421,7 @@
fa_scatter_peak = FULL_AUTO_SCATTER_PEAK_TIER_5
fa_max_scatter = SCATTER_AMOUNT_TIER_5
- set_fire_delay(FIRE_DELAY_TIER_9)
+ set_fire_delay(FIRE_DELAY_TIER_11)
accuracy_mult = BASE_ACCURACY_MULT + HIT_ACCURACY_MULT_TIER_2
accuracy_mult_unwielded = BASE_ACCURACY_MULT - HIT_ACCURACY_MULT_TIER_2
scatter = SCATTER_AMOUNT_TIER_6
@@ -572,7 +572,7 @@
/obj/item/weapon/gun/smg/nailgun/set_gun_config_values()
..()
- set_fire_delay(FIRE_DELAY_TIER_9)
+ set_fire_delay(FIRE_DELAY_TIER_11)
accuracy_mult = BASE_ACCURACY_MULT + HIT_ACCURACY_MULT_TIER_5
accuracy_mult_unwielded = BASE_ACCURACY_MULT + HIT_ACCURACY_MULT_TIER_4
diff --git a/code/modules/projectiles/guns/specialist.dm b/code/modules/projectiles/guns/specialist.dm
index 66456f4e21fc..184c0ed38266 100644
--- a/code/modules/projectiles/guns/specialist.dm
+++ b/code/modules/projectiles/guns/specialist.dm
@@ -321,7 +321,7 @@
/obj/item/weapon/gun/rifle/sniper/M42A/set_gun_config_values()
..()
- set_fire_delay(FIRE_DELAY_TIER_6*3)
+ set_fire_delay(FIRE_DELAY_TIER_7*3)
set_burst_amount(BURST_AMOUNT_TIER_1)
accuracy_mult = BASE_ACCURACY_MULT * 3 //you HAVE to be able to hit
scatter = SCATTER_AMOUNT_TIER_8
@@ -509,7 +509,7 @@
..()
set_fire_delay(FIRE_DELAY_TIER_6)
set_burst_amount(BURST_AMOUNT_TIER_2)
- set_burst_delay(FIRE_DELAY_TIER_9)
+ set_burst_delay(FIRE_DELAY_TIER_11)
accuracy_mult = BASE_ACCURACY_MULT
scatter = SCATTER_AMOUNT_TIER_8
burst_scatter_mult = SCATTER_AMOUNT_TIER_6
@@ -586,7 +586,7 @@
..()
set_fire_delay(FIRE_DELAY_TIER_6)
set_burst_amount(BURST_AMOUNT_TIER_2)
- set_burst_delay(FIRE_DELAY_TIER_10)
+ set_burst_delay(FIRE_DELAY_TIER_12)
accuracy_mult = BASE_ACCURACY_MULT + HIT_ACCURACY_MULT_TIER_2
scatter = SCATTER_AMOUNT_TIER_8
burst_scatter_mult = SCATTER_AMOUNT_TIER_8
@@ -1373,7 +1373,7 @@
/obj/item/weapon/gun/flare/set_gun_config_values()
..()
- set_fire_delay(FIRE_DELAY_TIER_10)
+ set_fire_delay(FIRE_DELAY_TIER_12)
accuracy_mult = BASE_ACCURACY_MULT
accuracy_mult_unwielded = BASE_ACCURACY_MULT - HIT_ACCURACY_MULT_TIER_10
scatter = 0
diff --git a/code/modules/shuttle/shuttles/escape_shuttle.dm b/code/modules/shuttle/shuttles/escape_shuttle.dm
index 859aa45aceb3..daf91034036f 100644
--- a/code/modules/shuttle/shuttles/escape_shuttle.dm
+++ b/code/modules/shuttle/shuttles/escape_shuttle.dm
@@ -8,9 +8,12 @@
rechargeTime = SHUTTLE_RECHARGE
ignitionTime = 8 SECONDS
ignition_sound = 'sound/effects/escape_pod_warmup.ogg'
- /// The % chance of the escape pod crashing into the groundmap
+ /// The % chance of the escape pod crashing into the groundmap before lifeboats leaving
var/early_crash_land_chance = 75
+ /// The % chance of the escape pod crashing into the groundmap
var/crash_land_chance = 25
+ /// How many people can be in the escape pod before it crashes
+ var/max_capacity = 3
var/datum/door_controller/single/door_handler = new()
var/launched = FALSE
@@ -71,7 +74,7 @@
occupant_count++
for(var/obj/structure/machinery/cryopod/evacuation/cryotube in interior_area)
cryos += list(cryotube)
- if (occupant_count > 3)
+ if (occupant_count > max_capacity)
playsound(src,'sound/effects/escape_pod_warmup.ogg', 50, 1)
sleep(31)
var/turf/sploded = return_center_turf()
diff --git a/code/modules/unit_tests/_unit_tests.dm b/code/modules/unit_tests/_unit_tests.dm
index 7e620b6bc1fa..9ed3183e5b3d 100644
--- a/code/modules/unit_tests/_unit_tests.dm
+++ b/code/modules/unit_tests/_unit_tests.dm
@@ -74,6 +74,7 @@
/// A trait source when adding traits through unit tests
#define TRAIT_SOURCE_UNIT_TESTS "unit_tests"
+#include "autowiki.dm"
#include "create_and_destroy.dm"
#include "focus_only_tests.dm"
#include "missing_icons.dm"
diff --git a/code/modules/unit_tests/autowiki.dm b/code/modules/unit_tests/autowiki.dm
new file mode 100644
index 000000000000..65ec2e228dd2
--- /dev/null
+++ b/code/modules/unit_tests/autowiki.dm
@@ -0,0 +1,35 @@
+/// Tests that all autowikis generate something without runtiming
+/datum/unit_test/autowiki
+
+/datum/unit_test/autowiki/Run()
+ TEST_ASSERT(istext(generate_autowiki_output()), "generate_autowiki_output() did not finish successfully!")
+
+/// Test that `include_template` produces reasonable results
+/datum/unit_test/autowiki_include_template
+
+/datum/unit_test/autowiki_include_template/Run()
+ var/datum/autowiki/autowiki_api = new
+
+ TEST_ASSERT_EQUAL( \
+ autowiki_api.include_template("Template"), \
+ "{{Template}}", \
+ "Basic template did not format correctly" \
+ )
+
+ TEST_ASSERT_EQUAL( \
+ autowiki_api.include_template("Template", list("name" = "Mothblocks")), \
+ "{{Template|name=Mothblocks}}", \
+ "Template with basic arguments did not format correctly" \
+ )
+
+ TEST_ASSERT_EQUAL( \
+ autowiki_api.include_template("Template", list("name" = autowiki_api.escape_value("P|peline"))), \
+ "{{Template|name=P{{!}}peline}}", \
+ "Template with escaped arguments did not format correctly" \
+ )
+
+ TEST_ASSERT_EQUAL( \
+ autowiki_api.include_template("Template", list("food" = list("fruit", "candy"))), \
+ "{{Template|food1=fruit|food2=candy}}", \
+ "Template with array arguments did not format correctly" \
+ )
diff --git a/code/span_macros.dm b/code/span_macros.dm
index 1eca82ea563f..77e57f2077a0 100644
--- a/code/span_macros.dm
+++ b/code/span_macros.dm
@@ -46,6 +46,7 @@
#define SPAN_ADMIN(X) "[X]"
#define SPAN_ADMINHELP(X) ("" + X + "")
#define SPAN_ADMINSAY(str) ("" + str + "")
+#define SPAN_MOD(str) ("" + str + "")
#define SPAN_MENTORHELP(X) ("" + X + "")
#define SPAN_MENTORSAY(X) ("" + X + "")
#define SPAN_MENTORBODY(X) ("" + X + "")
diff --git a/colonialmarines.dme b/colonialmarines.dme
index 2b3b08984dfa..42e7880bd313 100644
--- a/colonialmarines.dme
+++ b/colonialmarines.dme
@@ -704,6 +704,7 @@
#include "code\game\jobs\job\civilians\support\synthetic.dm"
#include "code\game\jobs\job\civilians\support\working_joe.dm"
#include "code\game\jobs\job\command\command.dm"
+#include "code\game\jobs\job\command\auxiliary\auxiliary_support_officer.dm"
#include "code\game\jobs\job\command\auxiliary\crew_chief.dm"
#include "code\game\jobs\job\command\auxiliary\intel.dm"
#include "code\game\jobs\job\command\auxiliary\pilot.dm"
@@ -1399,6 +1400,9 @@
#include "code\modules\asset_cache\assets\vending.dm"
#include "code\modules\asset_cache\transports\asset_transport.dm"
#include "code\modules\asset_cache\transports\webroot_transport.dm"
+#include "code\modules\autowiki\autowiki.dm"
+#include "code\modules\autowiki\pages\_page.dm"
+#include "code\modules\autowiki\pages\guns.dm"
#include "code\modules\buildmode\bm-mode.dm"
#include "code\modules\buildmode\buildmode.dm"
#include "code\modules\buildmode\buttons.dm"
diff --git a/config/example/config.txt b/config/example/config.txt
index 1fee5c898574..181e10e8e150 100644
--- a/config/example/config.txt
+++ b/config/example/config.txt
@@ -131,7 +131,7 @@ GUEST_BAN
FORUMURL https://forum.cm-ss13.com/
## Wiki address
-WIKIURL https://cm-ss13/wiki/
+WIKIURL https://cm-ss13.com/w
## Rules address
RULESURL https://cm-ss13.com/viewtopic.php?f=57&t=5094
diff --git a/html/browser/common.css b/html/browser/common.css
index fa8687d1f592..bb2bdd32e3e6 100644
--- a/html/browser/common.css
+++ b/html/browser/common.css
@@ -467,7 +467,7 @@ a.purple:hover {
background-color: #e6b800;
}
-.job_ro {
+.job_qm {
background-color: #8378a1;
}
diff --git a/html/browser/legacy.css b/html/browser/legacy.css
index 47d0f2bb46cd..cd8999e88862 100644
--- a/html/browser/legacy.css
+++ b/html/browser/legacy.css
@@ -181,7 +181,7 @@ a.purple {
background-color: #ffeeaa;
}
-.job_ro {
+.job_qm {
background-color: #9990B2;
}
diff --git a/html/changelogs/archive/2023-08.yml b/html/changelogs/archive/2023-08.yml
index b732c81ccdb9..6e252ade22b8 100644
--- a/html/changelogs/archive/2023-08.yml
+++ b/html/changelogs/archive/2023-08.yml
@@ -93,3 +93,193 @@
verb)
Steelpoint:
- bugfix: EMT/White-Green armband now has a sprite
+2023-08-07:
+ Huffie56:
+ - maptweak: changing an area so it stop snowing inside walls.
+2023-08-08:
+ HeresKozmos:
+ - maptweak: Added non-alcoholic drinks dispenser, space cleaner bottle and a regular
+ medkit to the storage closet. Deleted old toxin medkit in the storage closet
+ Morrow, Thwomper:
+ - rscadd: Added Auxiliary Support Officer
+ - rscadd: Auxiliary Support Officer oversees the hangar, the intel team, the engineering
+ department, and the requisitions department
+ - rscadd: Chief Engineer has been demoted to O1.
+ - rscadd: Requisitions Officer is now "Quartermaster" and a Gunnery Sergeant.
+ Segrain:
+ - bugfix: Non-UPP synthetics no longer default to speaking Russian.
+2023-08-09:
+ BeagleGaming1:
+ - code_imp: occupant limit of evacuation pods changed to a variable
+ Drathek:
+ - bugfix: Fix new map dropship areas not getting changes to dropship ceilings that
+ prevents OBs
+ Megastar1234:
+ - rscadd: Adds reagent scanner goggles to CMO vendor
+ - rscadd: Gives CMO headset intel radio
+ Morrow:
+ - rscadd: Scan health now only works when non-revivable
+ - rscadd: Xenos with less than 10 hours on xeno now have the "Young" prefix
+ - rscadd: Young Queen has been renamed to Growing Queen
+ - balance: Removed the barrel charger from vendors
+ - balance: Removed all benefits other than wield delay mod from the angled grip
+ - balance: Added wield delay to extended barrel
+ Morrow, Sleepynecrons (beautiful sprites):
+ - rscadd: Xenos can now capture comms relays for bonuses after 90 minutes into the
+ round.
+ Steelpoint:
+ - balance: Yautja's Plasma Rifle has been rebalanced to make it a more effective
+ assault weapon against xenomorphs. It has lost its mini-high explosive fire
+ mode but its default fire mode now mostly ignores xenomorph armor.
+ blackdragonTOW:
+ - ui: Hardcore deaths are now marked with a unique red skull
+ - imageadd: Red skull added for hardcore deaths
+ morrowwolf:
+ - rscadd: Added basic IB surgery instructions to surgical case
+ realforest2001:
+ - rscadd: Changed 'Growing Queen' to 'Immature Queen'
+ - bugfix: Updated playerpanel transform Queen button title.
+ thwomper, Steelpoint:
+ - rscadd: Toolkits have been added to the game. Holds engineering supplies akin
+ to a medkit. Issued freely to ComTechs and Engineers, can be bought by the USCM
+ Synthetic for cheap.
+2023-08-10:
+ Drathek:
+ - bugfix: Fixed unnested mobs sometimes having incorrect density allowing xenos
+ to push them
+ Huffie56:
+ - rscadd: Add a skill check to operate IV.
+ - bugfix: Fix remove iv needing power to operate.
+ - rscadd: Update the MP and Warden vendor to fallow more the standard of the rifleman
+ vendor.
+ - rscadd: change the selection of the handgun from a full belt to a handgun case(3magazin,one
+ railgunlight and the gun.).
+ Morrow:
+ - balance: 'Across the board firerate nerfs with the exceptions of: M37 shotgun,
+ M240 Flamer, M42A Scope Rifle, XM88, Mateba, Desert Eagle'
+ - balance: Folded etools are now small items
+ Steelpoint:
+ - rscadd: The SMG belt has been changed. It now holds a SMG plus two extra magazines,
+ plus it can fit in either the belt or armour slot.
+ Tallfission:
+ - rscadd: Vehicles skill for Commanding Officer, Executive Officer, and Auxiliary
+ Support Officer jobs
+ Zonespace27:
+ - rscadd: Combisticks now use a proper chain instead of an invisible magic one.
+2023-08-11:
+ Drathek:
+ - bugfix: Fixed runtimes with hijack not calculating roles correctly for hijack
+ larva surge
+ - bugfix: Fix IV Drip machines not displaying the IV line correctly when adding/removing
+ a bag when already attached
+ - code_imp: Fixes a lingering reference to the mob when a IV drip machine is destroyed.
+ Zonespace27:
+ - bugfix: A pile of guns no longer have burst fire (who weren't meant to)
+ - bugfix: The combichain can now be yanked back if droppeed.
+2023-08-12:
+ BeagleGaming1:
+ - balance: Defibrillators are guaranteed to deal heart damage on successful revives
+ - balance: Blood volume now scales with heart damage rather than being a hardcoded
+ multiplier
+ - balance: Blood volume oxyloss now scales rather than being a hardcoded loss amount
+ Huffie56:
+ - code_imp: added welding google to the com tech tool vendor.
+ - code_imp: added scaling based on round population to the ColMarTech Surplus Uniform
+ like the other vendors.
+ - code_imp: Move every clothing items from ColMarTech Automated Armaments Squad
+ Vendor to ColMarTech Surplus Uniform Vendor.
+ - code_imp: rename ColMarTech Automated Armaments Squad Vendor to ColMarTech Automated
+ Utilities Squad Vendor and add in tools food and other utilities.
+ Steelpoint:
+ - bugfix: Synthetic Breaching Hammer will now properly appear on the user's back
+ when holstered.
+2023-08-13:
+ Huffie56:
+ - spellcheck: fix typo mistake from matchs to matches.
+ Morrow:
+ - rscadd: At end of round it now shows a Queen's prefix/postfix rather than their
+ ckey
+ blackdragonTOW:
+ - admin: Adjustment of ASay color
+ ihatethisengine:
+ - rscadd: All hive's alliances break on Queen's death.
+ - qol: If a hive breaks an alliance with another, the second hive also breaks the
+ alliance.
+ - bugfix: xeno_message no longer sends the message to allied hives
+ mothblocks, harry:
+ - rscadd: added the backend functionality for autowiki, alongside automating much
+ of the work of maintaining guns on the wiki
+ realforest2001:
+ - bugfix: Picking up a Yautja mask now correctly checks for bracers to apply the
+ visor.
+ - rscadd: Added backend for species datums to hold inherent vision flags.
+ - rscadd: Added proc for Yautja mask to pass power drain back to bracers. Added
+ small power drain on use of mask visor.
+ - rscadd: Added natural thermal vision and very weak night vision to Yautja species,
+ to fit with our wiki lore.
+ - rscdel: Removed Thermal and Meson visors from Yautja mask.
+ - bugfix: Squad Specialists can no longer bypass restrictions by not selecting a
+ kit to use.
+2023-08-14:
+ Morrow:
+ - rscadd: Rounded oxyloss from bloodloss
+ SpartanBobby:
+ - maptweak: Fixes use of wrong areas inside LV522 reactor
+2023-08-15:
+ Drathek:
+ - rscadd: Queen jellies now use designation rather than ckey for attribution
+ - bugfix: Random facts now only check players.
+ Huffie56:
+ - bugfix: spraying with the hose will no cost 5u of water while spaying 5u of water.
+ - bugfix: fixed the verb to take out the hose.
+ - bugfix: remove the option to change the output as it was confusing for people.
+ MikeKuwait:
+ - bugfix: The plant dies if no nutriment is available
+ realforest2001:
+ - rscadd: Added a proc to calculate item strip delay, taking into account the target's
+ skills and adding 0.5s per level in Policing and CQC.
+ - rscadd: Added an unstrippable mob trait to prevent inventory manipulation. Gave
+ this trait to Working Joes.
+2023-08-17:
+ realforest2001:
+ - bugfix: Players joining as Working Joe after round start now spawn in correct
+ place.
+2023-08-18:
+ Ben10083:
+ - bugfix: Prompt allowing staff to call for ERT with an announcement fixed to actually
+ appear
+ - ui: Prompts for admin-calling ERT converted to TGUI.
+ - maptweak: Combat Information Center pens now use black ink
+ - balance: Zombie attacks deal less damage and only slow down targets (not superslow
+ as they currently do)
+ - balance: Zombie resistances have been reduced heavily, making them far more susceptible
+ to brute damage. Their speed has been doubled to compensate
+ - balance: Black goo on tiles now requires you to not wear shoes to have chance
+ for infection
+ - bugfix: Zombie attacks now only apply effects such as slow and infection if the
+ attack is valid (if the zombie is able to attack)
+ SpartanBobby gdifirehawk:
+ - rscadd: Subtype of tunnel added "Maintenance Tunnel" currently only on LV522 these
+ tunnels act the same as regular tunnels but look different, keep an eye out
+ marines. Description by GDIFIREHAWK
+ ihatethisengine:
+ - rscadd: foxtrot cryomarines spawn as freed mobs if not taken.
+ realforest2001:
+ - rscadd: Added prefixes in OOC for Staff and Mentors. Created a proc to check for
+ these prefixes and Donator.
+ - bugfix: Fixed isCouncil check.
+ spartanbobby:
+ - maptweak: Replaces some cave walls on LV624 with junglewalls (nothing will change
+ gameplay wise)
+ - maptweak: Adds bin to Research Chem/Req room and moves item blocking pillbox
+2023-08-19:
+ Drathek:
+ - bugfix: Fixed mapped in maps for solaris ridge not opening correctly.
+ - refactor: Refactored current_map to use a global list instead to remove the need
+ for duplicate definitions.
+ - ui: Fix Hotkeys TGUI lag and the inability to map Ctrl + R. Also now offers a
+ little bit more time to map combinations of keys.
+2023-08-20:
+ Huffie56:
+ - bugfix: prevent belt flare being filled by dump in action leaving no space for
+ flare gun.
diff --git a/icons/mob/hud/hud.dmi b/icons/mob/hud/hud.dmi
index f8ea98d01e53..c9e4c0c6c23d 100644
Binary files a/icons/mob/hud/hud.dmi and b/icons/mob/hud/hud.dmi differ
diff --git a/icons/mob/hud/marine_hud.dmi b/icons/mob/hud/marine_hud.dmi
index 32c1d71e68cb..05390b270254 100644
Binary files a/icons/mob/hud/marine_hud.dmi and b/icons/mob/hud/marine_hud.dmi differ
diff --git a/icons/mob/hud/sec_hud.dmi b/icons/mob/hud/sec_hud.dmi
index 9c1c4052caaf..9cc3e66c3e0b 100644
Binary files a/icons/mob/hud/sec_hud.dmi and b/icons/mob/hud/sec_hud.dmi differ
diff --git a/icons/mob/humans/onmob/back.dmi b/icons/mob/humans/onmob/back.dmi
index 4689fd35ab50..969016a4a4e5 100644
Binary files a/icons/mob/humans/onmob/back.dmi and b/icons/mob/humans/onmob/back.dmi differ
diff --git a/icons/mob/humans/onmob/hunter/items_lefthand.dmi b/icons/mob/humans/onmob/hunter/items_lefthand.dmi
index f3379c469113..91aa364340cb 100644
Binary files a/icons/mob/humans/onmob/hunter/items_lefthand.dmi and b/icons/mob/humans/onmob/hunter/items_lefthand.dmi differ
diff --git a/icons/mob/humans/onmob/hunter/items_righthand.dmi b/icons/mob/humans/onmob/hunter/items_righthand.dmi
index fbca4cfed5bb..8ec0871464c5 100644
Binary files a/icons/mob/humans/onmob/hunter/items_righthand.dmi and b/icons/mob/humans/onmob/hunter/items_righthand.dmi differ
diff --git a/icons/mob/humans/onmob/suit_1.dmi b/icons/mob/humans/onmob/suit_1.dmi
index f0daf54e7ac9..19f2a2f6f68b 100644
Binary files a/icons/mob/humans/onmob/suit_1.dmi and b/icons/mob/humans/onmob/suit_1.dmi differ
diff --git a/icons/obj/items/clothing/belts.dmi b/icons/obj/items/clothing/belts.dmi
index 381dcbe9687a..e561b5f84548 100644
Binary files a/icons/obj/items/clothing/belts.dmi and b/icons/obj/items/clothing/belts.dmi differ
diff --git a/icons/obj/items/clothing/cm_suits.dmi b/icons/obj/items/clothing/cm_suits.dmi
index 3a2ba038bef4..232e74695a1b 100644
Binary files a/icons/obj/items/clothing/cm_suits.dmi and b/icons/obj/items/clothing/cm_suits.dmi differ
diff --git a/icons/obj/items/storage.dmi b/icons/obj/items/storage.dmi
index 2d0c1f5928df..310bee26b9e9 100644
Binary files a/icons/obj/items/storage.dmi and b/icons/obj/items/storage.dmi differ
diff --git a/icons/obj/structures/machinery/comm_tower3.dmi b/icons/obj/structures/machinery/comm_tower3.dmi
index 931d6f77514a..8a5aa1f68fe3 100644
Binary files a/icons/obj/structures/machinery/comm_tower3.dmi and b/icons/obj/structures/machinery/comm_tower3.dmi differ
diff --git a/icons/ooc.dmi b/icons/ooc.dmi
new file mode 100644
index 000000000000..8b15b1e49239
Binary files /dev/null and b/icons/ooc.dmi differ
diff --git a/maps/map_files/LV522_Chances_Claim/LV522_Chances_Claim.dmm b/maps/map_files/LV522_Chances_Claim/LV522_Chances_Claim.dmm
index a961b1aa6ddb..f8b678e825dd 100644
--- a/maps/map_files/LV522_Chances_Claim/LV522_Chances_Claim.dmm
+++ b/maps/map_files/LV522_Chances_Claim/LV522_Chances_Claim.dmm
@@ -9673,13 +9673,12 @@
/turf/closed/wall/mineral/bone_resin,
/area/lv522/oob)
"evu" = (
-/obj/structure/prop/maintenance_hatch{
+/obj/structure/tunnel/maint_tunnel{
pixel_y = 6
},
/obj/structure/machinery/light/small{
dir = 1
},
-/obj/structure/barricade/handrail,
/turf/open/floor/plating,
/area/lv522/landing_zone_1/tunnel)
"evv" = (
@@ -9814,13 +9813,10 @@
},
/area/lv522/atmos/east_reactor)
"exQ" = (
-/obj/structure/prop/maintenance_hatch{
- pixel_y = 6
- },
/obj/structure/machinery/light/small{
dir = 1
},
-/obj/structure/barricade/handrail,
+/obj/structure/largecrate,
/obj/effect/landmark/lv624/fog_blocker/short,
/turf/open/floor/plating,
/area/lv522/landing_zone_1/tunnel)
@@ -14472,7 +14468,7 @@
/turf/open/floor/plating,
/area/lv522/landing_zone_1/tunnel)
"gul" = (
-/obj/structure/prop/maintenance_hatch{
+/obj/structure/tunnel/maint_tunnel{
pixel_y = 6
},
/turf/open/floor/prison{
@@ -20477,14 +20473,10 @@
},
/area/lv522/landing_zone_2)
"iGD" = (
-/obj/structure/prop/maintenance_hatch{
+/obj/structure/tunnel/maint_tunnel{
pixel_y = 6
},
/obj/structure/machinery/light/small,
-/obj/structure/barricade/handrail{
- dir = 1;
- pixel_y = 9
- },
/turf/open/floor/plating,
/area/lv522/landing_zone_1/tunnel)
"iGF" = (
@@ -23654,9 +23646,6 @@
icon_state = "brown"
},
/area/lv522/atmos/reactor_garage)
-"jMN" = (
-/turf/open/floor/corsat,
-/area/lv522/oob)
"jMZ" = (
/obj/structure/surface/table/almayer,
/obj/item/tool/pen/blue/clicky{
@@ -24211,7 +24200,7 @@
/turf/open/floor/corsat,
/area/lv522/atmos/east_reactor)
"jYp" = (
-/obj/structure/prop/maintenance_hatch{
+/obj/structure/tunnel/maint_tunnel{
pixel_y = 6
},
/turf/open/floor/prison{
@@ -29360,7 +29349,7 @@
"lTi" = (
/obj/structure/girder,
/turf/open/floor/corsat,
-/area/lv522/oob)
+/area/lv522/atmos/east_reactor/south)
"lTj" = (
/obj/structure/prop/invuln/minecart_tracks,
/obj/structure/prop/invuln/minecart_tracks{
@@ -29877,10 +29866,6 @@
},
/turf/open/floor/plating/plating_catwalk/prison,
/area/lv522/atmos/filt)
-"mdZ" = (
-/obj/structure/window/framed/corsat,
-/turf/open/floor/corsat,
-/area/lv522/oob)
"meb" = (
/obj/structure/largecrate/random{
layer = 2.9
@@ -36946,10 +36931,6 @@
icon_state = "floor_plate"
},
/area/lv522/atmos/reactor_garage)
-"oLU" = (
-/obj/effect/landmark/structure_spawner/setup/distress/xeno_door,
-/turf/open/floor/corsat,
-/area/lv522/oob)
"oLW" = (
/obj/structure/pipes/standard/simple/hidden/green{
dir = 4
@@ -37360,7 +37341,7 @@
/obj/effect/landmark/structure_spawner/setup/distress/xeno_door,
/obj/structure/pipes/standard/simple/hidden/green,
/turf/open/floor/corsat,
-/area/lv522/oob)
+/area/lv522/atmos/east_reactor/south)
"oVA" = (
/obj/structure/surface/table/reinforced/almayer_B,
/obj/item/reagent_container/food/drinks/coffee,
@@ -56350,7 +56331,7 @@
"vKP" = (
/obj/item/stack/sheet/metal,
/turf/open/floor/corsat,
-/area/lv522/oob)
+/area/lv522/atmos/east_reactor/south)
"vKR" = (
/obj/structure/pipes/standard/simple/hidden/green{
dir = 5
@@ -56804,7 +56785,7 @@
/area/lv522/indoors/a_block/executive)
"vSV" = (
/obj/effect/decal/cleanable/dirt,
-/obj/structure/prop/maintenance_hatch{
+/obj/structure/tunnel/maint_tunnel{
pixel_y = 6
},
/turf/open/floor/prison{
@@ -82573,8 +82554,8 @@ saC
saC
tiQ
iBI
-uFG
-nbD
+xmD
+xCS
tiQ
tiQ
tiQ
@@ -83479,7 +83460,7 @@ tjg
tjg
hJB
qUQ
-eLV
+vlq
xmD
hna
yiu
@@ -83933,7 +83914,7 @@ fsC
kbV
hJB
qUQ
-oLU
+pwX
knt
qjG
yiu
@@ -83949,7 +83930,7 @@ xmD
xmD
tiQ
kEA
-mdZ
+seF
tiQ
saC
saC
@@ -84160,7 +84141,7 @@ tjg
tjg
hJB
qUQ
-oLU
+pwX
knt
qjG
yiu
@@ -84387,7 +84368,7 @@ tjg
tjg
hJB
qUQ
-eLV
+vlq
knt
hna
yiu
@@ -90553,7 +90534,7 @@ jjl
hLY
vDw
rbZ
-jMN
+qjG
bjd
rMD
eZF
@@ -90780,7 +90761,7 @@ iFk
jef
pfj
qjG
-jMN
+qjG
bjd
nRy
pqQ
@@ -91234,7 +91215,7 @@ hna
wea
hLY
dpz
-jMN
+qjG
bjd
lfj
pqQ
diff --git a/maps/map_files/LV624/LV624.dmm b/maps/map_files/LV624/LV624.dmm
index a8aac22505c8..c0babffe0d94 100644
--- a/maps/map_files/LV624/LV624.dmm
+++ b/maps/map_files/LV624/LV624.dmm
@@ -2515,6 +2515,9 @@
/obj/structure/flora/jungle/alienplant1,
/turf/open/gm/grass/grass1,
/area/lv624/ground/barrens/south_eastern_jungle_barrens)
+"amk" = (
+/turf/closed/wall/strata_ice/jungle,
+/area/lv624/ground/caves/north_west_caves)
"aml" = (
/obj/structure/disposalpipe/segment,
/obj/structure/grille,
@@ -15370,6 +15373,9 @@
/obj/structure/xenoautopsy/tank/broken,
/turf/open/gm/dirt,
/area/lv624/lazarus/crashed_ship_containers)
+"iIB" = (
+/turf/closed/wall/strata_ice/jungle,
+/area/lv624/ground/caves/south_central_caves)
"iIF" = (
/turf/open/gm/dirtgrassborder/grassdirt_corner2/north_east,
/area/lv624/ground/barrens/south_eastern_barrens)
@@ -17144,6 +17150,9 @@
icon_state = "whiteyellowfull"
},
/area/lv624/ground/barrens/south_eastern_barrens)
+"ntr" = (
+/turf/closed/wall/strata_ice/jungle,
+/area/lv624/ground/barrens/north_east_barrens)
"ntL" = (
/obj/structure/fence,
/turf/open/gm/dirtgrassborder/south,
@@ -17649,6 +17658,9 @@
"omK" = (
/turf/open/gm/coast/beachcorner/south_east,
/area/lv624/ground/barrens/west_barrens)
+"onU" = (
+/turf/closed/wall/strata_ice/jungle,
+/area/lv624/ground/caves/west_caves)
"oov" = (
/obj/structure/flora/bush/ausbushes/lavendergrass,
/turf/open/gm/dirt,
@@ -20141,6 +20153,9 @@
/obj/effect/landmark/structure_spawner/setup/distress/xeno_membrane,
/turf/open/gm/dirt,
/area/lv624/ground/caves/east_caves)
+"unp" = (
+/turf/closed/wall/strata_ice/jungle,
+/area/lv624/ground/caves/south_east_caves)
"uns" = (
/obj/item/stack/sheet/wood{
amount = 2
@@ -20196,6 +20211,9 @@
/obj/effect/landmark/lv624/fog_blocker,
/turf/open/gm/coast/east,
/area/lv624/ground/river/east_river)
+"uxU" = (
+/turf/closed/wall/strata_ice/jungle,
+/area/lv624/ground/caves/central_caves)
"uya" = (
/turf/open/gm/dirt,
/area/lv624/lazarus/crashed_ship_containers)
@@ -20379,6 +20397,9 @@
icon_state = "dark"
},
/area/lv624/lazarus/corporate_dome)
+"uWJ" = (
+/turf/closed/wall/strata_ice/jungle,
+/area/lv624/ground/caves/south_west_caves)
"uXW" = (
/obj/structure/barricade/sandbags/wired,
/turf/open/floor/wood{
@@ -20733,6 +20754,9 @@
icon_state = "asteroidwarning"
},
/area/lv624/ground/colony/telecomm/sw_lz2)
+"vVC" = (
+/turf/closed/wall/strata_ice/jungle,
+/area/lv624/ground/caves/east_caves)
"vVD" = (
/obj/structure/flora/jungle/vines/light_3,
/turf/closed/wall/rock/brown,
@@ -21313,6 +21337,9 @@
/obj/structure/platform_decoration/mineral/sandstone/runed,
/turf/open/gm/dirtgrassborder/grassdirt_corner2/north_east,
/area/lv624/ground/caves/sand_temple)
+"xpR" = (
+/turf/closed/wall/strata_ice/jungle,
+/area/lv624/ground/caves/north_east_caves)
"xqV" = (
/obj/structure/surface/rack,
/obj/effect/landmark/objective_landmark/medium,
@@ -24041,8 +24068,8 @@ gwP
gwP
mdQ
mdQ
-mdQ
-mdQ
+onU
+onU
gwP
gwP
gwP
@@ -24269,8 +24296,8 @@ gwP
mdQ
mdQ
mdQ
-mdQ
-mdQ
+onU
+onU
mdQ
gwP
tOS
@@ -24495,9 +24522,9 @@ gwP
gwP
mdQ
mdQ
-mdQ
-mdQ
-mdQ
+onU
+onU
+onU
mdQ
mdQ
gwP
@@ -24722,9 +24749,9 @@ gwP
gwP
mdQ
mdQ
-mdQ
-mdQ
-mdQ
+onU
+onU
+onU
mdQ
mdQ
gwP
@@ -24949,9 +24976,9 @@ gwP
gwP
gwP
gwP
-mdQ
-mdQ
-mdQ
+onU
+onU
+onU
mdQ
mdQ
gwP
@@ -25179,7 +25206,7 @@ gwP
gwP
gwP
gwP
-mdQ
+onU
mdQ
gwP
gwP
@@ -26274,8 +26301,8 @@ abM
abM
abM
abM
-abM
-mdQ
+amk
+onU
mdQ
mdQ
mdQ
@@ -26343,7 +26370,7 @@ ahF
ahF
ahF
ahF
-ane
+uWJ
ahF
ahF
ahF
@@ -26470,10 +26497,10 @@ abN
abN
abN
abN
-abM
-abM
-abM
-abM
+amk
+amk
+amk
+amk
abM
abM
abM
@@ -26501,10 +26528,10 @@ abN
abM
abM
abM
-abM
-abM
-mdQ
-mdQ
+amk
+amk
+onU
+onU
mdQ
tOS
gwP
@@ -26570,9 +26597,9 @@ ahF
ahF
ahF
ahF
-ane
-ane
-ane
+uWJ
+uWJ
+uWJ
ahF
ahF
ahF
@@ -26699,11 +26726,11 @@ abN
abN
abN
abN
-abM
-abM
-abM
-abM
-abM
+amk
+amk
+amk
+amk
+amk
abM
abN
abN
@@ -26731,9 +26758,9 @@ abN
abN
abN
abN
-mdQ
-mdQ
-mdQ
+onU
+onU
+onU
gwP
gwP
gwP
@@ -26797,9 +26824,9 @@ ahF
ahF
ahF
ahF
-ane
-ane
-ane
+uWJ
+uWJ
+uWJ
ahF
ahF
ahH
@@ -26929,8 +26956,8 @@ abN
abN
abN
abN
-abM
-abM
+amk
+amk
abN
abN
abN
@@ -27435,9 +27462,9 @@ gwP
gwP
mdQ
mdQ
-mdQ
-mdQ
-mdQ
+onU
+onU
+onU
xZE
xZE
xZE
@@ -27640,7 +27667,7 @@ abN
abN
abN
abN
-abM
+amk
abM
abM
mdQ
@@ -27664,10 +27691,10 @@ mdQ
mdQ
mdQ
mdQ
-mdQ
-mdQ
-mdQ
-mdQ
+onU
+onU
+onU
+onU
xZE
xZE
xZE
@@ -27716,9 +27743,9 @@ ahF
ahF
ahF
ahF
-ane
-ane
-ane
+uWJ
+uWJ
+uWJ
ane
ane
afV
@@ -27868,8 +27895,8 @@ abN
abN
abN
abN
-abM
-abM
+amk
+amk
abM
mdQ
mdQ
@@ -27894,10 +27921,10 @@ mdQ
mdQ
mdQ
mdQ
-mdQ
-mdQ
-mdQ
-mdQ
+onU
+onU
+onU
+onU
xZE
xZE
gwP
@@ -27944,7 +27971,7 @@ ahF
ahF
ahF
ahF
-ane
+uWJ
ane
ane
ane
@@ -28061,10 +28088,10 @@ abN
abN
abN
abN
-abM
-abM
-abM
-abM
+amk
+amk
+amk
+amk
abN
abN
abN
@@ -28095,9 +28122,9 @@ abN
abN
abN
abN
-abM
-abM
-abM
+amk
+amk
+amk
abM
mdQ
mdQ
@@ -28123,10 +28150,10 @@ mdQ
mdQ
mdQ
mdQ
-mdQ
-mdQ
-mdQ
-mdQ
+onU
+onU
+onU
+onU
mdQ
gwP
gwP
@@ -28288,12 +28315,12 @@ abN
abN
abM
abM
-abM
-abM
-abM
-abM
-abM
-abM
+amk
+amk
+amk
+amk
+amk
+amk
abM
abM
abM
@@ -28322,10 +28349,10 @@ abN
abN
abN
abN
-abM
-abM
-abM
-abM
+amk
+amk
+amk
+amk
abM
mdQ
mdQ
@@ -28352,8 +28379,8 @@ mdQ
mdQ
mdQ
mdQ
-mdQ
-mdQ
+onU
+onU
mdQ
mdQ
mdQ
@@ -28517,9 +28544,9 @@ abN
abM
abM
abM
-abM
-abM
-abM
+amk
+amk
+amk
abM
abM
abM
@@ -28549,10 +28576,10 @@ abM
abM
abM
abM
-abM
-abM
-abM
-abM
+amk
+amk
+amk
+amk
abM
abM
mdQ
@@ -28623,8 +28650,8 @@ ahF
afV
ahF
ahF
-ane
-ane
+uWJ
+uWJ
ane
ane
ane
@@ -28746,7 +28773,7 @@ abM
abM
abM
abM
-abM
+amk
abM
abM
abM
@@ -28778,8 +28805,8 @@ abM
abM
abM
abM
-abM
-abM
+amk
+amk
abM
abM
mdQ
@@ -28850,8 +28877,8 @@ ahF
ahF
afV
afV
-ane
-ane
+uWJ
+uWJ
ane
ane
ane
@@ -29072,7 +29099,7 @@ vMV
vMV
vMV
vMV
-ane
+uWJ
ahF
ahF
ahF
@@ -29300,7 +29327,7 @@ ahF
ahF
ahF
ahF
-ane
+uWJ
ahF
ahF
ahF
@@ -29424,7 +29451,7 @@ abN
abN
abN
abN
-abM
+amk
abM
abM
abM
@@ -29528,8 +29555,8 @@ ahF
ahF
ahH
ahF
-ane
-ane
+uWJ
+uWJ
ahF
ahF
ahF
@@ -29652,8 +29679,8 @@ abN
abN
abQ
abN
-abM
-abM
+amk
+amk
abM
abM
abM
@@ -29756,8 +29783,8 @@ ahF
ahF
ahF
ahF
-ane
-ane
+uWJ
+uWJ
ahF
ahF
ahF
@@ -29879,9 +29906,9 @@ abN
abN
tgL
abN
-abM
-abM
-abM
+amk
+amk
+amk
abM
abM
abM
@@ -29985,7 +30012,7 @@ ahF
ahF
ahF
ahF
-ane
+uWJ
ahF
ahF
ahF
@@ -30107,8 +30134,8 @@ abN
abN
abN
abN
-abM
-abM
+amk
+amk
abM
abM
abM
@@ -30213,9 +30240,9 @@ ahF
ahF
ahF
ahF
+uWJ
ane
-ane
-ane
+uWJ
ahF
ahF
ahF
@@ -30336,7 +30363,7 @@ abN
abN
abN
abN
-abM
+amk
abM
abM
abM
@@ -30441,9 +30468,9 @@ ahF
ahF
ahF
ahF
+uWJ
ane
-ane
-ane
+uWJ
ahF
ahF
ahF
@@ -30671,7 +30698,7 @@ ahH
ahF
ane
ane
-ane
+uWJ
ahF
ahF
ahF
@@ -30899,8 +30926,8 @@ ahF
ahF
ahF
ahF
-ane
-ane
+uWJ
+uWJ
ane
ahF
ahF
@@ -31128,7 +31155,7 @@ ahF
ahF
ahF
ahF
-ane
+uWJ
ane
ane
ahF
@@ -31318,7 +31345,7 @@ mdQ
mdQ
mdQ
mdQ
-mdQ
+onU
gwP
gwP
gwP
@@ -31357,9 +31384,9 @@ ahF
ahF
ahF
ahF
-ane
-ane
-ane
+uWJ
+uWJ
+uWJ
ahF
ahF
ahF
@@ -31545,8 +31572,8 @@ mdQ
mdQ
mdQ
mdQ
-mdQ
-mdQ
+onU
+onU
gwP
gwP
sMx
@@ -31585,8 +31612,8 @@ ahF
ahF
ahH
ahF
-ane
-ane
+uWJ
+uWJ
ahF
ahF
ahF
@@ -31773,8 +31800,8 @@ mdQ
mdQ
mdQ
mdQ
-mdQ
-mdQ
+onU
+onU
gwP
gwP
sMx
@@ -31813,7 +31840,7 @@ ahF
ahF
ahF
ahF
-ane
+uWJ
ane
ahF
ahF
@@ -32001,7 +32028,7 @@ mdQ
mdQ
mdQ
mdQ
-mdQ
+onU
gwP
gwP
gwP
@@ -32223,8 +32250,8 @@ mdQ
mdQ
mdQ
mdQ
-mdQ
-mdQ
+onU
+onU
gwP
gwP
xZE
@@ -32451,7 +32478,7 @@ mdQ
mdQ
gwP
gwP
-mdQ
+onU
gwP
gwP
gwP
@@ -33371,8 +33398,8 @@ mdQ
mdQ
mdQ
mdQ
-mdQ
-mdQ
+onU
+onU
xZE
xZE
xZE
@@ -33545,7 +33572,7 @@ abN
abM
abM
abM
-abM
+amk
abM
abM
abM
@@ -33600,8 +33627,8 @@ mdQ
mdQ
mdQ
mdQ
-mdQ
-mdQ
+onU
+onU
acK
gwP
gwP
@@ -33772,9 +33799,9 @@ tdX
tdX
abm
abM
-abM
-abM
-abM
+amk
+amk
+amk
abM
abM
abM
@@ -33829,8 +33856,8 @@ mdQ
mdQ
mdQ
mdQ
-mdQ
-mdQ
+onU
+onU
gwP
gwP
gwP
@@ -33999,11 +34026,11 @@ aaW
aaW
aaW
abm
-abm
-abm
-abM
-abM
-abM
+aaF
+aaF
+amk
+amk
+amk
abM
abM
abM
@@ -34058,11 +34085,11 @@ mdQ
mdQ
mdQ
mdQ
-mdQ
-mdQ
-mdQ
-mdQ
-mdQ
+onU
+onU
+onU
+onU
+onU
xZE
eGD
eGD
@@ -34228,11 +34255,11 @@ aaw
aaw
aaw
aaw
-abm
-abm
-abm
-abm
-abM
+aaF
+aaF
+aaF
+aaF
+amk
abM
abM
abM
@@ -34289,10 +34316,10 @@ mdQ
abS
abS
abS
-abS
-abS
-abS
-abS
+iIB
+iIB
+iIB
+iIB
eGD
eGD
eGD
@@ -34459,9 +34486,9 @@ aaw
aaw
aaw
aaw
-abm
-abm
-abm
+aaF
+aaF
+aaF
abm
abm
abM
@@ -34518,9 +34545,9 @@ abS
abS
abS
abS
-abS
-abS
-abS
+iIB
+iIB
+iIB
eGD
adc
eGD
@@ -34688,8 +34715,8 @@ aaw
aaw
aaw
aaw
-abm
-abm
+aaF
+aaF
abm
abm
abm
@@ -34747,8 +34774,8 @@ abS
abS
abS
abS
-abS
-abS
+iIB
+iIB
eGD
eGD
eGD
@@ -34917,7 +34944,7 @@ aaw
aaw
aaw
aaw
-abm
+aaF
abm
abm
abm
@@ -34976,7 +35003,7 @@ abS
abS
abS
abS
-abS
+iIB
eGD
eGD
eGD
@@ -35167,7 +35194,7 @@ mdQ
mdQ
mdQ
mdQ
-mdQ
+onU
tOS
gwP
acu
@@ -35394,8 +35421,8 @@ acf
mdQ
mdQ
mdQ
-mdQ
-mdQ
+onU
+onU
gwP
gwP
acp
@@ -35621,9 +35648,9 @@ acf
acf
acf
acf
-mdQ
-mdQ
-mdQ
+onU
+onU
+onU
gwP
gwP
xZE
@@ -35849,9 +35876,9 @@ acf
acf
acf
acf
-mdQ
-mdQ
-mdQ
+onU
+onU
+onU
gwP
gwP
xZE
@@ -36078,7 +36105,7 @@ acf
acf
acf
mdQ
-mdQ
+onU
mdQ
gwP
gwP
@@ -36285,7 +36312,7 @@ aah
aaH
aaw
aaw
-abm
+aaF
abm
abm
abm
@@ -36513,8 +36540,8 @@ aah
aaH
aaw
aaw
-abm
-abm
+aaF
+aaF
abm
abm
abm
@@ -36740,9 +36767,9 @@ aah
aah
aaH
aaw
-abm
-abm
-abm
+aaF
+aaF
+aaF
abm
abm
abm
@@ -36806,9 +36833,9 @@ adP
adP
eGD
eGD
-abS
-abS
-abS
+iIB
+iIB
+iIB
eGD
eGD
abS
@@ -36968,8 +36995,8 @@ aaU
aah
aaz
aay
-abm
-abm
+aaF
+aaF
abm
abm
abm
@@ -36995,9 +37022,9 @@ acf
mdQ
mdQ
mdQ
-mdQ
-mdQ
-mdQ
+onU
+onU
+onU
gwP
gwP
gwP
@@ -37033,8 +37060,8 @@ eGD
eGD
eGD
eGD
-abS
-abS
+iIB
+iIB
abS
abS
abS
@@ -37196,7 +37223,7 @@ aah
aah
aah
aaH
-abm
+aaF
abm
abm
abm
@@ -37224,10 +37251,10 @@ acf
acf
acf
acf
-acf
-acf
-acf
-acf
+uxU
+uxU
+uxU
+uxU
dGQ
any
dGQ
@@ -37259,9 +37286,9 @@ eGD
eGD
eGD
abS
-abS
-abS
-abS
+iIB
+iIB
+iIB
abS
abS
abS
@@ -38576,7 +38603,7 @@ aaw
aaw
aaw
aaw
-abm
+aaF
abm
abm
acf
@@ -38804,8 +38831,8 @@ aaw
aaw
aaw
aaw
-abm
-abm
+aaF
+aaF
acf
acf
acf
@@ -38843,8 +38870,8 @@ dGQ
eGD
eGD
eGD
-abS
-abS
+iIB
+iIB
abS
eGD
acO
@@ -39031,8 +39058,8 @@ aaw
aaw
abm
abm
-abm
-abm
+aaF
+aaF
abm
acf
acf
@@ -39070,8 +39097,8 @@ abl
izh
abS
abS
-abS
-abS
+iIB
+iIB
abS
abS
abS
@@ -39258,8 +39285,8 @@ aaw
aaw
aaw
abm
-abm
-abm
+aaF
+aaF
abm
abm
acf
@@ -39486,7 +39513,7 @@ aaw
aaw
aaw
abm
-abm
+aaF
abm
acf
acf
@@ -39713,8 +39740,8 @@ aaw
aaw
aaw
aaw
-abm
-abm
+aaF
+aaF
abm
acf
acf
@@ -39941,7 +39968,7 @@ aaw
aaw
aaw
aaw
-abm
+aaF
abm
abm
acf
@@ -40169,8 +40196,8 @@ aaw
aaw
aaw
aaw
-abm
-abm
+aaF
+aaF
abm
acf
acf
@@ -40397,8 +40424,8 @@ aax
aaE
aaw
aaw
-abm
-abm
+aaF
+aaF
abm
acf
acf
@@ -40446,7 +40473,7 @@ abS
abS
abS
abS
-abS
+iIB
eGD
eGD
eGD
@@ -40625,8 +40652,8 @@ aaw
aaw
aaw
aaw
-abm
-abm
+aaF
+aaF
abm
acf
acf
@@ -40673,8 +40700,8 @@ abS
abS
abS
abS
-abS
-abS
+iIB
+iIB
eGD
eGD
eGD
@@ -40853,7 +40880,7 @@ aaw
aaw
aaw
aaw
-abm
+aaF
abm
abm
acf
@@ -40900,9 +40927,9 @@ abS
abS
abS
abS
-abS
-abS
-abS
+iIB
+iIB
+iIB
eGD
eGD
eGD
@@ -41128,7 +41155,7 @@ abS
abS
abS
abS
-abS
+iIB
eGD
eGD
eGD
@@ -41814,7 +41841,7 @@ abS
abS
abS
abS
-abS
+iIB
eGD
eGD
eGD
@@ -42042,8 +42069,8 @@ abS
abS
abS
abS
-abS
-abS
+iIB
+iIB
eGD
eGD
eGD
@@ -42271,7 +42298,7 @@ abS
abS
abS
abS
-abS
+iIB
eGD
eGD
eGD
@@ -42499,7 +42526,7 @@ abS
abS
abS
abS
-abS
+iIB
eGD
eGD
eGD
@@ -43836,7 +43863,7 @@ abl
abl
acf
acf
-acf
+uxU
dGQ
uMz
dGQ
@@ -44064,8 +44091,8 @@ acf
acf
acf
acf
-acf
-acf
+uxU
+uxU
abl
abl
abl
@@ -44094,7 +44121,7 @@ abS
abS
abS
abS
-abS
+iIB
eGD
eGD
acq
@@ -44293,7 +44320,7 @@ acf
acf
acf
acf
-acf
+uxU
abl
abl
abl
@@ -44321,8 +44348,8 @@ abS
abS
abS
abS
-abS
-abS
+iIB
+iIB
eGD
eGD
eGD
@@ -44521,14 +44548,14 @@ acf
acf
acf
acf
-acf
+uxU
abl
abv
abl
abl
acf
acf
-acf
+uxU
abl
acf
acf
@@ -44548,9 +44575,9 @@ abS
abS
abS
abS
-abS
-abS
-abS
+iIB
+iIB
+iIB
eGD
eGD
eGD
@@ -44754,9 +44781,9 @@ abl
abl
abl
abl
-acf
-acf
-acf
+uxU
+uxU
+uxU
abl
abl
abl
@@ -44777,8 +44804,8 @@ abS
abS
abS
abS
-abS
-abS
+iIB
+iIB
cIU
cIU
cIU
@@ -44983,8 +45010,8 @@ abl
abl
abl
abl
-acf
-acf
+uxU
+uxU
abl
abl
abl
@@ -45211,7 +45238,7 @@ acf
abl
abl
abl
-acf
+uxU
izh
abl
abv
@@ -45225,7 +45252,7 @@ abl
abl
abl
abl
-abS
+iIB
abS
abS
abS
@@ -45452,14 +45479,14 @@ abl
abl
abl
abl
+iIB
+iIB
abS
abS
abS
abS
-abS
-abS
-abS
-abS
+iIB
+iIB
abS
abS
abS
@@ -45685,8 +45712,8 @@ pDt
pDt
pDt
pDt
-abS
-abS
+iIB
+iIB
pDt
pDt
abS
@@ -46121,7 +46148,7 @@ acf
acf
acf
acf
-acf
+uxU
abl
abl
dGQ
@@ -46347,9 +46374,9 @@ acf
acf
acf
acf
-acf
-acf
-acf
+uxU
+uxU
+uxU
abl
abl
acf
@@ -46574,8 +46601,8 @@ acf
acf
acf
acf
-acf
-acf
+uxU
+uxU
abl
abl
abl
@@ -46585,8 +46612,8 @@ acf
abl
abl
abl
-acf
-acf
+uxU
+uxU
abl
abl
abl
@@ -46802,7 +46829,7 @@ acf
abl
abl
acf
-acf
+uxU
abl
abl
abl
@@ -46813,20 +46840,20 @@ acf
abl
abl
abl
-acf
+uxU
acf
acf
abl
abl
-acf
-acf
+uxU
+uxU
acf
pDt
pDt
pDt
pDt
pDt
-nbw
+ntr
iZG
pDt
pDt
@@ -47037,7 +47064,7 @@ abl
abl
acf
acf
-acf
+uxU
abl
abl
abl
@@ -47046,15 +47073,15 @@ acf
acf
abl
abl
-acf
+uxU
acf
acf
nbw
pDt
pDt
nbw
-nbw
-nbw
+ntr
+ntr
pDt
pDt
pDt
@@ -47265,16 +47292,16 @@ abl
abl
abl
acf
-acf
-acf
+uxU
+uxU
abl
abl
abl
acf
acf
acf
-acf
-acf
+uxU
+uxU
acf
acf
nbw
@@ -47493,7 +47520,7 @@ abv
abl
abl
acf
-acf
+uxU
abl
abl
abv
@@ -47688,9 +47715,9 @@ aaE
aaw
aaw
aaw
-aaF
-aaF
-aaF
+abm
+abm
+abm
aaF
aaF
abm
@@ -47918,7 +47945,7 @@ aaw
aaw
aaF
aaF
-aaF
+abm
aaF
aaF
abm
@@ -48144,10 +48171,10 @@ aaw
aaw
aaw
aaw
-abm
-abm
-abm
-abm
+aaF
+aaF
+aaF
+aaF
abm
abm
abm
@@ -48171,7 +48198,7 @@ acf
acf
acf
acf
-acf
+uxU
abl
abl
abl
@@ -48373,8 +48400,8 @@ aaw
aaw
aaw
abm
-abm
-abm
+aaF
+aaF
abm
abm
abm
@@ -48398,8 +48425,8 @@ acf
acf
acf
acf
-acf
-acf
+uxU
+uxU
izh
abl
abl
@@ -48601,7 +48628,7 @@ aaw
aaw
aaw
abm
-abm
+aaF
acf
acf
acf
@@ -48626,8 +48653,8 @@ acf
acf
acf
acf
-acf
-acf
+uxU
+uxU
izh
abl
abl
@@ -48828,8 +48855,8 @@ aaw
aaw
aaw
aaw
-abm
-abm
+aaF
+aaF
acf
acf
acf
@@ -48854,7 +48881,7 @@ acf
acf
acf
acf
-acf
+uxU
acf
izh
abl
@@ -49056,7 +49083,7 @@ aaw
aaw
aaw
aaw
-abm
+aaF
abm
acf
acf
@@ -51135,7 +51162,7 @@ pUm
pUm
pUm
pUm
-pUm
+vVC
acg
acg
acg
@@ -51352,7 +51379,7 @@ acf
acf
acf
acf
-pUm
+vVC
pUm
pUm
acg
@@ -51362,8 +51389,8 @@ pUm
pUm
pUm
pUm
-pUm
-pUm
+vVC
+vVC
acg
acg
acg
@@ -51579,9 +51606,9 @@ acf
acf
acf
acf
-acf
-pUm
-pUm
+uxU
+vVC
+vVC
acg
acg
acg
@@ -51590,8 +51617,8 @@ pUm
pUm
pUm
pUm
-pUm
-pUm
+vVC
+vVC
acg
acg
acg
@@ -51806,10 +51833,10 @@ acf
acf
acf
acf
-pUm
-pUm
-pUm
-pUm
+vVC
+vVC
+vVC
+vVC
acg
acg
acg
@@ -51818,7 +51845,7 @@ pUm
pUm
pUm
pUm
-pUm
+vVC
acg
acg
aaN
@@ -52034,9 +52061,9 @@ pZb
acf
acf
pUm
-pUm
-pUm
-pUm
+vVC
+vVC
+vVC
acg
acg
acg
@@ -52046,7 +52073,7 @@ pUm
pUm
pUm
pUm
-pUm
+vVC
acg
acg
acg
@@ -52262,9 +52289,9 @@ pZb
pZb
pUm
pUm
-pUm
-pUm
-pUm
+vVC
+vVC
+vVC
acg
aaN
acg
@@ -52286,7 +52313,7 @@ whU
whU
whU
whU
-whU
+unp
fTM
fTM
fTM
@@ -52478,6 +52505,8 @@ pZb
pZb
pZb
pZb
+xpR
+xpR
pZb
pZb
pZb
@@ -52486,12 +52515,10 @@ pZb
pZb
pZb
pZb
-pZb
-pZb
-pUm
pUm
pUm
pUm
+vVC
acg
acg
acg
@@ -52514,9 +52541,9 @@ whU
whU
whU
whU
-whU
-whU
-whU
+unp
+unp
+unp
fTM
fTM
fTM
@@ -52705,11 +52732,11 @@ pZb
pZb
pZb
aag
-pZb
-pZb
-pZb
-pZb
-pZb
+xpR
+xpR
+xpR
+xpR
+xpR
pZb
pZb
pZb
@@ -52744,8 +52771,8 @@ whU
whU
whU
whU
-whU
-whU
+unp
+unp
fTM
fTM
fTM
@@ -52753,8 +52780,8 @@ fTM
fTM
fTM
whU
-whU
-whU
+unp
+unp
whU
whU
pDt
@@ -52936,9 +52963,9 @@ aag
aag
aag
aag
-pZb
-pZb
-pZb
+xpR
+xpR
+xpR
pZb
pZb
pZb
@@ -52981,7 +53008,7 @@ fTM
fTM
whU
whU
-whU
+unp
whU
whU
whU
@@ -53607,7 +53634,7 @@ aag
aag
aag
aag
-pZb
+xpR
aag
aag
aag
@@ -53834,8 +53861,8 @@ aag
aag
aag
aag
-pZb
-pZb
+xpR
+xpR
aag
aag
aag
@@ -54061,9 +54088,9 @@ aag
aag
aag
aab
-pZb
-pZb
-pZb
+xpR
+xpR
+xpR
aag
aag
aag
@@ -54122,7 +54149,7 @@ whU
whU
whU
whU
-whU
+unp
fTM
fTM
fTM
@@ -54289,8 +54316,8 @@ aai
aag
aab
aab
-pZb
-pZb
+xpR
+xpR
aab
aag
aag
@@ -54350,8 +54377,8 @@ whU
whU
whU
whU
-whU
-whU
+unp
+unp
fTM
fTM
fTM
@@ -54517,7 +54544,7 @@ aag
aab
aab
pZb
-pZb
+xpR
pZb
aab
aag
@@ -54540,10 +54567,10 @@ aag
aag
aag
aci
-pUm
-pUm
-pUm
-pUm
+vVC
+vVC
+vVC
+vVC
acg
acg
acg
@@ -54579,7 +54606,7 @@ whU
whU
whU
whU
-whU
+unp
fTM
fTM
akL
@@ -54769,10 +54796,10 @@ aag
aag
pZb
pUm
-pUm
-pUm
-pUm
-pUm
+vVC
+vVC
+vVC
+vVC
xSA
nzw
gkC
@@ -54807,7 +54834,7 @@ whU
whU
whU
whU
-whU
+unp
fTM
fTM
fTM
@@ -54998,8 +55025,8 @@ aag
pZb
pUm
pUm
-pUm
-pUm
+vVC
+vVC
pUm
acg
acg
@@ -55414,7 +55441,7 @@ pZb
pZb
pZb
pZb
-pZb
+xpR
aab
aag
aai
@@ -55642,8 +55669,8 @@ pZb
pZb
pZb
pZb
-pZb
-pZb
+xpR
+xpR
aag
aag
aag
@@ -55870,8 +55897,8 @@ pZb
pZb
pZb
pZb
-pZb
-pZb
+xpR
+xpR
aag
aag
aag
@@ -55913,7 +55940,7 @@ pUm
pUm
pUm
pUm
-pUm
+vVC
acg
acg
acg
@@ -56099,7 +56126,7 @@ pZb
pZb
pZb
pZb
-pZb
+xpR
aag
aag
aag
@@ -56140,8 +56167,8 @@ pUm
pUm
pUm
pUm
-pUm
-pUm
+vVC
+vVC
acg
acg
acg
@@ -56368,8 +56395,8 @@ pUm
pUm
pUm
pUm
-pUm
-pUm
+vVC
+vVC
acg
acg
acg
@@ -56596,8 +56623,8 @@ pUm
pUm
pUm
pUm
-pUm
-pUm
+vVC
+vVC
acg
acg
acg
@@ -56638,7 +56665,7 @@ vCG
whU
fTM
fTM
-ahv
+pRT
ahv
ahv
ahv
@@ -56864,9 +56891,9 @@ wEO
fTM
akL
whU
-whU
-whU
-ahv
+unp
+unp
+pRT
ahv
ahv
afS
@@ -57309,9 +57336,9 @@ whU
whU
whU
whU
-whU
-whU
-whU
+unp
+unp
+unp
fTM
fTM
fTM
@@ -57539,9 +57566,9 @@ whU
whU
whU
whU
-whU
-whU
-whU
+unp
+unp
+unp
wEO
wEO
wEO
@@ -58189,7 +58216,7 @@ pZb
pZb
pZb
pUm
-pUm
+vVC
aaQ
aaR
aaR
@@ -58416,8 +58443,8 @@ pZb
pZb
pZb
pZb
-pUm
-pUm
+vVC
+vVC
nzw
aaQ
aaR
@@ -58613,11 +58640,11 @@ pZb
pZb
pZb
pZb
-pZb
-pZb
-pZb
-pZb
-pZb
+xpR
+xpR
+xpR
+xpR
+xpR
aab
aab
aag
@@ -58644,8 +58671,8 @@ pZb
pZb
pZb
pZb
-pUm
-pUm
+vVC
+vVC
nzw
nzw
aaQ
@@ -58842,11 +58869,11 @@ pZb
pZb
pZb
pZb
-pZb
-pZb
-pZb
-pZb
-pZb
+xpR
+xpR
+xpR
+xpR
+xpR
aab
aab
aab
@@ -58872,8 +58899,8 @@ pZb
pZb
pZb
pZb
-pUm
-pUm
+vVC
+vVC
acg
nzw
nzw
@@ -59071,6 +59098,9 @@ pZb
pZb
pZb
pZb
+xpR
+xpR
+xpR
pZb
pZb
pZb
@@ -59097,11 +59127,8 @@ pZb
pZb
pZb
pZb
-pZb
-pZb
-pZb
-pUm
-pUm
+vVC
+vVC
acg
acg
acg
@@ -59328,9 +59355,9 @@ pZb
pZb
pZb
pZb
-pUm
-pUm
-pUm
+vVC
+vVC
+vVC
acg
acg
acg
@@ -59557,8 +59584,8 @@ pZb
pZb
pZb
pUm
-pUm
-pUm
+vVC
+vVC
acg
acg
aaN
@@ -59574,7 +59601,7 @@ iyr
eZC
nzw
pUm
-pUm
+vVC
acg
nzw
acg
@@ -59785,9 +59812,9 @@ pZb
pZb
pZb
pUm
-pUm
-pUm
-pUm
+vVC
+vVC
+vVC
acg
acg
acg
@@ -59801,8 +59828,8 @@ gkC
acg
jAo
nzw
-pUm
-pUm
+vVC
+vVC
aaQ
nzw
acg
@@ -60014,9 +60041,9 @@ pZb
pZb
pUm
pUm
-pUm
-pUm
-pUm
+vVC
+vVC
+vVC
pUm
acg
acg
@@ -60029,9 +60056,9 @@ umb
umb
umb
nzw
-pUm
-pUm
-pUm
+vVC
+vVC
+vVC
nzw
acg
acg
@@ -60243,9 +60270,9 @@ pZb
pUm
pUm
pUm
-pUm
-pUm
-pUm
+vVC
+vVC
+vVC
acg
acg
nzw
@@ -60258,8 +60285,8 @@ acg
dfJ
nzw
pUm
-pUm
-pUm
+vVC
+vVC
nzw
acg
acg
@@ -60472,9 +60499,9 @@ pUm
pUm
pUm
pUm
-pUm
-pUm
-pUm
+vVC
+vVC
+vVC
pUm
nzw
rPK
@@ -60487,7 +60514,7 @@ rPK
nzw
pUm
pUm
-pUm
+vVC
nzw
acg
aaN
@@ -60701,7 +60728,7 @@ pUm
pUm
pUm
pUm
-pUm
+vVC
pUm
pUm
nzw
diff --git a/maps/map_files/New_Varadero/New_Varadero.dmm b/maps/map_files/New_Varadero/New_Varadero.dmm
index 20558b48ac32..4488d13b9bc7 100644
--- a/maps/map_files/New_Varadero/New_Varadero.dmm
+++ b/maps/map_files/New_Varadero/New_Varadero.dmm
@@ -2832,7 +2832,6 @@
/obj/structure/surface/table/reinforced/prison{
color = "#6b675e"
},
-/obj/item/attachable/heavy_barrel,
/obj/structure/window/reinforced,
/turf/open/floor/strata{
color = "#5e5d5d";
diff --git a/maps/map_files/Sorokyne_Strata/Sorokyne_Strata.dmm b/maps/map_files/Sorokyne_Strata/Sorokyne_Strata.dmm
index 17f2e577a120..c43a02dddf12 100644
--- a/maps/map_files/Sorokyne_Strata/Sorokyne_Strata.dmm
+++ b/maps/map_files/Sorokyne_Strata/Sorokyne_Strata.dmm
@@ -10,7 +10,7 @@
/area/space)
"aac" = (
/turf/closed/wall/strata_ice/dirty,
-/area/strata/ag/exterior)
+/area/strata/ag/interior/mountain)
"aad" = (
/turf/closed/wall/strata_ice/jungle,
/area/strata/ug/interior)
@@ -427,7 +427,7 @@
"abA" = (
/obj/structure/fence,
/turf/open/auto_turf/snow/brown_base/layer0,
-/area/strata/ag/exterior)
+/area/strata/ag/interior/mountain)
"abB" = (
/obj/structure/bed/nest,
/obj/effect/landmark/corpsespawner/upp,
@@ -1746,7 +1746,7 @@
"aff" = (
/obj/item/lightstick/planted,
/turf/closed/wall/strata_ice/dirty,
-/area/strata/ag/exterior)
+/area/strata/ag/interior/mountain)
"afg" = (
/obj/structure/machinery/door/airlock/almayer/maint/colony,
/turf/open/floor/strata{
@@ -9870,7 +9870,7 @@
"aDQ" = (
/obj/structure/pipes/standard/simple/hidden/cyan,
/turf/closed/wall/strata_ice/dirty,
-/area/strata/ag/exterior)
+/area/strata/ag/interior/mountain)
"aDR" = (
/obj/effect/decal/cleanable/blood/oil,
/obj/structure/barricade/handrail/strata,
@@ -10715,7 +10715,7 @@
layer = 2.9
},
/turf/open/auto_turf/snow/brown_base/layer0,
-/area/strata/ag/exterior)
+/area/strata/ag/interior/mountain)
"aGh" = (
/obj/structure/pipes/vents/pump,
/turf/open/floor/strata{
@@ -10930,7 +10930,7 @@
dir = 9
},
/turf/open/auto_turf/snow/brown_base/layer0,
-/area/strata/ag/exterior)
+/area/strata/ag/interior/mountain)
"aGM" = (
/obj/item/stack/sandbags,
/obj/structure/barricade/handrail/strata{
@@ -10957,7 +10957,7 @@
/area/strata/ag/interior/outpost/canteen)
"aGP" = (
/turf/open/auto_turf/snow/brown_base/layer0,
-/area/strata/ag/exterior)
+/area/strata/ag/interior/mountain)
"aGQ" = (
/obj/structure/machinery/door/airlock/almayer/generic{
dir = 2
@@ -12302,7 +12302,7 @@
pixel_y = 28
},
/turf/closed/wall/strata_outpost,
-/area/strata/ag/exterior)
+/area/strata/ag/interior/mountain)
"aLy" = (
/obj/structure/platform/strata/metal{
dir = 8
@@ -15956,7 +15956,7 @@
/area/strata/ag/interior/dorms/south)
"aXG" = (
/turf/closed/wall/strata_outpost/reinforced/hull,
-/area/strata/ag/exterior)
+/area/strata/ag/interior/mountain)
"aXH" = (
/obj/structure/surface/table,
/obj/item/phone,
@@ -19583,7 +19583,7 @@
dir = 1
},
/turf/open/auto_turf/snow/brown_base/layer0,
-/area/strata/ag/exterior)
+/area/strata/ag/interior/mountain)
"bkX" = (
/obj/structure/platform/strata{
dir = 1
@@ -19592,7 +19592,7 @@
dir = 4
},
/turf/open/auto_turf/snow/brown_base/layer0,
-/area/strata/ag/exterior)
+/area/strata/ag/interior/mountain)
"bkY" = (
/obj/structure/pipes/standard/simple/hidden/cyan,
/turf/open/floor/strata{
@@ -19677,23 +19677,23 @@
"blo" = (
/obj/structure/flora/grass/tallgrass/ice,
/turf/open/auto_turf/snow/brown_base/layer0,
-/area/strata/ag/exterior)
+/area/strata/ag/interior/mountain)
"blp" = (
/obj/structure/platform/strata{
dir = 1
},
/turf/open/auto_turf/snow/brown_base/layer0,
-/area/strata/ag/exterior)
+/area/strata/ag/interior/mountain)
"blq" = (
/obj/structure/inflatable,
/turf/open/auto_turf/snow/brown_base/layer0,
-/area/strata/ag/exterior)
+/area/strata/ag/interior/mountain)
"blr" = (
/obj/structure/platform_decoration/strata{
dir = 8
},
/turf/open/auto_turf/snow/brown_base/layer0,
-/area/strata/ag/exterior)
+/area/strata/ag/interior/mountain)
"bls" = (
/obj/structure/machinery/light/small,
/turf/open/auto_turf/ice/layer0,
@@ -19704,7 +19704,7 @@
dir = 1
},
/turf/open/auto_turf/snow/brown_base/layer0,
-/area/strata/ag/exterior)
+/area/strata/ag/interior/mountain)
"blv" = (
/obj/structure/platform/strata{
dir = 1
@@ -20416,7 +20416,7 @@
"bom" = (
/obj/effect/decal/cleanable/blood,
/turf/closed/wall/strata_ice/dirty,
-/area/strata/ag/exterior)
+/area/strata/ag/interior/mountain)
"bon" = (
/turf/open/auto_turf/strata_grass/layer0_mud_alt,
/area/strata/ug/interior/jungle/deep/minehead)
@@ -25013,7 +25013,7 @@
pixel_y = -8
},
/turf/closed/wall/strata_outpost/reinforced,
-/area/strata/ag/exterior)
+/area/strata/ag/interior/mountain)
"bMd" = (
/turf/open/asphalt/cement{
icon_state = "cement2"
@@ -25026,7 +25026,7 @@
/area/strata/ag/exterior/north_lz_caves)
"bME" = (
/turf/closed/wall/strata_outpost,
-/area/strata/ag/exterior)
+/area/strata/ag/interior/mountain)
"bMF" = (
/obj/structure/window/framed/strata/reinforced,
/turf/open/floor/strata{
@@ -25144,7 +25144,7 @@
/area/strata/ag/exterior/research_decks)
"bNW" = (
/turf/closed/wall/strata_ice/jungle,
-/area/strata/ag/exterior)
+/area/strata/ag/interior/mountain)
"bOh" = (
/obj/structure/barricade/handrail/strata,
/turf/open/floor/strata{
@@ -30605,7 +30605,7 @@
"efT" = (
/obj/effect/decal/cleanable/blood,
/turf/open/floor/strata,
-/area/strata/ag/exterior)
+/area/strata/ag/interior/mountain)
"egh" = (
/obj/structure/flora/bush/ausbushes/grassybush{
icon_state = "fullgrass_1"
@@ -30737,7 +30737,7 @@
/area/strata/ag/exterior/research_decks)
"eqV" = (
/turf/closed/wall/wood,
-/area/strata/ag/exterior)
+/area/strata/ag/interior/mountain)
"era" = (
/obj/structure/machinery/power/apc{
dir = 1;
@@ -30759,7 +30759,7 @@
/area/strata/ag/exterior/north_lz_caves)
"esJ" = (
/turf/open/auto_turf/snow/brown_base/layer4,
-/area/strata/ag/exterior)
+/area/strata/ag/interior/mountain)
"euc" = (
/obj/structure/platform_decoration/strata{
dir = 4
@@ -31203,7 +31203,7 @@
pixel_y = -8
},
/turf/closed/wall/strata_outpost/reinforced/hull,
-/area/strata/ag/exterior)
+/area/strata/ag/interior/mountain)
"fiD" = (
/obj/structure/fence,
/turf/open/asphalt/cement{
@@ -31636,7 +31636,7 @@
/area/strata/ag/exterior/tcomms/tcomms_deck)
"fPO" = (
/turf/open/auto_turf/ice/layer1,
-/area/strata/ag/exterior)
+/area/strata/ag/interior/mountain)
"fQG" = (
/obj/effect/decal/cleanable/blood/oil,
/turf/open/floor/strata{
@@ -31941,7 +31941,7 @@
/area/strata/ag/interior/outpost/gen/bball/nest)
"glL" = (
/turf/open/auto_turf/snow/brown_base/layer1,
-/area/strata/ag/exterior)
+/area/strata/ag/interior/mountain)
"glN" = (
/obj/structure/machinery/weather_siren{
dir = 8;
@@ -32121,7 +32121,7 @@
"gAD" = (
/obj/structure/machinery/iv_drip,
/turf/open/floor/strata,
-/area/strata/ag/exterior)
+/area/strata/ag/interior/mountain)
"gBj" = (
/obj/effect/decal/cleanable/blood,
/turf/open/auto_turf/ice/layer1,
@@ -32145,7 +32145,7 @@
layer = 2.9
},
/turf/open/auto_turf/snow/brown_base/layer0,
-/area/strata/ag/exterior)
+/area/strata/ag/interior/mountain)
"gFf" = (
/obj/effect/decal/cleanable/blood,
/turf/open/floor/strata{
@@ -33303,7 +33303,7 @@
/obj/item/clothing/gloves/latex,
/obj/item/storage/surgical_tray,
/turf/open/floor/strata,
-/area/strata/ag/exterior)
+/area/strata/ag/interior/mountain)
"iJJ" = (
/obj/effect/blocker/sorokyne_cold_water,
/obj/effect/blocker/sorokyne_cold_water,
@@ -33758,7 +33758,7 @@
"jww" = (
/obj/structure/sign/safety/biohazard,
/turf/closed/wall/strata_outpost/reinforced/hull,
-/area/strata/ag/exterior)
+/area/strata/ag/interior/mountain)
"jwS" = (
/obj/structure/surface/rack,
/obj/item/weapon/gun/pistol/c99,
@@ -34897,7 +34897,7 @@
pixel_y = 32
},
/turf/open/floor/strata,
-/area/strata/ag/exterior)
+/area/strata/ag/interior/mountain)
"luA" = (
/obj/effect/blocker/sorokyne_cold_water,
/obj/effect/blocker/sorokyne_cold_water,
@@ -35085,7 +35085,7 @@
dir = 4
},
/turf/open/auto_turf/ice/layer1,
-/area/strata/ag/exterior)
+/area/strata/ag/interior/mountain)
"lMB" = (
/obj/structure/bed/chair/comfy{
dir = 8
@@ -36008,7 +36008,7 @@
"nhv" = (
/obj/structure/flora/grass/tallgrass/ice,
/turf/open/auto_turf/ice/layer1,
-/area/strata/ag/exterior)
+/area/strata/ag/interior/mountain)
"njA" = (
/obj/structure/pipes/standard/manifold/hidden/cyan{
dir = 1
@@ -36616,7 +36616,7 @@
/obj/structure/surface/rack,
/obj/item/storage/pill_bottle/bicaridine,
/turf/open/floor/strata,
-/area/strata/ag/exterior)
+/area/strata/ag/interior/mountain)
"oyu" = (
/obj/structure/machinery/shower{
dir = 8
@@ -37909,7 +37909,7 @@
pixel_y = 10
},
/turf/closed/wall/strata_outpost/reinforced,
-/area/strata/ag/exterior)
+/area/strata/ag/interior/mountain)
"qzf" = (
/obj/structure/surface/table/reinforced/prison,
/obj/item/phone{
@@ -38533,7 +38533,7 @@
"ryA" = (
/obj/structure/inflatable,
/turf/open/floor/strata,
-/area/strata/ag/exterior)
+/area/strata/ag/interior/mountain)
"ryK" = (
/turf/open/floor/strata{
dir = 4;
@@ -39711,7 +39711,7 @@
dir = 4
},
/turf/closed/wall/strata_ice/dirty,
-/area/strata/ag/exterior)
+/area/strata/ag/interior/mountain)
"tIv" = (
/obj/effect/decal/cleanable/blood/oil,
/turf/open/floor/strata{
@@ -40045,7 +40045,7 @@
/obj/structure/inflatable/door,
/obj/effect/decal/cleanable/blood,
/turf/open/floor/strata,
-/area/strata/ag/exterior)
+/area/strata/ag/interior/mountain)
"ueD" = (
/obj/structure/window/reinforced/tinted{
dir = 4
@@ -40735,7 +40735,7 @@
pixel_y = -8
},
/turf/closed/wall/strata_outpost/reinforced,
-/area/strata/ag/exterior)
+/area/strata/ag/interior/mountain)
"vmm" = (
/obj/structure/surface/table/reinforced/prison,
/obj/structure/machinery/light/small{
@@ -41336,7 +41336,7 @@
"wgI" = (
/obj/item/tank/anesthetic,
/turf/open/floor/strata,
-/area/strata/ag/exterior)
+/area/strata/ag/interior/mountain)
"whO" = (
/obj/structure/filingcabinet,
/obj/effect/landmark/objective_landmark/medium,
@@ -41872,7 +41872,7 @@
dir = 4;
icon_state = "floor3"
},
-/area/strata/ag/exterior)
+/area/strata/ag/interior/mountain)
"xoE" = (
/obj/structure/largecrate/random,
/obj/structure/barricade/handrail/strata{
diff --git a/maps/map_files/USS_Almayer/USS_Almayer.dmm b/maps/map_files/USS_Almayer/USS_Almayer.dmm
index 30321cdb72df..446e4e7dd241 100644
--- a/maps/map_files/USS_Almayer/USS_Almayer.dmm
+++ b/maps/map_files/USS_Almayer/USS_Almayer.dmm
@@ -3174,20 +3174,6 @@
},
/turf/open/floor/wood/ship,
/area/almayer/living/commandbunks)
-"akq" = (
-/obj/structure/window/reinforced{
- dir = 4;
- health = 80
- },
-/obj/structure/machinery/cm_vending/clothing/medical_crew{
- density = 0;
- pixel_y = 16
- },
-/turf/open/floor/almayer{
- dir = 1;
- icon_state = "cargo_arrow"
- },
-/area/almayer/medical/hydroponics)
"akr" = (
/obj/structure/disposalpipe/segment{
dir = 8;
@@ -3500,6 +3486,20 @@
},
/turf/open/floor/wood/ship,
/area/almayer/living/commandbunks)
+"alk" = (
+/obj/structure/machinery/door/poddoor/shutters/almayer{
+ dir = 4;
+ id = "W_Containment Cell 1";
+ name = "\improper Containment Cell 5";
+ unacidable = 1
+ },
+/obj/structure/machinery/door/poddoor/almayer/open{
+ dir = 4;
+ id = "Containment Breach";
+ name = "\improper Secure Airlock"
+ },
+/turf/closed/wall/almayer/research/containment/wall/purple,
+/area/almayer/medical/containment/cell)
"all" = (
/obj/structure/disposalpipe/segment,
/obj/structure/pipes/standard/simple/hidden/supply,
@@ -3710,8 +3710,19 @@
},
/area/almayer/hallways/repair_bay)
"amk" = (
-/turf/closed/wall/almayer/white/outer_tile,
-/area/almayer/medical/medical_science)
+/obj/effect/decal/warning_stripes{
+ icon_state = "NE-out";
+ pixel_x = 1;
+ pixel_y = 1
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "W"
+ },
+/turf/open/floor/almayer{
+ dir = 1;
+ icon_state = "sterile_green_corner"
+ },
+/area/almayer/medical/containment)
"amo" = (
/obj/structure/largecrate/random/secure,
/obj/structure/sign/safety/rewire{
@@ -4074,6 +4085,34 @@
},
/turf/open/floor/plating/almayer,
/area/almayer/hull/upper_hull/u_a_s)
+"anw" = (
+/obj/structure/machinery/flasher{
+ id = "Containment Cell 1";
+ layer = 2.1;
+ name = "Mounted Flash";
+ pixel_y = 30
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "N";
+ pixel_y = 1
+ },
+/turf/open/floor/almayer/research/containment/floor2{
+ dir = 1
+ },
+/area/almayer/medical/containment/cell)
+"anz" = (
+/obj/effect/decal/warning_stripes{
+ icon_state = "W";
+ pixel_x = -1
+ },
+/obj/structure/machinery/photocopier,
+/obj/structure/machinery/firealarm{
+ pixel_y = 28
+ },
+/turf/open/floor/almayer{
+ icon_state = "sterile_green"
+ },
+/area/almayer/medical/hydroponics)
"anB" = (
/obj/structure/sign/safety/storage{
pixel_x = -17
@@ -4443,6 +4482,52 @@
icon_state = "red"
},
/area/almayer/lifeboat_pumps/north1)
+"aoJ" = (
+/obj/structure/machinery/door/poddoor/shutters/almayer{
+ dir = 4;
+ id = "W_Containment Cell 1";
+ name = "\improper Containment Cell 5";
+ unacidable = 1
+ },
+/obj/structure/machinery/door/poddoor/almayer/open{
+ dir = 4;
+ id = "Containment Breach";
+ name = "\improper Secure Airlock"
+ },
+/turf/closed/wall/almayer/research/containment/wall/purple{
+ dir = 1
+ },
+/area/almayer/medical/containment/cell)
+"aoK" = (
+/obj/structure/surface/table/almayer,
+/obj/effect/decal/warning_stripes{
+ icon_state = "W"
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "S"
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "E";
+ pixel_x = 1
+ },
+/obj/structure/machinery/door_display/research_cell{
+ dir = 1;
+ id = "Containment Cell 5";
+ name = "Cell 5 Control";
+ pixel_x = 4;
+ pixel_y = -3
+ },
+/obj/structure/machinery/door_control{
+ id = "W_Containment Cell 5";
+ name = "Containment Lockdown";
+ pixel_x = -8;
+ pixel_y = -3;
+ req_one_access_txt = "19;28"
+ },
+/turf/open/floor/almayer{
+ icon_state = "sterile_green"
+ },
+/area/almayer/medical/containment)
"aoL" = (
/obj/structure/bed/chair/office/dark,
/turf/open/floor/almayer,
@@ -4800,6 +4885,43 @@
icon_state = "orange"
},
/area/almayer/engineering/engineering_workshop/hangar)
+"apR" = (
+/obj/structure/pipes/vents/pump{
+ name = "Secure Air Vent";
+ welded = 1
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "N";
+ pixel_y = 1
+ },
+/obj/structure/machinery/alarm/almayer{
+ dir = 1
+ },
+/turf/open/floor/almayer{
+ icon_state = "sterile_green"
+ },
+/area/almayer/medical/containment)
+"apS" = (
+/obj/effect/decal/warning_stripes{
+ icon_state = "N";
+ pixel_y = 1
+ },
+/obj/structure/surface/rack{
+ density = 0;
+ pixel_y = 16
+ },
+/obj/item/storage/xeno_tag_case/full{
+ pixel_y = 15
+ },
+/obj/item/device/camera{
+ pixel_x = -3;
+ pixel_y = 22
+ },
+/turf/open/floor/almayer{
+ dir = 1;
+ icon_state = "sterile_green_side"
+ },
+/area/almayer/medical/containment)
"apT" = (
/obj/structure/pipes/standard/simple/hidden/supply,
/obj/structure/machinery/door/airlock/almayer/engineering/reinforced/OT{
@@ -4810,6 +4932,22 @@
icon_state = "test_floor4"
},
/area/almayer/engineering/engineering_workshop/hangar)
+"apU" = (
+/obj/structure/machinery/door/poddoor/shutters/almayer{
+ dir = 4;
+ id = "W_Containment Cell 2";
+ name = "\improper Containment Cell 5";
+ unacidable = 1
+ },
+/obj/structure/machinery/door/poddoor/almayer/open{
+ dir = 4;
+ id = "Containment Breach";
+ name = "\improper Secure Airlock"
+ },
+/turf/closed/wall/almayer/research/containment/wall/purple{
+ dir = 8
+ },
+/area/almayer/medical/containment/cell)
"apV" = (
/obj/structure/machinery/light{
dir = 8
@@ -4869,6 +5007,19 @@
icon_state = "plate"
},
/area/almayer/hull/lower_hull/l_f_s)
+"aqd" = (
+/obj/structure/disposalpipe/trunk{
+ dir = 1
+ },
+/obj/structure/machinery/disposal/delivery{
+ density = 0;
+ desc = "A pneumatic delivery unit. Sends items to the requisitions.";
+ icon_state = "delivery_engi";
+ name = "Requisitions Delivery Unit";
+ pixel_y = 28
+ },
+/turf/open/floor/almayer,
+/area/almayer/engineering/engineering_workshop/hangar)
"aqe" = (
/obj/structure/disposalpipe/segment{
dir = 1;
@@ -5052,6 +5203,14 @@
icon_state = "silver"
},
/area/almayer/command/cic)
+"aqG" = (
+/obj/effect/decal/warning_stripes{
+ icon_state = "S"
+ },
+/turf/open/floor/almayer{
+ icon_state = "plate"
+ },
+/area/almayer/medical/medical_science)
"aqJ" = (
/turf/open/floor/almayer{
dir = 5;
@@ -5074,12 +5233,41 @@
icon_state = "plate"
},
/area/almayer/command/cic)
-"aqR" = (
-/turf/open/floor/almayer{
+"aqP" = (
+/obj/structure/machinery/door/airlock/almayer/research/glass/reinforced{
dir = 1;
- icon_state = "sterile_green_side"
+ id = "Containment Cell 1";
+ locked = 1;
+ name = "\improper Containment Cell 1"
},
-/area/almayer/medical/medical_science)
+/obj/structure/machinery/door/poddoor/shutters/almayer{
+ id = "Containment Cell 1";
+ name = "\improper Containment Cell 1";
+ unacidable = 1
+ },
+/obj/structure/pipes/standard/simple/hidden/supply,
+/obj/effect/decal/warning_stripes{
+ icon_state = "E";
+ pixel_x = 1
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "E";
+ pixel_x = 1
+ },
+/obj/structure/machinery/door/poddoor/almayer/open{
+ id = "Containment Breach";
+ name = "\improper Secure Airlock"
+ },
+/turf/open/floor/almayer{
+ icon_state = "test_floor4"
+ },
+/area/almayer/medical/containment/cell)
+"aqS" = (
+/obj/structure/pipes/standard/simple/hidden/supply,
+/turf/open/floor/almayer{
+ icon_state = "sterile_green"
+ },
+/area/almayer/medical/containment)
"aqT" = (
/obj/structure/surface/table/almayer,
/obj/item/tool/hand_labeler{
@@ -5538,6 +5726,17 @@
allow_construction = 0
},
/area/almayer/stair_clone/upper)
+"asn" = (
+/obj/structure/window/framed/almayer/white,
+/obj/structure/machinery/door/firedoor/border_only/almayer{
+ dir = 2
+ },
+/obj/structure/machinery/door/poddoor/almayer/open{
+ id = "Containment Breach";
+ name = "\improper Secure Airlock"
+ },
+/turf/open/floor/plating,
+/area/almayer/medical/upper_medical)
"aso" = (
/turf/open/floor/almayer{
dir = 8;
@@ -5740,6 +5939,16 @@
icon_state = "greencorner"
},
/area/almayer/hallways/starboard_hallway)
+"asQ" = (
+/obj/structure/surface/rack,
+/obj/item/device/radio/marine,
+/obj/item/device/radio/marine,
+/obj/item/device/radio/marine,
+/obj/item/folded_tent/cmd,
+/turf/open/floor/almayer{
+ icon_state = "redfull"
+ },
+/area/almayer/command/cic)
"asR" = (
/turf/open/floor/almayer{
icon_state = "orange"
@@ -5805,6 +6014,27 @@
icon_state = "plating"
},
/area/almayer/command/airoom)
+"ata" = (
+/obj/structure/machinery/light{
+ dir = 8
+ },
+/obj/structure/ladder{
+ height = 2;
+ id = "cicladder1"
+ },
+/obj/structure/sign/safety/ladder{
+ pixel_x = 23;
+ pixel_y = -32
+ },
+/turf/open/floor/plating/almayer,
+/area/almayer/medical/medical_science)
+"atb" = (
+/obj/structure/ladder{
+ height = 2;
+ id = "cicladder2"
+ },
+/turf/open/floor/plating/almayer,
+/area/almayer/medical/medical_science)
"atc" = (
/turf/open/floor/almayer{
dir = 4;
@@ -6811,16 +7041,35 @@
/turf/open/floor/almayer,
/area/almayer/hallways/aft_hallway)
"avF" = (
+/obj/effect/decal/warning_stripes{
+ icon_state = "NW-out";
+ pixel_x = -1;
+ pixel_y = 1
+ },
/turf/open/floor/almayer{
+ dir = 9;
icon_state = "sterile_green_side"
},
-/area/almayer/medical/medical_science)
+/area/almayer/medical/containment)
"avG" = (
/turf/open/floor/almayer{
- dir = 10;
+ dir = 6;
icon_state = "sterile_green_side"
},
-/area/almayer/medical/medical_science)
+/area/almayer/medical/containment)
+"avH" = (
+/obj/effect/decal/warning_stripes{
+ icon_state = "N";
+ pixel_y = 1
+ },
+/obj/structure/machinery/light{
+ dir = 1
+ },
+/turf/open/floor/almayer{
+ dir = 1;
+ icon_state = "sterile_green_side"
+ },
+/area/almayer/medical/containment)
"avJ" = (
/obj/item/clothing/head/helmet/marine{
pixel_x = 16;
@@ -7211,6 +7460,44 @@
icon_state = "mono"
},
/area/almayer/medical/upper_medical)
+"awQ" = (
+/obj/structure/surface/table/almayer,
+/obj/item/cell/high{
+ pixel_x = -8;
+ pixel_y = 8
+ },
+/obj/item/cell/high{
+ pixel_x = -8;
+ pixel_y = 8
+ },
+/obj/item/cell/high{
+ pixel_x = -8;
+ pixel_y = -2
+ },
+/obj/item/cell/high{
+ pixel_x = -8;
+ pixel_y = -2
+ },
+/obj/item/device/multitool{
+ pixel_x = 8
+ },
+/obj/item/tool/screwdriver{
+ pixel_x = -3;
+ pixel_y = 4
+ },
+/obj/structure/machinery/power/apc/almayer{
+ dir = 1
+ },
+/turf/open/floor/almayer{
+ icon_state = "sterile_green"
+ },
+/area/almayer/medical/hydroponics)
+"awR" = (
+/obj/structure/pipes/standard/manifold/hidden/supply,
+/turf/open/floor/almayer{
+ icon_state = "sterile_green"
+ },
+/area/almayer/medical/containment)
"awS" = (
/obj/structure/window/framed/almayer,
/obj/structure/machinery/door/poddoor/shutters/almayer/open{
@@ -7293,6 +7580,25 @@
icon_state = "dark_sterile"
},
/area/almayer/medical/upper_medical)
+"axn" = (
+/obj/structure/sign/safety/rewire{
+ layer = 2.4;
+ pixel_x = 8;
+ pixel_y = 32
+ },
+/obj/structure/reagent_dispensers/watertank,
+/obj/item/reagent_container/glass/beaker{
+ pixel_x = 6;
+ pixel_y = 7
+ },
+/obj/item/reagent_container/glass/beaker/large{
+ pixel_x = -6;
+ pixel_y = 8
+ },
+/turf/open/floor/almayer{
+ icon_state = "mono"
+ },
+/area/almayer/medical/hydroponics)
"axo" = (
/obj/structure/window/framed/almayer,
/turf/open/floor/plating,
@@ -7817,6 +8123,16 @@
icon_state = "plate"
},
/area/almayer/medical/morgue)
+"ayX" = (
+/obj/structure/surface/table/almayer,
+/obj/item/tool/extinguisher,
+/obj/structure/sign/catclock{
+ pixel_y = 32
+ },
+/turf/open/floor/almayer{
+ icon_state = "sterile_green"
+ },
+/area/almayer/medical/medical_science)
"azb" = (
/obj/effect/decal/warning_stripes{
icon_state = "E";
@@ -8228,6 +8544,19 @@
},
/turf/open/floor/almayer,
/area/almayer/command/cichallway)
+"aAr" = (
+/obj/structure/machinery/camera/autoname/almayer{
+ name = "ship-grade camera"
+ },
+/obj/structure/surface/rack,
+/obj/item/storage/box/botanydisk,
+/obj/item/storage/box/botanydisk,
+/obj/item/storage/box/botanydisk,
+/obj/item/storage/box/botanydisk,
+/turf/open/floor/almayer{
+ icon_state = "mono"
+ },
+/area/almayer/medical/hydroponics)
"aAv" = (
/obj/effect/projector{
name = "Almayer_Up4";
@@ -8386,6 +8715,15 @@
/obj/structure/surface/table/reinforced/black,
/turf/open/floor/almayer,
/area/almayer/command/cic)
+"aAT" = (
+/obj/effect/decal/warning_stripes{
+ icon_state = "W";
+ pixel_x = -1
+ },
+/turf/open/floor/almayer{
+ icon_state = "sterile_green"
+ },
+/area/almayer/medical/containment)
"aAW" = (
/obj/effect/decal/warning_stripes{
icon_state = "W"
@@ -8454,6 +8792,22 @@
icon_state = "sterile_green_side"
},
/area/almayer/medical/morgue)
+"aBe" = (
+/obj/structure/machinery/door/poddoor/shutters/almayer{
+ dir = 4;
+ id = "W_Containment Cell 2";
+ name = "\improper Containment Cell 5";
+ unacidable = 1
+ },
+/obj/structure/machinery/door/poddoor/almayer/open{
+ dir = 4;
+ id = "Containment Breach";
+ name = "\improper Secure Airlock"
+ },
+/turf/closed/wall/almayer/research/containment/wall/purple{
+ dir = 4
+ },
+/area/almayer/medical/containment/cell)
"aBf" = (
/obj/structure/machinery/door/airlock/almayer/secure/reinforced{
name = "Telecommunications";
@@ -8717,6 +9071,13 @@
icon_state = "silver"
},
/area/almayer/command/cic)
+"aBT" = (
+/obj/structure/bed/chair/comfy,
+/turf/open/floor/almayer{
+ dir = 1;
+ icon_state = "silver"
+ },
+/area/almayer/living/auxiliary_officer_office)
"aBV" = (
/obj/structure/surface/table/reinforced/almayer_B,
/obj/structure/machinery/computer/overwatch/almayer{
@@ -8870,6 +9231,12 @@
icon_state = "sterile_green_side"
},
/area/almayer/medical/upper_medical)
+"aCt" = (
+/obj/structure/bed/sofa/south/white/right,
+/turf/open/floor/almayer{
+ icon_state = "sterile_green"
+ },
+/area/almayer/medical/medical_science)
"aCu" = (
/obj/structure/sink{
pixel_y = 24
@@ -8892,6 +9259,42 @@
/obj/structure/machinery/door/firedoor/border_only/almayer,
/turf/open/floor/plating,
/area/almayer/medical/morgue)
+"aCC" = (
+/turf/open/floor/almayer{
+ icon_state = "sterile_green"
+ },
+/area/almayer/medical/medical_science)
+"aCD" = (
+/obj/structure/pipes/vents/pump,
+/obj/structure/machinery/computer/cameras/almayer{
+ dir = 4;
+ pixel_x = -16
+ },
+/turf/open/floor/almayer{
+ dir = 10;
+ icon_state = "sterile_green_side"
+ },
+/area/almayer/medical/medical_science)
+"aCR" = (
+/obj/structure/machinery/door_control{
+ id = "containmentlockdown_S";
+ name = "Containment Lockdown";
+ pixel_y = 28;
+ req_one_access_txt = "19;28"
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "N";
+ pixel_y = 1
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "W";
+ pixel_x = -1
+ },
+/turf/open/floor/almayer{
+ dir = 1;
+ icon_state = "sterile_green_side"
+ },
+/area/almayer/medical/containment)
"aCX" = (
/obj/effect/step_trigger/clone_cleaner,
/obj/effect/decal/warning_stripes{
@@ -9410,6 +9813,14 @@
icon_state = "bluecorner"
},
/area/almayer/hallways/aft_hallway)
+"aFa" = (
+/obj/effect/decal/warning_stripes{
+ icon_state = "S"
+ },
+/turf/open/floor/almayer{
+ icon_state = "sterile_green_side"
+ },
+/area/almayer/medical/containment)
"aFf" = (
/obj/item/reagent_container/glass/beaker/bluespace,
/obj/structure/machinery/chem_dispenser/research,
@@ -10109,6 +10520,21 @@
icon_state = "silver"
},
/area/almayer/command/cichallway)
+"aIo" = (
+/obj/structure/window/framed/almayer/white,
+/obj/structure/machinery/door/firedoor/border_only/almayer,
+/obj/structure/machinery/door/poddoor/shutters/almayer/open{
+ dir = 8;
+ id = "researchlockdownext_windoor";
+ name = "\improper Research Windoor Shutter"
+ },
+/obj/structure/machinery/door/poddoor/almayer/open{
+ dir = 4;
+ id = "Containment Breach";
+ name = "\improper Secure Airlock"
+ },
+/turf/open/floor/plating,
+/area/almayer/medical/medical_science)
"aIq" = (
/obj/structure/machinery/power/apc/almayer{
dir = 1
@@ -10160,10 +10586,54 @@
/obj/effect/decal/cleanable/blood/oil,
/turf/open/floor/almayer,
/area/almayer/lifeboat_pumps/north1)
+"aIC" = (
+/obj/structure/surface/table/almayer,
+/obj/effect/decal/warning_stripes{
+ icon_state = "S"
+ },
+/obj/structure/transmitter/rotary{
+ name = "Researcher Office Telephone";
+ phone_category = "Almayer";
+ phone_id = "Research";
+ pixel_y = 6
+ },
+/obj/item/reagent_container/glass/beaker{
+ pixel_x = 6;
+ pixel_y = -1
+ },
+/obj/item/reagent_container/glass/beaker/large{
+ pixel_x = -6
+ },
+/turf/open/floor/almayer{
+ icon_state = "sterile_green_side"
+ },
+/area/almayer/medical/medical_science)
+"aID" = (
+/obj/structure/machinery/light{
+ dir = 1
+ },
+/turf/open/floor/almayer{
+ icon_state = "mono"
+ },
+/area/almayer/medical/hydroponics)
"aIM" = (
/obj/structure/largecrate/random,
/turf/open/floor/plating/plating_catwalk,
/area/almayer/hull/upper_hull/u_a_s)
+"aIP" = (
+/obj/effect/decal/warning_stripes{
+ icon_state = "W"
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "SE-out";
+ pixel_x = 1;
+ pixel_y = -1
+ },
+/turf/open/floor/almayer{
+ dir = 8;
+ icon_state = "sterile_green_corner"
+ },
+/area/almayer/medical/containment)
"aIQ" = (
/obj/structure/machinery/door/firedoor/border_only/almayer,
/obj/structure/machinery/door/airlock/almayer/command/reinforced{
@@ -10349,6 +10819,19 @@
icon_state = "orange"
},
/area/almayer/engineering/upper_engineering)
+"aJn" = (
+/obj/structure/machinery/camera/autoname/almayer/containment{
+ dir = 1;
+ name = "ship-grade camera"
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "S"
+ },
+/turf/open/floor/almayer{
+ dir = 4;
+ icon_state = "sterile_green_corner"
+ },
+/area/almayer/medical/containment)
"aJp" = (
/obj/structure/flora/pottedplant{
icon_state = "pottedplant_22";
@@ -10773,21 +11256,12 @@
},
/turf/open/floor/almayer,
/area/almayer/living/numbertwobunks)
-"aLv" = (
-/obj/structure/surface/table/reinforced/prison,
-/obj/structure/closet/secure_closet/surgical{
- pixel_x = -30
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "S"
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "W"
- },
-/turf/open/floor/almayer/research/containment/corner{
- dir = 4
+"aLz" = (
+/turf/open/floor/almayer{
+ dir = 8;
+ icon_state = "silver"
},
-/area/almayer/medical/containment/cell)
+/area/almayer/living/auxiliary_officer_office)
"aLB" = (
/turf/closed/wall/almayer,
/area/almayer/hallways/starboard_hallway)
@@ -10860,6 +11334,62 @@
icon_state = "plate"
},
/area/almayer/hallways/aft_hallway)
+"aLZ" = (
+/obj/structure/surface/table/almayer,
+/obj/item/tool/pen,
+/obj/item/paper_bin/wy,
+/obj/structure/machinery/computer/cameras/containment{
+ dir = 4;
+ layer = 2.981;
+ name = "Research Cameras";
+ pixel_y = 16
+ },
+/obj/item/clothing/accessory/stethoscope,
+/turf/open/floor/almayer{
+ dir = 8;
+ icon_state = "sterile_green_corner"
+ },
+/area/almayer/medical/upper_medical)
+"aMd" = (
+/obj/structure/filingcabinet/seeds{
+ density = 0;
+ pixel_x = 5;
+ pixel_y = 16
+ },
+/obj/structure/filingcabinet/disk{
+ density = 0;
+ pixel_x = -11;
+ pixel_y = 16
+ },
+/turf/open/floor/almayer{
+ icon_state = "mono"
+ },
+/area/almayer/medical/hydroponics)
+"aMg" = (
+/obj/structure/sign/safety/intercom{
+ layer = 2.9;
+ pixel_x = -6;
+ pixel_y = 29
+ },
+/obj/structure/machinery/botany/extractor{
+ density = 0;
+ pixel_x = 15;
+ pixel_y = 16
+ },
+/obj/item/device/flashlight/pen{
+ pixel_x = 14;
+ pixel_y = 15
+ },
+/obj/structure/machinery/vending/hydroseeds{
+ density = 0;
+ pixel_x = -7;
+ pixel_y = 16;
+ req_access_txt = "28"
+ },
+/turf/open/floor/almayer{
+ icon_state = "mono"
+ },
+/area/almayer/medical/hydroponics)
"aMh" = (
/obj/structure/machinery/light{
dir = 8
@@ -11168,16 +11698,6 @@
icon_state = "cargo_arrow"
},
/area/almayer/squads/alpha_bravo_shared)
-"aNF" = (
-/obj/effect/decal/warning_stripes{
- icon_state = "W";
- pixel_x = -1
- },
-/turf/open/floor/almayer{
- dir = 8;
- icon_state = "sterile_green_side"
- },
-/area/almayer/medical/medical_science)
"aNG" = (
/turf/open/floor/almayer{
dir = 4;
@@ -11216,6 +11736,41 @@
},
/turf/open/floor/plating/plating_catwalk,
/area/almayer/squads/alpha)
+"aNY" = (
+/obj/effect/decal/warning_stripes{
+ icon_state = "S"
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "W";
+ pixel_x = -1
+ },
+/turf/open/floor/almayer{
+ icon_state = "sterile_green_side"
+ },
+/area/almayer/medical/containment)
+"aOd" = (
+/turf/open/floor/almayer{
+ dir = 5;
+ icon_state = "sterile_green_side"
+ },
+/area/almayer/medical/containment)
+"aOe" = (
+/obj/structure/surface/table/reinforced/prison,
+/obj/item/reagent_container/spray/cleaner{
+ desc = "Someone has crossed out the Space from Space Cleaner and written in Surgery. 'Do not remove under punishment of death!!!' is scrawled on the back.";
+ name = "Surgery Cleaner"
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "S"
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "E";
+ pixel_x = 1
+ },
+/turf/open/floor/almayer/research/containment/corner{
+ dir = 1
+ },
+/area/almayer/medical/containment/cell)
"aOg" = (
/obj/structure/bed/sofa/south/grey{
pixel_y = 12
@@ -11226,26 +11781,6 @@
/obj/effect/landmark/start/nurse,
/turf/open/floor/plating/plating_catwalk,
/area/almayer/living/offices)
-"aOm" = (
-/obj/structure/largecrate/supply/supplies/mre{
- desc = "A supply crate containing everything you need to stop a CLF uprising.";
- name = "\improper USCM crate 'FOB supplies'"
- },
-/obj/structure/sign/arcturianstopsign{
- pixel_y = 32
- },
-/obj/item/folded_tent/big{
- pixel_x = -6;
- pixel_y = 10
- },
-/obj/item/storage/box/mousetraps{
- pixel_x = 3;
- pixel_y = 12
- },
-/turf/open/floor/almayer{
- icon_state = "plate"
- },
-/area/almayer/living/port_emb)
"aOq" = (
/obj/structure/surface/table/almayer,
/obj/item/tool/extinguisher,
@@ -11593,6 +12128,16 @@
icon_state = "blue"
},
/area/almayer/command/cic)
+"aPJ" = (
+/obj/effect/decal/warning_stripes{
+ icon_state = "E";
+ pixel_x = 1
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "S"
+ },
+/turf/open/floor/almayer/research/containment/corner2,
+/area/almayer/medical/containment/cell)
"aPK" = (
/obj/structure/sign/nosmoking_1,
/turf/closed/wall/almayer,
@@ -11785,6 +12330,42 @@
icon_state = "plate"
},
/area/almayer/living/grunt_rnr)
+"aQZ" = (
+/obj/structure/machinery/botany/editor{
+ density = 0;
+ pixel_x = 5;
+ pixel_y = 16
+ },
+/obj/item/clothing/glasses/science{
+ pixel_x = 5;
+ pixel_y = 24
+ },
+/turf/open/floor/almayer{
+ icon_state = "mono"
+ },
+/area/almayer/medical/hydroponics)
+"aRd" = (
+/obj/structure/surface/table/reinforced/prison,
+/obj/structure/machinery/door/window/westright,
+/obj/structure/machinery/door/firedoor/border_only/almayer,
+/obj/structure/machinery/door/window/westright{
+ dir = 4;
+ req_access_txt = "28"
+ },
+/obj/structure/machinery/door/poddoor/shutters/almayer/open{
+ dir = 8;
+ id = "researchlockdownext_windoor";
+ name = "\improper Research Windoor Shutter"
+ },
+/obj/structure/machinery/door/poddoor/almayer/open{
+ dir = 4;
+ id = "Containment Breach";
+ name = "\improper Secure Airlock"
+ },
+/turf/open/floor/almayer{
+ icon_state = "test_floor4"
+ },
+/area/almayer/medical/medical_science)
"aRi" = (
/obj/structure/bed/chair/office/dark{
dir = 1
@@ -12029,11 +12610,50 @@
icon_state = "sterile_green_side"
},
/area/almayer/medical/upper_medical)
+"aSl" = (
+/obj/structure/machinery/light,
+/obj/structure/machinery/cm_vending/sorted/medical,
+/obj/effect/decal/warning_stripes{
+ icon_state = "E";
+ pixel_x = 1
+ },
+/turf/open/floor/almayer{
+ dir = 4;
+ icon_state = "sterile_green_corner"
+ },
+/area/almayer/medical/medical_science)
"aSm" = (
/turf/open/floor/almayer{
icon_state = "plate"
},
/area/almayer/hull/lower_hull/l_m_s)
+"aSn" = (
+/obj/item/stack/sheet/mineral/plastic{
+ amount = 15
+ },
+/obj/item/stack/sheet/glass{
+ amount = 20;
+ pixel_x = 3;
+ pixel_y = 3
+ },
+/turf/open/floor/almayer{
+ icon_state = "test_floor4"
+ },
+/area/almayer/medical/hydroponics)
+"aSo" = (
+/obj/effect/decal/warning_stripes{
+ icon_state = "SE-out";
+ pixel_x = 1
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "SW-out";
+ pixel_x = -1
+ },
+/obj/structure/pipes/standard/simple/hidden/supply{
+ dir = 4
+ },
+/turf/open/floor/plating/plating_catwalk,
+/area/almayer/medical/hydroponics)
"aSq" = (
/obj/structure/surface/table/reinforced/almayer_B,
/obj/structure/machinery/chem_dispenser/soda,
@@ -13014,34 +13634,6 @@
icon_state = "test_floor4"
},
/area/almayer/squads/alpha)
-"aWU" = (
-/obj/structure/machinery/door/airlock/almayer/research/glass/reinforced{
- dir = 1;
- id = "Containment Cell 5";
- locked = 1;
- name = "\improper Containment Cell 5"
- },
-/obj/structure/machinery/door/poddoor/shutters/almayer{
- id = "Containment Cell 5";
- name = "\improper Containment Cell 5";
- unacidable = 1
- },
-/obj/structure/pipes/standard/simple/hidden/supply,
-/obj/effect/decal/warning_stripes{
- icon_state = "W"
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "E";
- pixel_x = 1
- },
-/obj/structure/machinery/door/poddoor/almayer/open{
- id = "Containment Breach";
- name = "\improper Secure Airlock"
- },
-/turf/open/floor/almayer{
- icon_state = "test_floor4"
- },
-/area/almayer/medical/containment/cell)
"aWV" = (
/obj/structure/pipes/standard/manifold/hidden/supply{
dir = 8
@@ -13123,6 +13715,27 @@
/obj/structure/pipes/standard/simple/hidden/supply,
/turf/open/floor/almayer,
/area/almayer/hallways/stern_hallway)
+"aXK" = (
+/obj/structure/machinery/status_display{
+ pixel_y = 30
+ },
+/obj/structure/surface/table/almayer,
+/obj/item/device/taperecorder{
+ pixel_x = 7;
+ pixel_y = 7
+ },
+/obj/item/device/camera{
+ pixel_x = -9;
+ pixel_y = 16
+ },
+/obj/item/device/camera_film{
+ pixel_x = 4;
+ pixel_y = -2
+ },
+/turf/open/floor/almayer{
+ allow_construction = 0
+ },
+/area/almayer/shipboard/brig/processing)
"aXQ" = (
/obj/structure/sign/safety/nonpress_0g{
pixel_x = 8;
@@ -15052,11 +15665,6 @@
icon_state = "test_floor4"
},
/area/almayer/living/chapel)
-"bgN" = (
-/turf/open/floor/almayer/research/containment/floor2{
- dir = 8
- },
-/area/almayer/medical/containment/cell)
"bgO" = (
/obj/structure/pipes/standard/simple/hidden/supply{
dir = 4
@@ -15301,6 +15909,24 @@
icon_state = "plate"
},
/area/almayer/hull/upper_hull)
+"biF" = (
+/obj/structure/surface/table/reinforced/prison,
+/obj/item/roller/surgical,
+/obj/item/roller/surgical,
+/obj/item/roller/surgical,
+/obj/item/reagent_container/spray/cleaner{
+ desc = "Someone has crossed out the Space from Space Cleaner and written in Surgery. 'Do not remove under punishment of death!!!' is scrawled on the back.";
+ name = "Surgery Cleaner"
+ },
+/obj/item/folded_tent/med{
+ pixel_x = -8;
+ pixel_y = 14
+ },
+/turf/open/floor/almayer{
+ dir = 8;
+ icon_state = "sterile_green_corner"
+ },
+/area/almayer/medical/lower_medical_medbay)
"biL" = (
/obj/structure/platform{
dir = 4
@@ -15612,6 +16238,17 @@
icon_state = "plate"
},
/area/almayer/hull/upper_hull/u_a_s)
+"bkT" = (
+/obj/effect/decal/warning_stripes{
+ icon_state = "S"
+ },
+/obj/structure/pipes/standard/simple/hidden/supply{
+ dir = 4
+ },
+/turf/open/floor/almayer{
+ icon_state = "mono"
+ },
+/area/almayer/medical/hydroponics)
"bkU" = (
/obj/effect/decal/warning_stripes{
icon_state = "W"
@@ -17305,6 +17942,15 @@
},
/turf/open/floor/carpet,
/area/almayer/command/corporateliason)
+"btC" = (
+/obj/structure/pipes/standard/manifold/hidden/supply{
+ dir = 1
+ },
+/obj/structure/disposalpipe/segment,
+/turf/open/floor/almayer{
+ icon_state = "sterile_green_side"
+ },
+/area/almayer/medical/medical_science)
"btD" = (
/turf/open/floor/almayer,
/area/almayer/shipboard/port_missiles)
@@ -18328,35 +18974,6 @@
icon_state = "dark_sterile"
},
/area/almayer/medical/lockerroom)
-"bzh" = (
-/obj/structure/machinery/door/airlock/almayer/research/glass/reinforced{
- dir = 1;
- id = "Containment Cell 1";
- locked = 1;
- name = "\improper Containment Cell 1"
- },
-/obj/structure/machinery/door/poddoor/shutters/almayer{
- id = "Containment Cell 1";
- name = "\improper Containment Cell 1";
- unacidable = 1
- },
-/obj/structure/pipes/standard/simple/hidden/supply,
-/obj/effect/decal/warning_stripes{
- icon_state = "E";
- pixel_x = 1
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "E";
- pixel_x = 1
- },
-/obj/structure/machinery/door/poddoor/almayer/open{
- id = "Containment Breach";
- name = "\improper Secure Airlock"
- },
-/turf/open/floor/almayer{
- icon_state = "test_floor4"
- },
-/area/almayer/medical/containment/cell)
"bzj" = (
/obj/structure/machinery/pipedispenser,
/turf/open/floor/almayer{
@@ -18705,15 +19322,6 @@
icon_state = "silver"
},
/area/almayer/living/cryo_cells)
-"bAZ" = (
-/obj/structure/machinery/camera/autoname/almayer{
- dir = 8;
- name = "ship-grade camera"
- },
-/turf/open/floor/almayer{
- icon_state = "plate"
- },
-/area/almayer/living/tankerbunks)
"bBa" = (
/turf/open/floor/almayer{
dir = 4;
@@ -18893,20 +19501,6 @@
icon_state = "green"
},
/area/almayer/hallways/aft_hallway)
-"bBD" = (
-/obj/structure/bed/chair{
- dir = 4
- },
-/obj/structure/machinery/firealarm{
- pixel_y = 28
- },
-/obj/structure/sign/safety/maint{
- pixel_x = -17
- },
-/turf/open/floor/almayer{
- icon_state = "plate"
- },
-/area/almayer/living/tankerbunks)
"bBN" = (
/obj/structure/machinery/light,
/turf/open/floor/plating/plating_catwalk,
@@ -19198,14 +19792,6 @@
icon_state = "plate"
},
/area/almayer/shipboard/weapon_room)
-"bDb" = (
-/obj/structure/pipes/standard/simple/hidden/supply{
- dir = 4
- },
-/turf/open/floor/almayer{
- icon_state = "mono"
- },
-/area/almayer/medical/hydroponics)
"bDn" = (
/obj/structure/pipes/standard/simple/hidden/supply,
/turf/closed/wall/almayer,
@@ -19810,10 +20396,6 @@
icon_state = "silverfull"
},
/area/almayer/living/cryo_cells)
-"bFr" = (
-/obj/structure/pipes/standard/simple/hidden/supply,
-/turf/open/floor/plating/plating_catwalk,
-/area/almayer/living/tankerbunks)
"bFs" = (
/obj/structure/machinery/cm_vending/sorted/cargo_guns/squad_prep,
/turf/open/floor/almayer{
@@ -19859,25 +20441,10 @@
icon_state = "plate"
},
/area/almayer/command/lifeboat)
-"bFG" = (
-/obj/structure/pipes/standard/simple/hidden/supply,
-/turf/open/floor/almayer{
- icon_state = "sterile_green"
- },
-/area/almayer/medical/containment)
"bFJ" = (
/obj/docking_port/stationary/marine_dropship/almayer_hangar_2,
/turf/open/floor/plating,
/area/almayer/hallways/hangar)
-"bFK" = (
-/obj/structure/machinery/light{
- dir = 1
- },
-/obj/structure/bed/chair,
-/turf/open/floor/almayer{
- icon_state = "sterile_green"
- },
-/area/almayer/medical/medical_science)
"bFP" = (
/obj/vehicle/powerloader{
dir = 8
@@ -20510,22 +21077,6 @@
},
/turf/open/floor/carpet,
/area/almayer/living/commandbunks)
-"bIA" = (
-/obj/structure/sink{
- dir = 4;
- pixel_x = 11
- },
-/obj/structure/mirror{
- pixel_x = 29
- },
-/obj/structure/machinery/light{
- unacidable = 1;
- unslashable = 1
- },
-/turf/open/floor/almayer{
- icon_state = "plate"
- },
-/area/almayer/living/tankerbunks)
"bII" = (
/obj/structure/sign/safety/distribution_pipes{
pixel_x = 8;
@@ -20553,6 +21104,12 @@
icon_state = "kitchen"
},
/area/almayer/living/grunt_rnr)
+"bIM" = (
+/obj/structure/pipes/standard/simple/hidden/supply{
+ dir = 4
+ },
+/turf/open/floor/plating/plating_catwalk,
+/area/almayer/medical/hydroponics)
"bIN" = (
/obj/structure/bed/chair/office/dark,
/turf/open/floor/plating/plating_catwalk,
@@ -20656,24 +21213,6 @@
icon_state = "orange"
},
/area/almayer/engineering/lower_engineering)
-"bJl" = (
-/obj/structure/machinery/door/airlock/almayer/generic{
- dir = 1;
- name = "\improper Tanker Quarters";
- req_one_access_txt = "19;27"
- },
-/obj/structure/pipes/standard/simple/hidden/supply,
-/obj/structure/machinery/door/firedoor/border_only/almayer{
- dir = 1
- },
-/obj/structure/machinery/door/poddoor/almayer/open{
- id = "Hangar Lockdown";
- name = "\improper Hangar Lockdown Blast Door"
- },
-/turf/open/floor/almayer{
- icon_state = "test_floor4"
- },
-/area/almayer/living/tankerbunks)
"bJo" = (
/turf/closed/wall/almayer,
/area/almayer/hallways/repair_bay)
@@ -21320,6 +21859,15 @@
icon_state = "red"
},
/area/almayer/shipboard/weapon_room)
+"bLN" = (
+/obj/structure/machinery/firealarm{
+ dir = 8;
+ pixel_x = -24
+ },
+/turf/open/floor/almayer{
+ icon_state = "redcorner"
+ },
+/area/almayer/shipboard/brig/processing)
"bLO" = (
/obj/structure/bed/chair{
dir = 1
@@ -21718,16 +22266,6 @@
icon_state = "red"
},
/area/almayer/shipboard/navigation)
-"bNv" = (
-/obj/structure/surface/table/almayer,
-/obj/structure/machinery/computer/secure_data{
- dir = 8
- },
-/turf/open/floor/almayer{
- dir = 1;
- icon_state = "red"
- },
-/area/almayer/shipboard/brig/evidence_storage)
"bNw" = (
/obj/structure/pipes/standard/manifold/hidden/supply{
dir = 1
@@ -22282,6 +22820,9 @@
icon_state = "plate"
},
/area/almayer/squads/req)
+"bPF" = (
+/turf/closed/wall/almayer/white/outer_tile,
+/area/almayer/medical/medical_science)
"bPG" = (
/obj/effect/decal/warning_stripes{
icon_state = "N";
@@ -22622,6 +23163,16 @@
icon_state = "red"
},
/area/almayer/shipboard/brig/lobby)
+"bRo" = (
+/obj/effect/landmark/late_join/working_joe,
+/obj/effect/landmark/start/working_joe,
+/obj/structure/machinery/light{
+ dir = 8
+ },
+/turf/open/floor/almayer/no_build{
+ icon_state = "ai_floors"
+ },
+/area/almayer/command/airoom)
"bRr" = (
/obj/structure/machinery/fuelcell_recycler,
/turf/open/floor/almayer{
@@ -22924,6 +23475,18 @@
icon_state = "plate"
},
/area/almayer/hallways/hangar)
+"bST" = (
+/obj/structure/closet/secure_closet/hydroresearch,
+/obj/item/reagent_container/glass/watertank,
+/obj/item/reagent_container/glass/watertank,
+/obj/effect/decal/warning_stripes{
+ icon_state = "E";
+ pixel_x = 1
+ },
+/turf/open/floor/almayer{
+ icon_state = "mono"
+ },
+/area/almayer/medical/hydroponics)
"bSY" = (
/obj/structure/disposalpipe/junction{
dir = 4
@@ -22967,14 +23530,6 @@
},
/turf/open/space,
/area/space)
-"bTh" = (
-/obj/structure/machinery/chem_master{
- vial_maker = 1
- },
-/turf/open/floor/almayer{
- icon_state = "mono"
- },
-/area/almayer/medical/medical_science)
"bTi" = (
/obj/effect/decal/warning_stripes{
icon_state = "SE-out";
@@ -23137,36 +23692,10 @@
icon_state = "plate"
},
/area/almayer/hull/lower_hull/l_m_s)
-"bTR" = (
-/obj/structure/machinery/light{
- dir = 1
- },
-/obj/structure/surface/table/almayer,
-/obj/item/paper_bin,
-/obj/item/tool/pen,
-/obj/item/clothing/mask/rebreather/scarf,
-/obj/item/clothing/mask/rebreather/scarf,
-/turf/open/floor/almayer{
- icon_state = "plate"
- },
-/area/almayer/living/tankerbunks)
-"bTS" = (
-/turf/open/floor/almayer{
- icon_state = "plate"
- },
-/area/almayer/living/tankerbunks)
"bTT" = (
/obj/structure/window/framed/almayer/hull,
/turf/open/floor/plating,
/area/almayer/shipboard/weapon_room)
-"bTU" = (
-/obj/structure/surface/table/almayer,
-/obj/item/storage/toolbox/mechanical,
-/obj/item/device/megaphone,
-/turf/open/floor/almayer{
- icon_state = "plate"
- },
-/area/almayer/living/tankerbunks)
"bTV" = (
/obj/item/bedsheet/brown{
pixel_y = 13
@@ -23320,6 +23849,12 @@
icon_state = "blue"
},
/area/almayer/squads/delta)
+"bUx" = (
+/obj/structure/machinery/light/small{
+ dir = 8
+ },
+/turf/open/floor/plating,
+/area/almayer/command/airoom)
"bUy" = (
/obj/structure/closet/crate/ammo,
/obj/structure/machinery/light/small,
@@ -23492,6 +24027,14 @@
icon_state = "plate"
},
/area/almayer/shipboard/port_point_defense)
+"bVe" = (
+/obj/structure/closet/l3closet/general,
+/obj/structure/window/reinforced{
+ dir = 8;
+ health = 80
+ },
+/turf/open/floor/plating/plating_catwalk,
+/area/almayer/medical/medical_science)
"bVi" = (
/obj/structure/disposalpipe/segment{
dir = 8;
@@ -23776,14 +24319,6 @@
icon_state = "red"
},
/area/almayer/hallways/aft_hallway)
-"bWJ" = (
-/obj/structure/machinery/shower{
- dir = 4
- },
-/obj/structure/machinery/door/window/eastright,
-/obj/structure/window/reinforced/tinted/frosted,
-/turf/open/floor/plating/plating_catwalk,
-/area/almayer/living/tankerbunks)
"bWK" = (
/obj/structure/bed/chair{
dir = 1
@@ -23862,17 +24397,6 @@
icon_state = "test_floor4"
},
/area/almayer/engineering/engineering_workshop)
-"bXa" = (
-/obj/effect/decal/warning_stripes{
- icon_state = "S"
- },
-/obj/structure/pipes/standard/simple/hidden/supply{
- dir = 4
- },
-/turf/open/floor/almayer{
- icon_state = "mono"
- },
-/area/almayer/medical/hydroponics)
"bXe" = (
/turf/open/floor/plating/plating_catwalk,
/area/almayer/lifeboat_pumps/south2)
@@ -24188,15 +24712,6 @@
/obj/structure/disposalpipe/junction,
/turf/open/floor/plating/plating_catwalk,
/area/almayer/squads/req)
-"bYx" = (
-/obj/effect/decal/warning_stripes{
- icon_state = "E";
- pixel_x = 1
- },
-/turf/open/floor/almayer/research/containment/floor2{
- dir = 8
- },
-/area/almayer/medical/containment/cell)
"bYy" = (
/obj/effect/decal/warning_stripes{
icon_state = "W"
@@ -24391,19 +24906,6 @@
icon_state = "sterile_green_side"
},
/area/almayer/medical/lower_medical_medbay)
-"bZo" = (
-/obj/structure/surface/table/almayer,
-/obj/structure/machinery/centrifuge{
- pixel_y = 7
- },
-/obj/structure/machinery/camera/autoname/almayer{
- dir = 8;
- name = "ship-grade camera"
- },
-/turf/open/floor/almayer{
- icon_state = "mono"
- },
-/area/almayer/medical/medical_science)
"bZr" = (
/turf/open/floor/almayer{
dir = 1;
@@ -24790,6 +25292,15 @@
icon_state = "sterile_green_side"
},
/area/almayer/medical/operating_room_three)
+"cbg" = (
+/obj/structure/machinery/door/airlock/almayer/command{
+ dir = 2;
+ name = "\improper Command Ladder"
+ },
+/turf/open/floor/almayer{
+ icon_state = "test_floor4"
+ },
+/area/almayer/medical/medical_science)
"cbh" = (
/obj/structure/machinery/cm_vending/clothing/pilot_officer{
density = 0;
@@ -25613,10 +26124,6 @@
icon_state = "plate"
},
/area/almayer/hallways/port_umbilical)
-"cey" = (
-/obj/structure/largecrate/random/barrel/white,
-/turf/open/floor/plating/plating_catwalk,
-/area/almayer/hull/lower_hull/l_f_p)
"ceC" = (
/obj/structure/machinery/light,
/obj/structure/bed/chair{
@@ -25766,6 +26273,12 @@
},
/turf/open/floor/almayer,
/area/almayer/hallways/repair_bay)
+"cfT" = (
+/turf/open/floor/almayer{
+ dir = 10;
+ icon_state = "sterile_green_side"
+ },
+/area/almayer/medical/medical_science)
"cgl" = (
/obj/structure/machinery/door/firedoor/border_only/almayer,
/obj/structure/machinery/door/airlock/multi_tile/almayer/marine/shared/charlie_delta{
@@ -25862,15 +26375,6 @@
},
/turf/open/floor/almayer,
/area/almayer/hallways/stern_hallway)
-"cgM" = (
-/obj/structure/pipes/vents/pump{
- name = "Secure Air Vent";
- welded = 1
- },
-/turf/open/floor/almayer/research/containment/floor2{
- dir = 1
- },
-/area/almayer/medical/containment/cell)
"cgO" = (
/obj/structure/surface/table/almayer,
/obj/structure/machinery/computer/emails{
@@ -26218,16 +26722,6 @@
icon_state = "blue"
},
/area/almayer/hallways/port_hallway)
-"cja" = (
-/obj/effect/decal/warning_stripes{
- icon_state = "E";
- pixel_x = 1
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "S"
- },
-/turf/open/floor/almayer/research/containment/corner2,
-/area/almayer/medical/containment/cell)
"cjc" = (
/obj/effect/landmark/start/marine/alpha,
/obj/effect/landmark/late_join/alpha,
@@ -26476,19 +26970,6 @@
icon_state = "test_floor4"
},
/area/almayer/hull/upper_hull/u_a_s)
-"ckC" = (
-/obj/structure/surface/table/almayer,
-/obj/item/handcuffs,
-/obj/item/handcuffs{
- pixel_y = 6
- },
-/obj/item/handcuffs{
- pixel_y = 12
- },
-/turf/open/floor/almayer{
- allow_construction = 0
- },
-/area/almayer/shipboard/brig/processing)
"ckD" = (
/obj/structure/prop/invuln/overhead_pipe{
pixel_x = 12;
@@ -27314,10 +27795,6 @@
icon_state = "blue"
},
/area/almayer/squads/delta)
-"coo" = (
-/obj/structure/largecrate/random/secure,
-/turf/open/floor/plating/plating_catwalk,
-/area/almayer/living/tankerbunks)
"cop" = (
/turf/open/floor/plating/plating_catwalk,
/area/almayer/living/tankerbunks)
@@ -27346,11 +27823,13 @@
},
/area/almayer/hull/upper_hull/u_a_s)
"coJ" = (
-/obj/structure/pipes/vents/pump,
+/obj/structure/pipes/standard/simple/hidden/supply{
+ dir = 10
+ },
/turf/open/floor/almayer{
icon_state = "sterile_green"
},
-/area/almayer/medical/medical_science)
+/area/almayer/medical/containment)
"coT" = (
/obj/structure/machinery/status_display{
pixel_y = 30
@@ -27362,6 +27841,11 @@
icon_state = "plate"
},
/area/almayer/shipboard/starboard_point_defense)
+"coZ" = (
+/turf/open/floor/almayer/research/containment/corner{
+ dir = 4
+ },
+/area/almayer/medical/containment/cell)
"cpf" = (
/obj/structure/ladder{
height = 2;
@@ -27399,28 +27883,12 @@
},
/turf/open/floor/almayer,
/area/almayer/living/offices)
-"cpu" = (
-/turf/closed/wall/almayer/reinforced,
-/area/almayer/shipboard/brig/evidence_storage)
"cpw" = (
/obj/structure/disposalpipe/segment,
/turf/open/floor/almayer{
icon_state = "mono"
},
/area/almayer/hallways/aft_hallway)
-"cpB" = (
-/obj/structure/pipes/standard/simple/hidden/supply,
-/obj/effect/decal/warning_stripes{
- icon_state = "NE-out";
- pixel_x = 1;
- pixel_y = 1
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "NW-out";
- pixel_y = 1
- },
-/turf/open/floor/almayer/research/containment/entrance,
-/area/almayer/medical/containment/cell)
"cpJ" = (
/obj/structure/window/framed/almayer/white,
/obj/structure/machinery/door/poddoor/shutters/almayer{
@@ -27831,6 +28299,12 @@
icon_state = "redcorner"
},
/area/almayer/shipboard/brig/execution)
+"czG" = (
+/obj/structure/machinery/recharge_station,
+/turf/open/floor/almayer/no_build{
+ icon_state = "ai_floors"
+ },
+/area/almayer/command/airoom)
"czJ" = (
/obj/structure/sign/safety/restrictedarea{
pixel_x = 8;
@@ -27845,16 +28319,6 @@
},
/turf/open/floor/almayer,
/area/almayer/hallways/stern_hallway)
-"cAi" = (
-/obj/structure/machinery/door/poddoor/shutters/almayer{
- dir = 4;
- id = "containmentlockdown_S";
- name = "\improper Containment Lockdown"
- },
-/turf/open/floor/almayer{
- icon_state = "test_floor4"
- },
-/area/almayer/medical/containment)
"cAm" = (
/obj/structure/bed/chair/office/light{
dir = 8
@@ -28214,12 +28678,6 @@
icon_state = "plate"
},
/area/almayer/command/lifeboat)
-"cGg" = (
-/obj/structure/pipes/standard/manifold/hidden/supply,
-/turf/open/floor/almayer{
- icon_state = "sterile_green"
- },
-/area/almayer/medical/containment)
"cGr" = (
/turf/open/floor/almayer{
icon_state = "plate"
@@ -28363,6 +28821,48 @@
/obj/structure/sign/prop2,
/turf/closed/wall/almayer,
/area/almayer/shipboard/sea_office)
+"cJM" = (
+/obj/structure/machinery/door_display/research_cell{
+ dir = 8;
+ has_wall_divider = 1;
+ id = "Containment Cell 3";
+ layer = 3.2;
+ name = "Cell 3 Control";
+ pixel_x = 16;
+ pixel_y = -16
+ },
+/obj/structure/machinery/door_display/research_cell{
+ dir = 8;
+ has_wall_divider = 1;
+ id = "Containment Cell 2";
+ layer = 3.2;
+ name = "Cell 2 Control";
+ pixel_x = 16;
+ pixel_y = 16
+ },
+/obj/structure/pipes/standard/simple/hidden/supply,
+/obj/effect/decal/warning_stripes{
+ icon_state = "E";
+ pixel_x = 1
+ },
+/obj/structure/machinery/door_control{
+ id = "W_Containment Cell 2";
+ name = "Containment Lockdown";
+ pixel_x = 13;
+ pixel_y = 7;
+ req_one_access_txt = "19;28"
+ },
+/obj/structure/machinery/door_control{
+ id = "W_Containment Cell 3";
+ name = "Containment Lockdown";
+ pixel_x = 13;
+ pixel_y = -6;
+ req_one_access_txt = "19;28"
+ },
+/turf/open/floor/almayer{
+ icon_state = "sterile_green"
+ },
+/area/almayer/medical/containment)
"cJP" = (
/obj/structure/disposalpipe/segment{
dir = 4
@@ -28554,6 +29054,25 @@
icon_state = "silver"
},
/area/almayer/command/cichallway)
+"cPE" = (
+/obj/structure/surface/table/almayer,
+/obj/item/paper_bin/wy{
+ pixel_x = 6;
+ pixel_y = 5
+ },
+/obj/item/tool/pen{
+ pixel_x = 8
+ },
+/obj/item/clipboard{
+ pixel_x = -8
+ },
+/obj/item/folder/white{
+ pixel_x = -8
+ },
+/turf/open/floor/almayer{
+ icon_state = "dark_sterile"
+ },
+/area/almayer/medical/medical_science)
"cQc" = (
/turf/open/floor/almayer{
dir = 1;
@@ -28570,6 +29089,18 @@
icon_state = "plate"
},
/area/almayer/engineering/upper_engineering/starboard)
+"cQo" = (
+/obj/structure/pipes/standard/simple/hidden/supply{
+ dir = 5
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "W"
+ },
+/turf/open/floor/almayer{
+ dir = 8;
+ icon_state = "sterile_green_side"
+ },
+/area/almayer/medical/containment)
"cQv" = (
/turf/closed/wall/almayer/reinforced,
/area/almayer/shipboard/brig/general_equipment)
@@ -28611,24 +29142,17 @@
icon_state = "plate"
},
/area/almayer/hull/upper_hull/u_f_s)
-"cRe" = (
-/obj/structure/disposalpipe/trunk{
- dir = 1
- },
-/obj/structure/machinery/disposal/delivery{
- density = 0;
- desc = "A pneumatic delivery unit. Sends items to the requisitions.";
- icon_state = "delivery_engi";
- name = "Requisitions Delivery Unit";
- pixel_y = 28
- },
-/turf/open/floor/almayer,
-/area/almayer/engineering/engineering_workshop/hangar)
"cRi" = (
/turf/open/floor/almayer{
icon_state = "mono"
},
/area/almayer/engineering/upper_engineering/port)
+"cRk" = (
+/turf/open/floor/almayer{
+ dir = 9;
+ icon_state = "silver"
+ },
+/area/almayer/living/auxiliary_officer_office)
"cRv" = (
/turf/open/floor/almayer{
icon_state = "cargo"
@@ -28711,11 +29235,6 @@
icon_state = "cargo"
},
/area/almayer/squads/req)
-"cTq" = (
-/turf/open/floor/almayer{
- icon_state = "sterile_green"
- },
-/area/almayer/medical/containment)
"cTC" = (
/obj/structure/machinery/vending/walkman,
/turf/open/floor/almayer{
@@ -28746,17 +29265,6 @@
icon_state = "test_floor4"
},
/area/almayer/hull/upper_hull/u_f_p)
-"cUA" = (
-/obj/structure/machinery/medical_pod/bodyscanner{
- dir = 8
- },
-/obj/structure/machinery/status_display{
- pixel_y = 30
- },
-/turf/open/floor/almayer{
- icon_state = "mono"
- },
-/area/almayer/medical/medical_science)
"cVs" = (
/obj/structure/platform_decoration{
dir = 8
@@ -28910,12 +29418,15 @@
icon_state = "red"
},
/area/almayer/hull/upper_hull/u_a_p)
-"cXt" = (
+"cXC" = (
+/obj/effect/decal/warning_stripes{
+ icon_state = "S"
+ },
+/obj/structure/machinery/light,
/turf/open/floor/almayer{
- dir = 1;
icon_state = "sterile_green_side"
},
-/area/almayer/medical/hydroponics)
+/area/almayer/medical/containment)
"cXF" = (
/obj/structure/machinery/flasher{
alpha = 1;
@@ -29034,28 +29545,6 @@
},
/turf/open/floor/plating/plating_catwalk,
/area/almayer/hallways/aft_hallway)
-"dai" = (
-/obj/structure/surface/table/almayer,
-/obj/item/reagent_container/glass/beaker/large,
-/obj/item/reagent_container/glass/beaker/large,
-/obj/item/reagent_container/glass/beaker{
- pixel_x = 5
- },
-/obj/item/reagent_container/glass/beaker{
- pixel_x = 5
- },
-/obj/item/reagent_container/dropper,
-/obj/structure/machinery/firealarm{
- dir = 8;
- pixel_x = -24
- },
-/obj/item/reagent_container/glass/beaker/bluespace{
- pixel_y = 12
- },
-/turf/open/floor/almayer{
- icon_state = "mono"
- },
-/area/almayer/medical/medical_science)
"daj" = (
/obj/structure/machinery/iv_drip,
/turf/open/floor/almayer{
@@ -29074,12 +29563,6 @@
"daz" = (
/turf/closed/wall/almayer/white/hull,
/area/almayer/command/airoom)
-"daP" = (
-/obj/structure/surface/table/almayer,
-/turf/open/floor/almayer{
- icon_state = "dark_sterile"
- },
-/area/almayer/medical/medical_science)
"dbe" = (
/obj/structure/largecrate/random/case/double,
/obj/structure/machinery/camera/autoname/almayer{
@@ -29090,6 +29573,22 @@
icon_state = "orange"
},
/area/almayer/engineering/upper_engineering/port)
+"dbn" = (
+/obj/structure/surface/table/almayer,
+/obj/item/spacecash/c200{
+ pixel_x = -6;
+ pixel_y = 7
+ },
+/obj/item/prop/helmetgarb/prescription_bottle{
+ pixel_x = 9
+ },
+/obj/item/reagent_container/pill/happy,
+/obj/item/clothing/glasses/disco_fever{
+ pixel_x = -3;
+ pixel_y = -2
+ },
+/turf/open/floor/plating,
+/area/almayer/living/port_emb)
"dbv" = (
/obj/structure/surface/table/reinforced/almayer_B,
/obj/structure/machinery/prop/almayer/computer{
@@ -29127,22 +29626,6 @@
icon_state = "plate"
},
/area/almayer/engineering/upper_engineering/starboard)
-"dbR" = (
-/obj/structure/machinery/door/poddoor/shutters/almayer{
- dir = 4;
- id = "W_Containment Cell 3";
- name = "\improper Containment Cell 5";
- unacidable = 1
- },
-/obj/structure/machinery/door/poddoor/almayer/open{
- dir = 4;
- id = "Containment Breach";
- name = "\improper Secure Airlock"
- },
-/turf/closed/wall/almayer/research/containment/wall/purple{
- dir = 8
- },
-/area/almayer/medical/containment/cell)
"dcd" = (
/obj/structure/bed/chair/comfy{
dir = 8
@@ -29599,6 +30082,20 @@
icon_state = "silver"
},
/area/almayer/command/cichallway)
+"dmp" = (
+/obj/structure/pipes/standard/simple/hidden/supply{
+ dir = 4
+ },
+/obj/structure/machinery/door/firedoor/border_only/almayer,
+/obj/effect/decal/warning_stripes{
+ icon_state = "NE-out";
+ pixel_x = 1;
+ pixel_y = 1
+ },
+/turf/open/floor/almayer{
+ icon_state = "test_floor4"
+ },
+/area/almayer/shipboard/brig/general_equipment)
"dmv" = (
/turf/open/floor/almayer{
dir = 8;
@@ -29659,6 +30156,18 @@
icon_state = "silverfull"
},
/area/almayer/command/computerlab)
+"dnC" = (
+/obj/structure/pipes/standard/simple/hidden/supply{
+ dir = 6
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "E";
+ pixel_x = 1
+ },
+/turf/open/floor/almayer{
+ icon_state = "sterile_green_corner"
+ },
+/area/almayer/medical/hydroponics)
"dnE" = (
/obj/structure/machinery/light,
/turf/open/floor/almayer{
@@ -29746,19 +30255,6 @@
icon_state = "cargo"
},
/area/almayer/squads/req)
-"dpd" = (
-/obj/structure/machinery/door/poddoor/almayer/open{
- id = "Containment Breach";
- name = "\improper Secure Airlock"
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "E";
- pixel_x = 1
- },
-/turf/open/floor/almayer{
- icon_state = "test_floor4"
- },
-/area/almayer/medical/hydroponics)
"dpn" = (
/obj/structure/closet/secure_closet/freezer/fridge/full,
/obj/structure/machinery/light{
@@ -29917,15 +30413,26 @@
icon_state = "plate"
},
/area/almayer/hallways/port_hallway)
-"drW" = (
-/obj/structure/machinery/cm_vending/sorted/medical/wall_med{
- pixel_y = 25
+"drT" = (
+/obj/structure/machinery/camera/autoname/almayer{
+ dir = 4;
+ name = "ship-grade camera"
},
+/obj/effect/decal/warning_stripes{
+ icon_state = "N";
+ pixel_y = 1
+ },
+/obj/structure/surface/rack,
+/obj/item/storage/fancy/vials,
+/obj/item/storage/fancy/vials,
+/obj/item/storage/fancy/vials,
+/obj/item/storage/fancy/vials,
+/obj/item/storage/fancy/vials,
+/obj/item/storage/fancy/vials,
/turf/open/floor/almayer{
- dir = 4;
- icon_state = "redcorner"
+ icon_state = "sterile_green"
},
-/area/almayer/shipboard/brig/main_office)
+/area/almayer/medical/hydroponics)
"dsk" = (
/obj/structure/disposalpipe/segment{
dir = 4
@@ -30104,13 +30611,6 @@
},
/turf/open/floor/almayer,
/area/almayer/engineering/engineering_workshop/hangar)
-"dvI" = (
-/obj/structure/machinery/smartfridge/chemistry{
- pixel_x = -3;
- pixel_y = -1
- },
-/turf/open/floor/plating/plating_catwalk,
-/area/almayer/medical/medical_science)
"dvT" = (
/turf/closed/wall/almayer,
/area/almayer/shipboard/brig/general_equipment)
@@ -30119,11 +30619,13 @@
/turf/open/floor/almayer,
/area/almayer/living/briefing)
"dwr" = (
-/turf/open/floor/almayer{
- dir = 10;
- icon_state = "sterile_green_side"
+/obj/structure/surface/table/almayer,
+/obj/structure/machinery/centrifuge{
+ layer = 3.1;
+ pixel_y = 4
},
-/area/almayer/medical/containment)
+/turf/open/floor/plating/plating_catwalk,
+/area/almayer/medical/medical_science)
"dwA" = (
/obj/structure/pipes/standard/simple/hidden/supply,
/obj/structure/sign/safety/bathunisex{
@@ -30143,21 +30645,6 @@
icon_state = "test_floor4"
},
/area/almayer/engineering/upper_engineering/starboard)
-"dwN" = (
-/obj/structure/surface/table/almayer,
-/obj/item/prop/magazine/book/spacebeast,
-/obj/item/paper_bin/uscm{
- pixel_x = 8;
- pixel_y = 12
- },
-/obj/item/tool/pen{
- pixel_x = 8
- },
-/turf/open/floor/almayer{
- dir = 1;
- icon_state = "redcorner"
- },
-/area/almayer/shipboard/brig/evidence_storage)
"dxm" = (
/obj/structure/window/framed/almayer,
/obj/structure/machinery/door/firedoor/border_only/almayer{
@@ -30224,6 +30711,17 @@
icon_state = "red"
},
/area/almayer/shipboard/brig/lobby)
+"dyb" = (
+/obj/structure/machinery/smartfridge/chemistry,
+/obj/item/device/radio/intercom{
+ freerange = 1;
+ name = "General Listening Channel";
+ pixel_y = 28
+ },
+/turf/open/floor/almayer{
+ icon_state = "mono"
+ },
+/area/almayer/medical/medical_science)
"dyd" = (
/obj/structure/bed/chair/office/dark{
dir = 1
@@ -30283,15 +30781,6 @@
icon_state = "orange"
},
/area/almayer/engineering/ce_room)
-"dzo" = (
-/obj/structure/machinery/camera/autoname/almayer/containment{
- dir = 8
- },
-/obj/structure/pipes/vents/pump,
-/turf/open/floor/almayer{
- icon_state = "dark_sterile"
- },
-/area/almayer/medical/medical_science)
"dAb" = (
/obj/structure/largecrate/random/barrel/blue,
/turf/open/floor/almayer{
@@ -30310,20 +30799,6 @@
icon_state = "test_floor4"
},
/area/almayer/squads/bravo)
-"dAy" = (
-/obj/structure/pipes/standard/simple/hidden/supply{
- dir = 4
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "SE-out";
- pixel_x = 1
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "SW-out";
- pixel_x = -1
- },
-/turf/open/floor/plating/plating_catwalk,
-/area/almayer/medical/hydroponics)
"dAX" = (
/obj/structure/machinery/camera/autoname/almayer{
dir = 4;
@@ -30336,6 +30811,16 @@
icon_state = "plate"
},
/area/almayer/command/cic)
+"dBj" = (
+/obj/effect/decal/warning_stripes{
+ icon_state = "E";
+ pixel_x = 1
+ },
+/turf/open/floor/almayer{
+ dir = 4;
+ icon_state = "sterile_green_side"
+ },
+/area/almayer/medical/hydroponics)
"dBp" = (
/obj/structure/machinery/camera/autoname/almayer{
dir = 8;
@@ -30349,6 +30834,13 @@
icon_state = "cargo"
},
/area/almayer/command/cic)
+"dBy" = (
+/obj/structure/surface/table/almayer,
+/obj/item/device/clue_scanner,
+/turf/open/floor/almayer{
+ allow_construction = 0
+ },
+/area/almayer/shipboard/brig/processing)
"dBG" = (
/obj/structure/machinery/vending/snack,
/turf/open/floor/almayer{
@@ -30497,12 +30989,6 @@
icon_state = "plate"
},
/area/almayer/hull/upper_hull/u_f_s)
-"dDG" = (
-/obj/structure/prop/invuln/joey,
-/turf/open/floor/almayer{
- icon_state = "plate"
- },
-/area/almayer/hull/lower_hull/l_m_s)
"dDL" = (
/obj/structure/surface/table/almayer,
/obj/structure/machinery/computer/research/main_terminal{
@@ -30524,6 +31010,21 @@
icon_state = "plate"
},
/area/almayer/hull/upper_hull/u_f_p)
+"dEm" = (
+/obj/structure/machinery/power/apc/almayer,
+/obj/effect/decal/warning_stripes{
+ icon_state = "S"
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "E";
+ pixel_x = 1
+ },
+/obj/structure/reagent_dispensers/fueltank/custom,
+/turf/open/floor/almayer{
+ dir = 4;
+ icon_state = "sterile_green_corner"
+ },
+/area/almayer/medical/containment/cell)
"dEn" = (
/obj/structure/machinery/firealarm{
pixel_y = -28
@@ -30550,6 +31051,18 @@
icon_state = "greencorner"
},
/area/almayer/hallways/starboard_hallway)
+"dEO" = (
+/obj/structure/pipes/standard/simple/hidden/supply,
+/obj/structure/machinery/light{
+ dir = 1
+ },
+/obj/structure/disposalpipe/segment{
+ dir = 4
+ },
+/turf/open/floor/almayer{
+ icon_state = "dark_sterile"
+ },
+/area/almayer/medical/medical_science)
"dEQ" = (
/obj/structure/surface/table/almayer,
/obj/item/reagent_container/food/condiment/hotsauce/tabasco,
@@ -30557,21 +31070,6 @@
icon_state = "redfull"
},
/area/almayer/living/briefing)
-"dEU" = (
-/obj/structure/machinery/cm_vending/sorted/medical/blood{
- density = 0;
- pixel_y = 16
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "NE-out";
- pixel_x = 1;
- pixel_y = 1
- },
-/turf/open/floor/almayer{
- dir = 5;
- icon_state = "sterile_green_side"
- },
-/area/almayer/medical/medical_science)
"dEV" = (
/obj/structure/pipes/standard/simple/hidden/supply{
dir = 4
@@ -30585,28 +31083,26 @@
icon_state = "redcorner"
},
/area/almayer/command/lifeboat)
+"dFx" = (
+/obj/structure/machinery/door/airlock/almayer/security/glass{
+ name = "Evidence Room";
+ dir = 2;
+ req_access = null;
+ req_one_access_txt = "1;3"
+ },
+/obj/structure/machinery/door/firedoor/border_only/almayer{
+ dir = 1
+ },
+/turf/open/floor/almayer{
+ icon_state = "test_floor4"
+ },
+/area/almayer/shipboard/brig/evidence_storage)
"dFF" = (
/obj/structure/flora/pottedplant{
icon_state = "pottedplant_21"
},
/turf/open/floor/wood/ship,
/area/almayer/shipboard/sea_office)
-"dFM" = (
-/obj/structure/machinery/power/apc/almayer{
- dir = 8
- },
-/obj/structure/surface/rack,
-/obj/effect/spawner/random/toolbox,
-/obj/structure/machinery/computer/working_joe{
- dir = 4;
- pixel_x = -17;
- pixel_y = 14
- },
-/turf/open/floor/almayer{
- dir = 10;
- icon_state = "orange"
- },
-/area/almayer/shipboard/brig/cells)
"dFR" = (
/turf/open/floor/almayer{
dir = 9;
@@ -30661,11 +31157,6 @@
/obj/structure/largecrate/random/case/double,
/turf/open/floor/plating/plating_catwalk,
/area/almayer/hull/lower_hull/l_a_p)
-"dGB" = (
-/turf/open/floor/almayer{
- icon_state = "dark_sterile"
- },
-/area/almayer/medical/containment)
"dGC" = (
/obj/structure/pipes/standard/simple/hidden/supply,
/obj/structure/disposalpipe/segment,
@@ -30767,6 +31258,17 @@
icon_state = "sterile_green_side"
},
/area/almayer/shipboard/brig/surgery)
+"dHV" = (
+/obj/structure/machinery/light{
+ dir = 1
+ },
+/obj/structure/pipes/unary/freezer{
+ dir = 8
+ },
+/turf/open/floor/almayer{
+ icon_state = "mono"
+ },
+/area/almayer/medical/medical_science)
"dHZ" = (
/obj/structure/window/framed/almayer,
/obj/structure/machinery/door/poddoor/almayer/open{
@@ -30797,19 +31299,6 @@
icon_state = "ai_floors"
},
/area/almayer/command/airoom)
-"dIq" = (
-/obj/structure/machinery/chem_storage/medbay{
- dir = 1
- },
-/obj/structure/machinery/chem_storage/research{
- dir = 1;
- layer = 3;
- pixel_y = 18
- },
-/turf/open/floor/almayer{
- icon_state = "test_floor4"
- },
-/area/almayer/medical/hydroponics)
"dII" = (
/obj/structure/machinery/door/airlock/multi_tile/almayer/marine/shared/alpha_bravo,
/obj/effect/decal/warning_stripes{
@@ -30874,16 +31363,6 @@
icon_state = "plate"
},
/area/almayer/command/lifeboat)
-"dLp" = (
-/obj/effect/decal/warning_stripes{
- icon_state = "N";
- pixel_y = 1
- },
-/turf/open/floor/almayer{
- dir = 1;
- icon_state = "sterile_green_side"
- },
-/area/almayer/medical/medical_science)
"dLt" = (
/obj/structure/sign/safety/hazard{
pixel_x = -17;
@@ -30909,45 +31388,31 @@
icon_state = "silver"
},
/area/almayer/hallways/aft_hallway)
-"dMj" = (
-/obj/structure/surface/table/almayer,
-/obj/structure/machinery/microwave{
- pixel_y = 5
- },
-/obj/item/storage/box/donkpockets{
- pixel_x = -4;
- pixel_y = 19
- },
-/obj/item/storage/box/donkpockets{
- pixel_x = 4;
- pixel_y = 16
+"dMe" = (
+/obj/structure/machinery/cm_vending/clothing/senior_officer{
+ req_access = null;
+ req_access_txt = 37;
+ req_one_access = null
},
/turf/open/floor/almayer{
- icon_state = "mono"
+ icon_state = "plate"
},
-/area/almayer/medical/medical_science)
+/area/almayer/living/auxiliary_officer_office)
"dMB" = (
/turf/open/floor/almayer{
dir = 8;
icon_state = "plating_striped"
},
/area/almayer/living/cryo_cells)
-"dMR" = (
-/turf/open/floor/almayer{
- dir = 8;
- icon_state = "red"
- },
-/area/almayer/shipboard/brig/processing)
-"dMS" = (
-/obj/structure/surface/table/almayer,
-/obj/item/tool/extinguisher,
-/obj/structure/sign/catclock{
- pixel_y = 32
- },
-/turf/open/floor/almayer{
- icon_state = "sterile_green"
+"dMK" = (
+/turf/closed/wall/almayer/research/containment/wall/corner{
+ dir = 8
},
-/area/almayer/medical/medical_science)
+/area/almayer/medical/containment/cell)
+"dMY" = (
+/obj/effect/landmark/start/warden,
+/turf/open/floor/plating/plating_catwalk,
+/area/almayer/shipboard/brig/cryo)
"dNe" = (
/obj/effect/decal/warning_stripes{
icon_state = "N";
@@ -30955,6 +31420,19 @@
},
/turf/open/floor/plating,
/area/almayer/hull/lower_hull/l_f_p)
+"dNq" = (
+/obj/effect/decal/warning_stripes{
+ icon_state = "N";
+ pixel_y = 1
+ },
+/obj/structure/sink{
+ pixel_y = 24
+ },
+/turf/open/floor/almayer{
+ dir = 1;
+ icon_state = "sterile_green_side"
+ },
+/area/almayer/medical/containment)
"dNt" = (
/obj/structure/window/framed/almayer/hull/hijack_bustable,
/obj/structure/machinery/door/poddoor/shutters/almayer/open{
@@ -31053,6 +31531,16 @@
},
/turf/open/floor/plating/plating_catwalk,
/area/almayer/hull/lower_hull/l_f_p)
+"dRh" = (
+/obj/structure/pipes/standard/simple/hidden/supply{
+ dir = 4
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "SE-out";
+ pixel_x = 1
+ },
+/turf/open/floor/plating/plating_catwalk,
+/area/almayer/medical/hydroponics)
"dRv" = (
/obj/structure/pipes/standard/simple/hidden/supply{
dir = 4
@@ -31183,21 +31671,6 @@
icon_state = "dark_sterile"
},
/area/almayer/command/corporateliason)
-"dTs" = (
-/obj/structure/machinery/flasher{
- id = "Containment Cell 1";
- layer = 2.1;
- name = "Mounted Flash";
- pixel_y = 30
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "N";
- pixel_y = 1
- },
-/turf/open/floor/almayer/research/containment/floor2{
- dir = 1
- },
-/area/almayer/medical/containment/cell)
"dTt" = (
/obj/structure/surface/table/almayer,
/obj/item/device/camera,
@@ -31243,21 +31716,28 @@
icon_state = "dark_sterile"
},
/area/almayer/medical/operating_room_two)
-"dUW" = (
-/obj/structure/bed/chair{
- dir = 4
+"dVd" = (
+/obj/structure/machinery/seed_extractor{
+ density = 0;
+ pixel_y = 16
},
/turf/open/floor/almayer{
- dir = 6;
- icon_state = "red"
+ icon_state = "mono"
},
-/area/almayer/shipboard/brig/processing)
+/area/almayer/medical/hydroponics)
"dVe" = (
/turf/open/floor/almayer{
dir = 1;
icon_state = "blue"
},
/area/almayer/living/briefing)
+"dVu" = (
+/obj/structure/pipes/standard/simple/hidden/supply,
+/turf/open/floor/almayer{
+ dir = 4;
+ icon_state = "sterile_green_side"
+ },
+/area/almayer/medical/medical_science)
"dVO" = (
/obj/structure/surface/table/almayer,
/obj/structure/machinery/computer/emails{
@@ -31310,6 +31790,9 @@
icon_state = "bluecorner"
},
/area/almayer/living/basketball)
+"dWx" = (
+/turf/open/floor/almayer,
+/area/almayer/shipboard/brig/evidence_storage)
"dWz" = (
/obj/structure/bed/chair/office/dark{
dir = 8
@@ -31400,28 +31883,6 @@
},
/turf/open/floor/almayer,
/area/almayer/living/chapel)
-"dYx" = (
-/obj/structure/machinery/light,
-/obj/structure/surface/table/almayer,
-/obj/structure/machinery/reagentgrinder{
- pixel_y = 8
- },
-/obj/item/stack/sheet/mineral/phoron{
- amount = 25;
- pixel_x = 3;
- pixel_y = 3
- },
-/obj/item/device/reagent_scanner{
- pixel_x = -16;
- pixel_y = 5
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "SW-out"
- },
-/turf/open/floor/almayer{
- icon_state = "sterile_green_side"
- },
-/area/almayer/medical/medical_science)
"dYK" = (
/obj/item/folder/red{
desc = "A red folder. The previous contents are a mystery, though the number 28 has been written on the inside of each flap numerous times. Smells faintly of cough syrup.";
@@ -31463,14 +31924,6 @@
icon_state = "orange"
},
/area/almayer/engineering/upper_engineering)
-"dZT" = (
-/obj/structure/pipes/standard/manifold/hidden/supply{
- dir = 8
- },
-/turf/open/floor/almayer{
- icon_state = "sterile_green"
- },
-/area/almayer/medical/containment)
"eaf" = (
/obj/structure/machinery/cm_vending/clothing/military_police{
density = 0;
@@ -31487,22 +31940,26 @@
icon_state = "cargo"
},
/area/almayer/shipboard/brig/general_equipment)
-"eag" = (
-/obj/structure/machinery/chem_master{
- vial_maker = 1
- },
-/obj/item/clothing/glasses/science{
- pixel_x = 1;
- pixel_y = 8
- },
-/turf/open/floor/almayer{
- icon_state = "mono"
- },
-/area/almayer/medical/medical_science)
"eai" = (
/obj/structure/pipes/standard/simple/hidden/supply,
/turf/open/floor/almayer,
/area/almayer/living/port_emb)
+"ean" = (
+/obj/structure/machinery/door/poddoor/shutters/almayer{
+ dir = 4;
+ id = "W_Containment Cell 3";
+ name = "\improper Containment Cell 5";
+ unacidable = 1
+ },
+/obj/structure/machinery/door/poddoor/almayer/open{
+ dir = 4;
+ id = "Containment Breach";
+ name = "\improper Secure Airlock"
+ },
+/turf/closed/wall/almayer/research/containment/wall/purple{
+ dir = 4
+ },
+/area/almayer/medical/containment/cell)
"eas" = (
/obj/structure/disposalpipe/segment{
dir = 4
@@ -31519,56 +31976,6 @@
icon_state = "plate"
},
/area/almayer/shipboard/port_point_defense)
-"eaN" = (
-/obj/structure/disposalpipe/segment,
-/obj/structure/machinery/door_control{
- dir = 1;
- id = "researchlockdownext";
- name = "Window Shutters";
- pixel_x = -26;
- pixel_y = 6;
- req_access_txt = "28"
- },
-/obj/structure/machinery/door_control{
- dir = 1;
- id = "researchlockdownext_door";
- name = "Door Shutters";
- pixel_x = -26;
- pixel_y = 1;
- req_access_txt = "28"
- },
-/turf/open/floor/almayer{
- dir = 8;
- icon_state = "sterile_green_side"
- },
-/area/almayer/medical/medical_science)
-"ebb" = (
-/obj/structure/pipes/standard/simple/hidden/supply,
-/obj/structure/surface/table/almayer,
-/obj/item/reagent_container/glass/beaker{
- pixel_x = 8
- },
-/obj/item/paper_bin/wy{
- pixel_x = -5;
- pixel_y = 6
- },
-/obj/item/tool/pen{
- pixel_y = -2
- },
-/obj/structure/machinery/door_control/brbutton/alt{
- id = "Containment Breach";
- name = "Emergency Containment Breach";
- pixel_x = 8;
- pixel_y = 10
- },
-/obj/item/reagent_container/dropper{
- pixel_x = -1;
- pixel_y = 9
- },
-/turf/open/floor/almayer{
- icon_state = "sterile_green"
- },
-/area/almayer/medical/containment)
"ebd" = (
/obj/effect/decal/cleanable/dirt,
/turf/open/floor/plating/plating_catwalk,
@@ -31618,37 +32025,6 @@
icon_state = "plate"
},
/area/almayer/hull/lower_hull/l_m_p)
-"ecn" = (
-/obj/structure/machinery/door/airlock/almayer/research/glass/reinforced{
- id = "Containment Cell 3";
- locked = 1;
- name = "\improper Containment Cell 3";
- unacidable = 1
- },
-/obj/structure/machinery/door/poddoor/shutters/almayer/containment{
- dir = 4;
- id = "Containment Cell 3";
- name = "\improper Containment Cell 3"
- },
-/obj/structure/pipes/standard/simple/hidden/supply{
- dir = 4
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "S"
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "N";
- pixel_y = 1
- },
-/obj/structure/machinery/door/poddoor/almayer/open{
- dir = 4;
- id = "Containment Breach";
- name = "\improper Secure Airlock"
- },
-/turf/open/floor/almayer{
- icon_state = "test_floor4"
- },
-/area/almayer/medical/containment/cell)
"eco" = (
/obj/structure/sign/safety/restrictedarea{
pixel_x = -17;
@@ -31736,6 +32112,12 @@
icon_state = "plate"
},
/area/almayer/shipboard/navigation)
+"edv" = (
+/obj/structure/bed/sofa/south/white/left,
+/turf/open/floor/almayer{
+ icon_state = "sterile_green"
+ },
+/area/almayer/medical/medical_science)
"edx" = (
/obj/structure/machinery/door/firedoor/border_only/almayer,
/obj/structure/sign/safety/maint{
@@ -31940,6 +32322,17 @@
icon_state = "plate"
},
/area/almayer/hull/upper_hull/u_a_s)
+"egI" = (
+/obj/structure/machinery/status_display{
+ pixel_y = 30
+ },
+/obj/structure/sign/safety/rewire{
+ pixel_x = 32
+ },
+/turf/open/floor/almayer{
+ icon_state = "plate"
+ },
+/area/almayer/living/auxiliary_officer_office)
"egR" = (
/obj/structure/bed/chair{
dir = 8;
@@ -32003,15 +32396,6 @@
icon_state = "plate"
},
/area/almayer/living/port_emb)
-"ehZ" = (
-/obj/structure/sign/safety/water{
- pixel_x = 8;
- pixel_y = 32
- },
-/turf/open/floor/almayer{
- icon_state = "plate"
- },
-/area/almayer/hull/lower_hull/l_f_p)
"eim" = (
/obj/structure/pipes/vents/pump{
dir = 1
@@ -32025,19 +32409,6 @@
/obj/item/prop/magazine/dirty,
/turf/open/floor/almayer,
/area/almayer/squads/charlie_delta_shared)
-"eis" = (
-/obj/structure/machinery/smartfridge/chemistry{
- density = 0;
- pixel_y = 16
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "N";
- pixel_y = 1
- },
-/turf/open/floor/almayer{
- icon_state = "sterile_green_corner"
- },
-/area/almayer/medical/containment)
"eiw" = (
/obj/structure/machinery/light{
dir = 4
@@ -32047,6 +32418,19 @@
icon_state = "sterile_green_side"
},
/area/almayer/medical/operating_room_two)
+"eiE" = (
+/obj/structure/machinery/light{
+ unacidable = 1;
+ unslashable = 1
+ },
+/obj/structure/machinery/optable,
+/obj/effect/decal/warning_stripes{
+ icon_state = "S"
+ },
+/turf/open/floor/almayer/research/containment/floor2{
+ dir = 1
+ },
+/area/almayer/medical/containment/cell)
"eiH" = (
/obj/structure/sink{
pixel_y = 24
@@ -32217,6 +32601,11 @@
icon_state = "dark_sterile"
},
/area/almayer/medical/operating_room_one)
+"elR" = (
+/turf/closed/wall/almayer/research/containment/wall/corner{
+ dir = 1
+ },
+/area/almayer/medical/containment/cell)
"eme" = (
/obj/structure/pipes/vents/pump{
dir = 4
@@ -32256,6 +32645,13 @@
},
/turf/open/floor/plating/plating_catwalk,
/area/almayer/hull/lower_hull/l_a_p)
+"emK" = (
+/obj/structure/disposalpipe/segment,
+/turf/open/floor/almayer{
+ dir = 10;
+ icon_state = "sterile_green_side"
+ },
+/area/almayer/medical/medical_science)
"emO" = (
/obj/structure/machinery/door/airlock/almayer/generic/corporate{
dir = 1;
@@ -32279,21 +32675,6 @@
icon_state = "plate"
},
/area/almayer/hull/lower_hull/l_m_s)
-"ent" = (
-/obj/structure/machinery/light/containment{
- dir = 4
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "S"
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "E";
- pixel_x = 1
- },
-/turf/open/floor/almayer/research/containment/corner{
- dir = 1
- },
-/area/almayer/medical/containment/cell)
"enx" = (
/obj/structure/pipes/vents/pump,
/turf/open/floor/almayer{
@@ -32313,15 +32694,6 @@
icon_state = "red"
},
/area/almayer/shipboard/brig/main_office)
-"eoD" = (
-/obj/structure/window/framed/almayer,
-/obj/structure/machinery/door/poddoor/shutters/almayer/open{
- dir = 8;
- id = "Interrogation Shutters";
- name = "\improper Privacy Shutters"
- },
-/turf/open/floor/plating,
-/area/almayer/shipboard/brig/processing)
"eoG" = (
/obj/structure/pipes/standard/simple/hidden/supply{
dir = 5
@@ -32373,21 +32745,6 @@
icon_state = "plate"
},
/area/almayer/hull/lower_hull/l_a_s)
-"epJ" = (
-/obj/structure/surface/rack,
-/obj/item/storage/box/pillbottles{
- pixel_x = 6;
- pixel_y = 7
- },
-/obj/item/storage/box/pillbottles{
- pixel_x = -6;
- pixel_y = 6
- },
-/obj/item/storage/box/pillbottles,
-/turf/open/floor/almayer{
- icon_state = "mono"
- },
-/area/almayer/medical/hydroponics)
"eqb" = (
/obj/structure/surface/table/almayer,
/obj/item/tool/stamp/denied{
@@ -32433,6 +32790,14 @@
icon_state = "silver"
},
/area/almayer/engineering/port_atmos)
+"eqD" = (
+/obj/structure/pipes/standard/simple/hidden/supply{
+ dir = 9
+ },
+/turf/open/floor/almayer/research/containment/floor2{
+ dir = 1
+ },
+/area/almayer/medical/containment/cell)
"eqI" = (
/obj/structure/machinery/cm_vending/sorted/medical/wall_med{
pixel_y = 25
@@ -32722,24 +33087,6 @@
icon_state = "plate"
},
/area/almayer/hull/upper_hull/u_f_p)
-"evQ" = (
-/obj/structure/sink{
- dir = 4;
- pixel_x = 11
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "SE-out";
- pixel_x = 1
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "SW-out";
- pixel_x = -1
- },
-/obj/structure/pipes/standard/simple/hidden/supply{
- dir = 10
- },
-/turf/open/floor/plating/plating_catwalk,
-/area/almayer/medical/hydroponics)
"evX" = (
/obj/structure/pipes/standard/manifold/hidden/supply,
/turf/open/floor/plating/plating_catwalk,
@@ -32780,6 +33127,9 @@
icon_state = "test_floor4"
},
/area/almayer/hull/lower_hull/l_f_s)
+"ewV" = (
+/turf/open/floor/almayer,
+/area/almayer/living/auxiliary_officer_office)
"exr" = (
/obj/structure/pipes/standard/simple/hidden/supply{
dir = 5
@@ -32976,6 +33326,13 @@
},
/turf/open/floor/plating/plating_catwalk,
/area/almayer/hallways/starboard_umbilical)
+"eBO" = (
+/obj/structure/pipes/standard/simple/hidden/supply,
+/obj/structure/bed,
+/turf/open/floor/almayer{
+ icon_state = "mono"
+ },
+/area/almayer/medical/medical_science)
"eBV" = (
/obj/structure/window/reinforced{
dir = 8;
@@ -33004,12 +33361,6 @@
icon_state = "sterile_green_side"
},
/area/almayer/medical/lower_medical_medbay)
-"eCa" = (
-/obj/structure/bed/chair/comfy{
- dir = 8
- },
-/turf/open/floor/plating/plating_catwalk,
-/area/almayer/medical/medical_science)
"eCo" = (
/obj/structure/platform{
dir = 1
@@ -33408,9 +33759,6 @@
icon_state = "silver"
},
/area/almayer/hallways/repair_bay)
-"eLK" = (
-/turf/open/floor/plating/plating_catwalk,
-/area/almayer/shipboard/brig/processing)
"eMh" = (
/obj/structure/machinery/door/airlock/almayer/generic{
name = "\improper Laundry Room"
@@ -33448,6 +33796,16 @@
icon_state = "plate"
},
/area/almayer/hull/lower_hull/l_f_s)
+"eNI" = (
+/obj/structure/machinery/door/poddoor/shutters/almayer{
+ dir = 4;
+ id = "containmentlockdown_S";
+ name = "\improper Containment Lockdown"
+ },
+/turf/open/floor/almayer{
+ icon_state = "test_floor4"
+ },
+/area/almayer/medical/containment)
"eNL" = (
/obj/structure/surface/table/almayer,
/obj/item/stack/sheet/cardboard{
@@ -33595,17 +33953,13 @@
icon_state = "mono"
},
/area/almayer/lifeboat_pumps/south1)
-"eSA" = (
-/obj/effect/decal/warning_stripes{
- icon_state = "NW-out";
- pixel_x = -1;
- pixel_y = 1
- },
+"eSo" = (
+/obj/structure/pipes/standard/simple/hidden/supply,
/turf/open/floor/almayer{
- dir = 9;
+ dir = 5;
icon_state = "sterile_green_side"
},
-/area/almayer/medical/containment)
+/area/almayer/medical/medical_science)
"eSJ" = (
/obj/structure/surface/table/woodentable/fancy,
/obj/structure/transmitter/rotary{
@@ -33842,18 +34196,6 @@
icon_state = "green"
},
/area/almayer/hallways/port_hallway)
-"eYq" = (
-/obj/effect/decal/warning_stripes{
- icon_state = "W";
- pixel_x = -1
- },
-/obj/structure/surface/table/almayer,
-/obj/structure/machinery/computer/research,
-/turf/open/floor/almayer{
- dir = 1;
- icon_state = "sterile_green_corner"
- },
-/area/almayer/medical/hydroponics)
"eYr" = (
/obj/effect/decal/warning_stripes{
icon_state = "S"
@@ -33948,18 +34290,6 @@
icon_state = "red"
},
/area/almayer/shipboard/brig/main_office)
-"eZp" = (
-/obj/structure/machinery/light,
-/obj/structure/machinery/cm_vending/sorted/medical,
-/obj/effect/decal/warning_stripes{
- icon_state = "E";
- pixel_x = 1
- },
-/turf/open/floor/almayer{
- dir = 4;
- icon_state = "sterile_green_corner"
- },
-/area/almayer/medical/medical_science)
"eZz" = (
/obj/structure/sign/safety/water{
pixel_x = 8;
@@ -33981,10 +34311,6 @@
icon_state = "red"
},
/area/almayer/hull/upper_hull/u_a_p)
-"eZX" = (
-/obj/structure/largecrate/random/barrel/green,
-/turf/open/floor/plating/plating_catwalk,
-/area/almayer/hull/lower_hull/l_f_p)
"fau" = (
/obj/structure/pipes/standard/manifold/hidden/supply,
/obj/structure/disposalpipe/junction{
@@ -33993,6 +34319,15 @@
},
/turf/open/floor/plating/plating_catwalk,
/area/almayer/hallways/starboard_hallway)
+"faK" = (
+/obj/structure/machinery/light/small{
+ dir = 4
+ },
+/turf/open/floor/almayer{
+ dir = 4;
+ icon_state = "red"
+ },
+/area/almayer/shipboard/brig/processing)
"faO" = (
/obj/item/stack/cable_coil,
/turf/open/floor/plating/plating_catwalk,
@@ -34105,8 +34440,14 @@
/turf/open/floor/almayer,
/area/almayer/living/briefing)
"fcy" = (
-/turf/closed/wall/almayer/research/containment/wall/west,
-/area/almayer/medical/containment/cell)
+/obj/structure/machinery/light{
+ dir = 8
+ },
+/obj/structure/machinery/autolathe,
+/turf/open/floor/almayer{
+ icon_state = "test_floor4"
+ },
+/area/almayer/medical/hydroponics)
"fcB" = (
/turf/open/floor/almayer{
dir = 8;
@@ -34149,32 +34490,6 @@
icon_state = "orange"
},
/area/almayer/engineering/ce_room)
-"fcO" = (
-/obj/structure/filingcabinet/filingcabinet{
- density = 0;
- layer = 2.9;
- pixel_x = 7;
- pixel_y = 16
- },
-/obj/structure/filingcabinet/filingcabinet{
- density = 0;
- layer = 2.9;
- pixel_x = -8;
- pixel_y = 16
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "N";
- pixel_y = 1
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "E";
- pixel_x = 1
- },
-/obj/structure/reagent_dispensers/fueltank/custom,
-/turf/open/floor/almayer{
- icon_state = "sterile_green_corner"
- },
-/area/almayer/medical/containment)
"fcP" = (
/turf/open/floor/almayer{
icon_state = "orange"
@@ -34216,19 +34531,6 @@
icon_state = "plate"
},
/area/almayer/living/pilotbunks)
-"fdO" = (
-/obj/structure/machinery/door_control{
- dir = 1;
- id = "researchlockdownext_door";
- name = "Door Shutters";
- pixel_y = 29;
- req_access_txt = "28"
- },
-/turf/open/floor/almayer{
- dir = 1;
- icon_state = "sterile_green_side"
- },
-/area/almayer/medical/medical_science)
"fdX" = (
/obj/structure/surface/table/almayer,
/obj/item/tool/hand_labeler,
@@ -34464,15 +34766,6 @@
dir = 8
},
/area/almayer/medical/containment/cell/cl)
-"fln" = (
-/obj/structure/pipes/standard/manifold/hidden/supply{
- dir = 1
- },
-/obj/structure/disposalpipe/segment,
-/turf/open/floor/almayer{
- icon_state = "sterile_green_side"
- },
-/area/almayer/medical/medical_science)
"flE" = (
/obj/structure/platform{
dir = 8
@@ -34541,20 +34834,6 @@
icon_state = "plate"
},
/area/almayer/hull/lower_hull/l_f_s)
-"fnh" = (
-/obj/structure/bed/chair,
-/obj/structure/extinguisher_cabinet{
- pixel_y = 26
- },
-/obj/structure/sign/safety/cryo{
- pixel_x = 21;
- pixel_y = 27
- },
-/turf/open/floor/almayer{
- dir = 1;
- icon_state = "redcorner"
- },
-/area/almayer/shipboard/brig/processing)
"fnl" = (
/obj/structure/surface/rack,
/obj/item/clothing/suit/straight_jacket,
@@ -34637,6 +34916,24 @@
icon_state = "emeraldcorner"
},
/area/almayer/squads/charlie)
+"foP" = (
+/obj/structure/machinery/shower{
+ pixel_y = 16
+ },
+/obj/structure/machinery/door_control{
+ id = "containmentlockdown_S";
+ name = "Containment Lockdown";
+ pixel_x = 29;
+ pixel_y = 3;
+ req_one_access_txt = "19;28"
+ },
+/obj/structure/window/reinforced{
+ dir = 8;
+ health = 80;
+ pixel_y = 6
+ },
+/turf/open/floor/plating/plating_catwalk,
+/area/almayer/medical/medical_science)
"fpd" = (
/obj/structure/sign/safety/hvac_old{
pixel_x = 8;
@@ -34650,18 +34947,6 @@
icon_state = "orange"
},
/area/almayer/engineering/engineering_workshop/hangar)
-"fpG" = (
-/obj/structure/pipes/standard/simple/hidden/supply{
- dir = 4
- },
-/obj/structure/machinery/camera/autoname/almayer{
- dir = 1;
- name = "ship-grade camera"
- },
-/turf/open/floor/almayer{
- icon_state = "sterile_green_side"
- },
-/area/almayer/medical/medical_science)
"fpO" = (
/obj/structure/pipes/standard/manifold/hidden/supply,
/turf/open/floor/plating/plating_catwalk,
@@ -34714,6 +34999,24 @@
},
/turf/open/floor/wood/ship,
/area/almayer/command/corporateliason)
+"fqg" = (
+/obj/structure/machinery/door/poddoor/shutters/almayer/open{
+ id = "Interrogation Shutters";
+ name = "\improper Privacy Shutters"
+ },
+/obj/structure/machinery/door/airlock/almayer/security{
+ dir = 2;
+ name = "\improper Interrogation";
+ req_access = null;
+ req_one_access_txt = "1;3"
+ },
+/obj/structure/machinery/door/firedoor/border_only/almayer{
+ dir = 1
+ },
+/turf/open/floor/almayer{
+ icon_state = "test_floor4"
+ },
+/area/almayer/shipboard/brig/processing)
"fqu" = (
/obj/structure/largecrate/random/barrel/red,
/turf/open/floor/almayer,
@@ -34736,28 +35039,6 @@
icon_state = "sterile_green_side"
},
/area/almayer/medical/lower_medical_medbay)
-"frf" = (
-/obj/structure/surface/rack,
-/obj/item/device/radio/marine,
-/obj/item/device/radio/marine,
-/obj/item/device/radio/marine,
-/obj/item/folded_tent/cmd,
-/turf/open/floor/almayer{
- icon_state = "redfull"
- },
-/area/almayer/command/cic)
-"frj" = (
-/obj/structure/pipes/standard/simple/hidden/supply{
- dir = 5
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "W"
- },
-/turf/open/floor/almayer{
- dir = 8;
- icon_state = "sterile_green_side"
- },
-/area/almayer/medical/containment)
"frl" = (
/turf/open/floor/almayer{
dir = 4;
@@ -34817,14 +35098,6 @@
icon_state = "tcomms"
},
/area/almayer/command/airoom)
-"frV" = (
-/obj/structure/machinery/medical_pod/sleeper{
- dir = 8
- },
-/turf/open/floor/almayer{
- icon_state = "mono"
- },
-/area/almayer/medical/medical_science)
"fsd" = (
/obj/effect/decal/warning_stripes{
icon_state = "S"
@@ -34883,6 +35156,19 @@
icon_state = "plating_striped"
},
/area/almayer/living/cryo_cells)
+"fsZ" = (
+/obj/item/bedsheet/orange,
+/obj/structure/bed{
+ icon_state = "psychbed"
+ },
+/obj/structure/machinery/cm_vending/clothing/senior_officer{
+ density = 0;
+ pixel_y = 30;
+ req_access = list();
+ req_access_txt = "6"
+ },
+/turf/open/floor/wood/ship,
+/area/almayer/engineering/ce_room)
"fti" = (
/obj/structure/machinery/door/poddoor/railing{
dir = 2;
@@ -34901,17 +35187,6 @@
icon_state = "plate"
},
/area/almayer/hull/lower_hull/l_m_p)
-"fup" = (
-/obj/structure/pipes/standard/simple/hidden/supply{
- dir = 9
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "S"
- },
-/turf/open/floor/almayer{
- icon_state = "sterile_green_side"
- },
-/area/almayer/medical/medical_science)
"fut" = (
/obj/effect/decal/warning_stripes{
icon_state = "N";
@@ -35059,6 +35334,14 @@
icon_state = "plate"
},
/area/almayer/hull/lower_hull/l_m_p)
+"fxA" = (
+/obj/structure/machinery/power/apc/almayer{
+ dir = 1
+ },
+/turf/open/floor/almayer{
+ icon_state = "plate"
+ },
+/area/almayer/living/auxiliary_officer_office)
"fxI" = (
/obj/effect/decal/warning_stripes{
icon_state = "E";
@@ -35174,19 +35457,6 @@
/obj/structure/machinery/light,
/turf/open/floor/wood/ship,
/area/almayer/command/corporateliason)
-"fAq" = (
-/obj/structure/pipes/standard/simple/hidden/supply{
- dir = 6
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "SW-out";
- pixel_x = -1
- },
-/turf/open/floor/almayer{
- dir = 8;
- icon_state = "sterile_green_corner"
- },
-/area/almayer/medical/hydroponics)
"fAt" = (
/obj/structure/largecrate/guns/merc{
name = "\improper dodgy crate"
@@ -35200,27 +35470,6 @@
icon_state = "plate"
},
/area/almayer/hull/lower_hull/l_m_s)
-"fAU" = (
-/obj/structure/machinery/light/small{
- dir = 4
- },
-/turf/open/floor/almayer{
- dir = 4;
- icon_state = "red"
- },
-/area/almayer/shipboard/brig/processing)
-"fBd" = (
-/obj/structure/machinery/door_control{
- id = "ARES JoeCryo";
- name = "Working Joe Cryogenics Lockdown";
- pixel_x = 24;
- pixel_y = 8;
- req_one_access_txt = "19;200;90;91;92"
- },
-/turf/open/floor/almayer/no_build{
- icon_state = "ai_floors"
- },
-/area/almayer/command/airoom)
"fBf" = (
/obj/structure/machinery/door/airlock/almayer/maint{
dir = 1
@@ -35264,20 +35513,17 @@
/turf/open/floor/plating/plating_catwalk,
/area/almayer/hallways/aft_hallway)
"fBO" = (
-/turf/open/floor/almayer{
- dir = 6;
- icon_state = "sterile_green_side"
+/obj/structure/machinery/chem_master{
+ vial_maker = 1
},
-/area/almayer/medical/containment)
-"fBQ" = (
-/obj/effect/decal/warning_stripes{
- icon_state = "S"
+/obj/item/clothing/glasses/science{
+ pixel_x = 1;
+ pixel_y = 8
},
-/obj/structure/machinery/light,
/turf/open/floor/almayer{
- icon_state = "sterile_green_side"
+ icon_state = "mono"
},
-/area/almayer/medical/containment)
+/area/almayer/medical/medical_science)
"fCL" = (
/obj/structure/pipes/standard/simple/hidden/supply{
dir = 4
@@ -35466,20 +35712,6 @@
icon_state = "dark_sterile"
},
/area/almayer/medical/lower_medical_medbay)
-"fFN" = (
-/obj/structure/pipes/standard/simple/hidden/supply{
- dir = 4
- },
-/obj/structure/machinery/iv_drip,
-/obj/effect/decal/warning_stripes{
- icon_state = "E";
- pixel_x = 1
- },
-/turf/open/floor/almayer{
- dir = 4;
- icon_state = "sterile_green_corner"
- },
-/area/almayer/medical/medical_science)
"fFO" = (
/obj/structure/machinery/light{
dir = 4
@@ -35786,19 +36018,6 @@
icon_state = "red"
},
/area/almayer/shipboard/brig/general_equipment)
-"fLK" = (
-/obj/structure/machinery/light{
- dir = 1
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "N";
- pixel_y = 1
- },
-/turf/open/floor/almayer{
- dir = 1;
- icon_state = "sterile_green_corner"
- },
-/area/almayer/medical/containment)
"fLX" = (
/obj/effect/decal/warning_stripes{
icon_state = "N";
@@ -35906,30 +36125,12 @@
},
/turf/open/floor/almayer,
/area/almayer/hallways/aft_hallway)
-"fNZ" = (
-/obj/structure/pipes/standard/simple/hidden/supply,
-/obj/structure/bed,
-/turf/open/floor/almayer{
- icon_state = "mono"
- },
-/area/almayer/medical/medical_science)
"fOk" = (
/obj/structure/pipes/standard/simple/hidden/supply{
dir = 9
},
/turf/open/floor/almayer,
/area/almayer/living/briefing)
-"fOx" = (
-/obj/structure/pipes/standard/cap/hidden{
- dir = 4
- },
-/obj/structure/machinery/cryo_cell{
- dir = 1
- },
-/turf/open/floor/almayer{
- icon_state = "mono"
- },
-/area/almayer/medical/medical_science)
"fOz" = (
/obj/structure/target{
name = "punching bag"
@@ -36081,17 +36282,6 @@
},
/turf/open/floor/almayer,
/area/almayer/lifeboat_pumps/north1)
-"fSE" = (
-/obj/structure/machinery/smartfridge/chemistry,
-/obj/item/device/radio/intercom{
- freerange = 1;
- name = "General Listening Channel";
- pixel_y = 28
- },
-/turf/open/floor/almayer{
- icon_state = "mono"
- },
-/area/almayer/medical/medical_science)
"fSF" = (
/obj/structure/sink{
dir = 1;
@@ -36213,25 +36403,6 @@
icon_state = "dark_sterile"
},
/area/almayer/medical/chemistry)
-"fWy" = (
-/obj/structure/surface/table/almayer,
-/obj/item/paper_bin/wy{
- pixel_x = 6;
- pixel_y = 5
- },
-/obj/item/tool/pen{
- pixel_x = 8
- },
-/obj/item/clipboard{
- pixel_x = -8
- },
-/obj/item/folder/white{
- pixel_x = -8
- },
-/turf/open/floor/almayer{
- icon_state = "sterile_green_side"
- },
-/area/almayer/medical/medical_science)
"fWT" = (
/obj/structure/machinery/door/airlock/almayer/engineering{
dir = 2;
@@ -36468,13 +36639,6 @@
},
/turf/open/floor/almayer,
/area/almayer/shipboard/brig/processing)
-"gcr" = (
-/obj/structure/machinery/iv_drip,
-/turf/open/floor/almayer{
- dir = 9;
- icon_state = "sterile_green_side"
- },
-/area/almayer/medical/containment)
"gcK" = (
/obj/structure/machinery/light/small{
dir = 1
@@ -36686,6 +36850,15 @@
},
/turf/open/floor/almayer,
/area/almayer/hallways/hangar)
+"ggl" = (
+/obj/structure/closet/secure_closet/freezer/fridge,
+/obj/structure/machinery/light{
+ dir = 1
+ },
+/turf/open/floor/almayer{
+ icon_state = "mono"
+ },
+/area/almayer/medical/medical_science)
"ggt" = (
/turf/open/floor/almayer{
dir = 5;
@@ -36715,14 +36888,6 @@
/obj/structure/window/framed/almayer,
/turf/open/floor/plating,
/area/almayer/engineering/airmix)
-"ght" = (
-/obj/effect/decal/warning_stripes{
- icon_state = "S"
- },
-/turf/open/floor/almayer/research/containment/floor2{
- dir = 1
- },
-/area/almayer/medical/containment/cell)
"ghD" = (
/obj/structure/sign/safety/autoopenclose{
pixel_x = 7;
@@ -36730,25 +36895,6 @@
},
/turf/open/floor/almayer,
/area/almayer/hallways/port_hallway)
-"ghO" = (
-/obj/structure/machinery/flasher{
- alpha = 1;
- id = "Containment Cell 2";
- layer = 2.1;
- name = "Mounted Flash";
- pixel_y = 30
- },
-/obj/structure/machinery/light/containment{
- dir = 1
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "N";
- pixel_y = 1
- },
-/turf/open/floor/almayer/research/containment/floor2{
- dir = 1
- },
-/area/almayer/medical/containment/cell)
"ghX" = (
/obj/structure/window/reinforced/tinted{
pixel_y = -8
@@ -36971,33 +37117,6 @@
icon_state = "plate"
},
/area/almayer/shipboard/starboard_point_defense)
-"gmp" = (
-/obj/structure/disposalpipe/segment,
-/turf/open/floor/almayer{
- dir = 10;
- icon_state = "sterile_green_side"
- },
-/area/almayer/medical/medical_science)
-"gnl" = (
-/obj/structure/pipes/standard/simple/hidden/supply{
- dir = 4
- },
-/obj/structure/machinery/door/airlock/almayer/research/reinforced{
- dir = 8;
- name = "\improper Containment Airlock"
- },
-/obj/structure/machinery/door/poddoor/almayer/open{
- dir = 4;
- id = "Containment Breach";
- name = "\improper Secure Airlock"
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "S"
- },
-/turf/open/floor/almayer{
- icon_state = "test_floor4"
- },
-/area/almayer/medical/medical_science)
"gnu" = (
/obj/structure/surface/table/almayer,
/obj/item/facepaint/green,
@@ -37022,9 +37141,6 @@
icon_state = "plate"
},
/area/almayer/hull/lower_hull/l_a_s)
-"gnN" = (
-/turf/open/floor/plating,
-/area/almayer/command/airoom)
"goj" = (
/obj/structure/machinery/door/poddoor/almayer/open{
dir = 2;
@@ -37081,34 +37197,6 @@
icon_state = "test_floor4"
},
/area/almayer/hallways/hangar)
-"gpm" = (
-/obj/structure/pipes/standard/manifold/hidden/supply,
-/obj/effect/decal/warning_stripes{
- icon_state = "SE-out";
- pixel_x = 1;
- pixel_y = -1
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "NE-out";
- pixel_x = 1;
- pixel_y = 1
- },
-/turf/open/floor/almayer{
- icon_state = "dark_sterile"
- },
-/area/almayer/medical/containment)
-"gpA" = (
-/obj/structure/machinery/camera/autoname/almayer/containment{
- dir = 8
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "E";
- pixel_x = 1
- },
-/turf/open/floor/almayer/research/containment/floor2{
- dir = 8
- },
-/area/almayer/medical/containment/cell)
"gpE" = (
/obj/structure/disposalpipe/segment,
/obj/structure/sign/safety/distribution_pipes{
@@ -37151,16 +37239,6 @@
icon_state = "plate"
},
/area/almayer/shipboard/brig/main_office)
-"gqZ" = (
-/obj/structure/filingcabinet/chestdrawer{
- density = 0;
- pixel_x = -16
- },
-/obj/structure/machinery/iv_drip,
-/turf/open/floor/almayer{
- icon_state = "mono"
- },
-/area/almayer/medical/medical_science)
"grl" = (
/obj/effect/landmark/crap_item,
/turf/open/floor/almayer{
@@ -37200,17 +37278,6 @@
/obj/effect/landmark/late_join,
/turf/open/floor/plating/plating_catwalk,
/area/almayer/living/cryo_cells)
-"gsr" = (
-/obj/effect/decal/warning_stripes{
- icon_state = "NW-out";
- pixel_x = -1;
- pixel_y = 1
- },
-/turf/open/floor/almayer{
- dir = 8;
- icon_state = "sterile_green_side"
- },
-/area/almayer/medical/hydroponics)
"gsH" = (
/obj/structure/machinery/door/airlock/multi_tile/almayer/generic{
dir = 1;
@@ -37514,6 +37581,15 @@
icon_state = "blue"
},
/area/almayer/living/gym)
+"gxP" = (
+/obj/effect/decal/warning_stripes{
+ icon_state = "E";
+ pixel_x = 1
+ },
+/turf/open/floor/almayer/research/containment/floor2{
+ dir = 8
+ },
+/area/almayer/medical/containment/cell)
"gxU" = (
/obj/structure/surface/table/almayer,
/obj/structure/machinery/status_display{
@@ -37663,19 +37739,13 @@
/turf/open/floor/almayer,
/area/almayer/hull/upper_hull/u_f_p)
"gAe" = (
-/obj/structure/filingcabinet{
- density = 0;
- pixel_x = -8;
- pixel_y = 18
- },
-/obj/structure/filingcabinet{
- density = 0;
- pixel_x = 8;
- pixel_y = 18
+/obj/structure/machinery/door_control{
+ id = "ARES JoeCryo";
+ name = "Working Joe Cryogenics Lockdown";
+ pixel_x = 24;
+ pixel_y = 8;
+ req_one_access_txt = "19;200;90;91;92"
},
-/obj/item/folder/white,
-/obj/item/folder/white,
-/obj/item/folder/white,
/turf/open/floor/almayer/no_build{
icon_state = "ai_floors"
},
@@ -37714,6 +37784,12 @@
"gAA" = (
/turf/open/floor/plating/plating_catwalk,
/area/almayer/squads/alpha_bravo_shared)
+"gAS" = (
+/obj/structure/pipes/standard/simple/hidden/supply,
+/turf/open/floor/almayer{
+ icon_state = "dark_sterile"
+ },
+/area/almayer/medical/medical_science)
"gBc" = (
/obj/structure/disposalpipe/segment,
/obj/structure/pipes/standard/simple/hidden/supply,
@@ -37738,22 +37814,6 @@
icon_state = "redcorner"
},
/area/almayer/shipboard/brig/processing)
-"gBj" = (
-/obj/structure/machinery/flasher{
- alpha = 1;
- id = "Containment Cell 3";
- layer = 2.1;
- name = "Mounted Flash";
- pixel_y = 30
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "N";
- pixel_y = 1
- },
-/turf/open/floor/almayer/research/containment/floor2{
- dir = 1
- },
-/area/almayer/medical/containment/cell)
"gBo" = (
/obj/structure/pipes/standard/simple/hidden/supply{
dir = 5
@@ -37848,6 +37908,17 @@
},
/turf/open/floor/almayer,
/area/almayer/shipboard/starboard_point_defense)
+"gFb" = (
+/obj/structure/surface/table/almayer,
+/obj/item/storage/toolbox/mechanical,
+/obj/item/dogtag{
+ desc = "A blank marine's information dog tag. The word ranger and a pawprint is scratched into it."
+ },
+/obj/item/device/megaphone,
+/turf/open/floor/almayer{
+ icon_state = "plate"
+ },
+/area/almayer/living/auxiliary_officer_office)
"gFd" = (
/obj/structure/surface/table/almayer,
/obj/item/book/manual/atmospipes{
@@ -37857,22 +37928,12 @@
icon_state = "mono"
},
/area/almayer/lifeboat_pumps/south1)
-"gFj" = (
-/obj/structure/machinery/status_display{
- pixel_y = 30
- },
-/obj/structure/surface/table/almayer,
-/obj/item/device/taperecorder{
- pixel_x = 7;
- pixel_y = 7
- },
-/obj/item/device/camera{
- pixel_x = -9;
- pixel_y = 16
+"gFl" = (
+/obj/structure/disposalpipe/segment{
+ dir = 4
},
-/obj/item/device/camera_film{
- pixel_x = 4;
- pixel_y = -2
+/obj/structure/pipes/standard/simple/hidden/supply{
+ dir = 4
},
/turf/open/floor/almayer{
allow_construction = 0
@@ -37930,11 +37991,15 @@
/turf/open/floor/plating,
/area/almayer/hallways/hangar)
"gGx" = (
+/obj/structure/filingcabinet/chestdrawer{
+ density = 0;
+ pixel_x = -16
+ },
+/obj/structure/machinery/iv_drip,
/turf/open/floor/almayer{
- dir = 5;
- icon_state = "sterile_green_side"
+ icon_state = "mono"
},
-/area/almayer/medical/containment)
+/area/almayer/medical/medical_science)
"gGI" = (
/obj/structure/disposalpipe/segment,
/obj/structure/machinery/light{
@@ -38058,20 +38123,6 @@
icon_state = "green"
},
/area/almayer/living/offices)
-"gJW" = (
-/obj/structure/sign/safety/ref_bio_storage{
- pixel_x = -17;
- pixel_y = 7
- },
-/obj/structure/sign/safety/biohazard{
- pixel_x = -17;
- pixel_y = -7
- },
-/obj/structure/machinery/cm_vending/sorted/medical/chemistry,
-/turf/open/floor/almayer{
- icon_state = "mono"
- },
-/area/almayer/medical/medical_science)
"gKB" = (
/obj/structure/machinery/portable_atmospherics/hydroponics,
/obj/structure/machinery/firealarm{
@@ -38125,6 +38176,20 @@
icon_state = "plate"
},
/area/almayer/engineering/upper_engineering)
+"gLc" = (
+/obj/structure/pipes/standard/simple/hidden/supply{
+ dir = 4
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "SE-out";
+ pixel_x = 1
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "SW-out";
+ pixel_x = -1
+ },
+/turf/open/floor/plating/plating_catwalk,
+/area/almayer/medical/hydroponics)
"gLu" = (
/obj/structure/pipes/standard/manifold/hidden/supply{
dir = 1
@@ -38258,20 +38323,12 @@
icon_state = "cargo"
},
/area/almayer/engineering/engine_core)
-"gNl" = (
-/obj/structure/machinery/light,
-/obj/effect/decal/warning_stripes{
- icon_state = "E";
- pixel_x = 1
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "W";
- pixel_x = -1
- },
+"gNp" = (
/turf/open/floor/almayer{
- icon_state = "mono"
+ dir = 9;
+ icon_state = "sterile_green_side"
},
-/area/almayer/medical/hydroponics)
+/area/almayer/medical/medical_science)
"gNq" = (
/obj/structure/machinery/cm_vending/sorted/cargo_ammo/squad{
req_access = null;
@@ -38377,6 +38434,14 @@
icon_state = "orange"
},
/area/almayer/engineering/engineering_workshop/hangar)
+"gQF" = (
+/obj/structure/bed/chair/comfy{
+ buckling_y = 2;
+ dir = 8;
+ pixel_y = 2
+ },
+/turf/open/floor/plating/plating_catwalk,
+/area/almayer/medical/medical_science)
"gRd" = (
/obj/structure/platform,
/obj/structure/target{
@@ -38396,6 +38461,26 @@
icon_state = "plate"
},
/area/almayer/hallways/hangar)
+"gRS" = (
+/obj/structure/surface/table/almayer,
+/obj/item/storage/firstaid/regular{
+ pixel_x = 8;
+ pixel_y = -2
+ },
+/obj/item/storage/box/drinkingglasses{
+ pixel_x = -7
+ },
+/obj/item/reagent_container/spray/cleaner{
+ pixel_x = -10;
+ pixel_y = 14
+ },
+/obj/item/storage/xeno_tag_case/full{
+ pixel_y = 8
+ },
+/turf/open/floor/almayer{
+ icon_state = "plate"
+ },
+/area/almayer/command/corporateliason)
"gSi" = (
/obj/structure/surface/table/almayer,
/obj/structure/machinery/computer/cameras/almayer_network,
@@ -38544,6 +38629,16 @@
/obj/structure/pipes/standard/manifold/hidden/supply,
/turf/open/floor/plating/plating_catwalk,
/area/almayer/lifeboat_pumps/north2)
+"gVq" = (
+/obj/structure/machinery/light,
+/obj/effect/decal/warning_stripes{
+ icon_state = "S"
+ },
+/turf/open/floor/almayer{
+ dir = 8;
+ icon_state = "sterile_green_corner"
+ },
+/area/almayer/medical/containment)
"gVA" = (
/obj/structure/disposalpipe/down/almayer{
dir = 8;
@@ -38711,17 +38806,16 @@
},
/turf/open/floor/almayer,
/area/almayer/squads/charlie_delta_shared)
+"gZv" = (
+/obj/structure/machinery/chem_dispenser/soda{
+ pixel_y = 20
+ },
+/turf/open/floor/almayer,
+/area/almayer/command/corporateliason)
"gZw" = (
/obj/structure/bed/sofa/vert/grey/bot,
/turf/open/floor/almayer,
/area/almayer/lifeboat_pumps/south1)
-"gZK" = (
-/obj/effect/decal/warning_stripes{
- icon_state = "SE-out";
- pixel_x = 1
- },
-/turf/open/floor/almayer,
-/area/almayer/living/tankerbunks)
"ham" = (
/turf/open/floor/almayer{
icon_state = "sterile_green"
@@ -38934,6 +39028,12 @@
icon_state = "plate"
},
/area/almayer/hull/lower_hull/l_f_s)
+"hec" = (
+/turf/open/floor/almayer{
+ dir = 8;
+ icon_state = "sterile_green_side"
+ },
+/area/almayer/medical/medical_science)
"hee" = (
/turf/open/floor/almayer{
dir = 4;
@@ -38946,16 +39046,6 @@
icon_state = "plate"
},
/area/almayer/engineering/engine_core)
-"heF" = (
-/obj/structure/bed/chair,
-/obj/structure/machinery/light{
- dir = 1
- },
-/turf/open/floor/almayer{
- dir = 8;
- icon_state = "red"
- },
-/area/almayer/shipboard/brig/processing)
"heV" = (
/obj/structure/largecrate/random/case/double,
/turf/open/floor/almayer{
@@ -39030,6 +39120,15 @@
icon_state = "plate"
},
/area/almayer/squads/delta)
+"hfV" = (
+/obj/structure/sign/safety/bathunisex{
+ pixel_x = 8;
+ pixel_y = -32
+ },
+/turf/open/floor/almayer{
+ icon_state = "plate"
+ },
+/area/almayer/living/auxiliary_officer_office)
"hgg" = (
/obj/structure/surface/table/almayer,
/obj/item/trash/USCMtray{
@@ -39100,6 +39199,12 @@
icon_state = "green"
},
/area/almayer/living/grunt_rnr)
+"hgQ" = (
+/turf/open/floor/almayer{
+ dir = 5;
+ icon_state = "red"
+ },
+/area/almayer/shipboard/brig/processing)
"hgZ" = (
/obj/structure/machinery/door_control{
dir = 1;
@@ -39202,36 +39307,6 @@
icon_state = "cargo_arrow"
},
/area/almayer/squads/delta)
-"hjv" = (
-/obj/structure/surface/table/almayer,
-/obj/effect/decal/warning_stripes{
- icon_state = "E";
- pixel_x = 1
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "N";
- pixel_y = 1
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "W"
- },
-/obj/structure/machinery/door_control{
- id = "W_Containment Cell 1";
- name = "Containment Lockdown";
- pixel_x = -7;
- pixel_y = 1;
- req_one_access_txt = "19;28"
- },
-/obj/structure/machinery/door_display/research_cell{
- id = "Containment Cell 1";
- name = "Cell 1 Control";
- pixel_x = 5;
- pixel_y = 2
- },
-/turf/open/floor/almayer{
- icon_state = "sterile_green"
- },
-/area/almayer/medical/containment)
"hjA" = (
/turf/open/floor/almayer{
dir = 10;
@@ -39340,6 +39415,17 @@
icon_state = "test_floor4"
},
/area/almayer/hallways/starboard_hallway)
+"hme" = (
+/obj/effect/decal/warning_stripes{
+ icon_state = "NW-out";
+ pixel_x = -1;
+ pixel_y = 1
+ },
+/turf/open/floor/almayer{
+ dir = 8;
+ icon_state = "sterile_green_side"
+ },
+/area/almayer/medical/hydroponics)
"hmy" = (
/obj/structure/machinery/light{
dir = 1
@@ -39379,21 +39465,20 @@
},
/area/almayer/command/cichallway)
"hng" = (
-/turf/closed/wall/almayer/research/containment/wall/corner{
- dir = 4
+/obj/structure/surface/table/almayer,
+/obj/item/clothing/accessory/storage/black_vest/acid_harness,
+/obj/item/clothing/accessory/storage/black_vest/acid_harness,
+/obj/structure/machinery/alarm/almayer{
+ dir = 1
},
-/area/almayer/medical/containment/cell)
-"hnt" = (
-/obj/structure/pipes/standard/simple/hidden/supply,
/obj/effect/decal/warning_stripes{
icon_state = "E";
pixel_x = 1
},
/turf/open/floor/almayer{
- dir = 6;
- icon_state = "sterile_green_side"
+ icon_state = "sterile_green"
},
-/area/almayer/medical/containment)
+/area/almayer/medical/hydroponics)
"hnV" = (
/obj/structure/machinery/light,
/turf/open/floor/almayer,
@@ -39464,6 +39549,19 @@
},
/turf/open/floor/almayer,
/area/almayer/living/chapel)
+"hqh" = (
+/obj/structure/pipes/standard/simple/hidden/supply,
+/obj/effect/decal/warning_stripes{
+ icon_state = "NE-out";
+ pixel_x = 1;
+ pixel_y = 1
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "NW-out";
+ pixel_y = 1
+ },
+/turf/open/floor/almayer/research/containment/entrance,
+/area/almayer/medical/containment/cell)
"hqs" = (
/obj/structure/machinery/light/small{
dir = 8
@@ -39472,30 +39570,6 @@
icon_state = "cargo"
},
/area/almayer/hull/lower_hull/l_f_s)
-"hqt" = (
-/obj/structure/disposalpipe/segment{
- dir = 4
- },
-/obj/structure/pipes/standard/simple/hidden/supply{
- dir = 4
- },
-/turf/open/floor/almayer{
- allow_construction = 0
- },
-/area/almayer/shipboard/brig/processing)
-"hqG" = (
-/obj/structure/machinery/sleep_console{
- dir = 8
- },
-/turf/open/floor/almayer{
- icon_state = "mono"
- },
-/area/almayer/medical/medical_science)
-"hqL" = (
-/turf/open/floor/almayer/research/containment/corner_var1{
- dir = 4
- },
-/area/almayer/medical/containment/cell)
"hqW" = (
/obj/structure/machinery/door/airlock/multi_tile/almayer/medidoor{
name = "\improper Medical Bay";
@@ -39572,17 +39646,6 @@
icon_state = "orange"
},
/area/almayer/squads/bravo)
-"htF" = (
-/obj/structure/pipes/vents/pump,
-/obj/structure/machinery/computer/cameras/almayer{
- dir = 4;
- pixel_x = -16
- },
-/turf/open/floor/almayer{
- dir = 10;
- icon_state = "sterile_green_side"
- },
-/area/almayer/medical/medical_science)
"htI" = (
/obj/structure/platform_decoration{
dir = 1
@@ -39599,11 +39662,6 @@
icon_state = "greenfull"
},
/area/almayer/living/offices)
-"hum" = (
-/turf/open/floor/almayer{
- icon_state = "cargo"
- },
-/area/almayer/living/tankerbunks)
"huK" = (
/turf/open/floor/almayer{
icon_state = "redcorner"
@@ -39631,31 +39689,6 @@
/obj/structure/disposalpipe/segment,
/turf/open/floor/almayer,
/area/almayer/hallways/port_hallway)
-"hvv" = (
-/obj/structure/disposalpipe/segment,
-/obj/structure/pipes/standard/manifold/hidden/supply{
- dir = 8
- },
-/obj/item/clipboard{
- base_pixel_x = 20;
- pixel_x = 5
- },
-/obj/item/paper{
- pixel_x = 5
- },
-/obj/item/tool/pen/blue{
- pixel_x = 5
- },
-/obj/structure/surface/table/reinforced/black,
-/obj/structure/transmitter/rotary{
- name = "CIC Reception Telephone";
- phone_category = "Command";
- phone_id = "CIC Reception";
- pixel_x = -7;
- pixel_y = 4
- },
-/turf/open/floor/almayer,
-/area/almayer/command/cic)
"hvw" = (
/obj/structure/pipes/standard/simple/hidden/supply/no_boom,
/turf/open/floor/plating,
@@ -39667,12 +39700,13 @@
/obj/effect/landmark/start/professor,
/turf/open/floor/plating/plating_catwalk,
/area/almayer/living/offices)
-"hwA" = (
-/obj/structure/machinery/portable_atmospherics/hydroponics,
+"hwo" = (
+/obj/structure/bed/chair/bolted,
/turf/open/floor/almayer{
- icon_state = "test_floor5"
+ dir = 9;
+ icon_state = "red"
},
-/area/almayer/medical/hydroponics)
+/area/almayer/shipboard/brig/processing)
"hwC" = (
/obj/structure/flora/pottedplant{
icon_state = "pottedplant_22";
@@ -39768,11 +39802,6 @@
icon_state = "plate"
},
/area/almayer/squads/charlie_delta_shared)
-"hyp" = (
-/turf/open/floor/almayer/research/containment/floor2{
- dir = 1
- },
-/area/almayer/medical/containment/cell)
"hyw" = (
/obj/effect/decal/warning_stripes{
icon_state = "NW-out";
@@ -39812,13 +39841,6 @@
icon_state = "test_floor4"
},
/area/almayer/command/airoom)
-"hyH" = (
-/obj/structure/pipes/standard/simple/hidden/supply,
-/turf/open/floor/almayer{
- dir = 6;
- icon_state = "sterile_green_side"
- },
-/area/almayer/medical/medical_science)
"hyQ" = (
/turf/closed/wall/almayer,
/area/almayer/living/synthcloset)
@@ -39904,12 +39926,6 @@
icon_state = "test_floor4"
},
/area/almayer/command/cic)
-"hzM" = (
-/obj/structure/reagent_dispensers/fueltank,
-/turf/open/floor/almayer{
- icon_state = "plate"
- },
-/area/almayer/living/tankerbunks)
"hzP" = (
/obj/structure/surface/table/almayer,
/obj/structure/machinery/power/apc/almayer{
@@ -40113,6 +40129,13 @@
/obj/structure/pipes/vents/pump,
/turf/open/floor/almayer,
/area/almayer/lifeboat_pumps/south1)
+"hFC" = (
+/obj/structure/bed/chair/comfy,
+/turf/open/floor/almayer{
+ dir = 8;
+ icon_state = "sterile_green_side"
+ },
+/area/almayer/medical/medical_science)
"hFF" = (
/obj/structure/machinery/door/airlock/almayer/medical{
name = "Autopsy";
@@ -40218,40 +40241,6 @@
icon_state = "plate"
},
/area/almayer/hull/upper_hull/u_a_p)
-"hHW" = (
-/turf/open/floor/almayer{
- dir = 9;
- icon_state = "sterile_green_side"
- },
-/area/almayer/medical/medical_science)
-"hIc" = (
-/obj/structure/pipes/vents/pump{
- name = "Secure Air Vent";
- welded = 1
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "N";
- pixel_y = 1
- },
-/obj/structure/machinery/alarm/almayer{
- dir = 1
- },
-/turf/open/floor/almayer{
- icon_state = "sterile_green"
- },
-/area/almayer/medical/containment)
-"hIw" = (
-/obj/structure/pipes/standard/simple/hidden/supply{
- dir = 10
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "N";
- pixel_y = 1
- },
-/turf/open/floor/almayer{
- icon_state = "plate"
- },
-/area/almayer/shipboard/brig/cryo)
"hII" = (
/obj/structure/machinery/cm_vending/gear/tl{
density = 0;
@@ -40331,6 +40320,20 @@
icon_state = "plate"
},
/area/almayer/hull/upper_hull/u_f_s)
+"hKl" = (
+/obj/structure/pipes/vents/pump,
+/obj/effect/decal/warning_stripes{
+ icon_state = "E";
+ pixel_x = 1
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "W";
+ pixel_x = -1
+ },
+/turf/open/floor/almayer{
+ icon_state = "mono"
+ },
+/area/almayer/medical/hydroponics)
"hKQ" = (
/turf/open/floor/almayer{
icon_state = "cargo_arrow"
@@ -40444,6 +40447,32 @@
icon_state = "plate"
},
/area/almayer/hull/lower_hull/l_a_p)
+"hOj" = (
+/obj/structure/machinery/firealarm{
+ pixel_y = 28
+ },
+/obj/structure/sign/safety/maint{
+ pixel_x = -17
+ },
+/obj/structure/surface/table/almayer,
+/obj/structure/transmitter/rotary{
+ name = "Telephone";
+ phone_category = "Almayer";
+ phone_id = "Auxiliary Support Office Second Line";
+ pixel_x = -5;
+ pixel_y = 3
+ },
+/obj/structure/transmitter/rotary{
+ name = "Telephone";
+ phone_category = "Almayer";
+ phone_id = "Auxiliary Support Office";
+ pixel_x = 8;
+ pixel_y = 8
+ },
+/turf/open/floor/almayer{
+ icon_state = "plate"
+ },
+/area/almayer/living/auxiliary_officer_office)
"hOR" = (
/obj/structure/disposalpipe/segment{
dir = 4
@@ -40453,6 +40482,21 @@
},
/turf/open/floor/almayer,
/area/almayer/hallways/port_hallway)
+"hPe" = (
+/obj/structure/disposalpipe/segment,
+/obj/structure/machinery/door/airlock/multi_tile/almayer/medidoor/research,
+/obj/structure/machinery/door/poddoor/shutters/almayer/open{
+ id = "researchlockdownext_door";
+ name = "\improper Research Doorway Shutter"
+ },
+/obj/structure/machinery/door/poddoor/almayer/open{
+ id = "Containment Breach";
+ name = "\improper Secure Airlock"
+ },
+/turf/open/floor/almayer{
+ icon_state = "test_floor4"
+ },
+/area/almayer/medical/medical_science)
"hPg" = (
/obj/structure/machinery/constructable_frame{
icon_state = "box_2"
@@ -40476,6 +40520,18 @@
icon_state = "orange"
},
/area/almayer/hallways/stern_hallway)
+"hPN" = (
+/obj/structure/pipes/standard/simple/hidden/supply,
+/obj/effect/decal/warning_stripes{
+ icon_state = "NE-out";
+ pixel_x = 1;
+ pixel_y = 1
+ },
+/turf/open/floor/almayer{
+ dir = 5;
+ icon_state = "sterile_green_side"
+ },
+/area/almayer/medical/hydroponics)
"hPT" = (
/obj/structure/largecrate/random/case/small,
/turf/open/floor/almayer{
@@ -40528,6 +40584,17 @@
icon_state = "sterile_green_side"
},
/area/almayer/medical/lower_medical_medbay)
+"hRa" = (
+/obj/structure/machinery/vending/snack{
+ pixel_x = -7
+ },
+/obj/structure/machinery/vending/coffee{
+ pixel_x = 14
+ },
+/turf/open/floor/almayer{
+ icon_state = "mono"
+ },
+/area/almayer/medical/medical_science)
"hRd" = (
/obj/structure/machinery/vending/coffee,
/turf/open/floor/almayer{
@@ -40692,12 +40759,6 @@
},
/turf/open/floor/plating/plating_catwalk,
/area/almayer/hallways/aft_hallway)
-"hTB" = (
-/turf/open/floor/almayer{
- dir = 4;
- icon_state = "redcorner"
- },
-/area/almayer/shipboard/brig/main_office)
"hTP" = (
/obj/structure/machinery/door_control{
id = "crate_room2";
@@ -40751,31 +40812,24 @@
},
/turf/open/floor/plating/plating_catwalk,
/area/almayer/shipboard/brig/cic_hallway)
-"hVz" = (
-/obj/structure/machinery/light{
+"hVf" = (
+/obj/structure/pipes/standard/manifold/hidden/supply{
dir = 1
},
/turf/open/floor/almayer{
- dir = 1;
+ dir = 6;
icon_state = "sterile_green_side"
},
-/area/almayer/medical/upper_medical)
-"hVS" = (
-/obj/effect/decal/warning_stripes{
- icon_state = "W";
- pixel_x = -1
- },
-/obj/structure/disposalpipe/trunk,
-/obj/structure/machinery/disposal,
-/obj/structure/sink{
- pixel_x = 1;
- pixel_y = -2
+/area/almayer/medical/medical_science)
+"hVz" = (
+/obj/structure/machinery/light{
+ dir = 1
},
/turf/open/floor/almayer{
- dir = 8;
+ dir = 1;
icon_state = "sterile_green_side"
},
-/area/almayer/medical/medical_science)
+/area/almayer/medical/upper_medical)
"hWa" = (
/obj/structure/surface/table/reinforced/almayer_B,
/obj/item/ashtray/plastic,
@@ -41034,9 +41088,6 @@
icon_state = "sterile_green_side"
},
/area/almayer/medical/lower_medical_medbay)
-"icM" = (
-/turf/closed/wall/almayer/research/containment/wall/north,
-/area/almayer/medical/containment/cell)
"icX" = (
/obj/structure/machinery/brig_cell/perma_2{
pixel_x = -32;
@@ -41066,17 +41117,6 @@
icon_state = "kitchen"
},
/area/almayer/living/grunt_rnr)
-"idG" = (
-/obj/structure/pipes/standard/simple/hidden/supply{
- dir = 4
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "S"
- },
-/turf/open/floor/almayer{
- icon_state = "sterile_green_side"
- },
-/area/almayer/medical/medical_science)
"idX" = (
/obj/structure/pipes/vents/pump,
/turf/open/floor/prison{
@@ -41293,24 +41333,6 @@
/obj/effect/landmark/start/reporter,
/turf/open/floor/plating/plating_catwalk,
/area/almayer/living/cryo_cells)
-"iiz" = (
-/obj/structure/surface/rack,
-/obj/item/reagent_container/food/drinks/bottle/sake{
- pixel_x = 5;
- pixel_y = 5
- },
-/obj/item/reagent_container/food/drinks/bottle/sake{
- pixel_x = 5;
- pixel_y = 5
- },
-/obj/item/reagent_container/food/drinks/bottle/sake,
-/obj/item/reagent_container/food/drinks/bottle/sake{
- pixel_x = -4
- },
-/turf/open/floor/almayer{
- icon_state = "plate"
- },
-/area/almayer/command/corporateliason)
"iiC" = (
/obj/structure/sign/safety/maint{
pixel_x = 8;
@@ -41340,23 +41362,6 @@
icon_state = "red"
},
/area/almayer/hull/upper_hull/u_a_p)
-"ijh" = (
-/obj/structure/surface/table/almayer,
-/obj/item/storage/toolbox/mechanical{
- pixel_x = 3;
- pixel_y = 12
- },
-/obj/item/storage/toolbox/electrical{
- pixel_y = 5
- },
-/obj/item/folder/white{
- layer = 2.9;
- pixel_x = -8
- },
-/turf/open/floor/almayer{
- icon_state = "mono"
- },
-/area/almayer/medical/hydroponics)
"ijn" = (
/obj/structure/surface/rack,
/obj/item/reagent_container/food/snacks/monkeycube/wrapped/farwacube{
@@ -41387,22 +41392,23 @@
icon_state = "plate"
},
/area/almayer/hull/lower_hull/l_f_s)
-"ijF" = (
+"ijA" = (
/obj/structure/surface/table/almayer,
-/obj/item/tool/pen,
-/obj/item/paper_bin/wy,
-/obj/structure/machinery/computer/cameras/containment{
- dir = 4;
- layer = 2.981;
- name = "Research Cameras";
- pixel_y = 16
+/obj/item/tool/pen{
+ pixel_x = -6
+ },
+/obj/item/paper_bin/uscm{
+ pixel_x = -6;
+ pixel_y = 7
+ },
+/obj/item/storage/box/evidence{
+ pixel_x = 7;
+ pixel_y = 6
},
-/obj/item/clothing/accessory/stethoscope,
/turf/open/floor/almayer{
- dir = 8;
- icon_state = "sterile_green_corner"
+ allow_construction = 0
},
-/area/almayer/medical/upper_medical)
+/area/almayer/shipboard/brig/processing)
"ijQ" = (
/obj/structure/surface/table/almayer,
/obj/structure/machinery/door_control{
@@ -41422,16 +41428,6 @@
},
/turf/open/floor/wood/ship,
/area/almayer/shipboard/sea_office)
-"ijS" = (
-/obj/structure/machinery/door/poddoor/almayer/open{
- dir = 4;
- id = "Containment Breach";
- name = "\improper Secure Airlock"
- },
-/turf/open/floor/almayer{
- icon_state = "test_floor4"
- },
-/area/almayer/medical/medical_science)
"ijU" = (
/obj/item/tool/wet_sign,
/turf/open/floor/plating/plating_catwalk,
@@ -41501,21 +41497,6 @@
icon_state = "plate"
},
/area/almayer/hull/lower_hull/l_a_s)
-"imk" = (
-/obj/structure/machinery/door/firedoor/border_only/almayer{
- dir = 1
- },
-/obj/structure/machinery/door/poddoor/shutters/almayer/open{
- id = "researchlockdownext_se_2";
- name = "\improper Research Window Shutter"
- },
-/obj/structure/machinery/door/poddoor/almayer/open{
- id = "Containment Breach";
- name = "\improper Secure Airlock"
- },
-/obj/structure/window/framed/almayer/white,
-/turf/open/floor/plating,
-/area/almayer/medical/medical_science)
"imo" = (
/obj/structure/machinery/light,
/turf/open/floor/almayer{
@@ -41529,18 +41510,6 @@
icon_state = "sterile_green_side"
},
/area/almayer/medical/morgue)
-"imx" = (
-/obj/structure/machinery/chem_master{
- vial_maker = 1
- },
-/obj/structure/sign/safety/chem_lab{
- pixel_x = 5;
- pixel_y = 29
- },
-/turf/open/floor/almayer{
- icon_state = "mono"
- },
-/area/almayer/medical/medical_science)
"imy" = (
/obj/structure/pipes/standard/simple/hidden/supply,
/turf/open/floor/almayer,
@@ -41574,6 +41543,16 @@
},
/turf/open/floor/plating/plating_catwalk,
/area/almayer/shipboard/brig/cells)
+"inL" = (
+/obj/effect/decal/warning_stripes{
+ icon_state = "W";
+ pixel_x = -1
+ },
+/turf/open/floor/almayer{
+ dir = 8;
+ icon_state = "sterile_green_side"
+ },
+/area/almayer/medical/medical_science)
"inN" = (
/obj/structure/disposalpipe/segment,
/obj/structure/pipes/standard/manifold/hidden/supply{
@@ -41601,14 +41580,6 @@
"ioU" = (
/turf/closed/wall/almayer,
/area/almayer/command/securestorage)
-"ioV" = (
-/obj/effect/decal/warning_stripes{
- icon_state = "W"
- },
-/turf/open/floor/almayer/research/containment/floor2{
- dir = 8
- },
-/area/almayer/medical/containment/cell)
"ioX" = (
/turf/open/floor/almayer{
dir = 6;
@@ -41650,6 +41621,26 @@
icon_state = "plate"
},
/area/almayer/hull/upper_hull/u_m_s)
+"ipQ" = (
+/obj/structure/surface/rack,
+/obj/item/storage/fancy/vials/empty,
+/obj/item/storage/fancy/vials/empty,
+/obj/item/storage/fancy/vials/empty,
+/obj/item/storage/fancy/vials/empty,
+/obj/item/storage/fancy/vials/empty,
+/obj/item/storage/fancy/vials/empty,
+/obj/effect/decal/warning_stripes{
+ icon_state = "S"
+ },
+/obj/item/device/radio/intercom{
+ freerange = 1;
+ name = "General Listening Channel";
+ pixel_x = -29
+ },
+/turf/open/floor/almayer{
+ icon_state = "sterile_green"
+ },
+/area/almayer/medical/hydroponics)
"ipT" = (
/obj/structure/surface/rack,
/obj/effect/spawner/random/toolbox,
@@ -41675,15 +41666,6 @@
icon_state = "green"
},
/area/almayer/squads/req)
-"iqp" = (
-/obj/structure/machinery/door/airlock/almayer/maint{
- req_one_access = null;
- req_one_access_txt = "19;27"
- },
-/turf/open/floor/almayer{
- icon_state = "test_floor4"
- },
-/area/almayer/living/tankerbunks)
"iqx" = (
/obj/structure/machinery/light/small{
dir = 4
@@ -41711,19 +41693,6 @@
/obj/structure/largecrate/random/case/double,
/turf/open/floor/plating/plating_catwalk,
/area/almayer/hull/upper_hull/u_f_p)
-"irw" = (
-/obj/structure/machinery/door/airlock/almayer/research/glass/reinforced{
- name = "\improper Research Reception Laboratory"
- },
-/obj/structure/machinery/door/poddoor/almayer/open{
- dir = 8;
- id = "Containment Breach";
- name = "\improper Secure Airlock"
- },
-/turf/open/floor/almayer{
- icon_state = "test_floor4"
- },
-/area/almayer/medical/medical_science)
"iry" = (
/obj/structure/platform{
dir = 8
@@ -41766,6 +41735,18 @@
},
/turf/open/floor/plating,
/area/almayer/living/port_emb)
+"irU" = (
+/obj/effect/decal/warning_stripes{
+ icon_state = "S"
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "E";
+ pixel_x = 1
+ },
+/turf/open/floor/almayer{
+ icon_state = "sterile_green_side"
+ },
+/area/almayer/medical/medical_science)
"isC" = (
/obj/effect/projector{
name = "Almayer_AresDown";
@@ -41972,15 +41953,6 @@
icon_state = "test_floor4"
},
/area/almayer/hallways/port_hallway)
-"ivJ" = (
-/obj/structure/machinery/light{
- dir = 8
- },
-/obj/structure/machinery/autolathe,
-/turf/open/floor/almayer{
- icon_state = "test_floor4"
- },
-/area/almayer/medical/hydroponics)
"ivM" = (
/obj/effect/decal/warning_stripes{
icon_state = "S"
@@ -42010,14 +41982,22 @@
icon_state = "dark_sterile"
},
/area/almayer/engineering/laundry)
-"iwE" = (
+"iwJ" = (
/obj/structure/pipes/standard/simple/hidden/supply{
- dir = 10
+ dir = 4
},
-/turf/open/floor/almayer{
- icon_state = "sterile_green"
+/obj/effect/decal/warning_stripes{
+ icon_state = "SW-out";
+ pixel_y = -1
},
-/area/almayer/medical/containment)
+/obj/effect/decal/warning_stripes{
+ icon_state = "NW-out";
+ pixel_y = 1
+ },
+/turf/open/floor/almayer/research/containment/entrance{
+ dir = 8
+ },
+/area/almayer/medical/containment/cell)
"iwW" = (
/obj/structure/bed/chair/comfy/beige,
/turf/open/floor/carpet,
@@ -42058,6 +42038,16 @@
icon_state = "plate"
},
/area/almayer/squads/delta)
+"ixN" = (
+/obj/structure/largecrate,
+/obj/item/folded_tent/reqs{
+ pixel_x = -3;
+ pixel_y = 10
+ },
+/turf/open/floor/almayer{
+ icon_state = "test_floor4"
+ },
+/area/almayer/squads/req)
"ixP" = (
/obj/structure/closet/firecloset,
/turf/open/floor/almayer{
@@ -42170,6 +42160,16 @@
},
/turf/open/floor/almayer,
/area/almayer/hallways/hangar)
+"iAz" = (
+/obj/structure/pipes/standard/simple/hidden/supply,
+/obj/effect/decal/warning_stripes{
+ icon_state = "SW-out"
+ },
+/turf/open/floor/almayer{
+ dir = 10;
+ icon_state = "sterile_green_side"
+ },
+/area/almayer/medical/containment)
"iAB" = (
/obj/structure/machinery/cm_vending/sorted/medical/wall_med{
pixel_y = -25
@@ -42627,23 +42627,13 @@
icon_state = "sterile_green_corner"
},
/area/almayer/medical/lower_medical_lobby)
-"iLt" = (
-/obj/structure/pipes/standard/simple/hidden/supply,
-/obj/effect/decal/warning_stripes{
- icon_state = "SW-out";
- pixel_x = -1
- },
-/obj/structure/machinery/door/airlock/multi_tile/almayer/medidoor/research{
- name = "\improper Research Hydroponics Workshop"
- },
-/obj/structure/machinery/door/poddoor/almayer/open{
- id = "Containment Breach";
- name = "\improper Secure Airlock"
- },
-/turf/open/floor/almayer{
- icon_state = "test_floor4"
+"iLC" = (
+/obj/structure/machinery/cm_vending/sorted/cargo_guns/vehicle_crew{
+ density = 0;
+ pixel_y = 16
},
-/area/almayer/medical/hydroponics)
+/turf/open/floor/almayer,
+/area/almayer/living/tankerbunks)
"iLO" = (
/turf/open/floor/almayer{
dir = 4;
@@ -42677,19 +42667,6 @@
icon_state = "red"
},
/area/almayer/lifeboat_pumps/south2)
-"iMA" = (
-/obj/structure/pipes/standard/simple/hidden/supply{
- dir = 4
- },
-/obj/structure/machinery/door/poddoor/almayer/open{
- dir = 4;
- id = "Containment Breach";
- name = "\improper Secure Airlock"
- },
-/turf/open/floor/almayer{
- icon_state = "test_floor4"
- },
-/area/almayer/medical/medical_science)
"iMI" = (
/obj/structure/machinery/cm_vending/sorted/medical/blood,
/obj/structure/machinery/camera/autoname/almayer{
@@ -42700,37 +42677,6 @@
icon_state = "sterile_green_side"
},
/area/almayer/medical/lower_medical_medbay)
-"iNM" = (
-/obj/structure/pipes/standard/simple/hidden/supply{
- dir = 4
- },
-/turf/open/floor/almayer/research/containment/corner{
- dir = 4
- },
-/area/almayer/medical/containment/cell)
-"iNO" = (
-/obj/structure/machinery/shower{
- pixel_y = 16
- },
-/obj/structure/machinery/light{
- dir = 8
- },
-/obj/structure/window/reinforced{
- dir = 4;
- health = 80;
- pixel_y = 6
- },
-/turf/open/floor/plating/plating_catwalk,
-/area/almayer/medical/medical_science)
-"iNV" = (
-/obj/effect/decal/warning_stripes{
- icon_state = "S"
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "W"
- },
-/turf/open/floor/almayer/research/containment/corner4,
-/area/almayer/medical/containment/cell)
"iNZ" = (
/obj/structure/machinery/light{
dir = 8
@@ -42762,6 +42708,20 @@
},
/turf/open/floor/almayer,
/area/almayer/shipboard/brig/cells)
+"iPg" = (
+/obj/structure/machinery/door/airlock/almayer/security{
+ dir = 2;
+ name = "\improper Interrogation Observation";
+ req_one_access_txt = "1;3";
+ req_access = null
+ },
+/obj/structure/machinery/door/firedoor/border_only/almayer{
+ dir = 1
+ },
+/turf/open/floor/almayer{
+ icon_state = "test_floor4"
+ },
+/area/almayer/shipboard/brig/processing)
"iPv" = (
/obj/structure/bed/chair/comfy,
/obj/structure/window/reinforced/ultra,
@@ -42864,20 +42824,6 @@
icon_state = "plate"
},
/area/almayer/hull/lower_hull/l_m_s)
-"iRl" = (
-/obj/structure/machinery/door_control{
- id = "ARES JoeCryo";
- name = "Working Joe Cryogenics Lockdown";
- pixel_x = -24;
- pixel_y = -8;
- req_one_access_txt = "19;200;90;91;92"
- },
-/obj/effect/landmark/late_join/working_joe,
-/obj/effect/landmark/start/working_joe,
-/turf/open/floor/almayer/no_build{
- icon_state = "ai_floors"
- },
-/area/almayer/command/airoom)
"iRr" = (
/obj/structure/machinery/light{
dir = 1
@@ -42897,18 +42843,26 @@
/obj/structure/pipes/vents/pump/on,
/turf/open/floor/almayer,
/area/almayer/living/gym)
+"iRN" = (
+/obj/structure/machinery/light/containment{
+ dir = 4
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "E";
+ pixel_x = 1
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "N";
+ pixel_y = 1
+ },
+/turf/open/floor/almayer/research/containment/corner_var1{
+ dir = 4
+ },
+/area/almayer/medical/containment/cell)
"iRS" = (
/obj/item/trash/chips,
/turf/open/floor/plating,
/area/almayer/hull/lower_hull/l_f_p)
-"iSc" = (
-/obj/effect/decal/warning_stripes{
- icon_state = "S"
- },
-/turf/open/floor/almayer{
- icon_state = "sterile_green_side"
- },
-/area/almayer/medical/containment)
"iSZ" = (
/obj/structure/disposalpipe/segment{
dir = 4
@@ -42933,19 +42887,6 @@
icon_state = "plate"
},
/area/almayer/hull/upper_hull/u_a_p)
-"iTk" = (
-/obj/structure/machinery/light{
- unacidable = 1;
- unslashable = 1
- },
-/obj/structure/machinery/optable,
-/obj/effect/decal/warning_stripes{
- icon_state = "S"
- },
-/turf/open/floor/almayer/research/containment/floor2{
- dir = 1
- },
-/area/almayer/medical/containment/cell)
"iTw" = (
/obj/structure/bed/chair/comfy{
dir = 4
@@ -42966,19 +42907,6 @@
icon_state = "plate"
},
/area/almayer/hull/lower_hull/l_m_p)
-"iTD" = (
-/obj/effect/decal/warning_stripes{
- icon_state = "E";
- pixel_x = 1
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "S"
- },
-/turf/open/floor/almayer{
- dir = 6;
- icon_state = "silver"
- },
-/area/almayer/living/bridgebunks)
"iTI" = (
/obj/structure/machinery/light/small{
dir = 4
@@ -43005,6 +42933,49 @@
},
/turf/open/floor/plating,
/area/almayer/hull/lower_hull/l_f_p)
+"iUo" = (
+/obj/structure/sign/safety/terminal{
+ pixel_x = 7;
+ pixel_y = -25
+ },
+/obj/structure/surface/rack,
+/obj/item/storage/box/autoinjectors{
+ pixel_x = 7;
+ pixel_y = 5
+ },
+/obj/item/storage/box/beakers{
+ pixel_x = -6;
+ pixel_y = 5
+ },
+/obj/item/storage/box/sprays{
+ pixel_y = -3
+ },
+/turf/open/floor/almayer{
+ icon_state = "mono"
+ },
+/area/almayer/medical/hydroponics)
+"iUu" = (
+/obj/structure/surface/table/almayer,
+/obj/item/storage/box/gloves{
+ pixel_x = -4;
+ pixel_y = 13
+ },
+/obj/item/storage/box/masks{
+ pixel_x = -6;
+ pixel_y = 4
+ },
+/obj/item/tool/hand_labeler{
+ pixel_x = 5;
+ pixel_y = 3
+ },
+/obj/item/reagent_container/glass/beaker/cryoxadone{
+ pixel_x = -6;
+ pixel_y = 8
+ },
+/turf/open/floor/almayer{
+ icon_state = "mono"
+ },
+/area/almayer/medical/medical_science)
"iUZ" = (
/obj/docking_port/stationary/escape_pod/cl,
/turf/open/floor/plating,
@@ -43086,19 +43057,6 @@
},
/turf/open/floor/almayer,
/area/almayer/hallways/hangar)
-"iWz" = (
-/obj/effect/decal/warning_stripes{
- icon_state = "W";
- pixel_x = -1
- },
-/obj/structure/machinery/photocopier,
-/obj/structure/machinery/firealarm{
- pixel_y = 28
- },
-/turf/open/floor/almayer{
- icon_state = "sterile_green"
- },
-/area/almayer/medical/hydroponics)
"iWL" = (
/obj/structure/pipes/standard/simple/hidden/supply,
/turf/open/floor/almayer{
@@ -43118,16 +43076,6 @@
icon_state = "kitchen"
},
/area/almayer/engineering/upper_engineering)
-"iWT" = (
-/obj/structure/machinery/light,
-/obj/effect/decal/warning_stripes{
- icon_state = "S"
- },
-/turf/open/floor/almayer{
- dir = 8;
- icon_state = "sterile_green_corner"
- },
-/area/almayer/medical/containment)
"iXb" = (
/obj/structure/bed/chair/comfy/delta{
dir = 8
@@ -43136,10 +43084,6 @@
icon_state = "bluefull"
},
/area/almayer/living/briefing)
-"iXe" = (
-/obj/structure/pipes/standard/simple/hidden/supply,
-/turf/closed/wall/almayer/white/reinforced,
-/area/almayer/medical/medical_science)
"iXt" = (
/obj/structure/pipes/standard/simple/hidden/supply,
/turf/open/floor/almayer{
@@ -43170,12 +43114,20 @@
icon_state = "sterile_green_corner"
},
/area/almayer/medical/lower_medical_lobby)
-"iYe" = (
-/obj/structure/pipes/standard/simple/hidden/supply{
- dir = 10
+"iYf" = (
+/obj/structure/machinery/cm_vending/clothing/medical_crew{
+ density = 0;
+ pixel_y = 16
},
-/turf/open/floor/almayer,
-/area/almayer/living/tankerbunks)
+/obj/structure/window/reinforced{
+ dir = 8;
+ health = 80
+ },
+/turf/open/floor/almayer{
+ dir = 1;
+ icon_state = "cargo_arrow"
+ },
+/area/almayer/medical/hydroponics)
"iYi" = (
/obj/effect/decal/warning_stripes{
icon_state = "SW-out"
@@ -43411,6 +43363,14 @@
icon_state = "orange"
},
/area/almayer/engineering/upper_engineering/port)
+"jbK" = (
+/obj/structure/bed/chair/comfy{
+ dir = 4
+ },
+/turf/open/floor/almayer{
+ icon_state = "sterile_green"
+ },
+/area/almayer/medical/containment)
"jbO" = (
/obj/structure/machinery/cm_vending/sorted/medical,
/turf/open/floor/almayer{
@@ -43498,6 +43458,21 @@
"jeb" = (
/turf/closed/wall/almayer,
/area/almayer/squads/alpha_bravo_shared)
+"jeq" = (
+/obj/structure/surface/rack,
+/obj/item/storage/box/pillbottles{
+ pixel_x = 6;
+ pixel_y = 7
+ },
+/obj/item/storage/box/pillbottles{
+ pixel_x = -6;
+ pixel_y = 6
+ },
+/obj/item/storage/box/pillbottles,
+/turf/open/floor/almayer{
+ icon_state = "mono"
+ },
+/area/almayer/medical/hydroponics)
"jew" = (
/obj/structure/surface/table/reinforced/black,
/turf/open/floor/almayer{
@@ -43550,21 +43525,6 @@
/obj/structure/pipes/standard/simple/hidden/supply,
/turf/open/floor/plating/plating_catwalk,
/area/almayer/hull/lower_hull/l_m_s)
-"jfy" = (
-/obj/structure/window/framed/almayer/white,
-/obj/structure/machinery/door/firedoor/border_only/almayer,
-/obj/structure/machinery/door/poddoor/shutters/almayer/open{
- dir = 8;
- id = "researchlockdownext_windoor";
- name = "\improper Research Windoor Shutter"
- },
-/obj/structure/machinery/door/poddoor/almayer/open{
- dir = 4;
- id = "Containment Breach";
- name = "\improper Secure Airlock"
- },
-/turf/open/floor/plating,
-/area/almayer/medical/medical_science)
"jfD" = (
/obj/structure/sign/safety/security{
pixel_y = -32
@@ -43630,6 +43590,18 @@
icon_state = "kitchen"
},
/area/almayer/living/grunt_rnr)
+"jgg" = (
+/obj/structure/machinery/camera/autoname/almayer/containment{
+ dir = 8
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "E";
+ pixel_x = 1
+ },
+/turf/open/floor/almayer/research/containment/floor2{
+ dir = 8
+ },
+/area/almayer/medical/containment/cell)
"jgk" = (
/obj/structure/machinery/shower{
dir = 1
@@ -43644,14 +43616,6 @@
},
/turf/open/floor/plating/plating_catwalk,
/area/almayer/living/port_emb)
-"jgl" = (
-/obj/structure/machinery/door/airlock/almayer/generic{
- name = "Bathroom"
- },
-/turf/open/floor/almayer{
- icon_state = "test_floor4"
- },
-/area/almayer/living/tankerbunks)
"jgu" = (
/obj/structure/sink{
dir = 4;
@@ -43688,27 +43652,6 @@
icon_state = "plate"
},
/area/almayer/hull/upper_hull/u_f_s)
-"jgQ" = (
-/obj/structure/surface/table/almayer,
-/obj/item/reagent_container/glass/beaker/cryoxadone{
- pixel_x = -6;
- pixel_y = 8
- },
-/obj/item/storage/box/autoinjectors{
- pixel_x = -6;
- pixel_y = -1
- },
-/obj/item/storage/box/pillbottles{
- pixel_x = 6;
- pixel_y = 7
- },
-/obj/item/device/mass_spectrometer{
- pixel_x = 8
- },
-/turf/open/floor/almayer{
- icon_state = "sterile_green_side"
- },
-/area/almayer/medical/medical_science)
"jgU" = (
/obj/structure/machinery/cm_vending/sorted/medical/wall_med{
pixel_y = 25
@@ -43728,6 +43671,15 @@
icon_state = "sterile_green_side"
},
/area/almayer/medical/operating_room_four)
+"jhr" = (
+/obj/structure/bed/chair{
+ dir = 1
+ },
+/turf/open/floor/almayer{
+ dir = 4;
+ icon_state = "silver"
+ },
+/area/almayer/living/auxiliary_officer_office)
"jht" = (
/obj/structure/machinery/vending/coffee{
density = 0;
@@ -43818,6 +43770,20 @@
},
/turf/open/floor/almayer,
/area/almayer/hallways/vehiclehangar)
+"jjC" = (
+/obj/structure/filingcabinet{
+ density = 0;
+ pixel_x = -8;
+ pixel_y = 18
+ },
+/obj/structure/filingcabinet{
+ density = 0;
+ pixel_x = 8;
+ pixel_y = 18
+ },
+/obj/item/device/taperecorder,
+/turf/open/floor/almayer,
+/area/almayer/shipboard/brig/evidence_storage)
"jjK" = (
/obj/structure/surface/table/almayer,
/obj/item/paper_bin/uscm,
@@ -43832,6 +43798,19 @@
},
/turf/open/floor/almayer,
/area/almayer/shipboard/brig/main_office)
+"jjS" = (
+/obj/effect/decal/warning_stripes{
+ icon_state = "N";
+ pixel_y = 1
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "E";
+ pixel_x = 1
+ },
+/turf/open/floor/almayer{
+ icon_state = "sterile_green_corner"
+ },
+/area/almayer/medical/medical_science)
"jjT" = (
/obj/structure/machinery/light,
/obj/effect/projector{
@@ -43923,6 +43902,30 @@
icon_state = "plate"
},
/area/almayer/shipboard/brig/perma)
+"jlA" = (
+/obj/structure/pipes/standard/simple/hidden/supply,
+/obj/effect/decal/warning_stripes{
+ icon_state = "E";
+ pixel_x = 1
+ },
+/turf/open/floor/almayer{
+ dir = 5;
+ icon_state = "sterile_green_side"
+ },
+/area/almayer/medical/containment)
+"jlG" = (
+/obj/structure/pipes/standard/simple/hidden/supply,
+/obj/effect/decal/warning_stripes{
+ icon_state = "SE-out";
+ pixel_x = 1;
+ pixel_y = -1
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "SW-out";
+ pixel_y = -1
+ },
+/turf/open/floor/almayer/research/containment/entrance,
+/area/almayer/medical/containment/cell)
"jlN" = (
/obj/structure/desertdam/decals/road_edge{
icon_state = "road_edge_decal3";
@@ -43952,20 +43955,6 @@
/obj/structure/largecrate/supply/ammo/shotgun,
/turf/open/floor/plating/plating_catwalk,
/area/almayer/hull/lower_hull/l_a_s)
-"jmm" = (
-/obj/structure/pipes/standard/simple/hidden/supply,
-/obj/effect/decal/warning_stripes{
- icon_state = "W";
- pixel_x = -1
- },
-/turf/open/floor/almayer{
- dir = 8;
- icon_state = "sterile_green_side"
- },
-/area/almayer/medical/medical_science)
-"jmv" = (
-/turf/open/floor/almayer,
-/area/almayer/shipboard/brig/evidence_storage)
"jmK" = (
/turf/open/floor/almayer{
icon_state = "plate"
@@ -44011,6 +44000,15 @@
icon_state = "orange"
},
/area/almayer/engineering/engineering_workshop)
+"jnh" = (
+/obj/structure/machinery/camera/autoname/almayer{
+ dir = 8;
+ name = "ship-grade camera"
+ },
+/turf/open/floor/almayer{
+ icon_state = "plate"
+ },
+/area/almayer/living/auxiliary_officer_office)
"jnk" = (
/obj/structure/largecrate/random/case/double,
/turf/open/floor/almayer{
@@ -44063,26 +44061,6 @@
},
/turf/open/floor/almayer,
/area/almayer/shipboard/brig/processing)
-"joF" = (
-/obj/structure/machinery/camera/autoname/almayer{
- dir = 4;
- name = "ship-grade camera"
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "N";
- pixel_y = 1
- },
-/obj/structure/surface/rack,
-/obj/item/storage/fancy/vials,
-/obj/item/storage/fancy/vials,
-/obj/item/storage/fancy/vials,
-/obj/item/storage/fancy/vials,
-/obj/item/storage/fancy/vials,
-/obj/item/storage/fancy/vials,
-/turf/open/floor/almayer{
- icon_state = "sterile_green"
- },
-/area/almayer/medical/hydroponics)
"joG" = (
/obj/structure/machinery/washing_machine,
/obj/structure/sign/poster{
@@ -44182,6 +44160,15 @@
icon_state = "plate"
},
/area/almayer/living/pilotbunks)
+"jrM" = (
+/obj/structure/machinery/camera/autoname/almayer/containment{
+ dir = 4
+ },
+/turf/open/floor/almayer{
+ dir = 4;
+ icon_state = "sterile_green_side"
+ },
+/area/almayer/medical/medical_science)
"jss" = (
/obj/structure/bed/chair/comfy{
dir = 8
@@ -44190,6 +44177,17 @@
icon_state = "bluefull"
},
/area/almayer/living/captain_mess)
+"jsx" = (
+/obj/effect/decal/warning_stripes{
+ icon_state = "NE-out";
+ pixel_x = 1;
+ pixel_y = 1
+ },
+/turf/open/floor/almayer{
+ dir = 5;
+ icon_state = "sterile_green_side"
+ },
+/area/almayer/medical/medical_science)
"jtj" = (
/obj/structure/machinery/status_display{
pixel_y = 30
@@ -44219,18 +44217,6 @@
},
/turf/open/floor/plating/plating_catwalk,
/area/almayer/hull/lower_hull/l_f_s)
-"jus" = (
-/obj/effect/decal/warning_stripes{
- icon_state = "S"
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "W";
- pixel_x = -1
- },
-/turf/open/floor/almayer{
- icon_state = "sterile_green_side"
- },
-/area/almayer/medical/containment)
"juD" = (
/obj/structure/bed/chair/comfy{
dir = 8
@@ -44475,6 +44461,22 @@
icon_state = "plate"
},
/area/almayer/hull/upper_hull/u_a_s)
+"jBO" = (
+/obj/structure/machinery/door/poddoor/shutters/almayer{
+ dir = 4;
+ id = "W_Containment Cell 3";
+ name = "\improper Containment Cell 5";
+ unacidable = 1
+ },
+/obj/structure/machinery/door/poddoor/almayer/open{
+ dir = 4;
+ id = "Containment Breach";
+ name = "\improper Secure Airlock"
+ },
+/turf/closed/wall/almayer/research/containment/wall/purple{
+ dir = 8
+ },
+/area/almayer/medical/containment/cell)
"jCa" = (
/obj/structure/machinery/disposal,
/obj/structure/disposalpipe/trunk,
@@ -44483,9 +44485,6 @@
icon_state = "red"
},
/area/almayer/shipboard/brig/main_office)
-"jCG" = (
-/turf/closed/wall/almayer/research/containment/wall/connect_w,
-/area/almayer/medical/containment/cell)
"jCK" = (
/obj/effect/decal/medical_decals{
icon_state = "triagedecalbottomleft";
@@ -44496,21 +44495,6 @@
icon_state = "sterile_green_side"
},
/area/almayer/medical/lower_medical_lobby)
-"jCW" = (
-/turf/open/floor/almayer{
- dir = 5;
- icon_state = "red"
- },
-/area/almayer/shipboard/brig/processing)
-"jDz" = (
-/obj/structure/machinery/light{
- dir = 1
- },
-/turf/open/floor/almayer{
- dir = 1;
- icon_state = "redcorner"
- },
-/area/almayer/shipboard/brig/main_office)
"jDV" = (
/obj/effect/projector{
name = "Almayer_AresDown";
@@ -44546,28 +44530,6 @@
},
/turf/open/floor/plating,
/area/almayer/hull/lower_hull/l_f_p)
-"jEy" = (
-/obj/effect/decal/warning_stripes{
- icon_state = "S"
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "E";
- pixel_x = 1
- },
-/turf/open/floor/almayer{
- icon_state = "sterile_green_side"
- },
-/area/almayer/medical/medical_science)
-"jFa" = (
-/obj/effect/decal/warning_stripes{
- icon_state = "E";
- pixel_x = 1
- },
-/turf/open/floor/almayer{
- dir = 4;
- icon_state = "sterile_green_side"
- },
-/area/almayer/medical/medical_science)
"jFe" = (
/obj/structure/prop/holidays/string_lights{
pixel_y = 27
@@ -44575,6 +44537,20 @@
/obj/item/frame/rack,
/turf/open/floor/plating/plating_catwalk,
/area/almayer/hull/lower_hull/l_m_s)
+"jFf" = (
+/obj/structure/machinery/shower{
+ pixel_y = 16
+ },
+/obj/structure/machinery/light{
+ dir = 8
+ },
+/obj/structure/window/reinforced{
+ dir = 4;
+ health = 80;
+ pixel_y = 6
+ },
+/turf/open/floor/plating/plating_catwalk,
+/area/almayer/medical/medical_science)
"jFg" = (
/obj/structure/pipes/standard/cap/hidden{
dir = 4
@@ -44600,6 +44576,18 @@
icon_state = "kitchen"
},
/area/almayer/living/grunt_rnr)
+"jFG" = (
+/obj/structure/pipes/standard/simple/hidden/supply{
+ dir = 10
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "N";
+ pixel_y = 1
+ },
+/turf/open/floor/almayer{
+ icon_state = "plate"
+ },
+/area/almayer/shipboard/brig/cryo)
"jFR" = (
/turf/open/floor/almayer{
icon_state = "redcorner"
@@ -44811,19 +44799,6 @@
icon_state = "emerald"
},
/area/almayer/hallways/port_hallway)
-"jLU" = (
-/obj/structure/pipes/standard/simple/hidden/supply,
-/obj/effect/decal/warning_stripes{
- icon_state = "SE-out";
- pixel_x = 1;
- pixel_y = -1
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "SW-out";
- pixel_y = -1
- },
-/turf/open/floor/almayer/research/containment/entrance,
-/area/almayer/medical/containment/cell)
"jMb" = (
/obj/structure/disposalpipe/segment{
dir = 8;
@@ -44906,6 +44881,37 @@
},
/turf/open/floor/almayer,
/area/almayer/living/briefing)
+"jNc" = (
+/obj/structure/machinery/door/airlock/almayer/research/glass/reinforced{
+ id = "Containment Cell 3";
+ locked = 1;
+ name = "\improper Containment Cell 3";
+ unacidable = 1
+ },
+/obj/structure/machinery/door/poddoor/shutters/almayer/containment{
+ dir = 4;
+ id = "Containment Cell 3";
+ name = "\improper Containment Cell 3"
+ },
+/obj/structure/pipes/standard/simple/hidden/supply{
+ dir = 4
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "S"
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "N";
+ pixel_y = 1
+ },
+/obj/structure/machinery/door/poddoor/almayer/open{
+ dir = 4;
+ id = "Containment Breach";
+ name = "\improper Secure Airlock"
+ },
+/turf/open/floor/almayer{
+ icon_state = "test_floor4"
+ },
+/area/almayer/medical/containment/cell)
"jNq" = (
/obj/structure/closet/secure_closet/personal/cabinet{
req_access = null
@@ -45009,14 +45015,20 @@
},
/turf/open/floor/plating/plating_catwalk,
/area/almayer/hull/lower_hull/l_a_s)
-"jPz" = (
-/obj/structure/machinery/light/small{
- dir = 4
+"jQi" = (
+/obj/structure/disposalpipe/trunk{
+ dir = 1
},
+/obj/structure/machinery/disposal,
/turf/open/floor/almayer{
- icon_state = "plate"
+ icon_state = "sterile_green_side"
},
-/area/almayer/hull/lower_hull/l_f_p)
+/area/almayer/medical/medical_science)
+"jQt" = (
+/turf/open/floor/almayer/research/containment/floor2{
+ dir = 8
+ },
+/area/almayer/medical/containment/cell)
"jQA" = (
/obj/structure/pipes/vents/scrubber{
dir = 4
@@ -45046,13 +45058,6 @@
},
/turf/closed/wall/almayer/outer,
/area/space)
-"jRD" = (
-/obj/structure/pipes/standard/simple/hidden/supply,
-/turf/open/floor/almayer{
- dir = 4;
- icon_state = "sterile_green_side"
- },
-/area/almayer/medical/medical_science)
"jRK" = (
/obj/structure/largecrate/random/case/double,
/turf/open/floor/almayer{
@@ -45232,6 +45237,15 @@
},
/turf/open/floor/plating/plating_catwalk,
/area/almayer/hull/upper_hull/u_a_s)
+"jUM" = (
+/obj/structure/machinery/camera/autoname/almayer/containment{
+ dir = 8
+ },
+/obj/structure/pipes/vents/pump,
+/turf/open/floor/almayer{
+ icon_state = "dark_sterile"
+ },
+/area/almayer/medical/medical_science)
"jUW" = (
/obj/effect/step_trigger/clone_cleaner,
/obj/effect/decal/warning_stripes{
@@ -45266,19 +45280,15 @@
icon_state = "plate"
},
/area/almayer/squads/alpha)
-"jVD" = (
+"jVt" = (
/obj/effect/decal/warning_stripes{
- icon_state = "N";
- pixel_y = 1
- },
-/obj/structure/sink{
- pixel_y = 24
+ icon_state = "S"
},
-/turf/open/floor/almayer{
- dir = 1;
- icon_state = "sterile_green_side"
+/obj/effect/decal/warning_stripes{
+ icon_state = "W"
},
-/area/almayer/medical/containment)
+/turf/open/floor/almayer/research/containment/corner3,
+/area/almayer/medical/containment/cell)
"jVE" = (
/turf/open/floor/almayer{
icon_state = "test_floor5"
@@ -45338,20 +45348,6 @@
icon_state = "plating"
},
/area/almayer/hallways/vehiclehangar)
-"jXI" = (
-/obj/effect/decal/warning_stripes{
- icon_state = "SE-out";
- pixel_x = 1
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "SW-out";
- pixel_x = -1
- },
-/obj/structure/pipes/standard/simple/hidden/supply{
- dir = 4
- },
-/turf/open/floor/plating/plating_catwalk,
-/area/almayer/medical/hydroponics)
"jXW" = (
/obj/structure/closet/firecloset,
/turf/open/floor/almayer{
@@ -45372,20 +45368,6 @@
icon_state = "mono"
},
/area/almayer/hallways/vehiclehangar)
-"jYM" = (
-/obj/structure/pipes/vents/pump,
-/obj/structure/sign/safety/storage{
- pixel_x = 33;
- pixel_y = -1
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "W";
- pixel_x = -1
- },
-/turf/open/floor/almayer{
- icon_state = "sterile_green"
- },
-/area/almayer/medical/hydroponics)
"jYR" = (
/obj/effect/decal/warning_stripes{
icon_state = "N";
@@ -45418,6 +45400,21 @@
},
/turf/open/floor/almayer,
/area/almayer/shipboard/brig/processing)
+"jZs" = (
+/obj/structure/machinery/light/containment{
+ dir = 4
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "S"
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "E";
+ pixel_x = 1
+ },
+/turf/open/floor/almayer/research/containment/corner{
+ dir = 1
+ },
+/area/almayer/medical/containment/cell)
"jZu" = (
/obj/structure/machinery/door_control{
id = "CIC_Conference";
@@ -45438,13 +45435,6 @@
icon_state = "emerald"
},
/area/almayer/squads/charlie)
-"jZE" = (
-/obj/structure/pipes/standard/simple/hidden/supply,
-/turf/open/floor/almayer{
- dir = 5;
- icon_state = "sterile_green_side"
- },
-/area/almayer/medical/medical_science)
"jZL" = (
/obj/structure/surface/table/almayer,
/obj/structure/machinery/computer/cameras/almayer_network{
@@ -45469,12 +45459,6 @@
icon_state = "plate"
},
/area/almayer/hull/lower_hull/l_m_p)
-"jZU" = (
-/obj/structure/machinery/light{
- dir = 1
- },
-/turf/open/floor/almayer,
-/area/almayer/command/corporateliason)
"jZY" = (
/obj/structure/closet/l3closet/virology,
/turf/open/floor/almayer{
@@ -45602,6 +45586,17 @@
icon_state = "ai_floors"
},
/area/almayer/command/airoom)
+"kbJ" = (
+/obj/structure/pipes/standard/simple/hidden/supply,
+/obj/effect/decal/warning_stripes{
+ icon_state = "E";
+ pixel_x = 1
+ },
+/turf/open/floor/almayer{
+ dir = 6;
+ icon_state = "sterile_green_side"
+ },
+/area/almayer/medical/containment)
"kbV" = (
/obj/structure/platform{
dir = 1
@@ -45615,20 +45610,6 @@
/obj/structure/window/framed/almayer,
/turf/open/floor/plating,
/area/almayer/squads/bravo)
-"kcA" = (
-/obj/structure/filingcabinet{
- density = 0;
- pixel_x = -8;
- pixel_y = 18
- },
-/obj/structure/filingcabinet{
- density = 0;
- pixel_x = 8;
- pixel_y = 18
- },
-/obj/item/device/taperecorder,
-/turf/open/floor/almayer,
-/area/almayer/shipboard/brig/evidence_storage)
"kcH" = (
/turf/closed/wall/almayer/reinforced,
/area/almayer/living/synthcloset)
@@ -45779,6 +45760,21 @@
icon_state = "plate"
},
/area/almayer/hallways/starboard_hallway)
+"kgs" = (
+/obj/structure/window/framed/almayer/white,
+/obj/structure/machinery/door/poddoor/shutters/almayer/open{
+ id = "researchlockdownext_se_2";
+ name = "\improper Research Window Shutter"
+ },
+/obj/structure/machinery/door/firedoor/border_only/almayer{
+ dir = 1
+ },
+/obj/structure/machinery/door/poddoor/almayer/open{
+ id = "Containment Breach";
+ name = "\improper Secure Airlock"
+ },
+/turf/open/floor/plating,
+/area/almayer/medical/medical_science)
"khd" = (
/obj/structure/bed/chair{
dir = 4
@@ -45983,22 +45979,6 @@
/obj/item/tool/mop,
/turf/open/floor/plating/plating_catwalk,
/area/almayer/hull/upper_hull/u_a_p)
-"kmL" = (
-/obj/structure/surface/table/almayer,
-/obj/item/storage/firstaid/toxin{
- pixel_x = 8;
- pixel_y = -2
- },
-/obj/item/storage/box/drinkingglasses{
- pixel_x = -7
- },
-/obj/item/storage/xeno_tag_case/full{
- pixel_y = 8
- },
-/turf/open/floor/almayer{
- icon_state = "plate"
- },
-/area/almayer/command/corporateliason)
"kmM" = (
/obj/structure/sink{
pixel_y = 24
@@ -46013,33 +45993,6 @@
icon_state = "plate"
},
/area/almayer/living/pilotbunks)
-"knv" = (
-/obj/effect/decal/warning_stripes{
- icon_state = "E";
- pixel_x = 1
- },
-/turf/open/floor/almayer{
- dir = 4;
- icon_state = "sterile_green_side"
- },
-/area/almayer/medical/hydroponics)
-"knz" = (
-/obj/structure/machinery/door_control{
- id = "Interrogation Shutters";
- name = "\improper Shutters";
- pixel_x = 24;
- pixel_y = 12;
- req_access_txt = "3"
- },
-/obj/structure/machinery/camera/autoname/almayer{
- dir = 8;
- name = "ship-grade camera"
- },
-/turf/open/floor/almayer{
- dir = 5;
- icon_state = "red"
- },
-/area/almayer/shipboard/brig/processing)
"knH" = (
/obj/structure/machinery/vending/coffee,
/obj/structure/sign/safety/coffee{
@@ -46278,6 +46231,29 @@
icon_state = "orange"
},
/area/almayer/engineering/upper_engineering/starboard)
+"krU" = (
+/obj/structure/pipes/vents/pump{
+ dir = 4
+ },
+/obj/structure/surface/table/almayer,
+/obj/item/paper_bin{
+ pixel_x = -4;
+ pixel_y = 8
+ },
+/obj/item/tool/pen,
+/obj/item/book/manual/marine_law{
+ pixel_x = 15;
+ pixel_y = 5
+ },
+/obj/item/book/manual/security_space_law{
+ pixel_x = 16;
+ pixel_y = 9
+ },
+/turf/open/floor/almayer{
+ dir = 8;
+ icon_state = "silver"
+ },
+/area/almayer/living/auxiliary_officer_office)
"krZ" = (
/obj/structure/closet/secure_closet/cargotech,
/obj/item/clothing/accessory/storage/webbing,
@@ -46485,21 +46461,6 @@
icon_state = "plate"
},
/area/almayer/hull/upper_hull/u_f_s)
-"kxk" = (
-/obj/structure/pipes/standard/simple/hidden/supply,
-/obj/effect/decal/warning_stripes{
- icon_state = "SE-out";
- pixel_x = 1;
- pixel_y = -1
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "SW-out";
- pixel_y = -1
- },
-/turf/open/floor/almayer{
- icon_state = "dark_sterile"
- },
-/area/almayer/medical/containment)
"kxo" = (
/obj/structure/machinery/washing_machine,
/obj/structure/machinery/washing_machine{
@@ -46656,15 +46617,6 @@
icon_state = "silver"
},
/area/almayer/command/airoom)
-"kAd" = (
-/obj/structure/reagent_dispensers/water_cooler/walk_past{
- pixel_x = 10;
- pixel_y = 3
- },
-/turf/open/floor/almayer{
- icon_state = "mono"
- },
-/area/almayer/medical/medical_science)
"kAh" = (
/obj/structure/sign/safety/restrictedarea{
pixel_x = -17
@@ -46697,31 +46649,48 @@
icon_state = "red"
},
/area/almayer/lifeboat_pumps/south2)
+"kBo" = (
+/obj/effect/decal/warning_stripes{
+ icon_state = "SE-out";
+ pixel_x = 1;
+ pixel_y = -1
+ },
+/turf/open/floor/almayer{
+ dir = 6;
+ icon_state = "sterile_green_side"
+ },
+/area/almayer/medical/medical_science)
"kBy" = (
/obj/structure/machinery/ares/processor,
/turf/open/floor/almayer/no_build{
icon_state = "test_floor4"
},
/area/almayer/command/airoom)
+"kBP" = (
+/obj/effect/decal/warning_stripes{
+ icon_state = "E";
+ pixel_x = 1
+ },
+/turf/open/floor/almayer{
+ dir = 4;
+ icon_state = "sterile_green_side"
+ },
+/area/almayer/medical/medical_science)
"kBY" = (
/obj/structure/machinery/cryopod/right,
/turf/open/floor/almayer{
icon_state = "cargo"
},
/area/almayer/living/tankerbunks)
-"kCg" = (
-/obj/structure/pipes/standard/simple/hidden/supply{
- dir = 4
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "SE-out";
- pixel_x = 1
- },
-/turf/open/floor/plating/plating_catwalk,
-/area/almayer/medical/hydroponics)
"kCi" = (
/turf/closed/wall/almayer/reinforced,
/area/almayer/shipboard/port_missiles)
+"kCj" = (
+/obj/structure/machinery/light,
+/turf/open/floor/almayer{
+ icon_state = "test_floor4"
+ },
+/area/almayer/medical/hydroponics)
"kCm" = (
/obj/structure/sign/safety/fire_haz{
pixel_x = 15;
@@ -46736,10 +46705,19 @@
/area/almayer/hallways/hangar)
"kCE" = (
/obj/structure/pipes/standard/simple/hidden/supply,
+/obj/effect/decal/warning_stripes{
+ icon_state = "NE-out";
+ pixel_x = 1;
+ pixel_y = 1
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "NW-out";
+ pixel_y = 1
+ },
/turf/open/floor/almayer{
icon_state = "dark_sterile"
},
-/area/almayer/medical/medical_science)
+/area/almayer/medical/containment)
"kCS" = (
/obj/structure/pipes/standard/simple/hidden/supply,
/turf/open/floor/almayer,
@@ -46769,6 +46747,24 @@
icon_state = "sterile_green_side"
},
/area/almayer/medical/lower_medical_medbay)
+"kDk" = (
+/obj/structure/pipes/standard/simple/hidden/supply{
+ dir = 6
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "SE-out";
+ pixel_x = 1;
+ pixel_y = -1
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "NE-out";
+ pixel_x = 1;
+ pixel_y = 1
+ },
+/turf/open/floor/almayer{
+ icon_state = "dark_sterile"
+ },
+/area/almayer/medical/containment)
"kDt" = (
/obj/structure/machinery/light{
dir = 1
@@ -46784,16 +46780,6 @@
icon_state = "red"
},
/area/almayer/shipboard/brig/processing)
-"kDG" = (
-/obj/effect/landmark/late_join/working_joe,
-/obj/effect/landmark/start/working_joe,
-/obj/structure/machinery/light{
- dir = 8
- },
-/turf/open/floor/almayer/no_build{
- icon_state = "ai_floors"
- },
-/area/almayer/command/airoom)
"kDR" = (
/obj/structure/disposalpipe/junction{
dir = 1;
@@ -46910,6 +46896,14 @@
icon_state = "green"
},
/area/almayer/hallways/aft_hallway)
+"kGQ" = (
+/obj/structure/pipes/standard/simple/hidden/supply{
+ dir = 4
+ },
+/turf/open/floor/almayer/research/containment/corner_var1{
+ icon_state = "containment_corner_variant_2"
+ },
+/area/almayer/medical/containment/cell)
"kGX" = (
/obj/structure/machinery/cm_vending/sorted/medical/wall_med{
pixel_y = 25
@@ -47024,11 +47018,6 @@
icon_state = "green"
},
/area/almayer/hallways/port_hallway)
-"kJW" = (
-/turf/open/floor/almayer{
- icon_state = "cargo"
- },
-/area/almayer/shipboard/brig/evidence_storage)
"kKb" = (
/obj/structure/pipes/standard/simple/hidden/supply{
dir = 4
@@ -47129,15 +47118,11 @@
},
/turf/open/floor/plating/plating_catwalk,
/area/almayer/hull/upper_hull/u_a_p)
-"kMG" = (
-/obj/structure/machinery/light/containment,
-/obj/effect/decal/warning_stripes{
- icon_state = "S"
- },
-/turf/open/floor/almayer/research/containment/floor2{
- dir = 1
+"kME" = (
+/turf/open/floor/almayer{
+ icon_state = "cargo"
},
-/area/almayer/medical/containment/cell)
+/area/almayer/shipboard/brig/evidence_storage)
"kMH" = (
/obj/structure/machinery/door/window/brigdoor/southright{
id = "Cell 1";
@@ -47156,18 +47141,6 @@
icon_state = "plate"
},
/area/almayer/hallways/port_hallway)
-"kMV" = (
-/obj/structure/pipes/standard/simple/hidden/supply,
-/obj/effect/decal/warning_stripes{
- icon_state = "NE-out";
- pixel_x = 1;
- pixel_y = 1
- },
-/turf/open/floor/almayer{
- dir = 5;
- icon_state = "sterile_green_side"
- },
-/area/almayer/medical/hydroponics)
"kNi" = (
/obj/structure/disposalpipe/segment{
dir = 4
@@ -47186,18 +47159,18 @@
},
/turf/open/floor/plating/plating_catwalk,
/area/almayer/living/briefing)
-"kNr" = (
-/obj/effect/decal/warning_stripes{
- icon_state = "E";
- pixel_x = 1
+"kNx" = (
+/obj/structure/sign/safety/ref_bio_storage{
+ pixel_x = -17;
+ pixel_y = 7
},
-/obj/effect/decal/warning_stripes{
- icon_state = "N";
- pixel_y = 1
+/obj/structure/sign/safety/biohazard{
+ pixel_x = -17;
+ pixel_y = -7
},
+/obj/structure/machinery/cm_vending/sorted/medical/chemistry,
/turf/open/floor/almayer{
- dir = 1;
- icon_state = "sterile_green_side"
+ icon_state = "mono"
},
/area/almayer/medical/medical_science)
"kNO" = (
@@ -47414,6 +47387,15 @@
icon_state = "plate"
},
/area/almayer/hull/upper_hull/u_a_s)
+"kSh" = (
+/obj/structure/sign/safety/water{
+ pixel_x = 8;
+ pixel_y = 32
+ },
+/turf/open/floor/almayer{
+ icon_state = "plate"
+ },
+/area/almayer/living/tankerbunks)
"kSv" = (
/obj/item/reagent_container/glass/bucket/janibucket,
/turf/open/floor/almayer{
@@ -47490,21 +47472,6 @@
icon_state = "tcomms"
},
/area/almayer/command/telecomms)
-"kTx" = (
-/obj/structure/window/framed/almayer/white,
-/obj/structure/machinery/door/firedoor/border_only/almayer{
- dir = 1
- },
-/obj/structure/machinery/door/poddoor/shutters/almayer/open{
- id = "researchlockdownext";
- name = "\improper Research Window Shutter"
- },
-/obj/structure/machinery/door/poddoor/almayer/open{
- id = "Containment Breach";
- name = "\improper Secure Airlock"
- },
-/turf/open/floor/plating,
-/area/almayer/medical/medical_science)
"kTM" = (
/obj/item/frame/rack{
layer = 3.1;
@@ -47674,6 +47641,12 @@
icon_state = "silver"
},
/area/almayer/command/computerlab)
+"kXw" = (
+/turf/open/floor/almayer{
+ dir = 1;
+ icon_state = "sterile_green_side"
+ },
+/area/almayer/medical/medical_science)
"kXJ" = (
/obj/structure/surface/table/reinforced/almayer_B,
/obj/structure/machinery/computer/secure_data{
@@ -47749,6 +47722,20 @@
icon_state = "orange"
},
/area/almayer/hallways/port_umbilical)
+"kZV" = (
+/obj/structure/machinery/light,
+/obj/effect/decal/warning_stripes{
+ icon_state = "E";
+ pixel_x = 1
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "W";
+ pixel_x = -1
+ },
+/turf/open/floor/almayer{
+ icon_state = "mono"
+ },
+/area/almayer/medical/hydroponics)
"lah" = (
/turf/open/floor/almayer{
dir = 6;
@@ -47851,17 +47838,6 @@
icon_state = "plate"
},
/area/almayer/command/lifeboat)
-"lbR" = (
-/obj/effect/decal/warning_stripes{
- icon_state = "NE-out";
- pixel_x = 1;
- pixel_y = 1
- },
-/turf/open/floor/almayer{
- dir = 5;
- icon_state = "sterile_green_side"
- },
-/area/almayer/medical/medical_science)
"lbX" = (
/obj/structure/bed/chair{
dir = 4
@@ -47955,8 +47931,23 @@
},
/area/almayer/hull/upper_hull/u_a_p)
"lea" = (
-/turf/closed/wall/almayer/research/containment/wall/east,
-/area/almayer/medical/containment/cell)
+/obj/structure/sink{
+ dir = 4;
+ pixel_x = 11
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "SE-out";
+ pixel_x = 1
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "SW-out";
+ pixel_x = -1
+ },
+/obj/structure/pipes/standard/simple/hidden/supply{
+ dir = 10
+ },
+/turf/open/floor/plating/plating_catwalk,
+/area/almayer/medical/hydroponics)
"lef" = (
/obj/structure/pipes/standard/simple/hidden/supply{
dir = 6
@@ -48044,6 +48035,15 @@
},
/turf/open/floor/plating,
/area/almayer/living/cryo_cells)
+"lgG" = (
+/obj/structure/bed/chair/bolted{
+ dir = 8
+ },
+/turf/open/floor/almayer{
+ dir = 1;
+ icon_state = "red"
+ },
+/area/almayer/shipboard/brig/processing)
"lgK" = (
/obj/structure/machinery/cm_vending/clothing/senior_officer{
density = 0;
@@ -48051,6 +48051,12 @@
},
/turf/open/floor/almayer,
/area/almayer/living/numbertwobunks)
+"lgV" = (
+/turf/open/floor/almayer{
+ dir = 8;
+ icon_state = "red"
+ },
+/area/almayer/shipboard/brig/evidence_storage)
"lgX" = (
/obj/structure/sign/safety/storage{
pixel_y = 32
@@ -48123,6 +48129,14 @@
},
/turf/open/floor/wood/ship,
/area/almayer/living/basketball)
+"lid" = (
+/obj/structure/machinery/chem_master{
+ vial_maker = 1
+ },
+/turf/open/floor/almayer{
+ icon_state = "mono"
+ },
+/area/almayer/medical/medical_science)
"lin" = (
/obj/effect/projector{
name = "Almayer_AresDown";
@@ -48146,17 +48160,25 @@
},
/turf/open/floor/almayer,
/area/almayer/command/computerlab)
-"liX" = (
-/obj/structure/machinery/light{
- dir = 8
+"liY" = (
+/obj/structure/machinery/flasher{
+ id = "Containment Cell 5";
+ layer = 2.1;
+ name = "Mounted Flash";
+ pixel_y = 30
},
-/obj/structure/machinery/autodispenser{
- dir = 4
+/obj/structure/machinery/iv_drip,
+/obj/effect/decal/warning_stripes{
+ icon_state = "N";
+ pixel_y = 1
},
-/turf/open/floor/almayer{
- icon_state = "mono"
+/obj/effect/decal/warning_stripes{
+ icon_state = "W"
},
-/area/almayer/medical/medical_science)
+/turf/open/floor/almayer/research/containment/corner_var1{
+ icon_state = "containment_corner_variant_2"
+ },
+/area/almayer/medical/containment/cell)
"liZ" = (
/obj/structure/surface/table/almayer,
/obj/item/toy/deck,
@@ -48274,21 +48296,20 @@
},
/turf/open/floor/almayer,
/area/almayer/squads/bravo)
+"lmw" = (
+/obj/structure/closet/l3closet/general,
+/obj/structure/machinery/light{
+ dir = 8
+ },
+/obj/structure/window/reinforced{
+ dir = 4;
+ health = 80
+ },
+/turf/open/floor/plating/plating_catwalk,
+/area/almayer/medical/medical_science)
"lmz" = (
/turf/closed/wall/almayer/white/hull,
/area/space)
-"lmU" = (
-/obj/structure/pipes/standard/simple/hidden/supply{
- dir = 6
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "E";
- pixel_x = 1
- },
-/turf/open/floor/almayer{
- icon_state = "sterile_green_corner"
- },
-/area/almayer/medical/hydroponics)
"lmW" = (
/obj/structure/pipes/vents/pump,
/obj/structure/mirror{
@@ -48323,18 +48344,6 @@
},
/turf/open/floor/plating/plating_catwalk,
/area/almayer/shipboard/brig/cells)
-"lnK" = (
-/obj/structure/closet/secure_closet/hydroresearch,
-/obj/item/reagent_container/glass/watertank,
-/obj/item/reagent_container/glass/watertank,
-/obj/effect/decal/warning_stripes{
- icon_state = "E";
- pixel_x = 1
- },
-/turf/open/floor/almayer{
- icon_state = "mono"
- },
-/area/almayer/medical/hydroponics)
"lnP" = (
/obj/structure/machinery/vending/cola,
/obj/structure/window/reinforced,
@@ -48381,13 +48390,17 @@
icon_state = "plate"
},
/area/almayer/squads/charlie)
-"low" = (
-/obj/structure/machinery/power/apc/almayer/hardened{
- cell_type = /obj/item/cell/hyper;
- dir = 1
+"lou" = (
+/obj/structure/pipes/standard/manifold/hidden/supply{
+ dir = 8
},
-/turf/open/floor/plating,
-/area/almayer/command/airoom)
+/obj/effect/decal/warning_stripes{
+ icon_state = "S"
+ },
+/turf/open/floor/almayer{
+ icon_state = "sterile_green_side"
+ },
+/area/almayer/medical/medical_science)
"loK" = (
/obj/structure/closet/crate/medical,
/obj/item/storage/firstaid/adv,
@@ -48475,39 +48488,6 @@
icon_state = "plate"
},
/area/almayer/hull/lower_hull/l_m_s)
-"lqi" = (
-/obj/effect/decal/warning_stripes{
- icon_state = "NE-out";
- pixel_x = 1;
- pixel_y = 1
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "NW-out";
- pixel_x = -1;
- pixel_y = 1
- },
-/obj/structure/machinery/door/airlock/almayer/research/reinforced{
- dir = 8;
- name = "\improper Containment Airlock"
- },
-/obj/structure/machinery/door/poddoor/almayer/open{
- dir = 4;
- id = "Containment Breach";
- name = "\improper Secure Airlock"
- },
-/turf/open/floor/almayer{
- icon_state = "test_floor4"
- },
-/area/almayer/medical/medical_science)
-"lqj" = (
-/obj/effect/decal/warning_stripes{
- icon_state = "E";
- pixel_x = 1
- },
-/turf/open/floor/almayer{
- icon_state = "mono"
- },
-/area/almayer/medical/hydroponics)
"lqF" = (
/turf/open/floor/almayer{
dir = 9;
@@ -48598,16 +48578,6 @@
icon_state = "plate"
},
/area/almayer/living/port_emb)
-"lrw" = (
-/obj/structure/surface/table/almayer,
-/obj/structure/machinery/reagent_analyzer{
- pixel_x = 2;
- pixel_y = 3
- },
-/turf/open/floor/almayer{
- icon_state = "mono"
- },
-/area/almayer/medical/medical_science)
"lrT" = (
/obj/structure/bed/chair,
/turf/open/floor/almayer,
@@ -48692,6 +48662,12 @@
icon_state = "plating_striped"
},
/area/almayer/squads/req)
+"lto" = (
+/obj/structure/machinery/iv_drip,
+/turf/open/floor/almayer{
+ icon_state = "sterile_green"
+ },
+/area/almayer/medical/containment)
"ltA" = (
/obj/item/tool/weldingtool,
/turf/open/floor/almayer,
@@ -48770,41 +48746,6 @@
icon_state = "test_floor4"
},
/area/almayer/hallways/starboard_hallway)
-"luA" = (
-/obj/structure/surface/table/almayer,
-/obj/structure/machinery/door_control{
- dir = 1;
- id = "researchlockdownext_windoor";
- name = "Windoor Shutters";
- pixel_x = -7;
- pixel_y = 9;
- req_access_txt = "28"
- },
-/obj/structure/machinery/computer/med_data/laptop{
- dir = 1;
- pixel_x = 6;
- pixel_y = -4
- },
-/obj/structure/sign/safety/biohazard{
- pixel_y = -32
- },
-/obj/structure/sign/safety/ref_bio_storage{
- pixel_x = 15;
- pixel_y = -32
- },
-/obj/structure/machinery/door_control{
- dir = 1;
- id = "researchlockdownext_se_2";
- name = "Window Shutters";
- pixel_x = -7;
- pixel_y = 4;
- req_access_txt = "28"
- },
-/turf/open/floor/almayer{
- dir = 8;
- icon_state = "sterile_green_corner"
- },
-/area/almayer/medical/medical_science)
"luC" = (
/obj/structure/machinery/door/firedoor/border_only/almayer{
dir = 1
@@ -48863,6 +48804,15 @@
icon_state = "test_floor4"
},
/area/almayer/command/cic)
+"lvo" = (
+/obj/structure/bed/chair/bolted{
+ dir = 1
+ },
+/turf/open/floor/almayer{
+ dir = 8;
+ icon_state = "red"
+ },
+/area/almayer/shipboard/brig/processing)
"lvA" = (
/obj/structure/machinery/power/apc/almayer/hardened{
dir = 1
@@ -48959,33 +48909,16 @@
icon_state = "emeraldfull"
},
/area/almayer/squads/charlie)
-"lxo" = (
-/obj/structure/machinery/cm_vending/sorted/cargo_guns/vehicle_crew,
-/obj/structure/sign/safety/hazard{
- pixel_x = -17;
- pixel_y = -8
- },
-/obj/structure/sign/safety/ammunition{
- pixel_x = -17;
- pixel_y = 7
- },
-/turf/open/floor/almayer{
- icon_state = "plate"
- },
-/area/almayer/living/tankerbunks)
-"lxW" = (
-/obj/structure/bed/chair{
+"lxE" = (
+/obj/structure/surface/table/almayer,
+/obj/structure/machinery/computer/secure_data{
dir = 8
},
-/obj/item/device/radio/intercom{
- freerange = 1;
- name = "General Listening Channel";
- pixel_y = 28
- },
/turf/open/floor/almayer{
- icon_state = "plate"
+ dir = 1;
+ icon_state = "red"
},
-/area/almayer/living/tankerbunks)
+/area/almayer/shipboard/brig/evidence_storage)
"lyi" = (
/obj/structure/surface/table/almayer,
/obj/item/trash/pistachios,
@@ -49003,15 +48936,6 @@
icon_state = "green"
},
/area/almayer/squads/req)
-"lyo" = (
-/obj/structure/pipes/standard/simple/hidden/supply{
- dir = 9
- },
-/turf/open/floor/almayer{
- dir = 4;
- icon_state = "sterile_green_corner"
- },
-/area/almayer/medical/medical_science)
"lyw" = (
/obj/structure/bed/chair/comfy{
dir = 8
@@ -49048,6 +48972,14 @@
icon_state = "redcorner"
},
/area/almayer/shipboard/brig/main_office)
+"lzA" = (
+/obj/structure/machinery/sleep_console{
+ dir = 8
+ },
+/turf/open/floor/almayer{
+ icon_state = "mono"
+ },
+/area/almayer/medical/medical_science)
"lzH" = (
/obj/structure/machinery/cm_vending/sorted/medical/wall_med{
pixel_y = -25
@@ -49075,16 +49007,6 @@
icon_state = "orange"
},
/area/almayer/squads/bravo)
-"lAw" = (
-/obj/structure/machinery/portable_atmospherics/hydroponics,
-/obj/structure/window/reinforced{
- dir = 4;
- health = 80
- },
-/turf/open/floor/almayer{
- icon_state = "test_floor5"
- },
-/area/almayer/medical/hydroponics)
"lAy" = (
/obj/structure/bed/chair/comfy/beige{
dir = 8
@@ -49185,22 +49107,12 @@
icon_state = "plate"
},
/area/almayer/engineering/engineering_workshop/hangar)
-"lCp" = (
-/obj/structure/machinery/door/poddoor/shutters/almayer{
- dir = 4;
- id = "W_Containment Cell 5";
- name = "\improper Containment Cell 5";
- unacidable = 1
- },
-/obj/structure/machinery/door/poddoor/almayer/open{
- dir = 4;
- id = "Containment Breach";
- name = "\improper Secure Airlock"
- },
-/turf/closed/wall/almayer/research/containment/wall/purple{
- dir = 1
+"lCt" = (
+/turf/open/floor/almayer{
+ dir = 10;
+ icon_state = "sterile_green_side"
},
-/area/almayer/medical/containment/cell)
+/area/almayer/medical/containment)
"lCz" = (
/obj/effect/decal/warning_stripes{
icon_state = "S"
@@ -49309,13 +49221,6 @@
icon_state = "orangecorner"
},
/area/almayer/engineering/upper_engineering)
-"lEr" = (
-/obj/structure/bed/chair/bolted,
-/turf/open/floor/almayer{
- dir = 9;
- icon_state = "red"
- },
-/area/almayer/shipboard/brig/processing)
"lEv" = (
/obj/structure/machinery/light{
dir = 8
@@ -49456,6 +49361,9 @@
},
/turf/open/floor/almayer,
/area/almayer/lifeboat_pumps/south2)
+"lGd" = (
+/turf/closed/wall/almayer,
+/area/almayer/living/auxiliary_officer_office)
"lGh" = (
/obj/structure/pipes/standard/simple/hidden/supply,
/obj/structure/sign/safety/maint{
@@ -49605,6 +49513,40 @@
icon_state = "cargo"
},
/area/almayer/living/cryo_cells)
+"lJv" = (
+/obj/structure/window/framed/almayer/white,
+/obj/structure/machinery/door/firedoor/border_only/almayer{
+ dir = 1
+ },
+/obj/structure/machinery/door/poddoor/shutters/almayer/open{
+ id = "researchlockdownext";
+ name = "\improper Research Window Shutter"
+ },
+/obj/structure/machinery/door/poddoor/almayer/open{
+ id = "Containment Breach";
+ name = "\improper Secure Airlock"
+ },
+/turf/open/floor/plating,
+/area/almayer/medical/medical_science)
+"lJE" = (
+/obj/structure/pipes/vents/scrubber{
+ dir = 8
+ },
+/obj/structure/surface/table/almayer,
+/obj/item/device/flashlight/lamp{
+ layer = 3.5;
+ pixel_x = 5;
+ pixel_y = 14
+ },
+/obj/item/attachable/bayonet{
+ pixel_x = -14;
+ pixel_y = 3
+ },
+/turf/open/floor/almayer{
+ dir = 4;
+ icon_state = "silver"
+ },
+/area/almayer/living/auxiliary_officer_office)
"lJG" = (
/obj/structure/pipes/standard/manifold/hidden/supply,
/obj/structure/disposalpipe/segment{
@@ -49637,6 +49579,15 @@
icon_state = "plate"
},
/area/almayer/squads/alpha)
+"lJX" = (
+/obj/structure/surface/table/almayer,
+/obj/item/storage/donut_box{
+ pixel_y = 8
+ },
+/turf/open/floor/almayer{
+ allow_construction = 0
+ },
+/area/almayer/shipboard/brig/processing)
"lJY" = (
/turf/open/floor/almayer,
/area/almayer/lifeboat_pumps/south2)
@@ -49697,6 +49648,13 @@
},
/turf/open/floor/plating/plating_catwalk,
/area/almayer/lifeboat_pumps/south2)
+"lMv" = (
+/obj/structure/pipes/standard/simple/hidden/supply,
+/turf/open/floor/almayer{
+ dir = 6;
+ icon_state = "sterile_green_side"
+ },
+/area/almayer/medical/medical_science)
"lMw" = (
/obj/structure/pipes/standard/simple/hidden/supply{
dir = 5
@@ -49724,36 +49682,6 @@
icon_state = "mono"
},
/area/almayer/lifeboat_pumps/south2)
-"lNa" = (
-/obj/structure/surface/table/almayer,
-/obj/effect/decal/warning_stripes{
- icon_state = "W"
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "S"
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "E";
- pixel_x = 1
- },
-/obj/structure/machinery/door_display/research_cell{
- dir = 1;
- id = "Containment Cell 5";
- name = "Cell 5 Control";
- pixel_x = 4;
- pixel_y = -3
- },
-/obj/structure/machinery/door_control{
- id = "W_Containment Cell 5";
- name = "Containment Lockdown";
- pixel_x = -8;
- pixel_y = -3;
- req_one_access_txt = "19;28"
- },
-/turf/open/floor/almayer{
- icon_state = "sterile_green"
- },
-/area/almayer/medical/containment)
"lNl" = (
/turf/open/floor/almayer{
dir = 6;
@@ -49845,6 +49773,20 @@
icon_state = "sterile_green_side"
},
/area/almayer/medical/operating_room_two)
+"lON" = (
+/obj/structure/pipes/standard/simple/hidden/supply,
+/obj/structure/machinery/door/poddoor/shutters/almayer/open{
+ id = "researchlockdownext_door";
+ name = "\improper Research Doorway Shutter"
+ },
+/obj/structure/machinery/door/poddoor/almayer/open{
+ id = "Containment Breach";
+ name = "\improper Secure Airlock"
+ },
+/turf/open/floor/almayer{
+ icon_state = "test_floor4"
+ },
+/area/almayer/medical/medical_science)
"lPB" = (
/obj/structure/surface/table/almayer,
/obj/item/device/lightreplacer,
@@ -49973,22 +49915,6 @@
},
/turf/open/floor/almayer,
/area/almayer/hallways/starboard_hallway)
-"lRV" = (
-/obj/structure/sink{
- pixel_y = 24
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "N";
- pixel_y = 1
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "E";
- pixel_x = 1
- },
-/turf/open/floor/almayer/research/containment/corner_var1{
- dir = 4
- },
-/area/almayer/medical/containment/cell)
"lRX" = (
/obj/structure/surface/table/almayer,
/obj/item/device/flashlight/lamp,
@@ -50078,27 +50004,6 @@
icon_state = "plate"
},
/area/almayer/hull/upper_hull/u_a_s)
-"lWj" = (
-/obj/structure/surface/table/almayer,
-/obj/structure/machinery/door_control{
- id = "Interrogation Shutters";
- name = "\improper Shutters";
- pixel_x = -6;
- pixel_y = -6;
- req_access_txt = "3"
- },
-/obj/item/device/taperecorder{
- pixel_x = 3;
- pixel_y = 3
- },
-/obj/structure/machinery/light/small{
- dir = 8
- },
-/turf/open/floor/almayer{
- dir = 8;
- icon_state = "red"
- },
-/area/almayer/shipboard/brig/processing)
"lWr" = (
/obj/structure/largecrate/random/case,
/turf/open/floor/almayer{
@@ -50106,13 +50011,6 @@
icon_state = "red"
},
/area/almayer/lifeboat_pumps/south1)
-"lWy" = (
-/obj/structure/surface/table/almayer,
-/obj/item/device/clue_scanner,
-/turf/open/floor/almayer{
- allow_construction = 0
- },
-/area/almayer/shipboard/brig/processing)
"lXg" = (
/obj/structure/surface/table/almayer,
/obj/structure/machinery/recharger,
@@ -50123,22 +50021,6 @@
icon_state = "plate"
},
/area/almayer/engineering/upper_engineering)
-"lXs" = (
-/obj/structure/machinery/door/poddoor/shutters/almayer{
- dir = 4;
- id = "W_Containment Cell 3";
- name = "\improper Containment Cell 5";
- unacidable = 1
- },
-/obj/structure/machinery/door/poddoor/almayer/open{
- dir = 4;
- id = "Containment Breach";
- name = "\improper Secure Airlock"
- },
-/turf/closed/wall/almayer/research/containment/wall/purple{
- dir = 4
- },
-/area/almayer/medical/containment/cell)
"lXF" = (
/obj/structure/pipes/standard/simple/hidden/supply,
/obj/structure/sign/safety/cryo{
@@ -50187,6 +50069,15 @@
"lYA" = (
/turf/closed/wall/almayer/outer,
/area/almayer/hull/upper_hull/u_m_s)
+"lYL" = (
+/obj/effect/decal/warning_stripes{
+ icon_state = "N";
+ pixel_y = 1
+ },
+/turf/open/floor/almayer{
+ icon_state = "sterile_green"
+ },
+/area/almayer/medical/hydroponics)
"lYN" = (
/obj/effect/decal/warning_stripes{
icon_state = "E"
@@ -50206,14 +50097,6 @@
icon_state = "red"
},
/area/almayer/shipboard/brig/general_equipment)
-"lZm" = (
-/obj/structure/machinery/vending/cola/research{
- pixel_x = 4
- },
-/turf/open/floor/almayer{
- icon_state = "mono"
- },
-/area/almayer/medical/medical_science)
"lZs" = (
/obj/structure/surface/table/reinforced/almayer_B,
/obj/item/device/radio/intercom{
@@ -50252,25 +50135,12 @@
},
/turf/open/floor/plating/plating_catwalk,
/area/almayer/hull/lower_hull/l_f_p)
-"lZV" = (
-/obj/structure/sign/safety/terminal{
- layer = 2.5;
- pixel_x = 8;
- pixel_y = 32
- },
-/obj/structure/machinery/chem_simulator{
- density = 0;
- pixel_y = 16
- },
-/turf/open/floor/almayer{
- icon_state = "mono"
- },
-/area/almayer/medical/medical_science)
"lZZ" = (
-/turf/closed/wall/almayer/research/containment/wall/corner{
- dir = 8
+/obj/structure/machinery/autolathe/medilathe/full,
+/turf/open/floor/almayer{
+ icon_state = "test_floor4"
},
-/area/almayer/medical/containment/cell)
+/area/almayer/medical/hydroponics)
"maa" = (
/obj/structure/closet/emcloset,
/turf/open/floor/almayer{
@@ -50278,30 +50148,6 @@
icon_state = "red"
},
/area/almayer/shipboard/brig/general_equipment)
-"map" = (
-/obj/effect/decal/warning_stripes{
- icon_state = "N";
- pixel_y = 1
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "W";
- pixel_x = -1
- },
-/obj/structure/filingcabinet/filingcabinet{
- density = 0;
- pixel_x = -11;
- pixel_y = 16
- },
-/obj/structure/filingcabinet/filingcabinet{
- density = 0;
- pixel_x = 4;
- pixel_y = 16
- },
-/turf/open/floor/almayer{
- dir = 1;
- icon_state = "sterile_green_corner"
- },
-/area/almayer/medical/medical_science)
"maq" = (
/obj/structure/machinery/cryopod/right{
pixel_y = 6
@@ -50356,19 +50202,6 @@
/obj/structure/pipes/standard/simple/hidden/supply,
/turf/open/floor/plating/plating_catwalk,
/area/almayer/engineering/lower_engineering)
-"mbz" = (
-/obj/effect/decal/warning_stripes{
- icon_state = "W";
- pixel_x = -1
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "E";
- pixel_x = 1
- },
-/turf/open/floor/almayer{
- icon_state = "mono"
- },
-/area/almayer/medical/hydroponics)
"mce" = (
/turf/open/floor/almayer{
icon_state = "greencorner"
@@ -50450,6 +50283,9 @@
icon_state = "blue"
},
/area/almayer/squads/delta)
+"meD" = (
+/turf/closed/wall/almayer/reinforced,
+/area/almayer/shipboard/brig/evidence_storage)
"meJ" = (
/obj/structure/sign/safety/distribution_pipes{
pixel_x = 8;
@@ -50610,14 +50446,6 @@
},
/turf/open/floor/plating/plating_catwalk,
/area/almayer/command/cichallway)
-"miI" = (
-/obj/structure/bed/chair/comfy{
- dir = 4
- },
-/turf/open/floor/almayer{
- icon_state = "dark_sterile"
- },
-/area/almayer/medical/medical_science)
"miK" = (
/obj/structure/pipes/vents/pump,
/turf/open/floor/almayer{
@@ -50778,6 +50606,21 @@
},
/turf/open/floor/plating/plating_catwalk,
/area/almayer/hull/lower_hull/l_f_s)
+"mmN" = (
+/obj/structure/machinery/door/firedoor/border_only/almayer{
+ dir = 1
+ },
+/obj/structure/machinery/door/poddoor/shutters/almayer/open{
+ id = "researchlockdownext_se_2";
+ name = "\improper Research Window Shutter"
+ },
+/obj/structure/machinery/door/poddoor/almayer/open{
+ id = "Containment Breach";
+ name = "\improper Secure Airlock"
+ },
+/obj/structure/window/framed/almayer/white,
+/turf/open/floor/plating,
+/area/almayer/medical/medical_science)
"mnf" = (
/obj/structure/window/framed/almayer,
/obj/structure/machinery/door/firedoor/border_only/almayer,
@@ -50825,13 +50668,31 @@
icon_state = "blue"
},
/area/almayer/living/briefing)
-"mnV" = (
-/obj/structure/machinery/light{
- dir = 1
+"mnW" = (
+/obj/structure/pipes/standard/simple/hidden/supply,
+/obj/structure/surface/table/almayer,
+/obj/item/device/reagent_scanner{
+ pixel_x = -8;
+ pixel_y = 4
},
-/obj/effect/landmark/start/police,
-/turf/open/floor/plating/plating_catwalk,
-/area/almayer/shipboard/brig/cryo)
+/obj/item/clipboard{
+ pixel_x = 8
+ },
+/obj/item/paper{
+ pixel_x = 8
+ },
+/obj/effect/spawner/random/toolbox{
+ pixel_x = 5;
+ pixel_y = -3
+ },
+/obj/item/storage/box/monkeycubes{
+ pixel_x = 7;
+ pixel_y = 7
+ },
+/turf/open/floor/almayer{
+ icon_state = "sterile_green"
+ },
+/area/almayer/medical/containment)
"moh" = (
/obj/structure/closet/firecloset,
/turf/open/floor/plating/plating_catwalk,
@@ -50975,6 +50836,32 @@
icon_state = "green"
},
/area/almayer/squads/req)
+"msi" = (
+/obj/structure/filingcabinet/filingcabinet{
+ density = 0;
+ layer = 2.9;
+ pixel_x = 7;
+ pixel_y = 16
+ },
+/obj/structure/filingcabinet/filingcabinet{
+ density = 0;
+ layer = 2.9;
+ pixel_x = -8;
+ pixel_y = 16
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "N";
+ pixel_y = 1
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "E";
+ pixel_x = 1
+ },
+/obj/structure/reagent_dispensers/fueltank/custom,
+/turf/open/floor/almayer{
+ icon_state = "sterile_green_corner"
+ },
+/area/almayer/medical/containment)
"msm" = (
/obj/structure/sign/poster{
pixel_y = 32
@@ -51060,25 +50947,6 @@
icon_state = "plate"
},
/area/almayer/living/gym)
-"muo" = (
-/obj/structure/machinery/flasher{
- id = "Containment Cell 5";
- layer = 2.1;
- name = "Mounted Flash";
- pixel_y = 30
- },
-/obj/structure/machinery/iv_drip,
-/obj/effect/decal/warning_stripes{
- icon_state = "N";
- pixel_y = 1
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "W"
- },
-/turf/open/floor/almayer/research/containment/corner_var1{
- icon_state = "containment_corner_variant_2"
- },
-/area/almayer/medical/containment/cell)
"mux" = (
/obj/structure/pipes/standard/simple/hidden/supply,
/obj/structure/disposalpipe/segment,
@@ -51124,6 +50992,16 @@
icon_state = "sterile_green_side"
},
/area/almayer/medical/lower_medical_lobby)
+"mwj" = (
+/obj/structure/bed/chair,
+/obj/structure/machinery/light{
+ dir = 1
+ },
+/turf/open/floor/almayer{
+ dir = 8;
+ icon_state = "red"
+ },
+/area/almayer/shipboard/brig/processing)
"mwA" = (
/obj/structure/disposalpipe/segment{
dir = 8;
@@ -51250,6 +51128,19 @@
"mzo" = (
/turf/closed/wall/almayer,
/area/almayer/hull/lower_hull/l_f_p)
+"mzq" = (
+/obj/structure/pipes/standard/simple/hidden/supply{
+ dir = 6
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "SW-out";
+ pixel_x = -1
+ },
+/turf/open/floor/almayer{
+ dir = 8;
+ icon_state = "sterile_green_corner"
+ },
+/area/almayer/medical/hydroponics)
"mzz" = (
/obj/structure/machinery/light,
/turf/open/floor/almayer,
@@ -51421,18 +51312,6 @@
icon_state = "emerald"
},
/area/almayer/living/briefing)
-"mEt" = (
-/obj/structure/pipes/standard/simple/hidden/supply{
- dir = 4
- },
-/obj/structure/disposalpipe/segment{
- dir = 2;
- icon_state = "pipe-c"
- },
-/turf/open/floor/almayer{
- icon_state = "dark_sterile"
- },
-/area/almayer/medical/medical_science)
"mEE" = (
/obj/structure/platform{
dir = 4;
@@ -51444,6 +51323,19 @@
},
/turf/open/floor/almayer,
/area/almayer/living/briefing)
+"mFq" = (
+/obj/structure/machinery/door_control{
+ dir = 1;
+ id = "researchlockdownext_door";
+ name = "Door Shutters";
+ pixel_y = 29;
+ req_access_txt = "28"
+ },
+/turf/open/floor/almayer{
+ dir = 1;
+ icon_state = "sterile_green_side"
+ },
+/area/almayer/medical/medical_science)
"mFD" = (
/obj/structure/disposalpipe/segment{
dir = 4
@@ -51555,6 +51447,19 @@
},
/turf/open/floor/almayer,
/area/almayer/living/gym)
+"mHD" = (
+/obj/effect/decal/warning_stripes{
+ icon_state = "W";
+ pixel_x = -1
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "E";
+ pixel_x = 1
+ },
+/turf/open/floor/almayer{
+ icon_state = "mono"
+ },
+/area/almayer/medical/hydroponics)
"mHE" = (
/turf/open/floor/almayer/no_build{
dir = 8;
@@ -51652,6 +51557,19 @@
"mJu" = (
/turf/open/floor/almayer/uscm/directional,
/area/almayer/command/cic)
+"mJF" = (
+/obj/structure/pipes/standard/simple/hidden/supply{
+ dir = 9
+ },
+/obj/structure/machinery/firealarm{
+ dir = 4;
+ pixel_x = 24
+ },
+/turf/open/floor/almayer{
+ dir = 1;
+ icon_state = "redcorner"
+ },
+/area/almayer/shipboard/brig/main_office)
"mJL" = (
/obj/structure/disposalpipe/segment{
dir = 2;
@@ -51673,36 +51591,6 @@
icon_state = "orange"
},
/area/almayer/squads/bravo)
-"mJV" = (
-/obj/effect/decal/warning_stripes{
- icon_state = "S"
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "W";
- pixel_x = -1
- },
-/obj/structure/surface/table/almayer,
-/obj/item/storage/firstaid/o2{
- pixel_x = -6;
- pixel_y = 6
- },
-/obj/item/storage/firstaid/fire{
- pixel_x = 8;
- pixel_y = 6
- },
-/obj/item/storage/firstaid/adv{
- pixel_x = -6;
- pixel_y = -2
- },
-/obj/item/storage/firstaid/toxin{
- pixel_x = 8;
- pixel_y = -2
- },
-/turf/open/floor/almayer{
- dir = 8;
- icon_state = "sterile_green_corner"
- },
-/area/almayer/medical/medical_science)
"mKb" = (
/obj/structure/flora/pottedplant{
desc = "It is made of Fiberbush(tm). It contains asbestos.";
@@ -51745,6 +51633,19 @@
icon_state = "dark_sterile"
},
/area/almayer/medical/lower_medical_lobby)
+"mKx" = (
+/obj/effect/decal/warning_stripes{
+ icon_state = "E";
+ pixel_x = 1
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "W";
+ pixel_x = -1
+ },
+/turf/open/floor/almayer{
+ icon_state = "mono"
+ },
+/area/almayer/medical/hydroponics)
"mKJ" = (
/obj/structure/machinery/firealarm{
pixel_y = 28
@@ -51817,6 +51718,9 @@
icon_state = "plate"
},
/area/almayer/living/pilotbunks)
+"mLE" = (
+/turf/open/floor/plating,
+/area/almayer/command/airoom)
"mLF" = (
/obj/structure/disposalpipe/segment{
dir = 4
@@ -51844,6 +51748,27 @@
},
/turf/open/floor/almayer,
/area/almayer/shipboard/brig/main_office)
+"mLO" = (
+/obj/structure/surface/table/almayer,
+/obj/item/storage/box/autoinjectors{
+ pixel_x = -6;
+ pixel_y = -1
+ },
+/obj/item/device/mass_spectrometer{
+ pixel_x = 8
+ },
+/obj/item/storage/box/pillbottles{
+ pixel_x = -6;
+ pixel_y = 9
+ },
+/obj/item/reagent_container/glass/beaker/cryoxadone{
+ pixel_x = 8;
+ pixel_y = 10
+ },
+/turf/open/floor/almayer{
+ icon_state = "sterile_green_side"
+ },
+/area/almayer/medical/medical_science)
"mLR" = (
/obj/structure/pipes/standard/simple/hidden/supply{
dir = 4
@@ -51961,20 +51886,6 @@
icon_state = "plate"
},
/area/almayer/engineering/engineering_workshop)
-"mOu" = (
-/obj/effect/decal/warning_stripes{
- icon_state = "NE-out";
- pixel_x = 1;
- pixel_y = 1
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "W"
- },
-/turf/open/floor/almayer{
- dir = 1;
- icon_state = "sterile_green_corner"
- },
-/area/almayer/medical/containment)
"mOL" = (
/obj/structure/sign/safety/maint{
pixel_x = 8;
@@ -52058,14 +51969,6 @@
},
/turf/open/floor/plating,
/area/almayer/hull/lower_hull/l_f_p)
-"mQX" = (
-/obj/structure/pipes/standard/simple/hidden/supply{
- dir = 4
- },
-/turf/open/floor/almayer{
- icon_state = "sterile_green"
- },
-/area/almayer/medical/containment)
"mRc" = (
/obj/structure/prop/invuln/lattice_prop{
dir = 1;
@@ -52118,37 +52021,12 @@
"mRW" = (
/turf/open/floor/almayer/research/containment/corner1,
/area/almayer/medical/containment/cell/cl)
-"mSc" = (
-/obj/structure/pipes/standard/manifold/hidden/supply{
- dir = 8
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "S"
- },
-/turf/open/floor/almayer{
- icon_state = "sterile_green_side"
- },
-/area/almayer/medical/medical_science)
"mSi" = (
/obj/structure/bed/sofa/vert/grey/top{
pixel_y = 11
},
/turf/open/floor/almayer,
/area/almayer/lifeboat_pumps/south1)
-"mSj" = (
-/obj/structure/machinery/light{
- dir = 8
- },
-/obj/structure/ladder{
- height = 2;
- id = "cicladder1"
- },
-/obj/structure/sign/safety/ladder{
- pixel_x = 23;
- pixel_y = -32
- },
-/turf/open/floor/plating/almayer,
-/area/almayer/medical/medical_science)
"mSs" = (
/obj/structure/machinery/light{
dir = 8
@@ -52165,6 +52043,16 @@
icon_state = "silverfull"
},
/area/almayer/command/securestorage)
+"mSK" = (
+/obj/structure/machinery/portable_atmospherics/hydroponics,
+/obj/structure/window/reinforced{
+ dir = 4;
+ health = 80
+ },
+/turf/open/floor/almayer{
+ icon_state = "test_floor5"
+ },
+/area/almayer/medical/hydroponics)
"mSP" = (
/obj/structure/machinery/door/poddoor/shutters/almayer/open{
dir = 4;
@@ -52194,6 +52082,13 @@
icon_state = "green"
},
/area/almayer/hallways/aft_hallway)
+"mTd" = (
+/obj/structure/machinery/smartfridge/chemistry{
+ pixel_x = -3;
+ pixel_y = -1
+ },
+/turf/open/floor/plating/plating_catwalk,
+/area/almayer/medical/medical_science)
"mTi" = (
/obj/structure/machinery/cryopod/right,
/turf/open/floor/almayer{
@@ -52215,24 +52110,20 @@
icon_state = "red"
},
/area/almayer/shipboard/navigation)
-"mTy" = (
-/obj/structure/machinery/door/poddoor/shutters/almayer/open{
- id = "Interrogation Shutters";
- name = "\improper Privacy Shutters"
- },
-/obj/structure/machinery/door/airlock/almayer/security{
- dir = 2;
- name = "\improper Interrogation";
- req_access = null;
- req_one_access_txt = "1;3"
+"mTp" = (
+/obj/structure/window/reinforced{
+ dir = 4;
+ health = 80
},
-/obj/structure/machinery/door/firedoor/border_only/almayer{
- dir = 1
+/obj/structure/machinery/cm_vending/clothing/medical_crew{
+ density = 0;
+ pixel_y = 16
},
/turf/open/floor/almayer{
- icon_state = "test_floor4"
+ dir = 1;
+ icon_state = "cargo_arrow"
},
-/area/almayer/shipboard/brig/processing)
+/area/almayer/medical/hydroponics)
"mUa" = (
/obj/structure/disposalpipe/junction{
dir = 4;
@@ -52340,6 +52231,17 @@
icon_state = "red"
},
/area/almayer/shipboard/brig/general_equipment)
+"mWs" = (
+/obj/structure/pipes/standard/simple/hidden/supply{
+ dir = 4
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "S"
+ },
+/turf/open/floor/almayer{
+ icon_state = "sterile_green_side"
+ },
+/area/almayer/medical/medical_science)
"mWw" = (
/obj/structure/pipes/standard/simple/hidden/supply,
/obj/structure/disposalpipe/segment,
@@ -52388,6 +52290,14 @@
},
/turf/open/floor/carpet,
/area/almayer/command/cichallway)
+"mWW" = (
+/obj/structure/pipes/standard/simple/hidden/supply{
+ dir = 10
+ },
+/turf/open/floor/almayer/research/containment/floor2{
+ dir = 1
+ },
+/area/almayer/medical/containment/cell)
"mXj" = (
/turf/closed/wall/almayer,
/area/almayer/living/commandbunks)
@@ -52403,14 +52313,6 @@
},
/turf/open/floor/almayer,
/area/almayer/hull/upper_hull/u_f_p)
-"mYu" = (
-/obj/structure/surface/table/almayer,
-/obj/structure/machinery/centrifuge{
- layer = 3.1;
- pixel_y = 4
- },
-/turf/open/floor/plating/plating_catwalk,
-/area/almayer/medical/medical_science)
"mYv" = (
/obj/structure/disposalpipe/sortjunction{
dir = 4;
@@ -52526,12 +52428,6 @@
icon_state = "plate"
},
/area/almayer/hull/upper_hull/u_f_s)
-"nar" = (
-/obj/structure/toilet{
- dir = 4
- },
-/turf/open/floor/plating/plating_catwalk,
-/area/almayer/living/tankerbunks)
"naB" = (
/turf/closed/wall/almayer/reinforced,
/area/almayer/shipboard/brig/perma)
@@ -52543,6 +52439,20 @@
icon_state = "kitchen"
},
/area/almayer/engineering/upper_engineering/port)
+"naR" = (
+/obj/structure/pipes/standard/simple/hidden/supply{
+ dir = 4
+ },
+/obj/structure/machinery/iv_drip,
+/obj/effect/decal/warning_stripes{
+ icon_state = "E";
+ pixel_x = 1
+ },
+/turf/open/floor/almayer{
+ dir = 4;
+ icon_state = "sterile_green_corner"
+ },
+/area/almayer/medical/medical_science)
"naV" = (
/obj/structure/machinery/door/airlock/almayer/generic{
dir = 2;
@@ -52565,6 +52475,17 @@
icon_state = "plate"
},
/area/almayer/living/grunt_rnr)
+"ncE" = (
+/obj/structure/machinery/light{
+ dir = 8
+ },
+/obj/structure/machinery/autodispenser{
+ dir = 4
+ },
+/turf/open/floor/almayer{
+ icon_state = "mono"
+ },
+/area/almayer/medical/medical_science)
"ndx" = (
/obj/structure/sign/safety/nonpress_ag{
pixel_x = 15;
@@ -52704,11 +52625,6 @@
},
/turf/open/floor/almayer,
/area/almayer/lifeboat_pumps/north2)
-"ngo" = (
-/turf/open/floor/almayer{
- icon_state = "mono"
- },
-/area/almayer/medical/medical_science)
"ngs" = (
/obj/structure/largecrate/random/barrel/red,
/turf/open/floor/almayer{
@@ -52841,14 +52757,15 @@
icon_state = "plate"
},
/area/almayer/living/bridgebunks)
-"niR" = (
-/obj/structure/flora/pottedplant{
- icon_state = "pottedplant_10"
+"niL" = (
+/obj/structure/machinery/light{
+ dir = 1
},
+/obj/structure/bed/chair,
/turf/open/floor/almayer{
- icon_state = "plate"
+ icon_state = "sterile_green"
},
-/area/almayer/living/tankerbunks)
+/area/almayer/medical/medical_science)
"niY" = (
/obj/effect/decal/warning_stripes{
icon_state = "S"
@@ -52927,20 +52844,6 @@
icon_state = "cargo_arrow"
},
/area/almayer/hallways/vehiclehangar)
-"nkr" = (
-/obj/structure/machinery/botany/editor{
- density = 0;
- pixel_x = 5;
- pixel_y = 16
- },
-/obj/item/clothing/glasses/science{
- pixel_x = 5;
- pixel_y = 24
- },
-/turf/open/floor/almayer{
- icon_state = "mono"
- },
-/area/almayer/medical/hydroponics)
"nkx" = (
/obj/structure/machinery/cm_vending/sorted/medical/wall_med{
pixel_y = 25
@@ -53028,6 +52931,12 @@
icon_state = "silver"
},
/area/almayer/command/securestorage)
+"nna" = (
+/obj/structure/bed/chair{
+ dir = 1
+ },
+/turf/open/floor/almayer,
+/area/almayer/living/auxiliary_officer_office)
"nnc" = (
/obj/structure/largecrate/random/case/double,
/turf/open/floor/almayer{
@@ -53093,19 +53002,6 @@
/obj/structure/largecrate/random/barrel/white,
/turf/open/floor/plating/plating_catwalk,
/area/almayer/hull/upper_hull/u_f_s)
-"nnK" = (
-/obj/effect/decal/warning_stripes{
- icon_state = "S"
- },
-/obj/item/reagent_container/food/snacks/cheesewedge{
- pixel_x = -10;
- pixel_y = 7
- },
-/mob/living/simple_animal/mouse/white/Doc,
-/turf/open/floor/almayer{
- icon_state = "sterile_green"
- },
-/area/almayer/medical/hydroponics)
"nob" = (
/obj/structure/pipes/standard/manifold/hidden/supply{
dir = 4
@@ -53137,10 +53033,18 @@
/turf/open/floor/plating,
/area/almayer/shipboard/brig/armory)
"nos" = (
-/turf/closed/wall/almayer/research/containment/wall/corner{
+/obj/structure/machinery/chem_storage/medbay{
dir = 1
},
-/area/almayer/medical/containment/cell)
+/obj/structure/machinery/chem_storage/research{
+ dir = 1;
+ layer = 3;
+ pixel_y = 18
+ },
+/turf/open/floor/almayer{
+ icon_state = "test_floor4"
+ },
+/area/almayer/medical/hydroponics)
"noV" = (
/obj/structure/sign/safety/storage{
pixel_x = 8;
@@ -53155,6 +53059,21 @@
},
/turf/open/floor/plating,
/area/almayer/engineering/starboard_atmos)
+"npt" = (
+/obj/structure/pipes/standard/simple/hidden/supply,
+/obj/effect/decal/warning_stripes{
+ icon_state = "SE-out";
+ pixel_x = 1;
+ pixel_y = -1
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "SW-out";
+ pixel_y = -1
+ },
+/turf/open/floor/almayer{
+ icon_state = "dark_sterile"
+ },
+/area/almayer/medical/containment)
"nqx" = (
/obj/structure/pipes/standard/manifold/hidden/supply,
/turf/open/floor/plating/plating_catwalk,
@@ -53421,6 +53340,14 @@
},
/turf/open/floor/almayer,
/area/almayer/squads/req)
+"nwi" = (
+/obj/structure/pipes/standard/simple/hidden/supply{
+ dir = 4
+ },
+/turf/open/floor/almayer/research/containment/corner{
+ dir = 4
+ },
+/area/almayer/medical/containment/cell)
"nwu" = (
/obj/structure/closet/crate/freezer{
desc = "A freezer crate. Someone has written 'open on christmas' in marker on the top."
@@ -53512,6 +53439,10 @@
},
/turf/open/floor/plating,
/area/almayer/shipboard/brig/main_office)
+"nxF" = (
+/obj/structure/pipes/standard/simple/hidden/supply,
+/turf/closed/wall/almayer/white/reinforced,
+/area/almayer/medical/medical_science)
"nxK" = (
/obj/structure/sign/safety/high_voltage{
pixel_y = -32
@@ -53563,15 +53494,6 @@
icon_state = "green"
},
/area/almayer/hallways/starboard_hallway)
-"nyK" = (
-/obj/structure/machinery/seed_extractor{
- density = 0;
- pixel_y = 16
- },
-/turf/open/floor/almayer{
- icon_state = "mono"
- },
-/area/almayer/medical/hydroponics)
"nyQ" = (
/turf/open/floor/almayer,
/area/almayer/squads/charlie_delta_shared)
@@ -53742,6 +53664,18 @@
/obj/structure/surface/table/woodentable/fancy,
/turf/open/floor/carpet,
/area/almayer/command/corporateliason)
+"nDo" = (
+/obj/structure/closet/l3closet/general,
+/obj/structure/window/reinforced{
+ dir = 8;
+ health = 80
+ },
+/obj/structure/window/reinforced{
+ dir = 4;
+ health = 80
+ },
+/turf/open/floor/plating/plating_catwalk,
+/area/almayer/medical/medical_science)
"nDL" = (
/obj/structure/barricade/handrail{
dir = 4
@@ -53805,6 +53739,23 @@
icon_state = "plate"
},
/area/almayer/hull/upper_hull/u_a_s)
+"nEH" = (
+/obj/structure/surface/table/almayer,
+/obj/structure/machinery/light{
+ dir = 8
+ },
+/obj/structure/machinery/computer/research{
+ dir = 4;
+ pixel_y = 4
+ },
+/obj/item/tool/hand_labeler{
+ pixel_x = -6;
+ pixel_y = -5
+ },
+/turf/open/floor/almayer{
+ icon_state = "mono"
+ },
+/area/almayer/medical/medical_science)
"nEJ" = (
/obj/structure/disposalpipe/segment,
/turf/open/floor/almayer{
@@ -53920,6 +53871,15 @@
icon_state = "red"
},
/area/almayer/shipboard/brig/main_office)
+"nHh" = (
+/obj/structure/bed/chair{
+ dir = 4
+ },
+/turf/open/floor/almayer{
+ dir = 6;
+ icon_state = "red"
+ },
+/area/almayer/shipboard/brig/processing)
"nHF" = (
/turf/open/floor/plating,
/area/almayer/hull/lower_hull/l_m_s)
@@ -53944,26 +53904,11 @@
icon_state = "red"
},
/area/almayer/shipboard/brig/general_equipment)
-"nIh" = (
-/obj/structure/machinery/cryopod,
-/turf/open/floor/almayer/no_build{
- icon_state = "ai_floors"
- },
-/area/almayer/command/airoom)
"nIj" = (
/turf/open/floor/almayer{
icon_state = "green"
},
/area/almayer/living/offices)
-"nIo" = (
-/obj/effect/decal/warning_stripes{
- icon_state = "S"
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "W"
- },
-/turf/open/floor/almayer/research/containment/corner3,
-/area/almayer/medical/containment/cell)
"nIt" = (
/turf/open/floor/almayer{
dir = 4;
@@ -54013,16 +53958,6 @@
icon_state = "silver"
},
/area/almayer/command/securestorage)
-"nIN" = (
-/obj/structure/machinery/portable_atmospherics/hydroponics,
-/obj/structure/window/reinforced{
- dir = 8;
- health = 80
- },
-/turf/open/floor/almayer{
- icon_state = "test_floor5"
- },
-/area/almayer/medical/hydroponics)
"nIS" = (
/obj/structure/disposalpipe/segment{
dir = 4
@@ -54052,6 +53987,15 @@
icon_state = "plate"
},
/area/almayer/hull/upper_hull/u_a_p)
+"nJH" = (
+/obj/structure/machinery/computer/cameras/almayer{
+ dir = 8;
+ pixel_x = 17
+ },
+/turf/open/floor/almayer/no_build{
+ icon_state = "plating"
+ },
+/area/almayer/command/airoom)
"nKq" = (
/obj/structure/machinery/status_display{
pixel_x = 16;
@@ -54101,6 +54045,20 @@
icon_state = "cargo_arrow"
},
/area/almayer/squads/req)
+"nLI" = (
+/obj/structure/sign/safety/terminal{
+ layer = 2.5;
+ pixel_x = 8;
+ pixel_y = 32
+ },
+/obj/structure/machinery/chem_simulator{
+ density = 0;
+ pixel_y = 16
+ },
+/turf/open/floor/almayer{
+ icon_state = "mono"
+ },
+/area/almayer/medical/medical_science)
"nLJ" = (
/obj/effect/decal/warning_stripes{
icon_state = "E";
@@ -54115,12 +54073,30 @@
/obj/structure/machinery/cm_vending/sorted/marine_food,
/turf/open/floor/almayer,
/area/almayer/hull/upper_hull/u_f_p)
+"nLW" = (
+/obj/effect/decal/warning_stripes{
+ icon_state = "S"
+ },
+/turf/open/floor/almayer,
+/area/almayer/living/bridgebunks)
"nMc" = (
/obj/structure/pipes/standard/simple/hidden/supply{
dir = 6
},
/turf/open/floor/almayer,
/area/almayer/hull/upper_hull/u_f_s)
+"nMe" = (
+/obj/effect/decal/warning_stripes{
+ icon_state = "S"
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "E";
+ pixel_x = 1
+ },
+/turf/open/floor/almayer/research/containment/corner{
+ dir = 1
+ },
+/area/almayer/medical/containment/cell)
"nMp" = (
/obj/structure/surface/table/almayer,
/obj/item/reagent_container/food/condiment/hotsauce/franks,
@@ -54259,15 +54235,6 @@
},
/turf/open/floor/plating/plating_catwalk,
/area/almayer/hull/lower_hull/l_a_p)
-"nON" = (
-/obj/structure/pipes/standard/simple/hidden/supply,
-/obj/structure/machinery/light{
- dir = 1
- },
-/turf/open/floor/almayer{
- icon_state = "dark_sterile"
- },
-/area/almayer/medical/medical_science)
"nPa" = (
/obj/structure/machinery/cm_vending/sorted/medical/wall_med{
pixel_y = 25
@@ -54277,6 +54244,29 @@
icon_state = "red"
},
/area/almayer/lifeboat_pumps/south1)
+"nPf" = (
+/obj/structure/pipes/standard/simple/hidden/supply,
+/obj/structure/machinery/computer/cameras/almayer/containment{
+ dir = 8;
+ pixel_x = -4;
+ pixel_y = 6
+ },
+/obj/structure/surface/table/almayer,
+/obj/item/tool/extinguisher{
+ pixel_x = 7;
+ pixel_y = 7
+ },
+/obj/structure/machinery/door_control{
+ id = "containmentlockdown_S";
+ name = "Containment Lockdown";
+ pixel_x = -5;
+ pixel_y = -4;
+ req_one_access_txt = "19;28"
+ },
+/turf/open/floor/almayer{
+ icon_state = "sterile_green"
+ },
+/area/almayer/medical/containment)
"nPs" = (
/obj/structure/prop/invuln/overhead_pipe{
pixel_x = 12
@@ -54300,10 +54290,17 @@
icon_state = "blue"
},
/area/almayer/hallways/hangar)
-"nPH" = (
-/turf/open/floor/almayer{
+"nPE" = (
+/obj/structure/surface/table/almayer,
+/obj/structure/machinery/centrifuge{
+ pixel_y = 7
+ },
+/obj/structure/machinery/camera/autoname/almayer{
dir = 8;
- icon_state = "sterile_green_side"
+ name = "ship-grade camera"
+ },
+/turf/open/floor/almayer{
+ icon_state = "mono"
},
/area/almayer/medical/medical_science)
"nPM" = (
@@ -54835,34 +54832,6 @@
icon_state = "cargo"
},
/area/almayer/squads/alpha_bravo_shared)
-"oeg" = (
-/turf/open/floor/almayer{
- icon_state = "sterile_green"
- },
-/area/almayer/medical/medical_science)
-"oek" = (
-/obj/structure/pipes/standard/simple/hidden/supply,
-/obj/structure/machinery/computer/cameras/almayer/containment{
- dir = 8;
- pixel_x = -4;
- pixel_y = 6
- },
-/obj/structure/surface/table/almayer,
-/obj/item/tool/extinguisher{
- pixel_x = 7;
- pixel_y = 7
- },
-/obj/structure/machinery/door_control{
- id = "containmentlockdown_S";
- name = "Containment Lockdown";
- pixel_x = -5;
- pixel_y = -4;
- req_one_access_txt = "19;28"
- },
-/turf/open/floor/almayer{
- icon_state = "sterile_green"
- },
-/area/almayer/medical/containment)
"oeo" = (
/obj/structure/disposalpipe/segment,
/turf/open/floor/plating/plating_catwalk,
@@ -55018,6 +54987,22 @@
},
/turf/open/floor/almayer,
/area/almayer/squads/bravo)
+"oiY" = (
+/obj/effect/decal/warning_stripes{
+ icon_state = "W";
+ pixel_x = -1
+ },
+/obj/structure/disposalpipe/trunk,
+/obj/structure/machinery/disposal,
+/obj/structure/sink{
+ pixel_x = 1;
+ pixel_y = -2
+ },
+/turf/open/floor/almayer{
+ dir = 8;
+ icon_state = "sterile_green_side"
+ },
+/area/almayer/medical/medical_science)
"ojF" = (
/obj/structure/machinery/cm_vending/clothing/tl/charlie{
density = 0;
@@ -55028,28 +55013,6 @@
icon_state = "emerald"
},
/area/almayer/squads/charlie)
-"ojG" = (
-/obj/structure/surface/table/reinforced/prison,
-/obj/structure/machinery/door/window/westright,
-/obj/structure/machinery/door/firedoor/border_only/almayer,
-/obj/structure/machinery/door/window/westright{
- dir = 4;
- req_access_txt = "28"
- },
-/obj/structure/machinery/door/poddoor/shutters/almayer/open{
- dir = 8;
- id = "researchlockdownext_windoor";
- name = "\improper Research Windoor Shutter"
- },
-/obj/structure/machinery/door/poddoor/almayer/open{
- dir = 4;
- id = "Containment Breach";
- name = "\improper Secure Airlock"
- },
-/turf/open/floor/almayer{
- icon_state = "test_floor4"
- },
-/area/almayer/medical/medical_science)
"ojZ" = (
/obj/structure/window/framed/almayer/white,
/obj/structure/machinery/door/firedoor/border_only/almayer,
@@ -55087,11 +55050,6 @@
},
/turf/open/floor/plating/plating_catwalk,
/area/almayer/hull/upper_hull/u_m_p)
-"okt" = (
-/turf/open/floor/almayer{
- icon_state = "test_floor4"
- },
-/area/almayer/medical/hydroponics)
"okz" = (
/obj/structure/platform{
dir = 4;
@@ -55113,13 +55071,6 @@
icon_state = "outerhull_dir"
},
/area/space)
-"okH" = (
-/obj/structure/bed/chair,
-/turf/open/floor/almayer{
- dir = 4;
- icon_state = "redcorner"
- },
-/area/almayer/shipboard/brig/processing)
"okM" = (
/obj/structure/machinery/door/airlock/almayer/security/glass{
name = "\improper Execution Room"
@@ -55205,6 +55156,21 @@
icon_state = "silvercorner"
},
/area/almayer/command/cichallway)
+"omh" = (
+/obj/structure/surface/table/almayer,
+/obj/item/prop/magazine/book/spacebeast,
+/obj/item/paper_bin/uscm{
+ pixel_x = 8;
+ pixel_y = 12
+ },
+/obj/item/tool/pen{
+ pixel_x = 8
+ },
+/turf/open/floor/almayer{
+ dir = 1;
+ icon_state = "redcorner"
+ },
+/area/almayer/shipboard/brig/evidence_storage)
"omo" = (
/obj/structure/window/framed/almayer/white,
/turf/open/floor/plating,
@@ -55243,6 +55209,16 @@
icon_state = "silvercorner"
},
/area/almayer/shipboard/brig/cic_hallway)
+"omB" = (
+/obj/structure/pipes/standard/simple/hidden/supply,
+/obj/structure/disposalpipe/segment{
+ dir = 4
+ },
+/turf/open/floor/almayer{
+ dir = 4;
+ icon_state = "sterile_green_side"
+ },
+/area/almayer/medical/medical_science)
"omP" = (
/obj/item/tool/mop,
/obj/structure/surface/rack,
@@ -55251,15 +55227,6 @@
icon_state = "orange"
},
/area/almayer/hallways/hangar)
-"onA" = (
-/obj/structure/surface/table/almayer,
-/obj/structure/machinery/computer/cameras/almayer_network{
- dir = 8
- },
-/turf/open/floor/almayer{
- allow_construction = 0
- },
-/area/almayer/shipboard/brig/processing)
"onN" = (
/obj/structure/surface/table/almayer,
/obj/structure/disposalpipe/segment{
@@ -55281,18 +55248,6 @@
icon_state = "sterile_green_side"
},
/area/almayer/medical/upper_medical)
-"onY" = (
-/obj/structure/surface/table/almayer,
-/obj/item/paper_bin/uscm,
-/obj/item/attachable/bayonet,
-/obj/item/device/flashlight/lamp{
- pixel_x = -8;
- pixel_y = 12
- },
-/turf/open/floor/almayer{
- icon_state = "plate"
- },
-/area/almayer/living/tankerbunks)
"oog" = (
/obj/effect/decal/warning_stripes{
icon_state = "S"
@@ -55385,10 +55340,6 @@
icon_state = "red"
},
/area/almayer/shipboard/brig/processing)
-"opU" = (
-/obj/effect/landmark/start/warden,
-/turf/open/floor/plating/plating_catwalk,
-/area/almayer/shipboard/brig/cryo)
"oqu" = (
/obj/structure/machinery/disposal,
/obj/structure/disposalpipe/trunk{
@@ -55463,6 +55414,23 @@
/obj/structure/plasticflaps,
/turf/open/floor/almayer,
/area/almayer/squads/req)
+"oqZ" = (
+/obj/structure/surface/table/almayer,
+/obj/structure/machinery/microwave{
+ pixel_y = 5
+ },
+/obj/item/storage/box/donkpockets{
+ pixel_x = -4;
+ pixel_y = 19
+ },
+/obj/item/storage/box/donkpockets{
+ pixel_x = 4;
+ pixel_y = 16
+ },
+/turf/open/floor/almayer{
+ icon_state = "mono"
+ },
+/area/almayer/medical/medical_science)
"ora" = (
/obj/structure/surface/table/almayer,
/obj/item/ashtray/bronze{
@@ -55501,17 +55469,6 @@
dir = 10
},
/area/almayer/command/lifeboat)
-"orP" = (
-/obj/structure/machinery/camera/autoname/almayer/containment{
- dir = 4
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "W"
- },
-/turf/open/floor/almayer/research/containment/floor2{
- dir = 8
- },
-/area/almayer/medical/containment/cell)
"osc" = (
/obj/structure/machinery/cm_vending/sorted/uniform_supply/squad_prep,
/obj/structure/machinery/light{
@@ -55604,6 +55561,9 @@
},
/turf/open/floor/almayer,
/area/almayer/living/pilotbunks)
+"otu" = (
+/turf/closed/wall/almayer/research/containment/wall/connect_w,
+/area/almayer/medical/containment/cell)
"otX" = (
/obj/effect/decal/warning_stripes{
icon_state = "W"
@@ -55653,6 +55613,10 @@
/obj/structure/bed/sofa/vert/grey/bot,
/turf/open/floor/almayer,
/area/almayer/command/lifeboat)
+"ouD" = (
+/obj/structure/bed/chair,
+/turf/open/floor/almayer,
+/area/almayer/living/tankerbunks)
"ouQ" = (
/obj/structure/platform{
dir = 1
@@ -55718,6 +55682,19 @@
icon_state = "plate"
},
/area/almayer/hull/lower_hull/l_m_p)
+"ovG" = (
+/obj/effect/decal/warning_stripes{
+ icon_state = "E";
+ pixel_x = 1
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "N";
+ pixel_y = 1
+ },
+/turf/open/floor/almayer/research/containment/corner_var1{
+ dir = 4
+ },
+/area/almayer/medical/containment/cell)
"ovP" = (
/obj/structure/sign/safety/security{
pixel_x = 15
@@ -55819,6 +55796,12 @@
icon_state = "plate"
},
/area/almayer/hull/lower_hull/l_a_p)
+"oyW" = (
+/turf/open/floor/almayer{
+ dir = 4;
+ icon_state = "redcorner"
+ },
+/area/almayer/shipboard/brig/main_office)
"ozi" = (
/obj/structure/surface/table/almayer,
/obj/item/fuelCell,
@@ -55854,12 +55837,6 @@
icon_state = "plate"
},
/area/almayer/hull/upper_hull/u_a_p)
-"ozy" = (
-/obj/structure/bed/sofa/south/white/right,
-/turf/open/floor/almayer{
- icon_state = "sterile_green"
- },
-/area/almayer/medical/medical_science)
"ozz" = (
/obj/structure/surface/table/almayer,
/obj/item/tank/emergency_oxygen/double,
@@ -55965,6 +55942,20 @@
"oDf" = (
/turf/open/floor/plating/plating_catwalk,
/area/almayer/hull/lower_hull/l_m_p)
+"oDi" = (
+/obj/structure/disposalpipe/segment{
+ dir = 1;
+ icon_state = "pipe-c"
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "W";
+ pixel_x = -1
+ },
+/turf/open/floor/almayer{
+ dir = 8;
+ icon_state = "sterile_green_side"
+ },
+/area/almayer/medical/medical_science)
"oDu" = (
/obj/structure/sign/safety/distribution_pipes{
pixel_x = 32
@@ -55992,6 +55983,26 @@
icon_state = "plate"
},
/area/almayer/living/grunt_rnr)
+"oDL" = (
+/obj/item/device/radio/intercom{
+ freerange = 1;
+ name = "General Listening Channel";
+ pixel_y = 28
+ },
+/obj/structure/machinery/photocopier,
+/turf/open/floor/almayer{
+ icon_state = "mono"
+ },
+/area/almayer/medical/medical_science)
+"oDR" = (
+/obj/structure/pipes/standard/simple/hidden/supply{
+ dir = 9
+ },
+/turf/open/floor/almayer{
+ dir = 4;
+ icon_state = "sterile_green_corner"
+ },
+/area/almayer/medical/medical_science)
"oDY" = (
/obj/structure/surface/table/almayer,
/obj/structure/machinery/recharger,
@@ -56062,27 +56073,6 @@
icon_state = "red"
},
/area/almayer/living/port_emb)
-"oFj" = (
-/turf/open/floor/almayer/research/containment/corner_var1{
- icon_state = "containment_corner_variant_2"
- },
-/area/almayer/medical/containment/cell)
-"oFl" = (
-/obj/structure/machinery/door/poddoor/shutters/almayer{
- dir = 4;
- id = "W_Containment Cell 2";
- name = "\improper Containment Cell 5";
- unacidable = 1
- },
-/obj/structure/machinery/door/poddoor/almayer/open{
- dir = 4;
- id = "Containment Breach";
- name = "\improper Secure Airlock"
- },
-/turf/closed/wall/almayer/research/containment/wall/purple{
- dir = 8
- },
-/area/almayer/medical/containment/cell)
"oFG" = (
/obj/structure/disposalpipe/segment{
dir = 4
@@ -56131,6 +56121,23 @@
icon_state = "mono"
},
/area/almayer/lifeboat_pumps/south1)
+"oGF" = (
+/obj/structure/machinery/door_control{
+ id = "Interrogation Shutters";
+ name = "\improper Shutters";
+ pixel_x = 24;
+ pixel_y = 12;
+ req_access_txt = "3"
+ },
+/obj/structure/machinery/camera/autoname/almayer{
+ dir = 8;
+ name = "ship-grade camera"
+ },
+/turf/open/floor/almayer{
+ dir = 5;
+ icon_state = "red"
+ },
+/area/almayer/shipboard/brig/processing)
"oGP" = (
/obj/structure/pipes/standard/simple/hidden/supply{
dir = 4
@@ -56199,20 +56206,33 @@
icon_state = "plate"
},
/area/almayer/hull/lower_hull/l_m_s)
-"oIB" = (
-/turf/closed/wall/almayer,
-/area/almayer/command/combat_correspondent)
-"oJg" = (
-/obj/structure/window/framed/almayer/white,
-/obj/structure/machinery/door/firedoor/border_only/almayer{
- dir = 2
+"oIr" = (
+/obj/effect/decal/warning_stripes{
+ icon_state = "NE-out";
+ pixel_x = 1;
+ pixel_y = 1
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "NW-out";
+ pixel_x = -1;
+ pixel_y = 1
+ },
+/obj/structure/machinery/door/airlock/almayer/research/reinforced{
+ dir = 8;
+ name = "\improper Containment Airlock"
},
/obj/structure/machinery/door/poddoor/almayer/open{
+ dir = 4;
id = "Containment Breach";
name = "\improper Secure Airlock"
},
-/turf/open/floor/plating,
-/area/almayer/medical/upper_medical)
+/turf/open/floor/almayer{
+ icon_state = "test_floor4"
+ },
+/area/almayer/medical/medical_science)
+"oIB" = (
+/turf/closed/wall/almayer,
+/area/almayer/command/combat_correspondent)
"oJp" = (
/obj/structure/pipes/standard/manifold/hidden/supply{
dir = 1
@@ -56357,6 +56377,12 @@
},
/turf/open/floor/almayer,
/area/almayer/hallways/port_hallway)
+"oLU" = (
+/turf/open/floor/almayer{
+ dir = 1;
+ icon_state = "sterile_green_side"
+ },
+/area/almayer/medical/hydroponics)
"oMd" = (
/obj/structure/closet/secure_closet/freezer/meat,
/turf/open/floor/almayer{
@@ -56371,21 +56397,6 @@
icon_state = "plate"
},
/area/almayer/squads/req)
-"oMi" = (
-/obj/structure/surface/table/almayer,
-/obj/structure/machinery/microwave{
- pixel_y = 6
- },
-/obj/structure/machinery/status_display{
- pixel_y = 30
- },
-/obj/structure/sign/safety/rewire{
- pixel_x = 32
- },
-/turf/open/floor/prison{
- icon_state = "kitchen"
- },
-/area/almayer/living/tankerbunks)
"oMs" = (
/obj/structure/machinery/computer/cameras/almayer{
dir = 1
@@ -56424,17 +56435,6 @@
icon_state = "test_floor4"
},
/area/almayer/command/lifeboat)
-"oMU" = (
-/obj/structure/pipes/standard/simple/hidden/supply{
- dir = 4
- },
-/obj/structure/disposalpipe/segment{
- dir = 4
- },
-/turf/open/floor/almayer{
- icon_state = "dark_sterile"
- },
-/area/almayer/medical/medical_science)
"oNb" = (
/obj/structure/surface/table/almayer,
/obj/structure/flora/pottedplant{
@@ -56462,8 +56462,10 @@
/turf/open/floor/almayer,
/area/almayer/squads/charlie_delta_shared)
"oNp" = (
-/turf/closed/wall/almayer/research/containment/wall/south,
-/area/almayer/medical/containment/cell)
+/turf/open/floor/almayer{
+ icon_state = "test_floor4"
+ },
+/area/almayer/medical/hydroponics)
"oNJ" = (
/obj/effect/decal/warning_stripes{
icon_state = "N"
@@ -56540,14 +56542,6 @@
icon_state = "cargo_arrow"
},
/area/almayer/living/briefing)
-"oQM" = (
-/obj/structure/pipes/vents/pump{
- dir = 4
- },
-/turf/open/floor/almayer{
- icon_state = "cargo"
- },
-/area/almayer/living/tankerbunks)
"oRj" = (
/obj/structure/stairs{
icon_state = "ramptop"
@@ -56691,25 +56685,6 @@
icon_state = "test_floor5"
},
/area/almayer/squads/req)
-"oTh" = (
-/obj/structure/machinery/body_scanconsole{
- dir = 8;
- layer = 3.1
- },
-/obj/structure/disposalpipe/trunk{
- dir = 1
- },
-/obj/structure/machinery/disposal/delivery{
- density = 0;
- desc = "A pneumatic delivery unit. Sends items to the requisitions.";
- icon_state = "delivery_med";
- name = "Requisitions Delivery Unit";
- pixel_y = 28
- },
-/turf/open/floor/almayer{
- icon_state = "mono"
- },
-/area/almayer/medical/medical_science)
"oTz" = (
/obj/effect/decal/cleanable/blood/drip,
/turf/open/floor/almayer{
@@ -56738,14 +56713,6 @@
icon_state = "silver"
},
/area/almayer/command/cichallway)
-"oVK" = (
-/obj/effect/decal/warning_stripes{
- icon_state = "S"
- },
-/turf/open/floor/almayer{
- icon_state = "plate"
- },
-/area/almayer/medical/medical_science)
"oVP" = (
/obj/structure/bed/chair{
dir = 4
@@ -56849,6 +56816,16 @@
icon_state = "plate"
},
/area/almayer/hull/lower_hull/l_m_p)
+"oYf" = (
+/obj/structure/machinery/door/firedoor/border_only/almayer,
+/obj/structure/machinery/door/airlock/multi_tile/almayer/secdoor/glass/reinforced{
+ dir = 1;
+ name = "\improper Cryogenics Bay"
+ },
+/turf/open/floor/almayer{
+ icon_state = "test_floor4"
+ },
+/area/almayer/shipboard/brig/general_equipment)
"oYp" = (
/obj/structure/bed/chair/office/dark{
dir = 8
@@ -56900,6 +56877,13 @@
icon_state = "sterile_green_side"
},
/area/almayer/medical/lower_medical_medbay)
+"paa" = (
+/obj/structure/machinery/iv_drip,
+/turf/open/floor/almayer{
+ dir = 9;
+ icon_state = "sterile_green_side"
+ },
+/area/almayer/medical/containment)
"paq" = (
/obj/structure/surface/table/almayer,
/obj/structure/machinery/faxmachine/uscm/brig,
@@ -56907,6 +56891,12 @@
icon_state = "plate"
},
/area/almayer/shipboard/brig/main_office)
+"pas" = (
+/obj/structure/pipes/standard/simple/hidden/supply{
+ dir = 5
+ },
+/turf/open/floor/almayer,
+/area/almayer/living/auxiliary_officer_office)
"paL" = (
/turf/open/floor/almayer/uscm/directional{
dir = 1
@@ -56971,15 +56961,14 @@
icon_state = "cargo"
},
/area/almayer/hallways/hangar)
-"pcr" = (
-/obj/structure/closet/secure_closet/freezer/fridge,
-/obj/structure/machinery/light{
- dir = 1
+"pcm" = (
+/obj/structure/machinery/door/airlock/almayer/generic{
+ name = "\improper Auxiliary Support Officer's Room"
},
/turf/open/floor/almayer{
- icon_state = "mono"
+ icon_state = "test_floor4"
},
-/area/almayer/medical/medical_science)
+/area/almayer/living/auxiliary_officer_office)
"pcD" = (
/obj/structure/machinery/door/airlock/almayer/maint{
dir = 1
@@ -57059,6 +57048,19 @@
icon_state = "test_floor4"
},
/area/almayer/shipboard/brig/chief_mp_office)
+"pdL" = (
+/obj/structure/machinery/cm_vending/clothing/senior_officer{
+ req_access = list();
+ req_access_txt = "26"
+ },
+/obj/structure/sign/safety/hvac_old{
+ pixel_x = 8;
+ pixel_y = 32
+ },
+/turf/open/floor/almayer{
+ icon_state = "cargo"
+ },
+/area/almayer/squads/req)
"pef" = (
/obj/structure/machinery/door/firedoor/border_only/almayer,
/obj/structure/sign/safety/maint{
@@ -57159,6 +57161,15 @@
icon_state = "ai_floors"
},
/area/almayer/command/airoom)
+"pgM" = (
+/obj/structure/reagent_dispensers/water_cooler/walk_past{
+ pixel_x = 10;
+ pixel_y = 3
+ },
+/turf/open/floor/almayer{
+ icon_state = "mono"
+ },
+/area/almayer/medical/medical_science)
"pha" = (
/obj/structure/machinery/photocopier,
/turf/open/floor/almayer{
@@ -57383,6 +57394,13 @@
},
/turf/open/floor/plating,
/area/almayer/hull/lower_hull/l_f_p)
+"poM" = (
+/obj/structure/pipes/standard/manifold/hidden/supply{
+ dir = 1
+ },
+/obj/structure/surface/table/almayer,
+/turf/open/floor/plating/plating_catwalk,
+/area/almayer/living/auxiliary_officer_office)
"poR" = (
/obj/structure/machinery/light/small{
dir = 4
@@ -57411,25 +57429,6 @@
icon_state = "red"
},
/area/almayer/hull/upper_hull/u_a_p)
-"ppe" = (
-/obj/structure/pipes/standard/simple/hidden/supply{
- dir = 5
- },
-/turf/open/floor/almayer,
-/area/almayer/living/tankerbunks)
-"ppq" = (
-/obj/item/stack/sheet/mineral/plastic{
- amount = 15
- },
-/obj/item/stack/sheet/glass{
- amount = 20;
- pixel_x = 3;
- pixel_y = 3
- },
-/turf/open/floor/almayer{
- icon_state = "test_floor4"
- },
-/area/almayer/medical/hydroponics)
"pqc" = (
/obj/structure/machinery/firealarm{
dir = 4;
@@ -57491,6 +57490,12 @@
},
/turf/open/floor/almayer,
/area/almayer/living/gym)
+"prw" = (
+/obj/structure/disposalpipe/segment,
+/turf/open/floor/almayer{
+ icon_state = "dark_sterile"
+ },
+/area/almayer/medical/medical_science)
"prE" = (
/obj/structure/surface/table/reinforced/almayer_B,
/obj/item/tool/kitchen/tray,
@@ -57529,24 +57534,6 @@
icon_state = "cargo"
},
/area/almayer/engineering/engine_core)
-"pss" = (
-/obj/structure/surface/table/reinforced/prison,
-/obj/item/roller/surgical,
-/obj/item/roller/surgical,
-/obj/item/roller/surgical,
-/obj/item/reagent_container/spray/cleaner{
- desc = "Someone has crossed out the Space from Space Cleaner and written in Surgery. 'Do not remove under punishment of death!!!' is scrawled on the back.";
- name = "Surgery Cleaner"
- },
-/obj/item/folded_tent/med{
- pixel_x = -8;
- pixel_y = 14
- },
-/turf/open/floor/almayer{
- dir = 8;
- icon_state = "sterile_green_corner"
- },
-/area/almayer/medical/lower_medical_medbay)
"psy" = (
/obj/structure/machinery/door/airlock/almayer/security{
dir = 2;
@@ -57556,13 +57543,6 @@
icon_state = "test_floor4"
},
/area/almayer/hull/lower_hull/l_f_s)
-"psE" = (
-/obj/effect/landmark/late_join/working_joe,
-/obj/effect/landmark/start/working_joe,
-/turf/open/floor/almayer/no_build{
- icon_state = "ai_floors"
- },
-/area/almayer/command/airoom)
"psK" = (
/obj/structure/disposalpipe/segment{
dir = 4
@@ -57617,23 +57597,6 @@
},
/turf/open/floor/plating/plating_catwalk,
/area/almayer/hallways/hangar)
-"ptB" = (
-/obj/structure/surface/table/almayer,
-/obj/structure/machinery/light{
- dir = 8
- },
-/obj/structure/machinery/computer/research{
- dir = 4;
- pixel_y = 4
- },
-/obj/item/tool/hand_labeler{
- pixel_x = -6;
- pixel_y = -5
- },
-/turf/open/floor/almayer{
- icon_state = "mono"
- },
-/area/almayer/medical/medical_science)
"ptK" = (
/turf/closed/wall/almayer,
/area/almayer/engineering/upper_engineering/starboard)
@@ -57681,23 +57644,6 @@
icon_state = "plate"
},
/area/almayer/hull/lower_hull/l_f_p)
-"puU" = (
-/obj/structure/surface/table/almayer,
-/obj/item/tool/pen{
- pixel_x = -6
- },
-/obj/item/paper_bin/uscm{
- pixel_x = -6;
- pixel_y = 7
- },
-/obj/item/storage/box/evidence{
- pixel_x = 7;
- pixel_y = 6
- },
-/turf/open/floor/almayer{
- allow_construction = 0
- },
-/area/almayer/shipboard/brig/processing)
"pvh" = (
/obj/structure/pipes/standard/manifold/hidden/supply,
/obj/item/tool/warning_cone{
@@ -57723,20 +57669,6 @@
icon_state = "green"
},
/area/almayer/hallways/aft_hallway)
-"pvI" = (
-/obj/structure/machinery/door/airlock/almayer/security{
- dir = 2;
- name = "\improper Interrogation Observation";
- req_one_access_txt = "1;3";
- req_access = null
- },
-/obj/structure/machinery/door/firedoor/border_only/almayer{
- dir = 1
- },
-/turf/open/floor/almayer{
- icon_state = "test_floor4"
- },
-/area/almayer/shipboard/brig/processing)
"pvJ" = (
/obj/structure/disposalpipe/segment{
dir = 4
@@ -57806,6 +57738,14 @@
icon_state = "plate"
},
/area/almayer/command/combat_correspondent)
+"pxo" = (
+/obj/structure/pipes/standard/simple/hidden/supply{
+ dir = 4
+ },
+/turf/open/floor/almayer{
+ icon_state = "sterile_green_side"
+ },
+/area/almayer/medical/medical_science)
"pxD" = (
/obj/structure/machinery/vending/coffee{
pixel_x = 3;
@@ -57819,15 +57759,6 @@
icon_state = "plate"
},
/area/almayer/living/grunt_rnr)
-"pxE" = (
-/obj/structure/machinery/firealarm{
- dir = 8;
- pixel_x = -24
- },
-/turf/open/floor/almayer{
- icon_state = "redcorner"
- },
-/area/almayer/shipboard/brig/processing)
"pxG" = (
/obj/structure/bed/chair/comfy/beige{
dir = 1
@@ -57883,12 +57814,6 @@
icon_state = "cargo_arrow"
},
/area/almayer/squads/bravo)
-"pyx" = (
-/obj/structure/pipes/standard/simple/hidden/supply{
- dir = 4
- },
-/turf/open/floor/plating/plating_catwalk,
-/area/almayer/medical/hydroponics)
"pyy" = (
/obj/structure/filingcabinet,
/turf/open/floor/almayer{
@@ -57990,6 +57915,13 @@
icon_state = "plate"
},
/area/almayer/hull/lower_hull/l_f_s)
+"pAn" = (
+/obj/structure/surface/table/almayer,
+/obj/item/paper,
+/turf/open/floor/almayer{
+ icon_state = "plate"
+ },
+/area/almayer/living/tankerbunks)
"pAR" = (
/obj/structure/pipes/vents/scrubber{
dir = 8
@@ -58149,6 +58081,25 @@
},
/turf/open/floor/plating/plating_catwalk,
/area/almayer/shipboard/brig/cic_hallway)
+"pEJ" = (
+/obj/structure/machinery/flasher{
+ alpha = 1;
+ id = "Containment Cell 2";
+ layer = 2.1;
+ name = "Mounted Flash";
+ pixel_y = 30
+ },
+/obj/structure/machinery/light/containment{
+ dir = 1
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "N";
+ pixel_y = 1
+ },
+/turf/open/floor/almayer/research/containment/floor2{
+ dir = 1
+ },
+/area/almayer/medical/containment/cell)
"pEY" = (
/obj/structure/flora/pottedplant{
icon_state = "pottedplant_22";
@@ -58189,6 +58140,10 @@
},
/turf/open/floor/plating,
/area/almayer/shipboard/brig/perma)
+"pFw" = (
+/obj/structure/pipes/standard/simple/hidden/supply,
+/turf/open/floor/plating/plating_catwalk,
+/area/almayer/living/auxiliary_officer_office)
"pFA" = (
/obj/structure/pipes/standard/simple/visible{
dir = 4
@@ -58226,6 +58181,17 @@
},
/turf/open/floor/almayer,
/area/almayer/shipboard/brig/execution)
+"pGK" = (
+/obj/structure/pipes/standard/simple/hidden/supply{
+ dir = 4
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "S"
+ },
+/turf/open/floor/almayer{
+ icon_state = "mono"
+ },
+/area/almayer/medical/hydroponics)
"pGM" = (
/obj/structure/machinery/light{
dir = 1
@@ -58273,17 +58239,6 @@
/obj/structure/pipes/standard/simple/hidden/supply,
/turf/open/floor/plating/plating_catwalk,
/area/almayer/shipboard/brig/general_equipment)
-"pHf" = (
-/obj/structure/machinery/vending/snack{
- pixel_x = -7
- },
-/obj/structure/machinery/vending/coffee{
- pixel_x = 14
- },
-/turf/open/floor/almayer{
- icon_state = "mono"
- },
-/area/almayer/medical/medical_science)
"pHp" = (
/turf/open/floor/plating/plating_catwalk,
/area/almayer/shipboard/brig/perma)
@@ -58346,14 +58301,6 @@
},
/turf/open/floor/almayer,
/area/almayer/lifeboat_pumps/south1)
-"pIW" = (
-/obj/structure/pipes/standard/simple/hidden/supply{
- dir = 4
- },
-/turf/open/floor/almayer{
- icon_state = "sterile_green_side"
- },
-/area/almayer/medical/hydroponics)
"pIX" = (
/obj/structure/pipes/standard/manifold/hidden/supply,
/obj/structure/disposalpipe/segment{
@@ -58369,14 +58316,6 @@
icon_state = "green"
},
/area/almayer/living/grunt_rnr)
-"pJh" = (
-/obj/structure/machinery/light{
- dir = 1
- },
-/turf/open/floor/almayer{
- icon_state = "mono"
- },
-/area/almayer/medical/hydroponics)
"pJi" = (
/obj/structure/closet/firecloset,
/turf/open/floor/almayer{
@@ -58384,24 +58323,6 @@
icon_state = "red"
},
/area/almayer/shipboard/brig/general_equipment)
-"pJr" = (
-/obj/structure/pipes/standard/manifold/hidden/supply{
- dir = 4
- },
-/obj/structure/bed,
-/obj/structure/machinery/power/apc/almayer{
- dir = 4
- },
-/turf/open/floor/almayer{
- icon_state = "mono"
- },
-/area/almayer/medical/medical_science)
-"pJw" = (
-/obj/structure/machinery/light,
-/turf/open/floor/almayer{
- icon_state = "test_floor4"
- },
-/area/almayer/medical/hydroponics)
"pJE" = (
/obj/structure/closet/secure_closet{
name = "\improper Execution Firearms"
@@ -58466,6 +58387,22 @@
icon_state = "dark_sterile"
},
/area/almayer/medical/lower_medical_medbay)
+"pLO" = (
+/obj/structure/machinery/door/poddoor/shutters/almayer{
+ dir = 4;
+ id = "W_Containment Cell 5";
+ name = "\improper Containment Cell 5";
+ unacidable = 1
+ },
+/obj/structure/machinery/door/poddoor/almayer/open{
+ dir = 4;
+ id = "Containment Breach";
+ name = "\improper Secure Airlock"
+ },
+/turf/closed/wall/almayer/research/containment/wall/purple{
+ dir = 1
+ },
+/area/almayer/medical/containment/cell)
"pLW" = (
/obj/structure/machinery/firealarm{
dir = 4;
@@ -58545,10 +58482,18 @@
},
/area/almayer/lifeboat_pumps/south1)
"pNP" = (
-/turf/open/floor/almayer/research/containment/corner{
- dir = 4
+/obj/effect/decal/warning_stripes{
+ icon_state = "S"
},
-/area/almayer/medical/containment/cell)
+/obj/item/reagent_container/food/snacks/cheesewedge{
+ pixel_x = -10;
+ pixel_y = 7
+ },
+/mob/living/simple_animal/mouse/white/Doc,
+/turf/open/floor/almayer{
+ icon_state = "sterile_green"
+ },
+/area/almayer/medical/hydroponics)
"pNQ" = (
/obj/effect/decal/warning_stripes{
icon_state = "NE-out";
@@ -58686,6 +58631,17 @@
/obj/item/reagent_container/food/condiment/hotsauce/franks,
/turf/open/floor/plating/plating_catwalk,
/area/almayer/squads/delta)
+"pQP" = (
+/obj/structure/pipes/standard/simple/hidden/supply{
+ dir = 4
+ },
+/obj/structure/disposalpipe/segment{
+ dir = 4
+ },
+/turf/open/floor/almayer{
+ icon_state = "dark_sterile"
+ },
+/area/almayer/medical/medical_science)
"pQV" = (
/obj/structure/machinery/vending/cola,
/turf/open/floor/almayer{
@@ -58704,6 +58660,18 @@
icon_state = "plate"
},
/area/almayer/living/offices)
+"pRn" = (
+/obj/structure/pipes/standard/manifold/hidden/supply{
+ dir = 4
+ },
+/obj/structure/bed,
+/obj/structure/machinery/power/apc/almayer{
+ dir = 4
+ },
+/turf/open/floor/almayer{
+ icon_state = "mono"
+ },
+/area/almayer/medical/medical_science)
"pRy" = (
/turf/open/floor/almayer/research/containment/corner_var1{
dir = 4
@@ -58726,29 +58694,9 @@
},
/area/almayer/shipboard/brig/cic_hallway)
"pRX" = (
-/turf/closed/wall/almayer/research/containment/wall/connect_e2{
- icon_state = "containment_wall_connect_e"
- },
-/area/almayer/medical/containment/cell)
-"pSI" = (
-/obj/structure/sign/safety/terminal{
- pixel_x = 7;
- pixel_y = -25
- },
-/obj/structure/surface/rack,
-/obj/item/storage/box/autoinjectors{
- pixel_x = 7;
- pixel_y = 5
- },
-/obj/item/storage/box/beakers{
- pixel_x = -6;
- pixel_y = 5
- },
-/obj/item/storage/box/sprays{
- pixel_y = -3
- },
+/obj/structure/machinery/portable_atmospherics/hydroponics,
/turf/open/floor/almayer{
- icon_state = "mono"
+ icon_state = "test_floor5"
},
/area/almayer/medical/hydroponics)
"pSL" = (
@@ -58782,6 +58730,16 @@
icon_state = "silvercorner"
},
/area/almayer/command/computerlab)
+"pTt" = (
+/obj/structure/machinery/door/poddoor/shutters/almayer{
+ id = "ARES JoeCryo";
+ name = "\improper ARES Core Shutters";
+ plane = -7
+ },
+/turf/open/floor/almayer/no_build{
+ icon_state = "test_floor4"
+ },
+/area/almayer/command/airoom)
"pTT" = (
/obj/structure/platform{
dir = 4
@@ -58984,6 +58942,15 @@
icon_state = "green"
},
/area/almayer/squads/req)
+"pWD" = (
+/obj/structure/machinery/cm_vending/sorted/medical/wall_med{
+ pixel_y = 25
+ },
+/turf/open/floor/almayer{
+ dir = 4;
+ icon_state = "redcorner"
+ },
+/area/almayer/shipboard/brig/main_office)
"pWG" = (
/obj/structure/bed/chair{
dir = 1
@@ -59077,6 +59044,15 @@
icon_state = "silver"
},
/area/almayer/command/airoom)
+"pYo" = (
+/obj/effect/decal/warning_stripes{
+ icon_state = "W"
+ },
+/turf/open/floor/almayer{
+ dir = 8;
+ icon_state = "sterile_green_side"
+ },
+/area/almayer/medical/containment)
"pYu" = (
/obj/item/tool/warning_cone{
pixel_x = -12;
@@ -59137,6 +59113,17 @@
icon_state = "red"
},
/area/almayer/shipboard/brig/perma)
+"qam" = (
+/obj/structure/pipes/standard/simple/hidden/supply,
+/obj/effect/decal/warning_stripes{
+ icon_state = "W";
+ pixel_x = -1
+ },
+/turf/open/floor/almayer{
+ dir = 8;
+ icon_state = "sterile_green_side"
+ },
+/area/almayer/medical/medical_science)
"qaD" = (
/obj/structure/largecrate/random/case/double,
/turf/open/floor/almayer{
@@ -59241,15 +59228,6 @@
},
/turf/open/floor/almayer,
/area/almayer/hallways/starboard_hallway)
-"qcy" = (
-/obj/structure/sign/safety/bathunisex{
- pixel_x = 8;
- pixel_y = -32
- },
-/turf/open/floor/almayer{
- icon_state = "plate"
- },
-/area/almayer/living/tankerbunks)
"qdk" = (
/obj/structure/surface/table/almayer,
/obj/structure/pipes/standard/simple/hidden/supply{
@@ -59348,6 +59326,30 @@
icon_state = "plate"
},
/area/almayer/squads/alpha_bravo_shared)
+"qfy" = (
+/obj/effect/decal/warning_stripes{
+ icon_state = "N";
+ pixel_y = 1
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "W";
+ pixel_x = -1
+ },
+/obj/structure/filingcabinet/filingcabinet{
+ density = 0;
+ pixel_x = -11;
+ pixel_y = 16
+ },
+/obj/structure/filingcabinet/filingcabinet{
+ density = 0;
+ pixel_x = 4;
+ pixel_y = 16
+ },
+/turf/open/floor/almayer{
+ dir = 1;
+ icon_state = "sterile_green_corner"
+ },
+/area/almayer/medical/medical_science)
"qfA" = (
/turf/open/floor/almayer{
icon_state = "silvercorner"
@@ -59586,6 +59588,41 @@
icon_state = "red"
},
/area/almayer/hallways/aft_hallway)
+"qmy" = (
+/obj/structure/surface/table/almayer,
+/obj/structure/machinery/door_control{
+ dir = 1;
+ id = "researchlockdownext_windoor";
+ name = "Windoor Shutters";
+ pixel_x = -7;
+ pixel_y = 9;
+ req_access_txt = "28"
+ },
+/obj/structure/machinery/computer/med_data/laptop{
+ dir = 1;
+ pixel_x = 6;
+ pixel_y = -4
+ },
+/obj/structure/sign/safety/biohazard{
+ pixel_y = -32
+ },
+/obj/structure/sign/safety/ref_bio_storage{
+ pixel_x = 15;
+ pixel_y = -32
+ },
+/obj/structure/machinery/door_control{
+ dir = 1;
+ id = "researchlockdownext_se_2";
+ name = "Window Shutters";
+ pixel_x = -7;
+ pixel_y = 4;
+ req_access_txt = "28"
+ },
+/turf/open/floor/almayer{
+ dir = 8;
+ icon_state = "sterile_green_corner"
+ },
+/area/almayer/medical/medical_science)
"qmC" = (
/obj/structure/machinery/door/poddoor/almayer/open{
dir = 4;
@@ -59600,6 +59637,18 @@
icon_state = "test_floor4"
},
/area/almayer/shipboard/brig/main_office)
+"qmD" = (
+/obj/structure/pipes/standard/simple/hidden/supply{
+ dir = 5
+ },
+/obj/structure/disposalpipe/segment{
+ dir = 4
+ },
+/obj/structure/bed/chair/comfy,
+/turf/open/floor/almayer{
+ icon_state = "dark_sterile"
+ },
+/area/almayer/medical/medical_science)
"qmE" = (
/obj/structure/sign/safety/restrictedarea{
pixel_x = 32;
@@ -59669,18 +59718,6 @@
icon_state = "test_floor4"
},
/area/almayer/living/pilotbunks)
-"qnL" = (
-/obj/structure/pipes/standard/simple/hidden/supply{
- dir = 5
- },
-/obj/structure/disposalpipe/segment{
- dir = 4
- },
-/obj/structure/bed/chair/comfy,
-/turf/open/floor/almayer{
- icon_state = "dark_sterile"
- },
-/area/almayer/medical/medical_science)
"qnP" = (
/obj/structure/prop/invuln/overhead_pipe{
pixel_x = 12
@@ -59693,17 +59730,6 @@
icon_state = "plate"
},
/area/almayer/hull/lower_hull/l_a_s)
-"qnW" = (
-/obj/effect/decal/warning_stripes{
- icon_state = "W";
- pixel_x = -1
- },
-/obj/structure/disposalpipe/segment,
-/turf/open/floor/almayer{
- dir = 8;
- icon_state = "sterile_green_side"
- },
-/area/almayer/medical/medical_science)
"qof" = (
/obj/structure/window/framed/almayer,
/obj/structure/machinery/door/poddoor/shutters/almayer/open{
@@ -59863,31 +59889,6 @@
icon_state = "silver"
},
/area/almayer/command/computerlab)
-"qrz" = (
-/obj/structure/pipes/standard/simple/hidden/supply,
-/obj/structure/surface/table/almayer,
-/obj/item/device/reagent_scanner{
- pixel_x = -8;
- pixel_y = 4
- },
-/obj/item/clipboard{
- pixel_x = 8
- },
-/obj/item/paper{
- pixel_x = 8
- },
-/obj/effect/spawner/random/toolbox{
- pixel_x = 5;
- pixel_y = -3
- },
-/obj/item/storage/box/monkeycubes{
- pixel_x = 7;
- pixel_y = 7
- },
-/turf/open/floor/almayer{
- icon_state = "sterile_green"
- },
-/area/almayer/medical/containment)
"qsd" = (
/obj/structure/largecrate/random,
/turf/open/floor/almayer{
@@ -60047,19 +60048,23 @@
icon_state = "plate"
},
/area/almayer/living/offices)
-"qww" = (
-/obj/structure/machinery/computer/cameras/almayer{
- dir = 8;
- pixel_x = 17
+"qwJ" = (
+/obj/structure/machinery/door_control{
+ id = "ARES Operations Left";
+ name = "ARES Operations Shutter";
+ pixel_x = -24;
+ pixel_y = -8;
+ req_one_access_txt = "1;200;91;92"
},
/turf/open/floor/almayer/no_build{
- icon_state = "plating"
+ dir = 8;
+ icon_state = "silver"
},
/area/almayer/command/airoom)
-"qwF" = (
+"qxm" = (
/obj/structure/machinery/door/poddoor/shutters/almayer{
dir = 4;
- id = "W_Containment Cell 1";
+ id = "W_Containment Cell 5";
name = "\improper Containment Cell 5";
unacidable = 1
},
@@ -60068,23 +60073,8 @@
id = "Containment Breach";
name = "\improper Secure Airlock"
},
-/turf/closed/wall/almayer/research/containment/wall/purple{
- dir = 1
- },
+/turf/closed/wall/almayer/research/containment/wall/purple,
/area/almayer/medical/containment/cell)
-"qwJ" = (
-/obj/structure/machinery/door_control{
- id = "ARES Operations Left";
- name = "ARES Operations Shutter";
- pixel_x = -24;
- pixel_y = -8;
- req_one_access_txt = "1;200;91;92"
- },
-/turf/open/floor/almayer/no_build{
- dir = 8;
- icon_state = "silver"
- },
-/area/almayer/command/airoom)
"qxA" = (
/obj/structure/closet/firecloset,
/turf/open/floor/almayer{
@@ -60123,6 +60113,19 @@
icon_state = "sterile_green"
},
/area/almayer/medical/lower_medical_medbay)
+"qxP" = (
+/obj/effect/decal/warning_stripes{
+ icon_state = "N";
+ pixel_y = 1
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "E";
+ pixel_x = 1
+ },
+/turf/open/floor/almayer/research/containment/corner_var1{
+ dir = 4
+ },
+/area/almayer/medical/containment/cell)
"qyd" = (
/turf/open/floor/almayer{
allow_construction = 0
@@ -60195,12 +60198,6 @@
icon_state = "green"
},
/area/almayer/living/grunt_rnr)
-"qyO" = (
-/obj/structure/machinery/light/small{
- dir = 8
- },
-/turf/open/floor/plating,
-/area/almayer/command/airoom)
"qyW" = (
/obj/structure/bed/chair{
dir = 4
@@ -60243,6 +60240,28 @@
icon_state = "mono"
},
/area/almayer/engineering/ce_room)
+"qAT" = (
+/obj/structure/machinery/light,
+/obj/structure/surface/table/almayer,
+/obj/structure/machinery/reagentgrinder{
+ pixel_y = 8
+ },
+/obj/item/stack/sheet/mineral/phoron{
+ amount = 25;
+ pixel_x = 3;
+ pixel_y = 3
+ },
+/obj/item/device/reagent_scanner{
+ pixel_x = -16;
+ pixel_y = 5
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "SW-out"
+ },
+/turf/open/floor/almayer{
+ icon_state = "sterile_green_side"
+ },
+/area/almayer/medical/medical_science)
"qCc" = (
/obj/structure/sign/safety/security{
pixel_x = 15;
@@ -60286,15 +60305,6 @@
/obj/effect/landmark/start/captain,
/turf/open/floor/plating/plating_catwalk,
/area/almayer/living/bridgebunks)
-"qCA" = (
-/obj/effect/decal/warning_stripes{
- icon_state = "N";
- pixel_y = 1
- },
-/turf/open/floor/almayer/research/containment/floor2{
- dir = 1
- },
-/area/almayer/medical/containment/cell)
"qCG" = (
/obj/effect/decal/warning_stripes{
icon_state = "N";
@@ -60359,8 +60369,22 @@
},
/area/almayer/command/cic)
"qEn" = (
-/turf/closed/wall/almayer/research/containment/wall/corner,
-/area/almayer/medical/containment/cell)
+/obj/structure/pipes/standard/simple/hidden/supply,
+/obj/effect/decal/warning_stripes{
+ icon_state = "SW-out";
+ pixel_x = -1
+ },
+/obj/structure/machinery/door/airlock/multi_tile/almayer/medidoor/research{
+ name = "\improper Research Hydroponics Workshop"
+ },
+/obj/structure/machinery/door/poddoor/almayer/open{
+ id = "Containment Breach";
+ name = "\improper Secure Airlock"
+ },
+/turf/open/floor/almayer{
+ icon_state = "test_floor4"
+ },
+/area/almayer/medical/hydroponics)
"qEy" = (
/obj/structure/disposalpipe/segment,
/obj/structure/pipes/standard/simple/hidden/supply{
@@ -60516,6 +60540,26 @@
icon_state = "orange"
},
/area/almayer/engineering/upper_engineering)
+"qIL" = (
+/obj/structure/surface/table/almayer,
+/obj/structure/machinery/camera/autoname/almayer{
+ dir = 4;
+ name = "ship-grade camera"
+ },
+/obj/item/folder/white{
+ pixel_x = 6
+ },
+/obj/item/storage/fancy/vials/empty{
+ pixel_y = 10;
+ start_vials = 2
+ },
+/obj/item/tool/pen{
+ pixel_y = 8
+ },
+/turf/open/floor/almayer{
+ icon_state = "mono"
+ },
+/area/almayer/medical/medical_science)
"qJf" = (
/obj/structure/closet/secure_closet/guncabinet/red,
/obj/item/weapon/gun/shotgun/combat,
@@ -60548,7 +60592,18 @@
},
/area/almayer/engineering/upper_engineering/starboard)
"qJy" = (
-/turf/closed/wall/almayer/white/reinforced,
+/obj/structure/pipes/vents/pump,
+/obj/structure/sign/safety/storage{
+ pixel_x = 33;
+ pixel_y = -1
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "W";
+ pixel_x = -1
+ },
+/turf/open/floor/almayer{
+ icon_state = "sterile_green"
+ },
/area/almayer/medical/hydroponics)
"qJF" = (
/obj/structure/largecrate/supply,
@@ -60648,6 +60703,22 @@
icon_state = "greencorner"
},
/area/almayer/hallways/port_hallway)
+"qLi" = (
+/obj/structure/pipes/standard/manifold/hidden/supply,
+/obj/effect/decal/warning_stripes{
+ icon_state = "SE-out";
+ pixel_x = 1;
+ pixel_y = -1
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "NE-out";
+ pixel_x = 1;
+ pixel_y = 1
+ },
+/turf/open/floor/almayer{
+ icon_state = "dark_sterile"
+ },
+/area/almayer/medical/containment)
"qLj" = (
/obj/structure/pipes/vents/pump{
dir = 1
@@ -60743,6 +60814,19 @@
"qMu" = (
/turf/closed/wall/almayer/outer,
/area/almayer/hull/upper_hull/u_a_p)
+"qMP" = (
+/obj/structure/bed/chair/comfy{
+ dir = 8
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "E";
+ pixel_x = 1
+ },
+/turf/open/floor/almayer{
+ dir = 4;
+ icon_state = "sterile_green_side"
+ },
+/area/almayer/medical/medical_science)
"qMR" = (
/obj/structure/pipes/standard/simple/hidden/supply{
dir = 10
@@ -60831,6 +60915,19 @@
},
/turf/open/floor/plating,
/area/almayer/hull/lower_hull/l_f_p)
+"qPl" = (
+/obj/effect/decal/warning_stripes{
+ icon_state = "E";
+ pixel_x = 1
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "S"
+ },
+/turf/open/floor/almayer{
+ dir = 4;
+ icon_state = "silver"
+ },
+/area/almayer/living/bridgebunks)
"qPD" = (
/turf/open/floor/almayer,
/area/almayer/shipboard/brig/perma)
@@ -60859,28 +60956,6 @@
icon_state = "dark_sterile"
},
/area/almayer/medical/lower_medical_lobby)
-"qPW" = (
-/obj/structure/surface/table/almayer,
-/obj/effect/decal/warning_stripes{
- icon_state = "S"
- },
-/obj/structure/transmitter/rotary{
- name = "Researcher Office Telephone";
- phone_category = "Almayer";
- phone_id = "Research";
- pixel_y = 6
- },
-/obj/item/reagent_container/glass/beaker{
- pixel_x = 6;
- pixel_y = -1
- },
-/obj/item/reagent_container/glass/beaker/large{
- pixel_x = -6
- },
-/turf/open/floor/almayer{
- icon_state = "sterile_green_side"
- },
-/area/almayer/medical/medical_science)
"qQc" = (
/obj/structure/closet/secure_closet/personal/patient{
name = "morgue closet"
@@ -60959,32 +61034,6 @@
icon_state = "red"
},
/area/almayer/shipboard/brig/general_equipment)
-"qRE" = (
-/obj/structure/pipes/standard/simple/hidden/supply{
- dir = 10
- },
-/turf/open/floor/almayer/research/containment/floor2{
- dir = 1
- },
-/area/almayer/medical/containment/cell)
-"qRI" = (
-/obj/structure/pipes/standard/simple/hidden/supply{
- dir = 6
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "SE-out";
- pixel_x = 1;
- pixel_y = -1
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "NE-out";
- pixel_x = 1;
- pixel_y = 1
- },
-/turf/open/floor/almayer{
- icon_state = "dark_sterile"
- },
-/area/almayer/medical/containment)
"qRT" = (
/obj/effect/decal/warning_stripes{
icon_state = "SE-out";
@@ -61028,14 +61077,6 @@
},
/turf/open/floor/plating,
/area/almayer/living/port_emb)
-"qTh" = (
-/obj/structure/pipes/standard/simple/hidden/supply{
- dir = 4
- },
-/turf/open/floor/almayer{
- icon_state = "dark_sterile"
- },
-/area/almayer/medical/containment)
"qTY" = (
/obj/structure/machinery/gibber,
/turf/open/floor/plating/plating_catwalk,
@@ -61173,21 +61214,6 @@
icon_state = "plate"
},
/area/almayer/hull/upper_hull/u_a_s)
-"qXj" = (
-/obj/structure/disposalpipe/segment,
-/obj/structure/machinery/door/airlock/multi_tile/almayer/medidoor/research,
-/obj/structure/machinery/door/poddoor/shutters/almayer/open{
- id = "researchlockdownext_door";
- name = "\improper Research Doorway Shutter"
- },
-/obj/structure/machinery/door/poddoor/almayer/open{
- id = "Containment Breach";
- name = "\improper Secure Airlock"
- },
-/turf/open/floor/almayer{
- icon_state = "test_floor4"
- },
-/area/almayer/medical/medical_science)
"qXo" = (
/obj/structure/machinery/seed_extractor,
/obj/structure/machinery/light{
@@ -61209,15 +61235,6 @@
icon_state = "plating"
},
/area/almayer/engineering/engine_core)
-"qXJ" = (
-/obj/structure/machinery/door/airlock/almayer/command{
- dir = 2;
- name = "\improper Command Ladder"
- },
-/turf/open/floor/almayer{
- icon_state = "test_floor4"
- },
-/area/almayer/medical/medical_science)
"qXM" = (
/obj/effect/decal/warning_stripes{
icon_state = "SW-out"
@@ -61380,14 +61397,6 @@
icon_state = "plate"
},
/area/almayer/hull/upper_hull/u_a_p)
-"ray" = (
-/obj/structure/pipes/standard/simple/hidden/supply{
- dir = 4
- },
-/turf/open/floor/almayer{
- icon_state = "sterile_green_side"
- },
-/area/almayer/medical/medical_science)
"raK" = (
/obj/structure/disposalpipe/segment{
dir = 4
@@ -61406,6 +61415,14 @@
icon_state = "plate"
},
/area/almayer/hull/lower_hull/l_a_p)
+"rbs" = (
+/obj/structure/machinery/door/airlock/almayer/generic{
+ name = "Bathroom"
+ },
+/turf/open/floor/almayer{
+ icon_state = "test_floor4"
+ },
+/area/almayer/living/auxiliary_officer_office)
"rbv" = (
/obj/structure/machinery/light/small{
dir = 1
@@ -61452,6 +61469,14 @@
icon_state = "cargo_arrow"
},
/area/almayer/squads/charlie)
+"rbL" = (
+/obj/structure/machinery/light{
+ dir = 4
+ },
+/turf/open/floor/almayer{
+ icon_state = "plate"
+ },
+/area/almayer/living/auxiliary_officer_office)
"rbX" = (
/obj/structure/sign/safety/manualopenclose{
pixel_x = 15;
@@ -61527,6 +61552,15 @@
},
/turf/open/floor/plating,
/area/almayer/hull/lower_hull/l_f_p)
+"rdt" = (
+/obj/effect/decal/warning_stripes{
+ icon_state = "S"
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "W"
+ },
+/turf/open/floor/almayer/research/containment/corner4,
+/area/almayer/medical/containment/cell)
"rdI" = (
/obj/structure/surface/rack,
/obj/effect/spawner/random/technology_scanner,
@@ -61609,38 +61643,6 @@
icon_state = "test_floor4"
},
/area/almayer/hull/upper_hull/u_m_s)
-"rfF" = (
-/obj/structure/surface/table/almayer,
-/obj/item/cell/high{
- pixel_x = -8;
- pixel_y = 8
- },
-/obj/item/cell/high{
- pixel_x = -8;
- pixel_y = 8
- },
-/obj/item/cell/high{
- pixel_x = -8;
- pixel_y = -2
- },
-/obj/item/cell/high{
- pixel_x = -8;
- pixel_y = -2
- },
-/obj/item/device/multitool{
- pixel_x = 8
- },
-/obj/item/tool/screwdriver{
- pixel_x = -3;
- pixel_y = 4
- },
-/obj/structure/machinery/power/apc/almayer{
- dir = 1
- },
-/turf/open/floor/almayer{
- icon_state = "sterile_green"
- },
-/area/almayer/medical/hydroponics)
"rfI" = (
/obj/structure/sign/safety/airlock{
pixel_y = -32
@@ -61683,61 +61685,35 @@
icon_state = "plate"
},
/area/almayer/living/port_emb)
-"rgK" = (
-/obj/structure/pipes/vents/scrubber{
- dir = 8
- },
-/turf/open/floor/almayer,
-/area/almayer/living/tankerbunks)
"rgW" = (
/turf/open/floor/almayer{
icon_state = "emeraldcorner"
},
/area/almayer/living/briefing)
+"rhO" = (
+/obj/structure/machinery/vending/cola/research{
+ pixel_x = 4
+ },
+/turf/open/floor/almayer{
+ icon_state = "mono"
+ },
+/area/almayer/medical/medical_science)
"rhQ" = (
/obj/structure/bed/chair{
dir = 4
},
/turf/open/floor/plating/plating_catwalk,
/area/almayer/living/port_emb)
-"rio" = (
-/obj/structure/largecrate,
-/obj/item/folded_tent/reqs{
- pixel_x = -3;
- pixel_y = 10
- },
-/turf/open/floor/almayer{
- icon_state = "test_floor4"
- },
-/area/almayer/squads/req)
-"rip" = (
-/obj/structure/sign/safety/rewire{
- layer = 2.4;
- pixel_x = 8;
- pixel_y = 32
- },
-/obj/structure/reagent_dispensers/watertank,
-/obj/item/reagent_container/glass/beaker{
- pixel_x = 6;
- pixel_y = 7
- },
-/obj/item/reagent_container/glass/beaker/large{
- pixel_x = -6;
- pixel_y = 8
+"rhR" = (
+/obj/structure/sign/safety/chem_lab{
+ pixel_x = 5;
+ pixel_y = 29
},
+/obj/structure/machinery/chem_master,
/turf/open/floor/almayer{
icon_state = "mono"
},
-/area/almayer/medical/hydroponics)
-"rix" = (
-/obj/structure/largecrate/supply/ammo/m41a/half,
-/obj/structure/largecrate/supply/ammo/pistol/half{
- pixel_y = 12
- },
-/turf/open/floor/almayer{
- icon_state = "plate"
- },
-/area/almayer/hull/lower_hull/l_f_p)
+/area/almayer/medical/medical_science)
"riA" = (
/obj/effect/decal/warning_stripes{
icon_state = "S"
@@ -61751,6 +61727,27 @@
icon_state = "plating"
},
/area/almayer/engineering/engine_core)
+"riD" = (
+/obj/structure/bed/chair/comfy{
+ dir = 4
+ },
+/obj/structure/disposalpipe/segment,
+/turf/open/floor/almayer{
+ icon_state = "dark_sterile"
+ },
+/area/almayer/medical/medical_science)
+"riE" = (
+/obj/structure/pipes/standard/simple/hidden/supply,
+/obj/effect/decal/warning_stripes{
+ icon_state = "NW-out";
+ pixel_x = -1;
+ pixel_y = 1
+ },
+/turf/open/floor/almayer{
+ dir = 9;
+ icon_state = "sterile_green_side"
+ },
+/area/almayer/medical/medical_science)
"riJ" = (
/turf/open/floor/almayer{
dir = 5;
@@ -61778,6 +61775,31 @@
icon_state = "plating"
},
/area/almayer/engineering/engine_core)
+"rjb" = (
+/obj/structure/disposalpipe/junction{
+ dir = 1
+ },
+/obj/structure/machinery/door_control{
+ dir = 1;
+ id = "researchlockdownext";
+ name = "Window Shutters";
+ pixel_x = -26;
+ pixel_y = 6;
+ req_access_txt = "28"
+ },
+/obj/structure/machinery/door_control{
+ dir = 1;
+ id = "researchlockdownext_door";
+ name = "Door Shutters";
+ pixel_x = -26;
+ pixel_y = 1;
+ req_access_txt = "28"
+ },
+/turf/open/floor/almayer{
+ dir = 8;
+ icon_state = "sterile_green_side"
+ },
+/area/almayer/medical/medical_science)
"rjn" = (
/obj/structure/machinery/light,
/obj/structure/reagent_dispensers/water_cooler/stacks,
@@ -61988,20 +62010,6 @@
icon_state = "cargo"
},
/area/almayer/squads/bravo)
-"roD" = (
-/obj/structure/machinery/door/poddoor/shutters/almayer{
- dir = 4;
- id = "W_Containment Cell 1";
- name = "\improper Containment Cell 5";
- unacidable = 1
- },
-/obj/structure/machinery/door/poddoor/almayer/open{
- dir = 4;
- id = "Containment Breach";
- name = "\improper Secure Airlock"
- },
-/turf/closed/wall/almayer/research/containment/wall/purple,
-/area/almayer/medical/containment/cell)
"roG" = (
/obj/structure/machinery/light/small{
dir = 4
@@ -62082,19 +62090,6 @@
icon_state = "silver"
},
/area/almayer/command/cichallway)
-"rqg" = (
-/obj/effect/decal/warning_stripes{
- icon_state = "N";
- pixel_y = 1
- },
-/obj/structure/machinery/light{
- dir = 1
- },
-/turf/open/floor/almayer{
- dir = 1;
- icon_state = "sterile_green_side"
- },
-/area/almayer/medical/containment)
"rqj" = (
/obj/structure/sign/safety/maint{
pixel_x = 8;
@@ -62111,17 +62106,6 @@
icon_state = "green"
},
/area/almayer/hallways/port_hallway)
-"rqD" = (
-/obj/structure/pipes/standard/simple/hidden/supply,
-/obj/effect/decal/warning_stripes{
- icon_state = "E";
- pixel_x = 1
- },
-/turf/open/floor/almayer{
- dir = 5;
- icon_state = "sterile_green_side"
- },
-/area/almayer/medical/containment)
"rqE" = (
/obj/structure/disposalpipe/segment,
/obj/structure/pipes/standard/simple/hidden/supply,
@@ -62276,17 +62260,6 @@
icon_state = "plate"
},
/area/almayer/squads/req)
-"rtv" = (
-/obj/effect/decal/warning_stripes{
- icon_state = "SE-out";
- pixel_x = 1;
- pixel_y = -1
- },
-/turf/open/floor/almayer{
- dir = 6;
- icon_state = "sterile_green_side"
- },
-/area/almayer/medical/medical_science)
"rtA" = (
/obj/structure/surface/table/reinforced/prison,
/obj/item/device/flashlight/pen{
@@ -62323,6 +62296,17 @@
icon_state = "silver"
},
/area/almayer/command/computerlab)
+"ruc" = (
+/obj/structure/machinery/camera/autoname/almayer/containment{
+ dir = 4
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "W"
+ },
+/turf/open/floor/almayer/research/containment/floor2{
+ dir = 8
+ },
+/area/almayer/medical/containment/cell)
"rui" = (
/obj/structure/disposalpipe/junction{
dir = 8
@@ -62351,9 +62335,6 @@
icon_state = "cargo"
},
/area/almayer/hallways/hangar)
-"ruV" = (
-/turf/closed/wall/almayer/research/containment/wall/divide,
-/area/almayer/medical/containment/cell)
"rvo" = (
/obj/structure/machinery/power/apc/almayer{
dir = 4
@@ -62371,20 +62352,6 @@
icon_state = "emerald"
},
/area/almayer/squads/charlie)
-"rvZ" = (
-/obj/structure/machinery/door/airlock/almayer/security/glass{
- name = "Evidence Room";
- dir = 2;
- req_access = null;
- req_one_access_txt = "1;3"
- },
-/obj/structure/machinery/door/firedoor/border_only/almayer{
- dir = 1
- },
-/turf/open/floor/almayer{
- icon_state = "test_floor4"
- },
-/area/almayer/shipboard/brig/evidence_storage)
"rwv" = (
/obj/structure/pipes/standard/simple/hidden/supply,
/obj/structure/bed/chair/comfy/bravo,
@@ -62468,6 +62435,13 @@
icon_state = "redfull"
},
/area/almayer/command/cic)
+"rzf" = (
+/obj/effect/landmark/late_join/working_joe,
+/obj/effect/landmark/start/working_joe,
+/turf/open/floor/almayer/no_build{
+ icon_state = "ai_floors"
+ },
+/area/almayer/command/airoom)
"rzj" = (
/obj/structure/pipes/standard/simple/hidden/supply,
/obj/structure/machinery/door/firedoor/border_only/almayer{
@@ -62491,11 +62465,35 @@
},
/turf/open/floor/almayer,
/area/almayer/shipboard/brig/cic_hallway)
+"rzN" = (
+/turf/open/floor/almayer{
+ icon_state = "dark_sterile"
+ },
+/area/almayer/medical/containment)
"rAb" = (
/turf/open/floor/almayer{
icon_state = "bluecorner"
},
/area/almayer/living/briefing)
+"rAc" = (
+/obj/structure/surface/rack,
+/obj/item/reagent_container/food/drinks/bottle/sake{
+ pixel_x = 5;
+ pixel_y = 5
+ },
+/obj/item/reagent_container/food/drinks/bottle/sake{
+ pixel_x = 5;
+ pixel_y = 5
+ },
+/obj/item/reagent_container/food/drinks/bottle/sake,
+/obj/item/reagent_container/food/drinks/bottle/sake{
+ pixel_x = -4
+ },
+/obj/structure/machinery/light,
+/turf/open/floor/almayer{
+ icon_state = "plate"
+ },
+/area/almayer/command/corporateliason)
"rAv" = (
/obj/structure/toilet{
dir = 8
@@ -62685,6 +62683,12 @@
},
/turf/open/floor/plating/plating_catwalk,
/area/almayer/hull/lower_hull/l_a_p)
+"rDr" = (
+/obj/structure/pipes/vents/pump,
+/turf/open/floor/almayer{
+ icon_state = "sterile_green"
+ },
+/area/almayer/medical/medical_science)
"rDt" = (
/obj/structure/disposalpipe/junction{
dir = 1
@@ -62707,6 +62711,12 @@
icon_state = "plate"
},
/area/almayer/living/offices)
+"rDV" = (
+/obj/structure/bed/chair/comfy{
+ dir = 8
+ },
+/turf/open/floor/plating/plating_catwalk,
+/area/almayer/medical/medical_science)
"rEf" = (
/obj/structure/disposalpipe/segment{
dir = 2;
@@ -62773,31 +62783,6 @@
icon_state = "silverfull"
},
/area/almayer/command/computerlab)
-"rEN" = (
-/obj/structure/sign/safety/intercom{
- layer = 2.9;
- pixel_x = -6;
- pixel_y = 29
- },
-/obj/structure/machinery/botany/extractor{
- density = 0;
- pixel_x = 15;
- pixel_y = 16
- },
-/obj/item/device/flashlight/pen{
- pixel_x = 14;
- pixel_y = 15
- },
-/obj/structure/machinery/vending/hydroseeds{
- density = 0;
- pixel_x = -7;
- pixel_y = 16;
- req_access_txt = "28"
- },
-/turf/open/floor/almayer{
- icon_state = "mono"
- },
-/area/almayer/medical/hydroponics)
"rEY" = (
/obj/structure/surface/table/almayer,
/obj/item/toy/deck,
@@ -62806,6 +62791,13 @@
icon_state = "silver"
},
/area/almayer/shipboard/brig/cic_hallway)
+"rFb" = (
+/obj/structure/machinery/light{
+ dir = 1
+ },
+/obj/effect/landmark/start/police,
+/turf/open/floor/plating/plating_catwalk,
+/area/almayer/shipboard/brig/cryo)
"rFs" = (
/obj/structure/surface/table/reinforced/almayer_B,
/obj/item/folder/black,
@@ -62942,6 +62934,22 @@
/obj/structure/pipes/vents/pump/on,
/turf/open/floor/plating/plating_catwalk,
/area/almayer/squads/req)
+"rIa" = (
+/obj/structure/sink{
+ dir = 4;
+ pixel_x = 11
+ },
+/obj/structure/mirror{
+ pixel_x = 29
+ },
+/obj/structure/machinery/light{
+ unacidable = 1;
+ unslashable = 1
+ },
+/turf/open/floor/almayer{
+ icon_state = "plate"
+ },
+/area/almayer/living/auxiliary_officer_office)
"rIj" = (
/obj/structure/machinery/door/poddoor/almayer/open{
dir = 4;
@@ -63254,6 +63262,9 @@
/obj/structure/disposalpipe/junction,
/turf/open/floor/almayer,
/area/almayer/shipboard/brig/cic_hallway)
+"rQy" = (
+/turf/closed/wall/almayer/white/reinforced,
+/area/almayer/medical/hydroponics)
"rQA" = (
/turf/open/floor/almayer{
dir = 8;
@@ -63345,20 +63356,6 @@
icon_state = "orangefull"
},
/area/almayer/squads/alpha_bravo_shared)
-"rSm" = (
-/obj/effect/decal/warning_stripes{
- icon_state = "W"
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "SE-out";
- pixel_x = 1;
- pixel_y = -1
- },
-/turf/open/floor/almayer{
- dir = 8;
- icon_state = "sterile_green_corner"
- },
-/area/almayer/medical/containment)
"rSG" = (
/obj/structure/toilet{
pixel_y = 16
@@ -63391,48 +63388,6 @@
icon_state = "plate"
},
/area/almayer/hull/lower_hull/l_f_p)
-"rSM" = (
-/obj/structure/machinery/door_display/research_cell{
- dir = 8;
- has_wall_divider = 1;
- id = "Containment Cell 3";
- layer = 3.2;
- name = "Cell 3 Control";
- pixel_x = 16;
- pixel_y = -16
- },
-/obj/structure/machinery/door_display/research_cell{
- dir = 8;
- has_wall_divider = 1;
- id = "Containment Cell 2";
- layer = 3.2;
- name = "Cell 2 Control";
- pixel_x = 16;
- pixel_y = 16
- },
-/obj/structure/pipes/standard/simple/hidden/supply,
-/obj/effect/decal/warning_stripes{
- icon_state = "E";
- pixel_x = 1
- },
-/obj/structure/machinery/door_control{
- id = "W_Containment Cell 2";
- name = "Containment Lockdown";
- pixel_x = 13;
- pixel_y = 7;
- req_one_access_txt = "19;28"
- },
-/obj/structure/machinery/door_control{
- id = "W_Containment Cell 3";
- name = "Containment Lockdown";
- pixel_x = 13;
- pixel_y = -6;
- req_one_access_txt = "19;28"
- },
-/turf/open/floor/almayer{
- icon_state = "sterile_green"
- },
-/area/almayer/medical/containment)
"rSW" = (
/obj/structure/machinery/light{
dir = 8
@@ -63493,19 +63448,6 @@
icon_state = "emerald"
},
/area/almayer/squads/charlie)
-"rUj" = (
-/obj/structure/machinery/camera/autoname/almayer/containment{
- dir = 1;
- name = "ship-grade camera"
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "S"
- },
-/turf/open/floor/almayer{
- dir = 4;
- icon_state = "sterile_green_corner"
- },
-/area/almayer/medical/containment)
"rUk" = (
/obj/structure/bed/chair/wood/normal{
dir = 1
@@ -63672,15 +63614,27 @@
icon_state = "plate"
},
/area/almayer/living/offices/flight)
-"rZe" = (
-/obj/structure/pipes/standard/manifold/hidden/supply{
- dir = 1
+"rZA" = (
+/obj/structure/surface/table/almayer,
+/obj/structure/machinery/door_control{
+ id = "Interrogation Shutters";
+ name = "\improper Shutters";
+ pixel_x = -6;
+ pixel_y = -6;
+ req_access_txt = "3"
+ },
+/obj/item/device/taperecorder{
+ pixel_x = 3;
+ pixel_y = 3
+ },
+/obj/structure/machinery/light/small{
+ dir = 8
},
/turf/open/floor/almayer{
- dir = 6;
- icon_state = "sterile_green_side"
+ dir = 8;
+ icon_state = "red"
},
-/area/almayer/medical/medical_science)
+/area/almayer/shipboard/brig/processing)
"rZB" = (
/obj/structure/pipes/standard/simple/visible{
dir = 9
@@ -63871,6 +63825,13 @@
icon_state = "red"
},
/area/almayer/shipboard/brig/chief_mp_office)
+"sdu" = (
+/obj/structure/disposalpipe/segment,
+/turf/open/floor/almayer{
+ dir = 9;
+ icon_state = "sterile_green_side"
+ },
+/area/almayer/medical/medical_science)
"sdw" = (
/obj/structure/machinery/door/airlock/almayer/maint,
/turf/open/floor/almayer{
@@ -63885,6 +63846,12 @@
icon_state = "blue"
},
/area/almayer/squads/delta)
+"sdG" = (
+/turf/open/floor/almayer{
+ dir = 8;
+ icon_state = "red"
+ },
+/area/almayer/shipboard/brig/processing)
"sdO" = (
/obj/structure/ladder{
height = 1;
@@ -64116,6 +64083,15 @@
icon_state = "test_floor4"
},
/area/almayer/command/lifeboat)
+"sjt" = (
+/obj/structure/window/framed/almayer,
+/obj/structure/machinery/door/poddoor/shutters/almayer/open{
+ dir = 8;
+ id = "Interrogation Shutters";
+ name = "\improper Privacy Shutters"
+ },
+/turf/open/floor/plating,
+/area/almayer/shipboard/brig/processing)
"skl" = (
/obj/structure/bed/chair/office/dark{
dir = 8
@@ -64145,6 +64121,31 @@
icon_state = "sterile_green"
},
/area/almayer/medical/lower_medical_lobby)
+"sll" = (
+/obj/structure/disposalpipe/segment,
+/obj/structure/pipes/standard/manifold/hidden/supply{
+ dir = 8
+ },
+/obj/item/clipboard{
+ base_pixel_x = 20;
+ pixel_x = 5
+ },
+/obj/item/paper{
+ pixel_x = 5
+ },
+/obj/item/tool/pen{
+ pixel_x = 5
+ },
+/obj/structure/surface/table/reinforced/black,
+/obj/structure/transmitter/rotary{
+ name = "CIC Reception Telephone";
+ phone_category = "Command";
+ phone_id = "CIC Reception";
+ pixel_x = -7;
+ pixel_y = 4
+ },
+/turf/open/floor/almayer,
+/area/almayer/command/cic)
"slP" = (
/obj/structure/stairs/perspective{
icon_state = "p_stair_full"
@@ -64159,11 +64160,6 @@
},
/turf/open/floor/almayer,
/area/almayer/hull/lower_hull/l_f_s)
-"slQ" = (
-/turf/open/floor/almayer{
- icon_state = "mono"
- },
-/area/almayer/medical/hydroponics)
"smi" = (
/turf/open/floor/almayer{
icon_state = "green"
@@ -64349,21 +64345,6 @@
icon_state = "plate"
},
/area/almayer/command/cic)
-"soY" = (
-/obj/structure/filingcabinet/seeds{
- density = 0;
- pixel_x = 5;
- pixel_y = 16
- },
-/obj/structure/filingcabinet/disk{
- density = 0;
- pixel_x = -11;
- pixel_y = 16
- },
-/turf/open/floor/almayer{
- icon_state = "mono"
- },
-/area/almayer/medical/hydroponics)
"soZ" = (
/obj/structure/largecrate/random/case/double,
/turf/open/floor/almayer{
@@ -64469,18 +64450,6 @@
icon_state = "test_floor4"
},
/area/almayer/hallways/repair_bay)
-"sss" = (
-/obj/structure/closet/l3closet/general,
-/obj/structure/window/reinforced{
- dir = 8;
- health = 80
- },
-/obj/structure/window/reinforced{
- dir = 4;
- health = 80
- },
-/turf/open/floor/plating/plating_catwalk,
-/area/almayer/medical/medical_science)
"ssE" = (
/obj/effect/step_trigger/clone_cleaner,
/obj/structure/machinery/door_control{
@@ -64690,6 +64659,28 @@
icon_state = "plate"
},
/area/almayer/living/bridgebunks)
+"sxP" = (
+/obj/structure/machinery/door/airlock/almayer/research/glass/reinforced{
+ name = "\improper Research Reception Laboratory"
+ },
+/obj/structure/machinery/door/poddoor/almayer/open{
+ dir = 8;
+ id = "Containment Breach";
+ name = "\improper Secure Airlock"
+ },
+/obj/structure/disposalpipe/segment{
+ dir = 4
+ },
+/turf/open/floor/almayer{
+ icon_state = "test_floor4"
+ },
+/area/almayer/medical/medical_science)
+"syD" = (
+/obj/item/clipboard,
+/obj/structure/surface/table/reinforced/black,
+/obj/item/tool/pen,
+/turf/open/floor/almayer,
+/area/almayer/command/cic)
"syH" = (
/obj/structure/machinery/firealarm{
pixel_y = -28
@@ -64716,6 +64707,15 @@
icon_state = "test_floor4"
},
/area/almayer/engineering/engine_core)
+"szx" = (
+/obj/structure/bed/chair{
+ dir = 4
+ },
+/turf/open/floor/almayer{
+ dir = 4;
+ icon_state = "redcorner"
+ },
+/area/almayer/shipboard/brig/evidence_storage)
"szE" = (
/obj/effect/decal/warning_stripes{
icon_state = "NE-out";
@@ -64904,36 +64904,6 @@
icon_state = "redcorner"
},
/area/almayer/shipboard/brig/chief_mp_office)
-"sEb" = (
-/obj/structure/machinery/door/airlock/almayer/research/glass/reinforced{
- id = "Containment Cell 2";
- locked = 1;
- name = "\improper Containment Cell 2"
- },
-/obj/structure/machinery/door/poddoor/shutters/almayer/containment{
- dir = 4;
- id = "Containment Cell 2";
- name = "\improper Containment Cell 2"
- },
-/obj/structure/pipes/standard/simple/hidden/supply{
- dir = 4
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "S"
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "N";
- pixel_y = 1
- },
-/obj/structure/machinery/door/poddoor/almayer/open{
- dir = 4;
- id = "Containment Breach";
- name = "\improper Secure Airlock"
- },
-/turf/open/floor/almayer{
- icon_state = "test_floor4"
- },
-/area/almayer/medical/containment/cell)
"sEd" = (
/obj/structure/machinery/cryopod/right,
/obj/structure/machinery/light{
@@ -65195,15 +65165,6 @@
icon_state = "silver"
},
/area/almayer/engineering/port_atmos)
-"sIO" = (
-/obj/effect/decal/warning_stripes{
- icon_state = "N";
- pixel_y = 1
- },
-/turf/open/floor/almayer{
- icon_state = "sterile_green"
- },
-/area/almayer/medical/hydroponics)
"sIT" = (
/turf/closed/wall/almayer/reinforced,
/area/almayer/hull/lower_hull/l_f_s)
@@ -65275,13 +65236,6 @@
icon_state = "ai_floors"
},
/area/almayer/command/airoom)
-"sLk" = (
-/obj/structure/disposalpipe/segment,
-/turf/open/floor/almayer{
- dir = 9;
- icon_state = "sterile_green_side"
- },
-/area/almayer/medical/medical_science)
"sLo" = (
/obj/structure/stairs/perspective{
dir = 1;
@@ -65304,12 +65258,6 @@
},
/turf/open/floor/plating/plating_catwalk,
/area/almayer/hallways/starboard_hallway)
-"sLH" = (
-/obj/structure/bed/chair/bolted{
- dir = 8
- },
-/turf/open/floor/plating/plating_catwalk,
-/area/almayer/shipboard/brig/processing)
"sMs" = (
/obj/structure/machinery/door/airlock/almayer/maint/reinforced{
dir = 1
@@ -65336,6 +65284,23 @@
icon_state = "orange"
},
/area/almayer/squads/bravo)
+"sNh" = (
+/obj/structure/machinery/light{
+ dir = 1
+ },
+/turf/open/floor/almayer{
+ dir = 1;
+ icon_state = "redcorner"
+ },
+/area/almayer/shipboard/brig/main_office)
+"sNz" = (
+/obj/effect/decal/warning_stripes{
+ icon_state = "S"
+ },
+/turf/open/floor/almayer/research/containment/floor2{
+ dir = 1
+ },
+/area/almayer/medical/containment/cell)
"sNO" = (
/obj/structure/desertdam/decals/road_edge{
icon_state = "road_edge_decal3"
@@ -65434,6 +65399,9 @@
icon_state = "plate"
},
/area/almayer/living/offices)
+"sPj" = (
+/turf/open/floor/plating/plating_catwalk,
+/area/almayer/shipboard/brig/processing)
"sPA" = (
/obj/structure/sign/safety/ladder{
pixel_x = 8;
@@ -65453,22 +65421,6 @@
icon_state = "sterile_green_side"
},
/area/almayer/medical/lower_medical_medbay)
-"sQC" = (
-/obj/structure/machinery/door/poddoor/shutters/almayer{
- dir = 4;
- id = "W_Containment Cell 2";
- name = "\improper Containment Cell 5";
- unacidable = 1
- },
-/obj/structure/machinery/door/poddoor/almayer/open{
- dir = 4;
- id = "Containment Breach";
- name = "\improper Secure Airlock"
- },
-/turf/closed/wall/almayer/research/containment/wall/purple{
- dir = 4
- },
-/area/almayer/medical/containment/cell)
"sQF" = (
/turf/open/floor/almayer{
icon_state = "red"
@@ -65602,21 +65554,19 @@
icon_state = "silver"
},
/area/almayer/shipboard/brig/cic_hallway)
-"sTs" = (
-/obj/structure/bed/chair{
- dir = 4
- },
-/turf/open/floor/almayer{
- dir = 4;
- icon_state = "redcorner"
- },
-/area/almayer/shipboard/brig/evidence_storage)
"sTw" = (
/obj/structure/platform_decoration{
dir = 8
},
/turf/open/floor/almayer,
/area/almayer/living/briefing)
+"sTV" = (
+/obj/structure/machinery/power/apc/almayer/hardened{
+ cell_type = /obj/item/cell/hyper;
+ dir = 1
+ },
+/turf/open/floor/plating,
+/area/almayer/command/airoom)
"sUg" = (
/obj/structure/surface/table/almayer,
/obj/structure/flora/pottedplant{
@@ -65702,10 +65652,28 @@
},
/turf/open/floor/plating/plating_catwalk,
/area/almayer/hull/lower_hull/l_m_p)
-"sWN" = (
-/obj/structure/machinery/iv_drip,
+"sWW" = (
+/obj/structure/machinery/flasher{
+ alpha = 1;
+ id = "Containment Cell 3";
+ layer = 2.1;
+ name = "Mounted Flash";
+ pixel_y = 30
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "N";
+ pixel_y = 1
+ },
+/turf/open/floor/almayer/research/containment/floor2{
+ dir = 1
+ },
+/area/almayer/medical/containment/cell)
+"sXd" = (
+/obj/structure/pipes/standard/simple/hidden/supply{
+ dir = 4
+ },
/turf/open/floor/almayer{
- icon_state = "sterile_green"
+ icon_state = "dark_sterile"
},
/area/almayer/medical/containment)
"sXs" = (
@@ -65750,14 +65718,6 @@
icon_state = "plate"
},
/area/almayer/hallways/hangar)
-"sXE" = (
-/obj/structure/machinery/door/airlock/almayer/generic{
- name = "\improper Tanker's Room"
- },
-/turf/open/floor/almayer{
- icon_state = "test_floor4"
- },
-/area/almayer/living/tankerbunks)
"sXK" = (
/obj/effect/decal/warning_stripes{
icon_state = "S"
@@ -65877,6 +65837,20 @@
icon_state = "plate"
},
/area/almayer/squads/charlie)
+"sZy" = (
+/obj/effect/decal/warning_stripes{
+ icon_state = "E";
+ pixel_x = 1
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "N";
+ pixel_y = 1
+ },
+/turf/open/floor/almayer{
+ dir = 1;
+ icon_state = "sterile_green_side"
+ },
+/area/almayer/medical/medical_science)
"sZH" = (
/obj/structure/surface/table/almayer,
/obj/item/ashtray/bronze{
@@ -65922,6 +65896,17 @@
icon_state = "plate"
},
/area/almayer/living/briefing)
+"tae" = (
+/obj/structure/bed{
+ can_buckle = 0
+ },
+/obj/item/bedsheet/brown{
+ layer = 3.1
+ },
+/turf/open/floor/almayer{
+ icon_state = "plate"
+ },
+/area/almayer/living/auxiliary_officer_office)
"tak" = (
/turf/open/floor/almayer{
dir = 8;
@@ -65946,6 +65931,36 @@
icon_state = "red"
},
/area/almayer/hallways/starboard_hallway)
+"taH" = (
+/obj/structure/machinery/door/airlock/almayer/research/glass/reinforced{
+ id = "Containment Cell 2";
+ locked = 1;
+ name = "\improper Containment Cell 2"
+ },
+/obj/structure/machinery/door/poddoor/shutters/almayer/containment{
+ dir = 4;
+ id = "Containment Cell 2";
+ name = "\improper Containment Cell 2"
+ },
+/obj/structure/pipes/standard/simple/hidden/supply{
+ dir = 4
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "S"
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "N";
+ pixel_y = 1
+ },
+/obj/structure/machinery/door/poddoor/almayer/open{
+ dir = 4;
+ id = "Containment Breach";
+ name = "\improper Secure Airlock"
+ },
+/turf/open/floor/almayer{
+ icon_state = "test_floor4"
+ },
+/area/almayer/medical/containment/cell)
"tbD" = (
/obj/structure/ladder{
height = 2;
@@ -66122,15 +66137,15 @@
icon_state = "green"
},
/area/almayer/hallways/port_hallway)
-"tfB" = (
+"tfH" = (
+/obj/structure/machinery/light/containment,
/obj/effect/decal/warning_stripes{
- icon_state = "W";
- pixel_x = -1
+ icon_state = "S"
},
-/turf/open/floor/almayer{
- icon_state = "sterile_green"
+/turf/open/floor/almayer/research/containment/floor2{
+ dir = 1
},
-/area/almayer/medical/containment)
+/area/almayer/medical/containment/cell)
"tfO" = (
/obj/structure/machinery/power/apc/almayer{
dir = 4
@@ -66162,20 +66177,6 @@
icon_state = "sterile_green_side"
},
/area/almayer/medical/lower_medical_medbay)
-"thk" = (
-/obj/structure/machinery/door/poddoor/shutters/almayer{
- dir = 4;
- id = "W_Containment Cell 5";
- name = "\improper Containment Cell 5";
- unacidable = 1
- },
-/obj/structure/machinery/door/poddoor/almayer/open{
- dir = 4;
- id = "Containment Breach";
- name = "\improper Secure Airlock"
- },
-/turf/closed/wall/almayer/research/containment/wall/purple,
-/area/almayer/medical/containment/cell)
"thv" = (
/obj/structure/machinery/camera/autoname/almayer{
dir = 8;
@@ -66201,6 +66202,11 @@
"thL" = (
/turf/open/floor/wood/ship,
/area/almayer/shipboard/brig/cells)
+"thN" = (
+/turf/open/floor/almayer{
+ icon_state = "dark_sterile"
+ },
+/area/almayer/medical/hydroponics)
"thP" = (
/turf/open/floor/almayer{
dir = 10;
@@ -66313,6 +66319,11 @@
icon_state = "green"
},
/area/almayer/squads/req)
+"tjn" = (
+/turf/open/floor/almayer{
+ icon_state = "sterile_green_side"
+ },
+/area/almayer/medical/medical_science)
"tjU" = (
/obj/structure/bed/chair/wood/normal,
/obj/item/bedsheet/brown,
@@ -66325,20 +66336,6 @@
},
/turf/open/floor/almayer,
/area/almayer/shipboard/weapon_room)
-"tkL" = (
-/obj/structure/pipes/standard/simple/hidden/supply,
-/obj/structure/machinery/door/poddoor/shutters/almayer/open{
- id = "researchlockdownext_door";
- name = "\improper Research Doorway Shutter"
- },
-/obj/structure/machinery/door/poddoor/almayer/open{
- id = "Containment Breach";
- name = "\improper Secure Airlock"
- },
-/turf/open/floor/almayer{
- icon_state = "test_floor4"
- },
-/area/almayer/medical/medical_science)
"tkN" = (
/obj/structure/machinery/cm_vending/sorted/cargo_ammo/squad{
req_access = null;
@@ -66523,6 +66520,16 @@
icon_state = "plate"
},
/area/almayer/hull/upper_hull/u_m_p)
+"tpa" = (
+/obj/structure/machinery/portable_atmospherics/hydroponics,
+/obj/structure/window/reinforced{
+ dir = 8;
+ health = 80
+ },
+/turf/open/floor/almayer{
+ icon_state = "test_floor5"
+ },
+/area/almayer/medical/hydroponics)
"tpd" = (
/obj/structure/pipes/standard/manifold/hidden/supply{
dir = 4
@@ -66636,6 +66643,16 @@
icon_state = "red"
},
/area/almayer/command/lifeboat)
+"tqN" = (
+/obj/structure/surface/table/almayer,
+/obj/structure/machinery/prop/almayer/computer/PC{
+ dir = 8
+ },
+/turf/open/floor/almayer{
+ dir = 5;
+ icon_state = "silver"
+ },
+/area/almayer/living/auxiliary_officer_office)
"tqV" = (
/obj/structure/extinguisher_cabinet{
pixel_y = 26
@@ -66665,6 +66682,47 @@
},
/turf/open/floor/plating/plating_catwalk,
/area/almayer/hull/lower_hull/l_m_p)
+"trF" = (
+/obj/effect/decal/warning_stripes{
+ icon_state = "S"
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "W";
+ pixel_x = -1
+ },
+/obj/structure/surface/table/almayer,
+/obj/item/storage/firstaid/o2{
+ pixel_x = -6;
+ pixel_y = 6
+ },
+/obj/item/storage/firstaid/fire{
+ pixel_x = 8;
+ pixel_y = 6
+ },
+/obj/item/storage/firstaid/adv{
+ pixel_x = -6;
+ pixel_y = -2
+ },
+/obj/item/storage/firstaid/toxin{
+ pixel_x = 8;
+ pixel_y = -2
+ },
+/turf/open/floor/almayer{
+ dir = 8;
+ icon_state = "sterile_green_corner"
+ },
+/area/almayer/medical/medical_science)
+"trM" = (
+/obj/structure/machinery/cryopod/right{
+ dir = 2
+ },
+/obj/structure/machinery/light{
+ dir = 8
+ },
+/turf/open/floor/almayer{
+ icon_state = "cargo"
+ },
+/area/almayer/living/bridgebunks)
"trW" = (
/obj/item/stack/tile/carpet{
amount = 20
@@ -66776,19 +66834,6 @@
},
/turf/open/floor/almayer,
/area/almayer/lifeboat_pumps/south2)
-"ttU" = (
-/obj/effect/decal/warning_stripes{
- icon_state = "N";
- pixel_y = 1
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "E";
- pixel_x = 1
- },
-/turf/open/floor/almayer{
- icon_state = "sterile_green_corner"
- },
-/area/almayer/medical/hydroponics)
"tuf" = (
/obj/structure/platform_decoration{
dir = 4
@@ -66921,6 +66966,11 @@
icon_state = "sterile_green_side"
},
/area/almayer/medical/lower_medical_medbay)
+"twt" = (
+/turf/open/floor/almayer{
+ icon_state = "plate"
+ },
+/area/almayer/living/auxiliary_officer_office)
"twB" = (
/obj/structure/prop/almayer/name_stencil{
icon_state = "almayer2"
@@ -66962,41 +67012,6 @@
},
/turf/open/floor/plating/plating_catwalk,
/area/almayer/hallways/starboard_hallway)
-"txf" = (
-/obj/structure/surface/table/almayer,
-/obj/structure/machinery/camera/autoname/almayer{
- dir = 4;
- name = "ship-grade camera"
- },
-/obj/item/folder/white{
- pixel_x = 6
- },
-/obj/item/storage/fancy/vials/empty{
- pixel_y = 10;
- start_vials = 2
- },
-/obj/item/tool/pen{
- pixel_y = 8
- },
-/turf/open/floor/almayer{
- icon_state = "mono"
- },
-/area/almayer/medical/medical_science)
-"txh" = (
-/obj/structure/surface/table/almayer,
-/obj/item/clothing/accessory/storage/black_vest/acid_harness,
-/obj/item/clothing/accessory/storage/black_vest/acid_harness,
-/obj/structure/machinery/alarm/almayer{
- dir = 1
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "E";
- pixel_x = 1
- },
-/turf/open/floor/almayer{
- icon_state = "sterile_green"
- },
-/area/almayer/medical/hydroponics)
"txi" = (
/obj/structure/machinery/light{
dir = 8
@@ -67008,19 +67023,6 @@
},
/turf/open/floor/plating/plating_catwalk,
/area/almayer/hallways/port_hallway)
-"txo" = (
-/obj/effect/decal/warning_stripes{
- icon_state = "E";
- pixel_x = 1
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "N";
- pixel_y = 1
- },
-/turf/open/floor/almayer/research/containment/corner_var1{
- dir = 4
- },
-/area/almayer/medical/containment/cell)
"txO" = (
/obj/structure/machinery/landinglight/ds1{
dir = 4
@@ -67053,10 +67055,10 @@
},
/area/almayer/hull/upper_hull/u_a_p)
"tyD" = (
-/turf/open/floor/almayer{
- icon_state = "dark_sterile"
+/turf/open/floor/almayer/research/containment/corner_var1{
+ dir = 4
},
-/area/almayer/medical/hydroponics)
+/area/almayer/medical/containment/cell)
"tyK" = (
/obj/effect/spawner/random/toolbox,
/turf/open/floor/almayer{
@@ -67105,6 +67107,23 @@
icon_state = "plate"
},
/area/almayer/engineering/engineering_workshop)
+"tzL" = (
+/obj/effect/decal/warning_stripes{
+ icon_state = "W";
+ pixel_x = -1
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "E";
+ pixel_x = 1
+ },
+/obj/structure/sign/safety/waterhazard{
+ pixel_x = 8;
+ pixel_y = -32
+ },
+/turf/open/floor/almayer{
+ icon_state = "mono"
+ },
+/area/almayer/medical/hydroponics)
"tzP" = (
/obj/structure/barricade/handrail/medical,
/turf/open/floor/almayer{
@@ -67177,19 +67196,6 @@
/obj/structure/pipes/standard/simple/hidden/supply,
/turf/open/floor/almayer,
/area/almayer/hallways/starboard_hallway)
-"tBI" = (
-/obj/structure/bed/chair/comfy{
- dir = 8
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "E";
- pixel_x = 1
- },
-/turf/open/floor/almayer{
- dir = 4;
- icon_state = "sterile_green_side"
- },
-/area/almayer/medical/medical_science)
"tBL" = (
/obj/structure/pipes/standard/simple/hidden/supply,
/obj/structure/disposalpipe/segment,
@@ -67264,18 +67270,6 @@
icon_state = "plating"
},
/area/almayer/medical/upper_medical)
-"tEu" = (
-/obj/effect/decal/warning_stripes{
- icon_state = "S"
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "E";
- pixel_x = 1
- },
-/turf/open/floor/almayer/research/containment/corner{
- dir = 1
- },
-/area/almayer/medical/containment/cell)
"tEB" = (
/obj/structure/pipes/standard/simple/hidden/supply,
/turf/open/floor/almayer{
@@ -67557,14 +67551,6 @@
icon_state = "test_floor4"
},
/area/almayer/squads/req)
-"tJh" = (
-/obj/structure/bed/chair/comfy{
- buckling_y = 2;
- dir = 8;
- pixel_y = 2
- },
-/turf/open/floor/plating/plating_catwalk,
-/area/almayer/medical/medical_science)
"tJi" = (
/obj/structure/surface/table/reinforced/almayer_B,
/obj/item/paper_bin/uscm,
@@ -67636,17 +67622,6 @@
icon_state = "test_floor4"
},
/area/almayer/command/lifeboat)
-"tKr" = (
-/obj/structure/machinery/light{
- dir = 8
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "S"
- },
-/turf/open/floor/almayer{
- icon_state = "silver"
- },
-/area/almayer/living/bridgebunks)
"tLc" = (
/obj/structure/surface/rack,
/obj/item/storage/bag/plants{
@@ -67700,6 +67675,12 @@
/obj/structure/bed/chair/comfy/beige,
/turf/open/floor/carpet,
/area/almayer/living/commandbunks)
+"tMp" = (
+/obj/structure/toilet{
+ dir = 4
+ },
+/turf/open/floor/plating/plating_catwalk,
+/area/almayer/living/auxiliary_officer_office)
"tMW" = (
/obj/effect/decal/warning_stripes{
icon_state = "NW-out";
@@ -67761,6 +67742,19 @@
},
/turf/open/floor/plating/plating_catwalk,
/area/almayer/hallways/aft_hallway)
+"tOr" = (
+/obj/effect/decal/warning_stripes{
+ icon_state = "N";
+ pixel_y = 1
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "E";
+ pixel_x = 1
+ },
+/turf/open/floor/almayer{
+ icon_state = "sterile_green_corner"
+ },
+/area/almayer/medical/hydroponics)
"tOC" = (
/obj/structure/machinery/light/small{
dir = 8
@@ -67769,18 +67763,6 @@
icon_state = "dark_sterile"
},
/area/almayer/engineering/laundry)
-"tOG" = (
-/obj/structure/machinery/door/firedoor/border_only/almayer{
- dir = 2
- },
-/obj/structure/machinery/door/poddoor/almayer/open{
- id = "Containment Breach";
- name = "\improper Secure Airlock"
- },
-/turf/open/floor/almayer{
- icon_state = "test_floor4"
- },
-/area/almayer/medical/upper_medical)
"tOW" = (
/turf/open/floor/almayer{
dir = 10;
@@ -67931,23 +67913,6 @@
icon_state = "red"
},
/area/almayer/lifeboat_pumps/south1)
-"tTC" = (
-/obj/effect/decal/warning_stripes{
- icon_state = "W";
- pixel_x = -1
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "E";
- pixel_x = 1
- },
-/obj/structure/sign/safety/waterhazard{
- pixel_x = 8;
- pixel_y = -32
- },
-/turf/open/floor/almayer{
- icon_state = "mono"
- },
-/area/almayer/medical/hydroponics)
"tTD" = (
/obj/structure/surface/table/reinforced/almayer_B,
/obj/item/storage/box/uscm_mre,
@@ -67968,12 +67933,6 @@
},
/turf/open/floor/plating/plating_catwalk,
/area/almayer/squads/req)
-"tUo" = (
-/obj/item/clipboard,
-/obj/item/tool/pen/blue,
-/obj/structure/surface/table/reinforced/black,
-/turf/open/floor/almayer,
-/area/almayer/command/cic)
"tUv" = (
/obj/structure/machinery/iv_drip,
/turf/open/floor/almayer{
@@ -68176,6 +68135,12 @@
icon_state = "dark_sterile"
},
/area/almayer/medical/lower_medical_lobby)
+"tYu" = (
+/obj/structure/bed/chair/bolted{
+ dir = 8
+ },
+/turf/open/floor/plating/plating_catwalk,
+/area/almayer/shipboard/brig/processing)
"tYw" = (
/obj/effect/decal/medical_decals{
icon_state = "triagedecalbottomleft";
@@ -68254,15 +68219,6 @@
icon_state = "cargo"
},
/area/almayer/engineering/upper_engineering/port)
-"tZQ" = (
-/obj/structure/pipes/standard/manifold/hidden/supply{
- dir = 4
- },
-/turf/open/floor/almayer{
- dir = 10;
- icon_state = "sterile_green_side"
- },
-/area/almayer/medical/hydroponics)
"tZZ" = (
/obj/structure/machinery/cryopod,
/obj/effect/decal/warning_stripes{
@@ -68297,12 +68253,32 @@
icon_state = "sterile_green_side"
},
/area/almayer/medical/lower_medical_medbay)
-"uak" = (
+"ual" = (
+/obj/structure/sink{
+ pixel_y = 24
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "N";
+ pixel_y = 1
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "E";
+ pixel_x = 1
+ },
+/turf/open/floor/almayer/research/containment/corner_var1{
+ dir = 4
+ },
+/area/almayer/medical/containment/cell)
+"uaI" = (
+/obj/structure/surface/table/almayer,
+/obj/structure/machinery/processor{
+ pixel_x = -2;
+ pixel_y = 6
+ },
/turf/open/floor/almayer{
- dir = 8;
- icon_state = "red"
+ icon_state = "mono"
},
-/area/almayer/shipboard/brig/evidence_storage)
+/area/almayer/medical/medical_science)
"uaU" = (
/obj/structure/surface/table/almayer,
/obj/structure/flora/pottedplant{
@@ -68333,13 +68309,6 @@
/obj/item/frame/table,
/turf/open/floor/plating/plating_catwalk,
/area/almayer/hull/lower_hull/l_a_p)
-"ubi" = (
-/obj/structure/bed/chair/comfy,
-/turf/open/floor/almayer{
- dir = 8;
- icon_state = "sterile_green_side"
- },
-/area/almayer/medical/medical_science)
"ubA" = (
/obj/effect/decal/warning_stripes{
icon_state = "E";
@@ -68442,17 +68411,17 @@
icon_state = "plate"
},
/area/almayer/hull/lower_hull/l_f_p)
-"ueG" = (
-/obj/item/bedsheet/orange,
-/obj/structure/bed{
- icon_state = "psychbed"
+"ueJ" = (
+/obj/effect/decal/warning_stripes{
+ icon_state = "W";
+ pixel_x = -1
},
-/obj/structure/machinery/cm_vending/clothing/senior_officer{
- density = 0;
- pixel_y = 30
+/obj/structure/disposalpipe/segment,
+/turf/open/floor/almayer{
+ dir = 8;
+ icon_state = "sterile_green_side"
},
-/turf/open/floor/wood/ship,
-/area/almayer/engineering/ce_room)
+/area/almayer/medical/medical_science)
"ueZ" = (
/obj/structure/machinery/door/firedoor/border_only/almayer,
/obj/structure/machinery/door/airlock/multi_tile/almayer/marine/alpha{
@@ -68487,6 +68456,24 @@
icon_state = "orange"
},
/area/almayer/engineering/upper_engineering)
+"ufG" = (
+/obj/structure/machinery/door/airlock/almayer/generic{
+ dir = 1;
+ name = "\improper Auxiliary Support Officers Quarters";
+ req_one_access_txt = "37"
+ },
+/obj/structure/pipes/standard/simple/hidden/supply,
+/obj/structure/machinery/door/firedoor/border_only/almayer{
+ dir = 1
+ },
+/obj/structure/machinery/door/poddoor/almayer/open{
+ id = "Hangar Lockdown";
+ name = "\improper Hangar Lockdown Blast Door"
+ },
+/turf/open/floor/almayer{
+ icon_state = "test_floor4"
+ },
+/area/almayer/living/auxiliary_officer_office)
"ufJ" = (
/obj/structure/machinery/cryopod/right{
pixel_y = 6
@@ -68536,14 +68523,6 @@
},
/turf/open/floor/plating/plating_catwalk,
/area/almayer/hull/lower_hull/l_m_s)
-"uhd" = (
-/obj/structure/pipes/standard/simple/hidden/supply{
- dir = 4
- },
-/turf/open/floor/almayer/research/containment/corner_var1{
- icon_state = "containment_corner_variant_2"
- },
-/area/almayer/medical/containment/cell)
"uhl" = (
/obj/effect/decal/warning_stripes{
icon_state = "SE-out";
@@ -68576,15 +68555,6 @@
icon_state = "plate"
},
/area/almayer/hull/lower_hull/l_m_p)
-"uiy" = (
-/obj/structure/machinery/camera/autoname/almayer/containment{
- dir = 4
- },
-/turf/open/floor/almayer{
- dir = 4;
- icon_state = "sterile_green_side"
- },
-/area/almayer/medical/medical_science)
"uiG" = (
/turf/open/floor/almayer{
dir = 9;
@@ -68625,17 +68595,6 @@
},
/turf/closed/wall/almayer,
/area/almayer/hull/lower_hull/l_m_p)
-"ujH" = (
-/obj/structure/closet/l3closet/general,
-/obj/structure/machinery/light{
- dir = 8
- },
-/obj/structure/window/reinforced{
- dir = 4;
- health = 80
- },
-/turf/open/floor/plating/plating_catwalk,
-/area/almayer/medical/medical_science)
"ujV" = (
/obj/structure/machinery/vending/dinnerware,
/turf/open/floor/almayer{
@@ -68665,6 +68624,12 @@
/obj/structure/window/framed/almayer/hull/hijack_bustable,
/turf/open/floor/plating,
/area/almayer/engineering/engineering_workshop/hangar)
+"ukN" = (
+/obj/structure/machinery/power/apc/almayer,
+/turf/open/floor/almayer{
+ icon_state = "red"
+ },
+/area/almayer/shipboard/brig/cryo)
"ukS" = (
/obj/structure/disposalpipe/segment{
dir = 4
@@ -68804,6 +68769,15 @@
icon_state = "sterile_green_side"
},
/area/almayer/medical/lower_medical_medbay)
+"uoi" = (
+/obj/effect/decal/warning_stripes{
+ icon_state = "S"
+ },
+/obj/structure/machinery/power/apc/almayer,
+/turf/open/floor/almayer{
+ icon_state = "sterile_green"
+ },
+/area/almayer/medical/containment)
"uoA" = (
/obj/structure/pipes/standard/simple/hidden/supply{
dir = 5
@@ -68877,6 +68851,36 @@
icon_state = "plate"
},
/area/almayer/hull/upper_hull/u_f_p)
+"uqd" = (
+/obj/structure/surface/table/almayer,
+/obj/effect/decal/warning_stripes{
+ icon_state = "E";
+ pixel_x = 1
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "N";
+ pixel_y = 1
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "W"
+ },
+/obj/structure/machinery/door_control{
+ id = "W_Containment Cell 1";
+ name = "Containment Lockdown";
+ pixel_x = -7;
+ pixel_y = 1;
+ req_one_access_txt = "19;28"
+ },
+/obj/structure/machinery/door_display/research_cell{
+ id = "Containment Cell 1";
+ name = "Cell 1 Control";
+ pixel_x = 5;
+ pixel_y = 2
+ },
+/turf/open/floor/almayer{
+ icon_state = "sterile_green"
+ },
+/area/almayer/medical/containment)
"uqo" = (
/turf/open/floor/plating/plating_catwalk,
/area/almayer/shipboard/brig/armory)
@@ -68927,36 +68931,6 @@
/obj/effect/landmark/late_join/charlie,
/turf/open/floor/plating/plating_catwalk,
/area/almayer/squads/charlie)
-"usb" = (
-/obj/effect/decal/warning_stripes{
- icon_state = "E";
- pixel_x = 1
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "W";
- pixel_x = -1
- },
-/obj/structure/machinery/door/poddoor/almayer/open{
- dir = 4;
- id = "Containment Breach";
- name = "\improper Secure Airlock"
- },
-/obj/structure/machinery/door/airlock/almayer/research/reinforced{
- dir = 8;
- name = "\improper Containment Airlock"
- },
-/turf/open/floor/almayer{
- icon_state = "test_floor4"
- },
-/area/almayer/medical/containment)
-"usf" = (
-/obj/structure/closet/l3closet/general,
-/obj/structure/window/reinforced{
- dir = 8;
- health = 80
- },
-/turf/open/floor/plating/plating_catwalk,
-/area/almayer/medical/medical_science)
"ush" = (
/obj/structure/surface/table/almayer,
/obj/structure/machinery/computer/cameras/almayer_network{
@@ -69001,6 +68975,17 @@
},
/turf/open/floor/plating/plating_catwalk,
/area/almayer/engineering/engine_core)
+"usy" = (
+/obj/structure/pipes/standard/simple/hidden/supply{
+ dir = 9
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "S"
+ },
+/turf/open/floor/almayer{
+ icon_state = "sterile_green_side"
+ },
+/area/almayer/medical/medical_science)
"usB" = (
/obj/structure/pipes/standard/manifold/hidden/supply{
dir = 8
@@ -69033,17 +69018,11 @@
icon_state = "cargo"
},
/area/almayer/engineering/upper_engineering)
-"utK" = (
-/obj/structure/machinery/light{
- dir = 4
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "S"
- },
-/turf/open/floor/almayer{
- icon_state = "plate"
+"utX" = (
+/turf/closed/wall/almayer/research/containment/wall/connect_e2{
+ icon_state = "containment_wall_connect_e"
},
-/area/almayer/living/tankerbunks)
+/area/almayer/medical/containment/cell)
"utZ" = (
/obj/structure/machinery/door/poddoor/almayer/open{
dir = 4;
@@ -69105,6 +69084,17 @@
},
/turf/open/floor/plating/plating_catwalk,
/area/almayer/hallways/hangar)
+"uuw" = (
+/obj/structure/surface/table/almayer,
+/obj/item/paper_bin/uscm,
+/obj/item/device/flashlight/lamp{
+ pixel_x = -8;
+ pixel_y = 12
+ },
+/turf/open/floor/almayer{
+ icon_state = "plate"
+ },
+/area/almayer/living/auxiliary_officer_office)
"uux" = (
/obj/structure/machinery/door/airlock/almayer/secure/reinforced{
name = "\improper Evacuation Airlock SU-1";
@@ -69171,20 +69161,6 @@
icon_state = "orangecorner"
},
/area/almayer/squads/bravo)
-"uvF" = (
-/obj/structure/machinery/cm_vending/clothing/medical_crew{
- density = 0;
- pixel_y = 16
- },
-/obj/structure/window/reinforced{
- dir = 8;
- health = 80
- },
-/turf/open/floor/almayer{
- dir = 1;
- icon_state = "cargo_arrow"
- },
-/area/almayer/medical/hydroponics)
"uvG" = (
/obj/effect/decal/warning_stripes{
icon_state = "W"
@@ -69202,6 +69178,21 @@
icon_state = "plating"
},
/area/almayer/hull/lower_hull/l_a_s)
+"uvP" = (
+/obj/structure/machinery/light{
+ unacidable = 1;
+ unslashable = 1
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "W"
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "S"
+ },
+/turf/open/floor/almayer/research/containment/corner{
+ dir = 4
+ },
+/area/almayer/medical/containment/cell)
"uvS" = (
/obj/structure/sign/safety/hvac_old{
pixel_x = 8;
@@ -69238,6 +69229,14 @@
"uwv" = (
/turf/open/floor/plating/plating_catwalk,
/area/almayer/shipboard/weapon_room/notunnel)
+"uwC" = (
+/obj/structure/machinery/shower{
+ dir = 4
+ },
+/obj/structure/machinery/door/window/eastright,
+/obj/structure/window/reinforced/tinted/frosted,
+/turf/open/floor/plating/plating_catwalk,
+/area/almayer/living/auxiliary_officer_office)
"uwN" = (
/obj/structure/disposalpipe/segment{
dir = 4
@@ -69247,6 +69246,15 @@
},
/turf/open/floor/almayer,
/area/almayer/shipboard/brig/cic_hallway)
+"uwZ" = (
+/obj/effect/decal/warning_stripes{
+ icon_state = "N";
+ pixel_y = 1
+ },
+/turf/open/floor/almayer/research/containment/floor2{
+ dir = 1
+ },
+/area/almayer/medical/containment/cell)
"uxa" = (
/obj/structure/bed/chair/wood/normal{
dir = 8
@@ -69319,6 +69327,9 @@
/obj/structure/window/framed/almayer/hull,
/turf/open/floor/plating,
/area/almayer/lifeboat_pumps/south2)
+"uyH" = (
+/turf/closed/wall/almayer/research/containment/wall/divide,
+/area/almayer/medical/containment/cell)
"uyJ" = (
/obj/structure/machinery/cm_vending/sorted/medical/chemistry,
/turf/open/floor/almayer{
@@ -69536,16 +69547,6 @@
},
/turf/open/floor/almayer,
/area/almayer/squads/alpha_bravo_shared)
-"uBP" = (
-/obj/effect/decal/warning_stripes{
- icon_state = "E";
- pixel_x = 1
- },
-/turf/open/floor/almayer{
- dir = 8;
- icon_state = "sterile_green_side"
- },
-/area/almayer/medical/medical_science)
"uCh" = (
/obj/structure/reagent_dispensers/watertank,
/obj/structure/sign/safety/water{
@@ -69703,21 +69704,6 @@
icon_state = "plate"
},
/area/almayer/hallways/port_hallway)
-"uFR" = (
-/obj/structure/machinery/power/apc/almayer,
-/obj/effect/decal/warning_stripes{
- icon_state = "S"
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "E";
- pixel_x = 1
- },
-/obj/structure/reagent_dispensers/fueltank/custom,
-/turf/open/floor/almayer{
- dir = 4;
- icon_state = "sterile_green_corner"
- },
-/area/almayer/medical/containment/cell)
"uGa" = (
/obj/structure/closet/emcloset,
/turf/open/floor/almayer{
@@ -69780,23 +69766,6 @@
icon_state = "plate"
},
/area/almayer/engineering/upper_engineering/starboard)
-"uHr" = (
-/obj/structure/surface/table/reinforced/prison,
-/obj/item/reagent_container/spray/cleaner{
- desc = "Someone has crossed out the Space from Space Cleaner and written in Surgery. 'Do not remove under punishment of death!!!' is scrawled on the back.";
- name = "Surgery Cleaner"
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "S"
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "E";
- pixel_x = 1
- },
-/turf/open/floor/almayer/research/containment/corner{
- dir = 1
- },
-/area/almayer/medical/containment/cell)
"uId" = (
/obj/structure/bed/chair/comfy/teal{
dir = 8
@@ -69891,12 +69860,6 @@
icon_state = "cargo"
},
/area/almayer/squads/alpha)
-"uJV" = (
-/obj/structure/machinery/power/apc/almayer,
-/turf/open/floor/almayer{
- icon_state = "red"
- },
-/area/almayer/shipboard/brig/cryo)
"uKd" = (
/obj/structure/surface/table/reinforced/almayer_B,
/obj/structure/machinery/computer/communications{
@@ -69932,24 +69895,6 @@
},
/turf/open/floor/plating,
/area/almayer/hull/lower_hull/l_f_p)
-"uKo" = (
-/obj/structure/machinery/door/airlock/multi_tile/almayer/medidoor{
- name = "\improper Medical Bay";
- req_one_access = null
- },
-/obj/structure/machinery/door/firedoor/border_only/almayer{
- dir = 2
- },
-/obj/structure/disposalpipe/segment,
-/obj/structure/pipes/standard/simple/hidden/supply,
-/obj/structure/machinery/door/poddoor/almayer/open{
- id = "Containment Breach";
- name = "\improper Secure Airlock"
- },
-/turf/open/floor/almayer{
- icon_state = "test_floor4"
- },
-/area/almayer/medical/upper_medical)
"uKv" = (
/obj/structure/surface/table/reinforced/prison,
/obj/item/device/multitool{
@@ -69978,19 +69923,6 @@
},
/turf/open/floor/plating/plating_catwalk,
/area/almayer/engineering/upper_engineering/starboard)
-"uKW" = (
-/obj/effect/decal/warning_stripes{
- icon_state = "N";
- pixel_y = 1
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "E";
- pixel_x = 1
- },
-/turf/open/floor/almayer{
- icon_state = "sterile_green_corner"
- },
-/area/almayer/medical/medical_science)
"uLn" = (
/obj/structure/pipes/standard/simple/hidden/supply,
/turf/open/floor/almayer,
@@ -70159,44 +70091,6 @@
"uOi" = (
/turf/closed/wall/almayer/outer,
/area/almayer/lifeboat_pumps/south2)
-"uOk" = (
-/obj/structure/machinery/shower{
- pixel_y = 16
- },
-/obj/structure/machinery/door_control{
- id = "containmentlockdown_S";
- name = "Containment Lockdown";
- pixel_x = 29;
- pixel_y = 3;
- req_one_access_txt = "19;28"
- },
-/obj/structure/window/reinforced{
- dir = 8;
- health = 80;
- pixel_y = 6
- },
-/turf/open/floor/plating/plating_catwalk,
-/area/almayer/medical/medical_science)
-"uOm" = (
-/obj/structure/machinery/door_control{
- id = "containmentlockdown_S";
- name = "Containment Lockdown";
- pixel_y = 28;
- req_one_access_txt = "19;28"
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "N";
- pixel_y = 1
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "W";
- pixel_x = -1
- },
-/turf/open/floor/almayer{
- dir = 1;
- icon_state = "sterile_green_side"
- },
-/area/almayer/medical/containment)
"uOJ" = (
/obj/structure/machinery/prop/almayer/computer{
dir = 8;
@@ -70218,12 +70112,6 @@
icon_state = "orangecorner"
},
/area/almayer/hallways/stern_hallway)
-"uPS" = (
-/obj/structure/machinery/autolathe/medilathe/full,
-/turf/open/floor/almayer{
- icon_state = "test_floor4"
- },
-/area/almayer/medical/hydroponics)
"uPW" = (
/obj/structure/bed/chair{
dir = 4
@@ -70232,19 +70120,6 @@
/obj/structure/disposalpipe/segment,
/turf/open/floor/almayer,
/area/almayer/living/port_emb)
-"uQj" = (
-/obj/effect/decal/warning_stripes{
- icon_state = "N";
- pixel_y = 1
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "E";
- pixel_x = 1
- },
-/turf/open/floor/almayer/research/containment/corner_var1{
- dir = 4
- },
-/area/almayer/medical/containment/cell)
"uQm" = (
/obj/structure/pipes/standard/simple/hidden/supply{
dir = 4
@@ -70641,6 +70516,14 @@
icon_state = "test_floor4"
},
/area/almayer/medical/lower_medical_medbay)
+"uXj" = (
+/obj/effect/decal/warning_stripes{
+ icon_state = "W"
+ },
+/turf/open/floor/almayer/research/containment/floor2{
+ dir = 8
+ },
+/area/almayer/medical/containment/cell)
"uXL" = (
/obj/effect/decal/warning_stripes{
icon_state = "S"
@@ -70703,6 +70586,20 @@
icon_state = "test_floor4"
},
/area/almayer/living/basketball)
+"vah" = (
+/obj/effect/decal/warning_stripes{
+ icon_state = "N";
+ pixel_y = 1
+ },
+/obj/structure/disposalpipe/segment{
+ dir = 2;
+ icon_state = "pipe-c"
+ },
+/turf/open/floor/almayer{
+ dir = 1;
+ icon_state = "sterile_green_side"
+ },
+/area/almayer/medical/medical_science)
"vak" = (
/obj/structure/sign/safety/security{
pixel_x = 15;
@@ -70710,16 +70607,6 @@
},
/turf/closed/wall/almayer,
/area/almayer/hallways/starboard_umbilical)
-"vam" = (
-/obj/structure/machinery/door/firedoor/border_only/almayer,
-/obj/structure/machinery/door/airlock/multi_tile/almayer/secdoor/glass/reinforced{
- dir = 1;
- name = "\improper Cryogenics Bay"
- },
-/turf/open/floor/almayer{
- icon_state = "test_floor4"
- },
-/area/almayer/shipboard/brig/general_equipment)
"vbf" = (
/obj/structure/machinery/landinglight/ds2/delaytwo{
dir = 8
@@ -70731,6 +70618,19 @@
icon_state = "plate"
},
/area/almayer/hallways/hangar)
+"vbx" = (
+/obj/structure/surface/table/almayer,
+/obj/item/handcuffs,
+/obj/item/handcuffs{
+ pixel_y = 6
+ },
+/obj/item/handcuffs{
+ pixel_y = 12
+ },
+/turf/open/floor/almayer{
+ allow_construction = 0
+ },
+/area/almayer/shipboard/brig/processing)
"vbB" = (
/turf/open/floor/plating/plating_catwalk,
/area/almayer/lifeboat_pumps/south1)
@@ -70822,20 +70722,6 @@
icon_state = "plate"
},
/area/almayer/hull/upper_hull/u_a_s)
-"vdE" = (
-/obj/structure/pipes/vents/pump,
-/obj/effect/decal/warning_stripes{
- icon_state = "E";
- pixel_x = 1
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "W";
- pixel_x = -1
- },
-/turf/open/floor/almayer{
- icon_state = "mono"
- },
-/area/almayer/medical/hydroponics)
"vdJ" = (
/obj/structure/surface/table/almayer,
/obj/item/pipe{
@@ -70878,6 +70764,17 @@
},
/turf/open/floor/plating/plating_catwalk,
/area/almayer/shipboard/brig/cells)
+"vdO" = (
+/obj/structure/pipes/standard/cap/hidden{
+ dir = 4
+ },
+/obj/structure/machinery/cryo_cell{
+ dir = 1
+ },
+/turf/open/floor/almayer{
+ icon_state = "mono"
+ },
+/area/almayer/medical/medical_science)
"vdU" = (
/turf/open/floor/wood/ship,
/area/almayer/living/grunt_rnr)
@@ -70890,12 +70787,6 @@
},
/turf/open/floor/plating/plating_catwalk,
/area/almayer/hallways/port_hallway)
-"veb" = (
-/obj/structure/bed/sofa/south/white/left,
-/turf/open/floor/almayer{
- icon_state = "sterile_green"
- },
-/area/almayer/medical/medical_science)
"ven" = (
/obj/structure/bed/chair,
/turf/open/floor/almayer{
@@ -70994,6 +70885,11 @@
icon_state = "plate"
},
/area/almayer/hull/lower_hull/l_m_p)
+"vfP" = (
+/turf/open/floor/almayer/research/containment/corner{
+ dir = 1
+ },
+/area/almayer/medical/containment/cell)
"vgk" = (
/obj/structure/closet/firecloset,
/obj/structure/machinery/camera/autoname/almayer{
@@ -71005,6 +70901,18 @@
icon_state = "greencorner"
},
/area/almayer/hallways/port_hallway)
+"vgx" = (
+/obj/effect/decal/warning_stripes{
+ icon_state = "W";
+ pixel_x = -1
+ },
+/obj/structure/surface/table/almayer,
+/obj/structure/machinery/computer/research,
+/turf/open/floor/almayer{
+ dir = 1;
+ icon_state = "sterile_green_corner"
+ },
+/area/almayer/medical/hydroponics)
"vgC" = (
/obj/effect/decal/warning_stripes{
icon_state = "E";
@@ -71044,6 +70952,9 @@
allow_construction = 0
},
/area/almayer/hallways/starboard_hallway)
+"vgO" = (
+/turf/closed/wall/almayer/research/containment/wall/east,
+/area/almayer/medical/containment/cell)
"vgQ" = (
/obj/structure/surface/rack,
/obj/item/tool/crowbar,
@@ -71053,6 +70964,24 @@
icon_state = "plate"
},
/area/almayer/hull/lower_hull/l_m_p)
+"vhe" = (
+/obj/structure/filingcabinet{
+ density = 0;
+ pixel_x = -8;
+ pixel_y = 18
+ },
+/obj/structure/filingcabinet{
+ density = 0;
+ pixel_x = 8;
+ pixel_y = 18
+ },
+/obj/item/folder/white,
+/obj/item/folder/white,
+/obj/item/folder/white,
+/turf/open/floor/almayer/no_build{
+ icon_state = "ai_floors"
+ },
+/area/almayer/command/airoom)
"vhq" = (
/turf/open/floor/almayer{
icon_state = "plate"
@@ -71065,15 +70994,6 @@
},
/turf/open/floor/plating/plating_catwalk,
/area/almayer/hull/lower_hull/l_f_p)
-"vhv" = (
-/obj/effect/decal/warning_stripes{
- icon_state = "W"
- },
-/turf/open/floor/almayer{
- dir = 8;
- icon_state = "sterile_green_side"
- },
-/area/almayer/medical/containment)
"vhw" = (
/obj/structure/disposalpipe/trunk{
dir = 8
@@ -71229,16 +71149,6 @@
icon_state = "plate"
},
/area/almayer/hull/lower_hull/l_a_s)
-"vjy" = (
-/obj/structure/surface/table/almayer,
-/obj/structure/machinery/processor{
- pixel_x = -2;
- pixel_y = 6
- },
-/turf/open/floor/almayer{
- icon_state = "mono"
- },
-/area/almayer/medical/medical_science)
"vjC" = (
/obj/structure/disposalpipe/trunk{
dir = 8
@@ -71271,6 +71181,16 @@
icon_state = "plate"
},
/area/almayer/living/captain_mess)
+"vkp" = (
+/obj/effect/decal/warning_stripes{
+ icon_state = "N";
+ pixel_y = 1
+ },
+/turf/open/floor/almayer{
+ dir = 1;
+ icon_state = "sterile_green_side"
+ },
+/area/almayer/medical/medical_science)
"vkD" = (
/obj/structure/prop/invuln/overhead_pipe{
dir = 4;
@@ -71438,22 +71358,6 @@
icon_state = "test_floor4"
},
/area/almayer/hull/lower_hull/l_m_p)
-"vpm" = (
-/obj/structure/surface/table/almayer,
-/obj/item/spacecash/c200{
- pixel_x = -6;
- pixel_y = 7
- },
-/obj/item/prop/helmetgarb/prescription_bottle{
- pixel_x = 9
- },
-/obj/item/reagent_container/pill/happy,
-/obj/item/clothing/glasses/disco_fever{
- pixel_x = -3;
- pixel_y = -2
- },
-/turf/open/floor/plating,
-/area/almayer/living/port_emb)
"vpn" = (
/turf/open/floor/almayer{
dir = 9;
@@ -71499,20 +71403,45 @@
icon_state = "plate"
},
/area/almayer/hull/upper_hull/u_a_p)
-"vra" = (
-/turf/closed/wall/almayer,
-/area/almayer/squads/charlie_delta_shared)
-"vrc" = (
-/obj/structure/machinery/light{
- dir = 1
+"vqW" = (
+/obj/structure/pipes/standard/simple/hidden/supply{
+ dir = 4
},
-/obj/structure/pipes/unary/freezer{
- dir = 8
+/obj/structure/machinery/camera/autoname/almayer{
+ dir = 1;
+ name = "ship-grade camera"
},
/turf/open/floor/almayer{
- icon_state = "mono"
+ icon_state = "sterile_green_side"
+ },
+/area/almayer/medical/medical_science)
+"vqZ" = (
+/obj/structure/machinery/shower{
+ pixel_y = 16
+ },
+/obj/structure/sign/safety/biolab{
+ pixel_x = -9;
+ pixel_y = 32
+ },
+/obj/structure/sign/safety/biohazard{
+ pixel_x = 25;
+ pixel_y = 32
},
+/obj/structure/window/reinforced{
+ dir = 4;
+ health = 80;
+ pixel_y = 6
+ },
+/obj/structure/window/reinforced{
+ dir = 8;
+ health = 80;
+ pixel_y = 6
+ },
+/turf/open/floor/plating/plating_catwalk,
/area/almayer/medical/medical_science)
+"vra" = (
+/turf/closed/wall/almayer,
+/area/almayer/squads/charlie_delta_shared)
"vrx" = (
/obj/structure/machinery/status_display{
pixel_x = -32;
@@ -71577,14 +71506,6 @@
icon_state = "cargo"
},
/area/almayer/living/offices)
-"vsw" = (
-/obj/structure/bed/chair/comfy{
- dir = 4
- },
-/turf/open/floor/almayer{
- icon_state = "sterile_green"
- },
-/area/almayer/medical/containment)
"vsF" = (
/obj/effect/decal/warning_stripes{
icon_state = "W"
@@ -71641,6 +71562,23 @@
icon_state = "silver"
},
/area/almayer/command/cichallway)
+"vti" = (
+/turf/open/floor/almayer{
+ icon_state = "mono"
+ },
+/area/almayer/medical/medical_science)
+"vtm" = (
+/obj/structure/pipes/standard/simple/hidden/supply{
+ dir = 4
+ },
+/obj/structure/disposalpipe/segment{
+ dir = 2;
+ icon_state = "pipe-c"
+ },
+/turf/open/floor/almayer{
+ icon_state = "dark_sterile"
+ },
+/area/almayer/medical/medical_science)
"vtr" = (
/obj/structure/machinery/mech_bay_recharge_port,
/turf/open/shuttle/dropship{
@@ -71671,6 +71609,14 @@
/obj/effect/landmark/late_join/alpha,
/turf/open/floor/plating/plating_catwalk,
/area/almayer/squads/alpha)
+"vuu" = (
+/obj/structure/machinery/light{
+ dir = 1
+ },
+/turf/open/floor/almayer{
+ icon_state = "plate"
+ },
+/area/almayer/living/auxiliary_officer_office)
"vuv" = (
/turf/closed/wall/almayer,
/area/almayer/hull/upper_hull/u_a_p)
@@ -71960,6 +71906,16 @@
"vAG" = (
/turf/open/floor/almayer,
/area/almayer/shipboard/brig/chief_mp_office)
+"vAQ" = (
+/obj/structure/surface/table/almayer,
+/obj/structure/machinery/reagent_analyzer{
+ pixel_x = 2;
+ pixel_y = 3
+ },
+/turf/open/floor/almayer{
+ icon_state = "mono"
+ },
+/area/almayer/medical/medical_science)
"vAU" = (
/obj/structure/machinery/light{
dir = 8
@@ -72019,6 +71975,15 @@
icon_state = "plate"
},
/area/almayer/hallways/hangar)
+"vCk" = (
+/obj/structure/pipes/standard/manifold/hidden/supply{
+ dir = 4
+ },
+/turf/open/floor/almayer{
+ dir = 10;
+ icon_state = "sterile_green_side"
+ },
+/area/almayer/medical/hydroponics)
"vCx" = (
/obj/structure/machinery/status_display{
pixel_y = -30
@@ -72054,6 +72019,14 @@
/obj/effect/landmark/start/bridge,
/turf/open/floor/plating/plating_catwalk,
/area/almayer/living/bridgebunks)
+"vDa" = (
+/obj/structure/pipes/standard/simple/hidden/supply{
+ dir = 4
+ },
+/turf/open/floor/almayer{
+ icon_state = "sterile_green_side"
+ },
+/area/almayer/medical/hydroponics)
"vDh" = (
/obj/item/weapon/dart/green,
/turf/open/floor/plating,
@@ -72073,6 +72046,16 @@
/obj/effect/landmark/start/synthetic,
/turf/open/floor/plating/plating_catwalk,
/area/almayer/living/synthcloset)
+"vEr" = (
+/obj/effect/decal/warning_stripes{
+ icon_state = "E";
+ pixel_x = 1
+ },
+/turf/open/floor/almayer{
+ dir = 8;
+ icon_state = "sterile_green_side"
+ },
+/area/almayer/medical/medical_science)
"vEx" = (
/obj/structure/machinery/door/firedoor/border_only/almayer{
dir = 2
@@ -72176,6 +72159,18 @@
/obj/structure/disposalpipe/segment,
/turf/open/floor/almayer,
/area/almayer/living/port_emb)
+"vHO" = (
+/obj/effect/decal/warning_stripes{
+ icon_state = "N";
+ pixel_y = 1
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "W"
+ },
+/turf/open/floor/almayer/research/containment/corner_var1{
+ icon_state = "containment_corner_variant_2"
+ },
+/area/almayer/medical/containment/cell)
"vHW" = (
/obj/structure/surface/rack,
/obj/item/tool/extinguisher,
@@ -72278,6 +72273,10 @@
icon_state = "plate"
},
/area/almayer/hull/lower_hull/l_f_s)
+"vJU" = (
+/obj/effect/landmark/start/auxiliary_officer,
+/turf/open/floor/plating/plating_catwalk,
+/area/almayer/living/bridgebunks)
"vJV" = (
/obj/structure/disposalpipe/segment{
dir = 4
@@ -72301,6 +72300,19 @@
},
/turf/open/floor/wood/ship,
/area/almayer/living/basketball)
+"vKb" = (
+/obj/structure/machinery/smartfridge/chemistry{
+ density = 0;
+ pixel_y = 16
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "N";
+ pixel_y = 1
+ },
+/turf/open/floor/almayer{
+ icon_state = "sterile_green_corner"
+ },
+/area/almayer/medical/containment)
"vKe" = (
/obj/structure/pipes/standard/simple/hidden/supply,
/turf/open/floor/almayer{
@@ -72342,6 +72354,24 @@
icon_state = "plate"
},
/area/almayer/hull/lower_hull/l_f_s)
+"vLj" = (
+/obj/structure/machinery/door/airlock/multi_tile/almayer/medidoor{
+ name = "\improper Medical Bay";
+ req_one_access = null
+ },
+/obj/structure/machinery/door/firedoor/border_only/almayer{
+ dir = 2
+ },
+/obj/structure/disposalpipe/segment,
+/obj/structure/pipes/standard/simple/hidden/supply,
+/obj/structure/machinery/door/poddoor/almayer/open{
+ id = "Containment Breach";
+ name = "\improper Secure Airlock"
+ },
+/turf/open/floor/almayer{
+ icon_state = "test_floor4"
+ },
+/area/almayer/medical/upper_medical)
"vLA" = (
/obj/effect/decal/warning_stripes{
icon_state = "W";
@@ -72379,6 +72409,13 @@
},
/turf/open/floor/almayer,
/area/almayer/hallways/port_hallway)
+"vMC" = (
+/obj/structure/machinery/cm_vending/clothing/vehicle_crew{
+ density = 0;
+ pixel_y = 16
+ },
+/turf/open/floor/almayer,
+/area/almayer/living/tankerbunks)
"vMG" = (
/obj/structure/disposalpipe/segment{
dir = 4
@@ -72440,6 +72477,18 @@
"vOy" = (
/turf/closed/wall/almayer/white/reinforced,
/area/almayer/medical/medical_science)
+"vOP" = (
+/obj/structure/machinery/door/firedoor/border_only/almayer{
+ dir = 2
+ },
+/obj/structure/machinery/door/poddoor/almayer/open{
+ id = "Containment Breach";
+ name = "\improper Secure Airlock"
+ },
+/turf/open/floor/almayer{
+ icon_state = "test_floor4"
+ },
+/area/almayer/medical/upper_medical)
"vPj" = (
/obj/structure/surface/table/reinforced/almayer_B,
/obj/item/device/flashlight/lamp{
@@ -72595,39 +72644,9 @@
dir = 10
},
/area/almayer/command/cic)
-"vRe" = (
-/obj/structure/window/framed/almayer/white,
-/obj/structure/machinery/door/poddoor/shutters/almayer/open{
- id = "researchlockdownext_se_2";
- name = "\improper Research Window Shutter"
- },
-/obj/structure/machinery/door/firedoor/border_only/almayer{
- dir = 1
- },
-/obj/structure/machinery/door/poddoor/almayer/open{
- id = "Containment Breach";
- name = "\improper Secure Airlock"
- },
-/turf/open/floor/plating,
-/area/almayer/medical/medical_science)
"vRz" = (
/turf/closed/wall/almayer/outer,
/area/almayer/hull/lower_hull/l_f_p)
-"vRW" = (
-/obj/structure/machinery/light{
- unacidable = 1;
- unslashable = 1
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "W"
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "S"
- },
-/turf/open/floor/almayer/research/containment/corner{
- dir = 4
- },
-/area/almayer/medical/containment/cell)
"vRX" = (
/obj/structure/surface/table/almayer,
/obj/item/book/manual/medical_diagnostics_manual,
@@ -72832,6 +72851,11 @@
},
/turf/open/floor/plating/plating_catwalk,
/area/almayer/living/briefing)
+"vVs" = (
+/turf/open/floor/almayer{
+ icon_state = "sterile_green"
+ },
+/area/almayer/medical/containment)
"vVw" = (
/turf/open/floor/almayer{
icon_state = "plate"
@@ -72858,6 +72882,28 @@
icon_state = "redfull"
},
/area/almayer/living/offices/flight)
+"vWt" = (
+/obj/structure/surface/table/almayer,
+/obj/item/reagent_container/glass/beaker/large,
+/obj/item/reagent_container/glass/beaker/large,
+/obj/item/reagent_container/glass/beaker{
+ pixel_x = 5
+ },
+/obj/item/reagent_container/glass/beaker{
+ pixel_x = 5
+ },
+/obj/item/reagent_container/dropper,
+/obj/structure/machinery/firealarm{
+ dir = 8;
+ pixel_x = -24
+ },
+/obj/item/reagent_container/glass/beaker/bluespace{
+ pixel_y = 12
+ },
+/turf/open/floor/almayer{
+ icon_state = "mono"
+ },
+/area/almayer/medical/medical_science)
"vWx" = (
/obj/structure/largecrate/random/barrel/blue,
/obj/structure/sign/safety/restrictedarea{
@@ -72926,18 +72972,6 @@
icon_state = "orange"
},
/area/almayer/engineering/lower_engineering)
-"vWZ" = (
-/obj/structure/pipes/standard/simple/hidden/supply,
-/obj/effect/decal/warning_stripes{
- icon_state = "NW-out";
- pixel_x = -1;
- pixel_y = 1
- },
-/turf/open/floor/almayer{
- dir = 9;
- icon_state = "sterile_green_side"
- },
-/area/almayer/medical/medical_science)
"vXd" = (
/obj/structure/window/framed/almayer,
/obj/structure/machinery/door/poddoor/shutters/almayer{
@@ -72967,19 +73001,6 @@
},
/turf/open/floor/almayer,
/area/almayer/shipboard/brig/perma)
-"vXS" = (
-/obj/structure/pipes/standard/simple/hidden/supply{
- dir = 9
- },
-/obj/structure/machinery/firealarm{
- dir = 4;
- pixel_x = 24
- },
-/turf/open/floor/almayer{
- dir = 1;
- icon_state = "redcorner"
- },
-/area/almayer/shipboard/brig/main_office)
"vXX" = (
/obj/structure/surface/rack,
/obj/effect/spawner/random/tool,
@@ -73027,6 +73048,33 @@
icon_state = "sterile_green_side"
},
/area/almayer/medical/lower_medical_medbay)
+"vYz" = (
+/obj/structure/pipes/standard/simple/hidden/supply,
+/obj/structure/surface/table/almayer,
+/obj/item/reagent_container/glass/beaker{
+ pixel_x = 8
+ },
+/obj/item/paper_bin/wy{
+ pixel_x = -5;
+ pixel_y = 6
+ },
+/obj/item/tool/pen{
+ pixel_y = -2
+ },
+/obj/structure/machinery/door_control/brbutton/alt{
+ id = "Containment Breach";
+ name = "Emergency Containment Breach";
+ pixel_x = 8;
+ pixel_y = 10
+ },
+/obj/item/reagent_container/dropper{
+ pixel_x = -1;
+ pixel_y = 9
+ },
+/turf/open/floor/almayer{
+ icon_state = "sterile_green"
+ },
+/area/almayer/medical/containment)
"vYC" = (
/obj/effect/decal/warning_stripes{
icon_state = "S"
@@ -73041,14 +73089,6 @@
icon_state = "plate"
},
/area/almayer/command/cichallway)
-"vZa" = (
-/obj/structure/pipes/standard/simple/hidden/supply{
- dir = 9
- },
-/turf/open/floor/almayer/research/containment/floor2{
- dir = 1
- },
-/area/almayer/medical/containment/cell)
"vZb" = (
/obj/structure/machinery/cryopod{
pixel_y = 6
@@ -73061,6 +73101,14 @@
icon_state = "cargo"
},
/area/almayer/squads/alpha)
+"vZf" = (
+/obj/structure/sign/prop2{
+ pixel_y = 29
+ },
+/turf/open/floor/almayer{
+ icon_state = "plate"
+ },
+/area/almayer/living/auxiliary_officer_office)
"vZv" = (
/obj/structure/pipes/standard/manifold/hidden/supply,
/turf/open/floor/almayer,
@@ -73235,15 +73283,26 @@
allow_construction = 0
},
/area/almayer/hallways/starboard_hallway)
-"wdf" = (
-/obj/structure/bed/chair{
- dir = 1
+"wdo" = (
+/obj/structure/pipes/standard/simple/hidden/supply{
+ dir = 4
+ },
+/obj/structure/machinery/door/airlock/almayer/research/reinforced{
+ dir = 8;
+ name = "\improper Containment Airlock"
+ },
+/obj/structure/machinery/door/poddoor/almayer/open{
+ dir = 4;
+ id = "Containment Breach";
+ name = "\improper Secure Airlock"
},
/obj/effect/decal/warning_stripes{
icon_state = "S"
},
-/turf/open/floor/almayer,
-/area/almayer/living/tankerbunks)
+/turf/open/floor/almayer{
+ icon_state = "test_floor4"
+ },
+/area/almayer/medical/medical_science)
"wdr" = (
/obj/structure/machinery/power/apc/almayer,
/turf/open/floor/almayer{
@@ -73278,6 +73337,19 @@
icon_state = "plate"
},
/area/almayer/engineering/upper_engineering/starboard)
+"wei" = (
+/obj/structure/machinery/door/poddoor/almayer/open{
+ id = "Containment Breach";
+ name = "\improper Secure Airlock"
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "E";
+ pixel_x = 1
+ },
+/turf/open/floor/almayer{
+ icon_state = "test_floor4"
+ },
+/area/almayer/medical/hydroponics)
"wex" = (
/obj/structure/machinery/light{
dir = 4
@@ -73315,6 +73387,12 @@
},
/turf/open/floor/plating,
/area/almayer/living/pilotbunks)
+"weG" = (
+/obj/structure/reagent_dispensers/fueltank,
+/turf/open/floor/almayer{
+ icon_state = "plate"
+ },
+/area/almayer/hull/lower_hull/l_f_s)
"weR" = (
/obj/structure/machinery/cryopod,
/turf/open/floor/almayer{
@@ -73517,6 +73595,14 @@
icon_state = "silver"
},
/area/almayer/shipboard/brig/cic_hallway)
+"wiW" = (
+/obj/structure/pipes/standard/simple/hidden/supply{
+ dir = 4
+ },
+/turf/open/floor/almayer{
+ icon_state = "mono"
+ },
+/area/almayer/medical/hydroponics)
"wjq" = (
/obj/structure/bed/chair/comfy/beige{
dir = 8
@@ -73568,6 +73654,19 @@
icon_state = "test_floor4"
},
/area/almayer/hallways/hangar)
+"wky" = (
+/obj/structure/pipes/standard/simple/hidden/supply{
+ dir = 4
+ },
+/obj/structure/machinery/door/poddoor/almayer/open{
+ dir = 4;
+ id = "Containment Breach";
+ name = "\improper Secure Airlock"
+ },
+/turf/open/floor/almayer{
+ icon_state = "test_floor4"
+ },
+/area/almayer/medical/medical_science)
"wkH" = (
/obj/structure/surface/table/reinforced/almayer_B,
/obj/item/device/whistle{
@@ -73750,15 +73849,6 @@
/obj/structure/window/framed/almayer/white/hull,
/turf/open/floor/plating,
/area/almayer/command/airoom)
-"wnm" = (
-/obj/structure/bed/chair/bolted{
- dir = 1
- },
-/turf/open/floor/almayer{
- dir = 8;
- icon_state = "red"
- },
-/area/almayer/shipboard/brig/processing)
"wnL" = (
/obj/item/stack/tile/carpet{
amount = 12
@@ -73779,6 +73869,11 @@
},
/turf/open/floor/almayer,
/area/almayer/squads/alpha_bravo_shared)
+"woh" = (
+/turf/closed/wall/almayer/research/containment/wall/corner{
+ dir = 4
+ },
+/area/almayer/medical/containment/cell)
"wom" = (
/obj/structure/disposalpipe/segment{
dir = 2;
@@ -73925,35 +74020,12 @@
icon_state = "sterile_green_corner"
},
/area/almayer/medical/upper_medical)
-"wrt" = (
-/obj/structure/machinery/camera/autoname/almayer{
- name = "ship-grade camera"
- },
-/obj/structure/surface/rack,
-/obj/item/storage/box/botanydisk,
-/obj/item/storage/box/botanydisk,
-/obj/item/storage/box/botanydisk,
-/obj/item/storage/box/botanydisk,
-/turf/open/floor/almayer{
- icon_state = "mono"
- },
-/area/almayer/medical/hydroponics)
"wrC" = (
/obj/structure/sign/safety/distribution_pipes{
pixel_x = -17
},
/turf/open/floor/almayer,
/area/almayer/living/gym)
-"wrR" = (
-/obj/structure/pipes/standard/simple/hidden/supply,
-/obj/effect/decal/warning_stripes{
- icon_state = "SW-out"
- },
-/turf/open/floor/almayer{
- dir = 10;
- icon_state = "sterile_green_side"
- },
-/area/almayer/medical/containment)
"wrT" = (
/obj/effect/decal/warning_stripes{
icon_state = "N";
@@ -73971,6 +74043,14 @@
icon_state = "cargo"
},
/area/almayer/hallways/hangar)
+"wse" = (
+/obj/structure/pipes/standard/simple/hidden/supply{
+ dir = 4
+ },
+/turf/open/floor/almayer{
+ icon_state = "sterile_green"
+ },
+/area/almayer/medical/containment)
"wsD" = (
/obj/structure/pipes/standard/simple/hidden/supply{
dir = 4
@@ -74000,15 +74080,6 @@
},
/turf/open/floor/plating,
/area/almayer/hull/lower_hull/l_f_p)
-"wtk" = (
-/obj/structure/surface/table/almayer,
-/obj/item/storage/donut_box{
- pixel_y = 8
- },
-/turf/open/floor/almayer{
- allow_construction = 0
- },
-/area/almayer/shipboard/brig/processing)
"wty" = (
/obj/effect/decal/warning_stripes{
icon_state = "S"
@@ -74018,26 +74089,6 @@
icon_state = "cargo_arrow"
},
/area/almayer/squads/delta)
-"wtA" = (
-/obj/structure/surface/rack,
-/obj/item/storage/fancy/vials/empty,
-/obj/item/storage/fancy/vials/empty,
-/obj/item/storage/fancy/vials/empty,
-/obj/item/storage/fancy/vials/empty,
-/obj/item/storage/fancy/vials/empty,
-/obj/item/storage/fancy/vials/empty,
-/obj/effect/decal/warning_stripes{
- icon_state = "S"
- },
-/obj/item/device/radio/intercom{
- freerange = 1;
- name = "General Listening Channel";
- pixel_x = -29
- },
-/turf/open/floor/almayer{
- icon_state = "sterile_green"
- },
-/area/almayer/medical/hydroponics)
"wtM" = (
/obj/structure/machinery/light{
unacidable = 1;
@@ -74156,23 +74207,6 @@
icon_state = "cargo"
},
/area/almayer/living/synthcloset)
-"wwa" = (
-/obj/effect/decal/warning_stripes{
- icon_state = "E";
- pixel_x = 1
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "W";
- pixel_x = -1
- },
-/obj/structure/machinery/door/poddoor/almayer/open{
- dir = 4;
- id = "Containment Breach";
- name = "\improper Secure Airlock"
- },
-/obj/structure/window/framed/almayer/white,
-/turf/open/floor/plating,
-/area/almayer/medical/containment)
"wwr" = (
/obj/structure/machinery/cryopod{
layer = 3.1;
@@ -74182,6 +74216,15 @@
icon_state = "cargo"
},
/area/almayer/squads/charlie)
+"wwu" = (
+/obj/structure/machinery/door/airlock/almayer/maint{
+ req_one_access = null;
+ req_one_access_txt = "37"
+ },
+/turf/open/floor/almayer{
+ icon_state = "test_floor4"
+ },
+/area/almayer/living/auxiliary_officer_office)
"wwD" = (
/obj/structure/bed/chair/comfy/orange,
/turf/open/floor/almayer{
@@ -74281,6 +74324,20 @@
icon_state = "bluefull"
},
/area/almayer/command/cichallway)
+"wyv" = (
+/obj/structure/machinery/door_control{
+ id = "ARES JoeCryo";
+ name = "Working Joe Cryogenics Lockdown";
+ pixel_x = -24;
+ pixel_y = -8;
+ req_one_access_txt = "19;200;90;91;92"
+ },
+/obj/effect/landmark/late_join/working_joe,
+/obj/effect/landmark/start/working_joe,
+/turf/open/floor/almayer/no_build{
+ icon_state = "ai_floors"
+ },
+/area/almayer/command/airoom)
"wyK" = (
/obj/structure/pipes/standard/simple/hidden/supply,
/turf/open/floor/almayer{
@@ -74310,12 +74367,6 @@
icon_state = "plating"
},
/area/almayer/command/airoom)
-"wza" = (
-/obj/structure/machinery/cm_vending/clothing/vehicle_crew,
-/turf/open/floor/almayer{
- icon_state = "plate"
- },
-/area/almayer/living/tankerbunks)
"wzg" = (
/obj/structure/bed/chair{
dir = 4
@@ -74498,17 +74549,6 @@
icon_state = "rasputin3"
},
/area/almayer/powered/agent)
-"wEz" = (
-/obj/structure/pipes/standard/simple/hidden/supply{
- dir = 4
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "S"
- },
-/turf/open/floor/almayer{
- icon_state = "mono"
- },
-/area/almayer/medical/hydroponics)
"wEO" = (
/obj/structure/platform_decoration{
dir = 4
@@ -74606,12 +74646,6 @@
icon_state = "red"
},
/area/almayer/shipboard/port_missiles)
-"wGX" = (
-/obj/structure/pipes/standard/manifold/hidden/supply{
- dir = 1
- },
-/turf/open/floor/plating/plating_catwalk,
-/area/almayer/living/tankerbunks)
"wHo" = (
/turf/open/floor/almayer{
icon_state = "emerald"
@@ -74624,16 +74658,6 @@
},
/turf/open/floor/almayer,
/area/almayer/lifeboat_pumps/south1)
-"wIr" = (
-/obj/structure/machinery/cm_vending/clothing/senior_officer,
-/obj/structure/sign/safety/hvac_old{
- pixel_x = 8;
- pixel_y = 32
- },
-/turf/open/floor/almayer{
- icon_state = "cargo"
- },
-/area/almayer/squads/req)
"wIC" = (
/turf/closed/wall/almayer/reinforced,
/area/almayer/shipboard/brig/chief_mp_office)
@@ -74727,6 +74751,23 @@
icon_state = "plate"
},
/area/almayer/command/combat_correspondent)
+"wKP" = (
+/obj/effect/decal/warning_stripes{
+ icon_state = "E";
+ pixel_x = 1
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "W";
+ pixel_x = -1
+ },
+/obj/structure/machinery/door/poddoor/almayer/open{
+ dir = 4;
+ id = "Containment Breach";
+ name = "\improper Secure Airlock"
+ },
+/obj/structure/window/framed/almayer/white,
+/turf/open/floor/plating,
+/area/almayer/medical/containment)
"wLi" = (
/obj/structure/machinery/door_control/airlock{
id = "s_engi";
@@ -74764,6 +74805,15 @@
},
/turf/open/floor/almayer,
/area/almayer/lifeboat_pumps/south2)
+"wLy" = (
+/obj/structure/pipes/vents/pump{
+ name = "Secure Air Vent";
+ welded = 1
+ },
+/turf/open/floor/almayer/research/containment/floor2{
+ dir = 1
+ },
+/area/almayer/medical/containment/cell)
"wLG" = (
/obj/item/bedsheet/blue{
layer = 3.2
@@ -74807,6 +74857,14 @@
icon_state = "kitchen"
},
/area/almayer/living/grunt_rnr)
+"wLN" = (
+/obj/structure/pipes/standard/manifold/hidden/supply{
+ dir = 8
+ },
+/turf/open/floor/almayer{
+ icon_state = "sterile_green"
+ },
+/area/almayer/medical/containment)
"wMm" = (
/obj/structure/machinery/disposal,
/obj/structure/disposalpipe/trunk{
@@ -74824,6 +74882,24 @@
icon_state = "cargo"
},
/area/almayer/squads/alpha)
+"wMI" = (
+/obj/structure/flora/pottedplant{
+ icon_state = "pottedplant_10"
+ },
+/turf/open/floor/almayer{
+ icon_state = "plate"
+ },
+/area/almayer/living/auxiliary_officer_office)
+"wMO" = (
+/obj/structure/machinery/door/poddoor/almayer/open{
+ dir = 4;
+ id = "Containment Breach";
+ name = "\improper Secure Airlock"
+ },
+/turf/open/floor/almayer{
+ icon_state = "test_floor4"
+ },
+/area/almayer/medical/medical_science)
"wNl" = (
/obj/structure/surface/table/almayer,
/obj/item/trash/USCMtray{
@@ -74899,10 +74975,10 @@
},
/area/almayer/shipboard/brig/execution)
"wPz" = (
-/turf/open/floor/almayer/research/containment/corner{
- dir = 1
+/turf/open/floor/almayer{
+ icon_state = "mono"
},
-/area/almayer/medical/containment/cell)
+/area/almayer/medical/hydroponics)
"wPC" = (
/obj/structure/pipes/standard/simple/hidden/supply{
dir = 4
@@ -75023,15 +75099,6 @@
icon_state = "dark_sterile"
},
/area/almayer/engineering/laundry)
-"wSO" = (
-/obj/effect/decal/warning_stripes{
- icon_state = "S"
- },
-/obj/structure/machinery/power/apc/almayer,
-/turf/open/floor/almayer{
- icon_state = "sterile_green"
- },
-/area/almayer/medical/containment)
"wSR" = (
/obj/structure/pipes/standard/manifold/hidden/supply{
dir = 1
@@ -75102,20 +75169,9 @@
/obj/structure/largecrate/random,
/turf/open/floor/almayer,
/area/almayer/engineering/upper_engineering/port)
-"wTN" = (
-/obj/structure/surface/table/almayer,
-/obj/item/storage/box/cups{
- pixel_x = 3;
- pixel_y = 3
- },
-/obj/item/storage/box/donkpockets,
-/obj/structure/machinery/power/apc/almayer{
- dir = 1
- },
-/turf/open/floor/prison{
- icon_state = "kitchen"
- },
-/area/almayer/living/tankerbunks)
+"wTM" = (
+/turf/closed/wall/almayer/research/containment/wall/south,
+/area/almayer/medical/containment/cell)
"wUd" = (
/obj/structure/surface/table/almayer,
/obj/item/storage/box/gloves{
@@ -75318,6 +75374,14 @@
icon_state = "silver"
},
/area/almayer/hallways/aft_hallway)
+"wWm" = (
+/turf/open/floor/almayer/research/containment/corner_var1{
+ icon_state = "containment_corner_variant_2"
+ },
+/area/almayer/medical/containment/cell)
+"wWz" = (
+/turf/closed/wall/almayer/research/containment/wall/north,
+/area/almayer/medical/containment/cell)
"wWC" = (
/obj/structure/flora/pottedplant{
icon_state = "pottedplant_21"
@@ -75349,6 +75413,17 @@
},
/turf/open/floor/almayer,
/area/almayer/hallways/port_hallway)
+"wWR" = (
+/obj/structure/machinery/medical_pod/bodyscanner{
+ dir = 8
+ },
+/obj/structure/machinery/status_display{
+ pixel_y = 30
+ },
+/turf/open/floor/almayer{
+ icon_state = "mono"
+ },
+/area/almayer/medical/medical_science)
"wWT" = (
/turf/open/floor/almayer{
icon_state = "test_floor4"
@@ -75359,12 +75434,12 @@
/obj/effect/landmark/late_join/delta,
/turf/open/floor/plating/plating_catwalk,
/area/almayer/squads/delta)
-"wXz" = (
-/obj/structure/machinery/recharge_station,
-/turf/open/floor/almayer/no_build{
- icon_state = "ai_floors"
+"wXv" = (
+/obj/structure/prop/invuln/joey,
+/turf/open/floor/almayer{
+ icon_state = "plate"
},
-/area/almayer/command/airoom)
+/area/almayer/hull/lower_hull/l_m_s)
"wXH" = (
/obj/structure/bed/chair{
dir = 1
@@ -75497,6 +75572,21 @@
icon_state = "plate"
},
/area/almayer/hull/upper_hull/u_m_p)
+"xav" = (
+/obj/structure/surface/table/almayer,
+/obj/structure/machinery/microwave{
+ pixel_y = 7
+ },
+/obj/item/storage/box/cups{
+ pixel_x = 3
+ },
+/obj/item/storage/box/donkpockets{
+ pixel_y = 19
+ },
+/turf/open/floor/almayer{
+ icon_state = "plate"
+ },
+/area/almayer/living/auxiliary_officer_office)
"xaC" = (
/obj/structure/surface/table/reinforced/prison,
/obj/item/tool/kitchen/utensil/pfork{
@@ -75583,13 +75673,6 @@
icon_state = "plate"
},
/area/almayer/living/gym)
-"xbz" = (
-/obj/structure/ladder{
- height = 2;
- id = "cicladder2"
- },
-/turf/open/floor/plating/almayer,
-/area/almayer/medical/medical_science)
"xbN" = (
/obj/structure/surface/rack{
density = 0;
@@ -75619,24 +75702,6 @@
icon_state = "plate"
},
/area/almayer/hull/upper_hull/u_a_p)
-"xdt" = (
-/obj/structure/surface/table/almayer,
-/obj/item/storage/box/gloves{
- pixel_x = -4;
- pixel_y = 13
- },
-/obj/item/storage/box/masks{
- pixel_x = -6;
- pixel_y = 4
- },
-/obj/item/tool/hand_labeler{
- pixel_x = 5;
- pixel_y = 3
- },
-/turf/open/floor/almayer{
- icon_state = "mono"
- },
-/area/almayer/medical/medical_science)
"xdx" = (
/obj/structure/surface/rack,
/obj/item/storage/firstaid/regular/empty,
@@ -75657,17 +75722,6 @@
icon_state = "test_floor4"
},
/area/almayer/hull/upper_hull/u_m_p)
-"xeH" = (
-/obj/item/device/radio/intercom{
- freerange = 1;
- name = "General Listening Channel";
- pixel_y = 28
- },
-/obj/structure/machinery/photocopier,
-/turf/open/floor/almayer{
- icon_state = "mono"
- },
-/area/almayer/medical/medical_science)
"xeP" = (
/obj/structure/pipes/standard/simple/hidden/supply{
dir = 4
@@ -75823,36 +75877,32 @@
icon_state = "plate"
},
/area/almayer/hull/lower_hull/l_m_p)
-"xhn" = (
-/obj/structure/largecrate/random/case/double,
-/turf/open/floor/almayer{
- icon_state = "mono"
- },
-/area/almayer/lifeboat_pumps/south1)
-"xhw" = (
-/obj/structure/machinery/shower{
- pixel_y = 16
+"xgS" = (
+/obj/structure/largecrate/supply/supplies/mre{
+ desc = "A supply crate containing everything you need to stop a CLF uprising.";
+ name = "\improper USCM crate 'FOB supplies'"
},
-/obj/structure/sign/safety/biolab{
- pixel_x = -9;
+/obj/structure/sign/arcturianstopsign{
pixel_y = 32
},
-/obj/structure/sign/safety/biohazard{
- pixel_x = 25;
- pixel_y = 32
+/obj/item/folded_tent/big{
+ pixel_x = -6;
+ pixel_y = 10
},
-/obj/structure/window/reinforced{
- dir = 4;
- health = 80;
- pixel_y = 6
+/obj/item/storage/box/mousetraps{
+ pixel_x = 3;
+ pixel_y = 12
},
-/obj/structure/window/reinforced{
- dir = 8;
- health = 80;
- pixel_y = 6
+/turf/open/floor/almayer{
+ icon_state = "plate"
},
-/turf/open/floor/plating/plating_catwalk,
-/area/almayer/medical/medical_science)
+/area/almayer/living/port_emb)
+"xhn" = (
+/obj/structure/largecrate/random/case/double,
+/turf/open/floor/almayer{
+ icon_state = "mono"
+ },
+/area/almayer/lifeboat_pumps/south1)
"xhx" = (
/obj/structure/machinery/disposal,
/obj/structure/disposalpipe/trunk{
@@ -75901,19 +75951,6 @@
},
/turf/open/floor/almayer,
/area/almayer/engineering/engine_core)
-"xiU" = (
-/obj/effect/decal/warning_stripes{
- icon_state = "E";
- pixel_x = 1
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "W";
- pixel_x = -1
- },
-/turf/open/floor/almayer{
- icon_state = "mono"
- },
-/area/almayer/medical/hydroponics)
"xjw" = (
/obj/structure/pipes/standard/simple/hidden/supply{
dir = 9
@@ -75984,6 +76021,26 @@
icon_state = "greencorner"
},
/area/almayer/hallways/port_hallway)
+"xkR" = (
+/obj/structure/prop/invuln/overhead_pipe{
+ pixel_x = 12
+ },
+/obj/structure/prop/invuln/overhead_pipe{
+ pixel_x = 12;
+ pixel_y = 12
+ },
+/turf/closed/wall/almayer,
+/area/almayer/living/tankerbunks)
+"xkW" = (
+/obj/structure/machinery/door/airlock/almayer/generic{
+ dir = 1;
+ name = "\improper Tanker Quarters";
+ req_one_access_txt = "19;27"
+ },
+/turf/open/floor/almayer{
+ icon_state = "test_floor4"
+ },
+/area/almayer/living/tankerbunks)
"xlk" = (
/obj/structure/surface/table/almayer,
/turf/open/floor/almayer,
@@ -76106,22 +76163,6 @@
/obj/structure/largecrate/random/barrel/yellow,
/turf/open/floor/plating/plating_catwalk,
/area/almayer/hull/lower_hull/l_m_s)
-"xoa" = (
-/obj/structure/machinery/light/containment{
- dir = 4
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "E";
- pixel_x = 1
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "N";
- pixel_y = 1
- },
-/turf/open/floor/almayer/research/containment/corner_var1{
- dir = 4
- },
-/area/almayer/medical/containment/cell)
"xoe" = (
/obj/structure/pipes/standard/simple/hidden/supply{
dir = 4
@@ -76246,6 +76287,25 @@
icon_state = "green"
},
/area/almayer/hallways/starboard_hallway)
+"xqp" = (
+/obj/structure/machinery/body_scanconsole{
+ dir = 8;
+ layer = 3.1
+ },
+/obj/structure/disposalpipe/trunk{
+ dir = 1
+ },
+/obj/structure/machinery/disposal/delivery{
+ density = 0;
+ desc = "A pneumatic delivery unit. Sends items to the requisitions.";
+ icon_state = "delivery_med";
+ name = "Requisitions Delivery Unit";
+ pixel_y = 28
+ },
+/turf/open/floor/almayer{
+ icon_state = "mono"
+ },
+/area/almayer/medical/medical_science)
"xqv" = (
/obj/structure/bed/sofa/south/white/right,
/turf/open/floor/almayer{
@@ -76298,6 +76358,20 @@
icon_state = "red"
},
/area/almayer/hull/upper_hull/u_a_p)
+"xsa" = (
+/obj/structure/bed/chair,
+/obj/structure/extinguisher_cabinet{
+ pixel_y = 26
+ },
+/obj/structure/sign/safety/cryo{
+ pixel_x = 21;
+ pixel_y = 27
+ },
+/turf/open/floor/almayer{
+ dir = 1;
+ icon_state = "redcorner"
+ },
+/area/almayer/shipboard/brig/processing)
"xsl" = (
/obj/structure/machinery/alarm/almayer{
dir = 1
@@ -76379,6 +76453,34 @@
},
/turf/open/floor/plating/plating_catwalk,
/area/almayer/hull/upper_hull/u_f_p)
+"xuE" = (
+/obj/structure/machinery/door/airlock/almayer/research/glass/reinforced{
+ dir = 1;
+ id = "Containment Cell 5";
+ locked = 1;
+ name = "\improper Containment Cell 5"
+ },
+/obj/structure/machinery/door/poddoor/shutters/almayer{
+ id = "Containment Cell 5";
+ name = "\improper Containment Cell 5";
+ unacidable = 1
+ },
+/obj/structure/pipes/standard/simple/hidden/supply,
+/obj/effect/decal/warning_stripes{
+ icon_state = "W"
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "E";
+ pixel_x = 1
+ },
+/obj/structure/machinery/door/poddoor/almayer/open{
+ id = "Containment Breach";
+ name = "\improper Secure Airlock"
+ },
+/turf/open/floor/almayer{
+ icon_state = "test_floor4"
+ },
+/area/almayer/medical/containment/cell)
"xuI" = (
/obj/structure/sign/safety/water{
pixel_x = 8;
@@ -76637,20 +76739,6 @@
icon_state = "mono"
},
/area/almayer/lifeboat_pumps/south2)
-"xye" = (
-/obj/structure/pipes/standard/simple/hidden/supply{
- dir = 4
- },
-/obj/structure/machinery/door/firedoor/border_only/almayer,
-/obj/effect/decal/warning_stripes{
- icon_state = "NE-out";
- pixel_x = 1;
- pixel_y = 1
- },
-/turf/open/floor/almayer{
- icon_state = "test_floor4"
- },
-/area/almayer/shipboard/brig/general_equipment)
"xyk" = (
/obj/structure/disposalpipe/segment,
/obj/structure/pipes/standard/simple/hidden/supply,
@@ -76659,6 +76747,23 @@
"xys" = (
/turf/closed/wall/almayer,
/area/almayer/shipboard/brig/main_office)
+"xyt" = (
+/obj/structure/surface/table/almayer,
+/obj/item/storage/toolbox/mechanical{
+ pixel_x = 3;
+ pixel_y = 12
+ },
+/obj/item/storage/toolbox/electrical{
+ pixel_y = 5
+ },
+/obj/item/folder/white{
+ layer = 2.9;
+ pixel_x = -8
+ },
+/turf/open/floor/almayer{
+ icon_state = "mono"
+ },
+/area/almayer/medical/hydroponics)
"xyw" = (
/turf/open/floor/almayer{
icon_state = "plate"
@@ -76707,31 +76812,8 @@
},
/turf/open/floor/almayer,
/area/almayer/shipboard/brig/cells)
-"xzA" = (
-/obj/structure/machinery/door/poddoor/shutters/almayer{
- id = "ARES JoeCryo";
- name = "\improper ARES Core Shutters";
- plane = -7
- },
-/turf/open/floor/almayer/no_build{
- icon_state = "test_floor4"
- },
-/area/almayer/command/airoom)
-"xzP" = (
-/obj/structure/pipes/standard/simple/hidden/supply{
- dir = 4
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "SW-out";
- pixel_y = -1
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "NW-out";
- pixel_y = 1
- },
-/turf/open/floor/almayer/research/containment/entrance{
- dir = 8
- },
+"xAe" = (
+/turf/closed/wall/almayer/research/containment/wall/corner,
/area/almayer/medical/containment/cell)
"xAt" = (
/obj/structure/bed/chair/comfy/charlie{
@@ -76909,18 +76991,6 @@
icon_state = "plate"
},
/area/almayer/living/offices)
-"xFe" = (
-/obj/effect/decal/warning_stripes{
- icon_state = "N";
- pixel_y = 1
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "W"
- },
-/turf/open/floor/almayer/research/containment/corner_var1{
- icon_state = "containment_corner_variant_2"
- },
-/area/almayer/medical/containment/cell)
"xFs" = (
/obj/structure/machinery/light{
unacidable = 1;
@@ -77123,6 +77193,15 @@
allow_construction = 0
},
/area/almayer/shipboard/brig/processing)
+"xIG" = (
+/obj/structure/surface/table/almayer,
+/obj/structure/machinery/computer/cameras/almayer_network{
+ dir = 8
+ },
+/turf/open/floor/almayer{
+ allow_construction = 0
+ },
+/area/almayer/shipboard/brig/processing)
"xIQ" = (
/obj/effect/decal/warning_stripes{
icon_state = "S"
@@ -77358,6 +77437,15 @@
},
/turf/open/floor/almayer,
/area/almayer/hallways/starboard_hallway)
+"xOo" = (
+/obj/structure/pipes/standard/simple/hidden/supply{
+ dir = 10
+ },
+/turf/open/floor/almayer{
+ dir = 4;
+ icon_state = "silver"
+ },
+/area/almayer/living/auxiliary_officer_office)
"xOL" = (
/obj/structure/machinery/disposal,
/obj/structure/disposalpipe/trunk,
@@ -77366,6 +77454,21 @@
},
/turf/open/floor/plating/plating_catwalk,
/area/almayer/living/grunt_rnr)
+"xOY" = (
+/obj/structure/surface/table/reinforced/prison,
+/obj/structure/closet/secure_closet/surgical{
+ pixel_x = -30
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "S"
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "W"
+ },
+/turf/open/floor/almayer/research/containment/corner{
+ dir = 4
+ },
+/area/almayer/medical/containment/cell)
"xPg" = (
/obj/structure/pipes/standard/simple/hidden/supply{
dir = 9
@@ -77375,15 +77478,6 @@
icon_state = "green"
},
/area/almayer/hallways/starboard_hallway)
-"xPx" = (
-/obj/structure/bed/chair/bolted{
- dir = 8
- },
-/turf/open/floor/almayer{
- dir = 1;
- icon_state = "red"
- },
-/area/almayer/shipboard/brig/processing)
"xPE" = (
/obj/structure/largecrate/random/barrel/white,
/turf/open/floor/plating/plating_catwalk,
@@ -77400,6 +77494,18 @@
},
/turf/open/floor/almayer,
/area/almayer/living/pilotbunks)
+"xQm" = (
+/turf/open/floor/almayer/research/containment/floor2{
+ dir = 1
+ },
+/area/almayer/medical/containment/cell)
+"xQu" = (
+/obj/structure/bed/chair,
+/turf/open/floor/almayer{
+ dir = 4;
+ icon_state = "redcorner"
+ },
+/area/almayer/shipboard/brig/processing)
"xQD" = (
/obj/structure/surface/table/almayer,
/obj/structure/machinery/cm_vending/sorted/medical/wall_med{
@@ -77528,6 +77634,24 @@
icon_state = "plate"
},
/area/almayer/hull/lower_hull/l_f_p)
+"xSp" = (
+/obj/structure/machinery/cm_vending/sorted/medical/blood{
+ density = 0;
+ pixel_y = 16
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "NE-out";
+ pixel_x = 1;
+ pixel_y = 1
+ },
+/obj/structure/disposalpipe/segment{
+ dir = 4
+ },
+/turf/open/floor/almayer{
+ dir = 5;
+ icon_state = "sterile_green_side"
+ },
+/area/almayer/medical/medical_science)
"xSw" = (
/obj/structure/machinery/door/firedoor/border_only/almayer{
dir = 2
@@ -77598,6 +77722,19 @@
icon_state = "red"
},
/area/almayer/squads/alpha)
+"xSY" = (
+/obj/structure/machinery/light{
+ dir = 1
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "N";
+ pixel_y = 1
+ },
+/turf/open/floor/almayer{
+ dir = 1;
+ icon_state = "sterile_green_corner"
+ },
+/area/almayer/medical/containment)
"xTp" = (
/obj/structure/disposalpipe/segment{
dir = 4
@@ -77752,10 +77889,19 @@
icon_state = "orange"
},
/area/almayer/squads/alpha_bravo_shared)
-"xWn" = (
-/obj/effect/landmark/start/warrant,
-/turf/open/floor/plating/plating_catwalk,
-/area/almayer/shipboard/brig/cryo)
+"xWm" = (
+/obj/structure/sign/safety/hazard{
+ pixel_x = -17;
+ pixel_y = -8
+ },
+/obj/structure/sign/safety/ammunition{
+ pixel_x = -17;
+ pixel_y = 7
+ },
+/turf/open/floor/almayer{
+ icon_state = "plate"
+ },
+/area/almayer/living/auxiliary_officer_office)
"xWo" = (
/obj/structure/machinery/door/airlock/almayer/maint{
req_one_access_txt = "19;21"
@@ -77782,21 +77928,6 @@
icon_state = "test_floor4"
},
/area/almayer/hull/upper_hull/u_m_p)
-"xWJ" = (
-/obj/structure/pipes/standard/simple/hidden/supply,
-/obj/effect/decal/warning_stripes{
- icon_state = "NE-out";
- pixel_x = 1;
- pixel_y = 1
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "NW-out";
- pixel_y = 1
- },
-/turf/open/floor/almayer{
- icon_state = "dark_sterile"
- },
-/area/almayer/medical/containment)
"xWO" = (
/obj/item/stack/catwalk,
/obj/structure/cable/heavyduty{
@@ -77824,6 +77955,16 @@
icon_state = "orange"
},
/area/almayer/engineering/upper_engineering/port)
+"xXh" = (
+/turf/closed/wall/almayer/research/containment/wall/west,
+/area/almayer/medical/containment/cell)
+"xXr" = (
+/obj/item/reagent_container/glass/beaker/bluespace,
+/obj/structure/machinery/chem_dispenser/research,
+/turf/open/floor/almayer{
+ icon_state = "mono"
+ },
+/area/almayer/medical/medical_science)
"xXu" = (
/obj/structure/pipes/vents/pump{
dir = 1
@@ -77834,27 +77975,6 @@
},
/turf/open/floor/almayer,
/area/almayer/command/lifeboat)
-"xYc" = (
-/obj/effect/decal/warning_stripes{
- icon_state = "N";
- pixel_y = 1
- },
-/obj/structure/surface/rack{
- density = 0;
- pixel_y = 16
- },
-/obj/item/storage/xeno_tag_case/full{
- pixel_y = 15
- },
-/obj/item/device/camera{
- pixel_x = -3;
- pixel_y = 22
- },
-/turf/open/floor/almayer{
- dir = 1;
- icon_state = "sterile_green_side"
- },
-/area/almayer/medical/containment)
"xYf" = (
/obj/structure/machinery/cm_vending/clothing/sea,
/turf/open/floor/almayer{
@@ -77862,6 +77982,22 @@
icon_state = "plating"
},
/area/almayer/shipboard/sea_office)
+"xYj" = (
+/obj/structure/machinery/power/apc/almayer{
+ dir = 8
+ },
+/obj/structure/surface/rack,
+/obj/effect/spawner/random/toolbox,
+/obj/structure/machinery/computer/working_joe{
+ dir = 4;
+ pixel_x = -17;
+ pixel_y = 14
+ },
+/turf/open/floor/almayer{
+ dir = 10;
+ icon_state = "orange"
+ },
+/area/almayer/shipboard/brig/cells)
"xYB" = (
/obj/structure/sign/safety/storage{
pixel_x = 8;
@@ -78043,6 +78179,14 @@
},
/turf/open/floor/plating/plating_catwalk,
/area/almayer/squads/delta)
+"ycj" = (
+/obj/structure/machinery/medical_pod/sleeper{
+ dir = 8
+ },
+/turf/open/floor/almayer{
+ icon_state = "mono"
+ },
+/area/almayer/medical/medical_science)
"ycm" = (
/obj/structure/pipes/standard/simple/hidden/supply{
dir = 6
@@ -78082,20 +78226,6 @@
icon_state = "plate"
},
/area/almayer/hull/lower_hull/l_a_p)
-"ydy" = (
-/obj/structure/disposalpipe/segment{
- dir = 1;
- icon_state = "pipe-c"
- },
-/obj/effect/decal/warning_stripes{
- icon_state = "W";
- pixel_x = -1
- },
-/turf/open/floor/almayer{
- dir = 8;
- icon_state = "sterile_green_side"
- },
-/area/almayer/medical/medical_science)
"ydz" = (
/obj/structure/pipes/standard/manifold/hidden/supply{
dir = 1
@@ -78104,6 +78234,15 @@
icon_state = "mono"
},
/area/almayer/lifeboat_pumps/north2)
+"ydE" = (
+/obj/effect/decal/warning_stripes{
+ icon_state = "E";
+ pixel_x = 1
+ },
+/turf/open/floor/almayer{
+ icon_state = "mono"
+ },
+/area/almayer/medical/hydroponics)
"ydI" = (
/obj/effect/decal/warning_stripes{
icon_state = "W";
@@ -78291,13 +78430,6 @@
icon_state = "ai_floors"
},
/area/almayer/command/airoom)
-"yiu" = (
-/obj/item/reagent_container/glass/beaker/bluespace,
-/obj/structure/machinery/chem_dispenser/research,
-/turf/open/floor/almayer{
- icon_state = "mono"
- },
-/area/almayer/medical/medical_science)
"yiC" = (
/obj/structure/surface/table/almayer,
/obj/structure/flora/pottedplant{
@@ -78391,6 +78523,32 @@
icon_state = "cargo"
},
/area/almayer/hull/lower_hull/l_m_s)
+"ykL" = (
+/obj/effect/landmark/start/warrant,
+/turf/open/floor/plating/plating_catwalk,
+/area/almayer/shipboard/brig/cryo)
+"ylc" = (
+/obj/effect/decal/warning_stripes{
+ icon_state = "E";
+ pixel_x = 1
+ },
+/obj/effect/decal/warning_stripes{
+ icon_state = "W";
+ pixel_x = -1
+ },
+/obj/structure/machinery/door/poddoor/almayer/open{
+ dir = 4;
+ id = "Containment Breach";
+ name = "\improper Secure Airlock"
+ },
+/obj/structure/machinery/door/airlock/almayer/research/reinforced{
+ dir = 8;
+ name = "\improper Containment Airlock"
+ },
+/turf/open/floor/almayer{
+ icon_state = "test_floor4"
+ },
+/area/almayer/medical/containment)
"yle" = (
/obj/effect/landmark/start/marine/engineer/delta,
/obj/effect/landmark/late_join/delta,
@@ -78398,6 +78556,12 @@
icon_state = "plate"
},
/area/almayer/squads/delta)
+"ylg" = (
+/obj/structure/machinery/cryopod,
+/turf/open/floor/almayer/no_build{
+ icon_state = "ai_floors"
+ },
+/area/almayer/command/airoom)
"ylm" = (
/obj/structure/machinery/door/firedoor/border_only/almayer,
/obj/structure/disposalpipe/segment{
@@ -87203,11 +87367,11 @@ pCi
pCi
rPC
wcn
-cpu
-cpu
-cpu
-cpu
-cpu
+meD
+meD
+meD
+meD
+meD
qmC
vBm
vBm
@@ -87406,10 +87570,10 @@ pCi
ext
rPC
mUQ
-cpu
+meD
vrM
kta
-sTs
+szx
tpn
eRL
rag
@@ -87609,12 +87773,12 @@ pCi
oCL
wcn
fuB
-cpu
+meD
aeo
sIw
-bNv
+lxE
tpn
-hTB
+oyW
bua
gcT
gcT
@@ -87811,22 +87975,22 @@ aag
pCi
wcn
rPC
-cpu
-cpu
+meD
+meD
vrM
-uak
-dwN
+lgV
+omh
tpn
-jDz
+sNh
xHe
gqW
gqW
lCM
ugT
sgi
-wtk
+lJX
bju
-pxE
+bLN
oRk
kxM
pyj
@@ -88014,23 +88178,23 @@ aag
ahE
wcn
rPC
-cpu
-kcA
-jmv
-jmv
-jmv
-rvZ
+meD
+jjC
+dWx
+dWx
+dWx
+dFx
eRL
cdk
soD
tdv
-vXS
+mJF
wdr
sgi
-ckC
-jCW
-dUW
-lWy
+vbx
+hgQ
+nHh
+dBy
xTp
pyj
hTt
@@ -88217,13 +88381,13 @@ aag
ahE
rPC
wcn
-cpu
-kcA
-jmv
-kJW
-kJW
+meD
+jjC
+dWx
+kME
+kME
tpn
-drW
+pWD
mLJ
bua
xys
@@ -88231,9 +88395,9 @@ xys
xys
sgi
sgi
-gFj
-onA
-puU
+aXK
+xIG
+ijA
xTp
pyj
kfN
@@ -88420,7 +88584,7 @@ aag
ahE
nBc
wcn
-cpu
+meD
tpn
tpn
tpn
@@ -88430,13 +88594,13 @@ hZU
mLJ
fkn
sgi
-lEr
-lWj
-wnm
+hwo
+rZA
+lvo
sgi
-heF
-dMR
-dMR
+mwj
+sdG
+sdG
kNi
pyj
opN
@@ -88634,13 +88798,13 @@ mLJ
pYF
sgi
bju
-eLK
-eLK
-mTy
+sPj
+sPj
+fqg
wdF
wdF
wdF
-hqt
+gFl
pyj
xIw
kVZ
@@ -88836,11 +89000,11 @@ lzx
mLJ
ugT
sgi
-eoD
-eoD
-eoD
+sjt
+sjt
+sjt
sgi
-okH
+xQu
jFR
oRk
kxM
@@ -89039,11 +89203,11 @@ eRL
mLJ
pWG
sgi
-xPx
-sLH
-sLH
+lgG
+tYu
+tYu
sgi
-fnh
+xsa
lMc
ycr
kge
@@ -89241,11 +89405,11 @@ eRL
eRL
mLJ
eRL
-pvI
-knz
-fAU
+iPg
+oGF
+faK
oRk
-pvI
+iPg
wdF
lMc
eOW
@@ -91169,9 +91333,9 @@ uNL
tVf
mGL
oxp
-bSv
-bWJ
-nar
+lGd
+uwC
+tMp
alU
bXo
oCi
@@ -91285,7 +91449,7 @@ lfW
emp
vli
rSH
-dFM
+xYj
naB
aSS
pHp
@@ -91372,9 +91536,9 @@ mGL
poR
mGL
pNp
-bSv
-bTS
-bIA
+lGd
+twt
+rIa
alU
uDn
bKf
@@ -91571,13 +91735,13 @@ hJp
oPI
uNL
hJp
-bSv
-bSv
-iqp
-bSv
-bSv
-jgl
-bSv
+lGd
+lGd
+wwu
+lGd
+lGd
+rbs
+lGd
alU
alU
alU
@@ -91774,13 +91938,13 @@ mGL
dqd
uNL
hJp
-bSv
-bBD
-bTS
-wza
-lxo
-qcy
-bSv
+lGd
+hOj
+twt
+twt
+xWm
+hfV
+lGd
bAg
edM
egq
@@ -91798,11 +91962,11 @@ jjs
jjs
jjs
jYd
-bzy
-fIH
-nqU
-vhq
-nqU
+bSv
+bSv
+bSv
+bSv
+bSv
nqU
vRz
aag
@@ -91977,13 +92141,13 @@ pzZ
ijp
uNL
mGL
-bSv
-bTR
-bTH
-oQM
-hum
-bTH
-bSv
+lGd
+vuu
+cRk
+krU
+aLz
+aLz
+lGd
bzA
bBB
bBB
@@ -92001,11 +92165,11 @@ afz
afz
afz
iDd
-bzy
-rix
-wlL
-vhq
-vhq
+xkW
+bTH
+ouD
+pAn
+bSv
pch
vRz
aag
@@ -92180,13 +92344,13 @@ uNL
uNL
uNL
mGL
-bSv
-lxW
-bTH
-wGX
-bFr
-ppe
-bSv
+lGd
+vZf
+aBT
+poM
+pFw
+pas
+lGd
bzA
bKh
bKh
@@ -92204,11 +92368,11 @@ afz
afz
afz
iDd
-bzy
-mzo
-mzo
-mzo
-vhq
+bSv
+vMC
+bTH
+bTV
+bSv
nqU
vRz
aag
@@ -92383,13 +92547,13 @@ qDv
aLk
uNL
xCR
-bSv
-wTN
-bTH
-rgK
-bTH
-iYe
-bJl
+lGd
+fxA
+tqN
+lJE
+jhr
+xOo
+ufG
bKa
bKa
bKa
@@ -92407,11 +92571,11 @@ afC
afz
afz
bRx
-bzy
-cEY
-fIH
-mzo
-rpW
+bSv
+iLC
+bTH
+bSv
+xkR
kAs
vRz
aag
@@ -92586,13 +92750,13 @@ kmM
eqk
uNL
hJp
-bSv
-oMi
-bAZ
-bTS
-bTS
-niR
-bSv
+lGd
+egI
+jnh
+twt
+twt
+wMI
+lGd
bzA
bKh
bKh
@@ -92610,11 +92774,11 @@ afz
afz
afz
iDd
-bzy
-cey
-eZX
-mzo
-ehZ
+bSv
+aIX
+aIX
+bSv
+kSh
eXo
vRz
aag
@@ -92789,13 +92953,13 @@ hJp
hJp
uNL
hJp
-bSv
-bSv
-bSv
-sXE
-bSv
-bSv
-bSv
+lGd
+lGd
+lGd
+pcm
+lGd
+lGd
+lGd
bzA
bBB
bBB
@@ -92813,10 +92977,10 @@ afz
afz
afz
iDd
-bzy
-vhq
-wqE
-mzo
+bSv
+cop
+cop
+bSv
vhq
nqU
vRz
@@ -92891,8 +93055,8 @@ cQv
cQv
cQv
cQv
-xye
-vam
+dmp
+oYf
cQv
wZM
hUW
@@ -92992,13 +93156,13 @@ aSY
hJp
uNL
hJp
-coo
-bSv
-bTU
-gZK
-aIX
-aIX
-bSv
+dqd
+lGd
+gFb
+ewV
+twt
+dMe
+lGd
bAr
bKh
bBB
@@ -93016,10 +93180,10 @@ eGg
eGg
eGg
jYd
-bzy
-nqU
-jPz
-mzo
+bSv
+kBY
+bTn
+bSv
vhq
vhq
vRz
@@ -93195,13 +93359,13 @@ uNL
lgY
uNL
mGL
-cop
-bSv
-onY
-wdf
-cop
-cop
-bSv
+hJp
+lGd
+uuw
+nna
+twt
+lGd
+lGd
bzy
bKh
bBB
@@ -93219,10 +93383,10 @@ hdh
hdh
hdh
bRD
-bzy
-qOU
-mzo
-mzo
+bSv
+bSv
+bSv
+bSv
mzo
qOU
vRz
@@ -93398,13 +93562,13 @@ crc
hJp
qee
mGL
-hzM
-bSv
-bTV
-utK
-kBY
-bTn
-bSv
+weG
+lGd
+xav
+rbL
+tae
+lGd
+lGd
bzy
bXs
bBB
@@ -93500,7 +93664,7 @@ wcn
vxM
vpI
vpI
-hIw
+jFG
gTl
vxM
bmz
@@ -93601,13 +93765,13 @@ aQv
aQv
bcm
bcm
-bSv
-bSv
-bSv
-bSv
-bSv
-bSv
-bSv
+lGd
+lGd
+lGd
+lGd
+lGd
+lGd
+lGd
bzy
bZL
cat
@@ -93907,7 +94071,7 @@ vxM
vxM
wVV
tXs
-uJV
+ukN
vxM
vkR
wsD
@@ -94311,9 +94475,9 @@ eKM
ake
rPC
vxM
-mnV
-opU
-xWn
+rFb
+dMY
+ykL
vxM
xDn
pEB
@@ -96366,8 +96530,8 @@ qnh
aKa
rrB
aGr
-aGr
-tKr
+nLW
+trM
uNg
cLN
aES
@@ -96569,8 +96733,8 @@ gtp
qfA
tYX
tpD
-tpD
-iTD
+qPl
+vJU
vCO
vCO
jxB
@@ -98985,7 +99149,7 @@ agj
aic
aov
wVW
-frf
+asQ
awG
ayI
wVW
@@ -99602,7 +99766,7 @@ aKF
alX
hxm
deD
-tUo
+syD
aIf
aEB
wVW
@@ -100617,7 +100781,7 @@ aCj
ayK
aAd
aAP
-hvv
+sll
ayu
aCj
bYY
@@ -104387,7 +104551,7 @@ cbR
ccr
hcC
lEW
-cRe
+aqd
bWM
bWM
ask
@@ -106914,7 +107078,7 @@ ajl
wqW
awj
dDL
-ijF
+aLZ
ajl
aCp
alD
@@ -108337,8 +108501,8 @@ vOy
vOy
vOy
vOy
-ijS
-iMA
+wMO
+wky
ajl
hon
ajt
@@ -108425,7 +108589,7 @@ kan
ihw
beW
lkW
-pss
+biF
vhX
akQ
rlZ
@@ -108525,23 +108689,23 @@ jKK
pjM
aim
vOy
-dIq
-ivJ
-joF
-wtA
-uPS
+nos
+fcy
+drT
+ipQ
+lZZ
vOy
-xeH
-ptB
-lrw
-txf
-liX
-dai
-gJW
+oDL
+nEH
+vAQ
+qIL
+ncE
+vWt
+kNx
vOy
-dMS
-aqR
-ray
+ayX
+kXw
+pxo
ajl
kHT
pjM
@@ -108728,23 +108892,23 @@ atL
akV
atL
vOy
-okt
-ppq
-sIO
-nnK
-pJw
+oNp
+aSn
+lYL
+pNP
+kCj
vOy
-lZV
-eCa
-mYu
-eCa
-dvI
-tJh
-yiu
+nLI
+rDV
+dwr
+rDV
+mTd
+gQF
+xXr
vOy
-bFK
-aqR
-ray
+niL
+kXw
+pxo
ajl
atL
bkQ
@@ -108756,8 +108920,8 @@ iBt
iBt
iUZ
awE
-pQu
-kmL
+gZv
+gRS
qVM
csz
qVM
@@ -108931,24 +109095,24 @@ ago
snm
cwJ
vOy
-iWz
-eYq
-gsr
-fAq
-jYM
+anz
+vgx
+hme
+mzq
+qJy
vOy
-ngo
-ngo
-eag
-ngo
-gqZ
-ngo
-bTh
-kTx
-oeg
-aqR
-ray
-oJg
+vti
+vti
+fBO
+vti
+gGx
+vti
+lid
+lJv
+aCC
+kXw
+pxo
+asn
ago
asW
cwJ
@@ -108959,7 +109123,7 @@ iBt
iBt
iBt
awE
-cvj
+pQu
rjH
qVM
vGk
@@ -109134,24 +109298,24 @@ bYe
amO
avj
vOy
-rfF
-cXt
-tyD
-pIW
+awQ
+oLU
+thN
+vDa
vOy
vOy
-map
-aNF
-hVS
-qnW
-qnW
-ydy
-mJV
-kTx
-veb
-aqR
-ray
-oJg
+qfy
+inL
+oiY
+ueJ
+ueJ
+oDi
+trF
+lJv
+edv
+kXw
+pxo
+asn
ayT
akU
avj
@@ -109162,8 +109326,8 @@ iBt
iBt
iBt
awE
-jZU
-iiz
+cvj
+rAc
qVM
oLw
qVM
@@ -109337,24 +109501,24 @@ ahM
kSJ
avj
vOy
-txh
-lmU
-kMV
-tZQ
-iLt
-jmm
-vWZ
-kCE
-hyH
-jRD
-jZE
-qnL
-qPW
-kTx
-ozy
-aqR
-ray
-oJg
+hng
+dnC
+hPN
+vCk
+qEn
+qam
+riE
+gAS
+lMv
+dVu
+eSo
+qmD
+aIC
+lJv
+aCt
+kXw
+pxo
+asn
ayT
aii
avm
@@ -109540,23 +109704,23 @@ ayT
ajt
avm
vOy
-ijh
-bDb
-ttU
-knv
-dpd
-jFa
-jFa
-lbR
-avF
-oeg
-aqR
-oMU
-dYx
+xyt
+wiW
+tOr
+dBj
+wei
+kBP
+kBP
+jsx
+tjn
+aCC
+kXw
+pQP
+qAT
vOy
vOy
-fdO
-fpG
+mFq
+vqW
ajl
ybf
aii
@@ -109743,24 +109907,24 @@ aTL
ajt
avj
vOy
-uvF
-pyx
-slQ
-pSI
+iYf
+bIM
+wPz
+iUo
vOy
-oTh
-hqG
-dLp
-avF
-oeg
-aqR
-mEt
-gmp
-eaN
-qXj
-sLk
-fln
-uKo
+xqp
+lzA
+vkp
+tjn
+aCC
+kXw
+vtm
+emK
+rjb
+hPe
+sdu
+btC
+vLj
ahM
kSJ
avj
@@ -109946,24 +110110,24 @@ ayT
akU
avj
vOy
-akq
-bDb
-slQ
-epJ
-qJy
-cUA
-frV
-dLp
-avG
-nPH
-hHW
-rZe
-jRD
-jRD
-tkL
-jRD
-lyo
-tOG
+mTp
+wiW
+wPz
+jeq
+rQy
+wWR
+ycj
+vkp
+cfT
+hec
+gNp
+hVf
+dVu
+omB
+lON
+dVu
+oDR
+vOP
bYe
bnD
aWH
@@ -110149,23 +110313,23 @@ ayT
akU
avj
vOy
-rip
-kCg
-lqj
-lnK
-qJy
+axn
+dRh
+ydE
+bST
+rQy
vOy
-fOx
-dLp
+vdO
+vkp
aoM
-rtv
-jFa
-fFN
+kBo
+kBP
+naR
vOy
-irw
+sxP
vOy
-ojG
-jfy
+aRd
+aIo
vOy
qLK
akU
@@ -110352,23 +110516,23 @@ ayT
akU
avj
vOy
-wrt
-wEz
-nIN
-nIN
-nIN
+aAr
+pGK
+tpa
+tpa
+tpa
vOy
-vrc
-dLp
-dzo
-mSc
-fNZ
-pJr
-iXe
-nON
-htF
-ubi
-luA
+dHV
+vkp
+jUM
+lou
+eBO
+pRn
+nxF
+dEO
+aCD
+hFC
+qmy
vOy
ayT
akU
@@ -110555,24 +110719,24 @@ aTL
aii
avj
vOy
-pJh
-dAy
-xiU
-xiU
-gNl
+aID
+gLc
+mKx
+mKx
+kZV
vOy
vOy
-lqi
+oIr
vOy
-gnl
+wdo
vOy
vOy
vOy
-dEU
+xSp
aoM
aoM
-jgQ
-vRe
+mLO
+kgs
ayT
aii
avj
@@ -110758,24 +110922,24 @@ ayT
aii
avj
vOy
-soY
-wEz
-hwA
-hwA
-hwA
+aMd
+pGK
+pRX
+pRX
+pRX
vOy
-iNO
-dLp
-uiy
-idG
-ujH
+jFf
+vkp
+jrM
+mWs
+lmw
vOy
-fSE
-dLp
-miI
-aoM
-fWy
-vRe
+dyb
+vah
+riD
+prw
+jQi
+kgs
ayT
aii
avj
@@ -110961,24 +111125,24 @@ bYe
aii
avj
vOy
-rEN
-jXI
-mbz
-mbz
-tTC
+aMg
+aSo
+mHD
+mHD
+tzL
vOy
-xhw
-dLp
-coJ
-fup
-sss
+vqZ
+vkp
+rDr
+usy
+nDo
vOy
-imx
-dLp
-daP
+rhR
+vkp
+cPE
aoM
aFf
-imk
+mmN
ayT
aii
avj
@@ -111164,23 +111328,23 @@ bYe
aii
avj
vOy
-nkr
-bXa
-hwA
-hwA
-hwA
+aQZ
+bkT
+pRX
+pRX
+pRX
vOy
-uOk
-kNr
-uBP
-jEy
-usf
+foP
+sZy
+vEr
+irU
+bVe
vOy
-pcr
-uKW
-tBI
-jFa
-eZp
+ggl
+jjS
+qMP
+kBP
+aSl
vOy
aTL
aii
@@ -111367,23 +111531,23 @@ ayT
akU
avj
vOy
-nyK
-evQ
-vdE
-xiU
-gNl
+dVd
+lea
+hKl
+mKx
+kZV
vOy
vOy
-cAi
-cAi
-cAi
+eNI
+eNI
+eNI
vOy
vOy
-pHf
-ngo
-ngo
-ngo
-xdt
+hRa
+vti
+vti
+vti
+iUu
vOy
ayT
akU
@@ -111572,21 +111736,21 @@ avj
vOy
vOy
vOy
-lAw
-lAw
-lAw
+mSK
+mSK
+mSK
vOy
vOy
-usb
-wwa
-usb
+ylc
+wKP
+ylc
vOy
vOy
-lZm
-kAd
-bZo
-dMj
-vjy
+rhO
+pgM
+nPE
+oqZ
+uaI
vOy
atV
akU
@@ -111780,9 +111944,9 @@ vOy
vOy
vOy
vOy
-cAi
-cAi
-cAi
+eNI
+eNI
+eNI
vOy
vOy
vOy
@@ -111978,19 +112142,19 @@ abx
abx
avj
vOy
-nos
-fcy
-fcy
-fcy
-lZZ
-uOm
-tfB
-jus
-nos
-fcy
-fcy
-fcy
-lZZ
+elR
+xXh
+xXh
+xXh
+dMK
+aCR
+aAT
+aNY
+elR
+xXh
+xXh
+xXh
+dMK
vOy
vOy
vOy
@@ -112181,19 +112345,19 @@ all
amK
avj
vOy
-icM
-xFe
-orP
-vRW
-oNp
-jVD
-cTq
-iSc
-icM
-muo
-orP
-aLv
-oNp
+wWz
+vHO
+ruc
+uvP
+wTM
+dNq
+vVs
+aFa
+wWz
+liY
+ruc
+xOY
+wTM
vOy
nzA
amD
@@ -112384,19 +112548,19 @@ aEX
aii
avm
vOy
-icM
-dTs
-cgM
-jLU
-bzh
-xWJ
-dZT
-kxk
-aWU
-cpB
-cgM
-iTk
-oNp
+wWz
+anw
+wLy
+jlG
+aqP
+kCE
+wLN
+npt
+xuE
+hqh
+wLy
+eiE
+wTM
vOy
ayT
akT
@@ -112587,19 +112751,19 @@ ybf
ajt
avj
vOy
-icM
-txo
-bYx
-cja
-oNp
-xYc
-mQX
-iSc
-icM
-lRV
-bYx
-uHr
-oNp
+wWz
+ovG
+gxP
+aPJ
+wTM
+apS
+wse
+aFa
+wWz
+ual
+gxP
+aOe
+wTM
vOy
atU
akU
@@ -112790,19 +112954,19 @@ ait
ani
avj
vOy
-hng
-lea
-qwF
-roD
-qEn
-rqg
-mQX
-fBQ
-hng
-lCp
-thk
-lea
-qEn
+woh
+vgO
+aoJ
+alk
+xAe
+avH
+wse
+cXC
+woh
+pLO
+qxm
+vgO
+xAe
vOy
aOP
aii
@@ -112995,15 +113159,15 @@ avj
vOy
vOy
vOy
-hjv
-mOu
-vhv
-eSA
-iwE
-wrR
-frj
-rSm
-lNa
+uqd
+amk
+pYo
+avF
+coJ
+iAz
+cQo
+aIP
+aoK
vOy
vOy
vOy
@@ -113199,13 +113363,13 @@ vOy
vOy
vOy
vOy
-eis
-dGB
-fBO
-vsw
-gGx
-qTh
-rUj
+vKb
+rzN
+avG
+jbK
+aOd
+sXd
+aJn
vOy
vOy
vOy
@@ -113398,17 +113562,17 @@ aNi
asp
amO
avj
-amk
-oVK
-mSj
+bPF
+aqG
+ata
vOy
-hIc
-bFG
-qrz
-oek
-ebb
-cGg
-wSO
+apR
+aqS
+mnW
+nPf
+vYz
+awR
+uoi
vOy
aMh
biB
@@ -113601,17 +113765,17 @@ rfg
bYe
amO
bYe
-qXJ
-oVK
-xbz
+cbg
+aqG
+atb
vOy
-fLK
-dGB
-dwr
-sWN
-gcr
-qTh
-iWT
+xSY
+rzN
+lCt
+lto
+paa
+sXd
+gVq
vOy
aMi
biB
@@ -113808,13 +113972,13 @@ vOy
vOy
vOy
vOy
-fcO
-qRI
-hnt
-rSM
-rqD
-gpm
-uFR
+msi
+kDk
+kbJ
+cJM
+jlA
+qLi
+dEm
vOy
vOy
vOy
@@ -114008,19 +114172,19 @@ ayT
amO
avj
vOy
-nos
-fcy
-fcy
-oFl
-sEb
-sQC
-jCG
-dbR
-ecn
-lXs
-fcy
-fcy
-lZZ
+elR
+xXh
+xXh
+apU
+taH
+aBe
+otu
+jBO
+jNc
+ean
+xXh
+xXh
+dMK
vOy
ayT
akU
@@ -114211,19 +114375,19 @@ bYe
ajt
avj
vOy
-icM
-xFe
-ioV
-ioV
-xzP
-nIo
-ruV
-xFe
-xzP
-ioV
-ioV
-iNV
-oNp
+wWz
+vHO
+uXj
+uXj
+iwJ
+jVt
+uyH
+vHO
+iwJ
+uXj
+uXj
+rdt
+wTM
vOy
ayT
aii
@@ -114414,19 +114578,19 @@ bYe
ajt
avj
vOy
-icM
-qCA
-oFj
-bgN
-iNM
-ght
-ruV
-qCA
-uhd
-bgN
-pNP
-ght
-oNp
+wWz
+uwZ
+wWm
+jQt
+nwi
+sNz
+uyH
+uwZ
+kGQ
+jQt
+coZ
+sNz
+wTM
vOy
ayT
aii
@@ -114617,19 +114781,19 @@ pSL
amT
mIW
vOy
-icM
-ghO
-hyp
-cgM
-vZa
-ght
-ruV
-gBj
-qRE
-cgM
-hyp
-kMG
-oNp
+wWz
+pEJ
+xQm
+wLy
+eqD
+sNz
+uyH
+sWW
+mWW
+wLy
+xQm
+tfH
+wTM
vOy
aEK
aSv
@@ -114697,14 +114861,14 @@ aLB
bbI
aLB
aLB
-dDG
+wXv
aLf
aLf
tRc
qEW
nsY
-aOm
-vpm
+xgS
+dbn
qvC
tyb
uRM
@@ -114820,19 +114984,19 @@ atL
akV
atL
vOy
-icM
-qCA
-hqL
-bgN
-wPz
-ght
-ruV
-qCA
-hqL
-bgN
-wPz
-ght
-oNp
+wWz
+uwZ
+tyD
+jQt
+vfP
+sNz
+uyH
+uwZ
+tyD
+jQt
+vfP
+sNz
+wTM
vOy
atL
akV
@@ -115023,19 +115187,19 @@ alp
aio
baB
vOy
-icM
-uQj
-bYx
-bYx
-gpA
-ent
-ruV
-xoa
-gpA
-bYx
-bYx
-tEu
-oNp
+wWz
+qxP
+gxP
+gxP
+jgg
+jZs
+uyH
+iRN
+jgg
+gxP
+gxP
+nMe
+wTM
vOy
alp
aio
@@ -115226,19 +115390,19 @@ iWN
amO
dLE
vOy
-hng
-lea
-lea
-lea
-lea
-lea
-pRX
-lea
-lea
-lea
-lea
-lea
-qEn
+woh
+vgO
+vgO
+vgO
+vgO
+vgO
+utX
+vgO
+vgO
+vgO
+vgO
+vgO
+xAe
vOy
aIS
alq
@@ -117257,9 +117421,9 @@ aii
abg
aqU
sdl
-gnN
-qyO
-gnN
+mLE
+bUx
+mLE
tmK
avK
aug
@@ -122646,7 +122810,7 @@ ayj
dWg
bdl
oTe
-rio
+ixN
jaR
mJa
wWP
@@ -122836,7 +123000,7 @@ aYO
aLG
bAX
bdl
-wIr
+pdL
aQy
jAB
iYt
@@ -125774,7 +125938,7 @@ bNM
iEr
fhH
eNi
-ueG
+fsZ
rPt
jyE
eNi
@@ -135177,7 +135341,7 @@ lmz
lmz
lmz
daz
-gAe
+vhe
fEN
cqm
gTH
@@ -136998,11 +137162,11 @@ lmz
daz
daz
ocB
-qww
+nJH
rnH
daz
daz
-low
+sTV
daz
rna
rna
@@ -137609,11 +137773,11 @@ lmz
lmz
lmz
daz
-psE
-kDG
-iRl
-xzA
-fBd
+rzf
+bRo
+wyv
+pTt
+gAe
rCi
gba
mUz
@@ -137812,9 +137976,9 @@ lmz
lmz
lmz
daz
-wXz
-nIh
-nIh
+czG
+ylg
+ylg
daz
daz
daz
diff --git a/tgui/packages/tgui-say/styles/colors.scss b/tgui/packages/tgui-say/styles/colors.scss
index e0abb717edf3..318cd481f7ab 100644
--- a/tgui/packages/tgui-say/styles/colors.scss
+++ b/tgui/packages/tgui-say/styles/colors.scss
@@ -15,7 +15,7 @@ $me: #5975da;
$ooc: #1c52f5;
$looc: #e362b4;
$mentor: #b5850d;
-$asay: #9611d4;
+$asay: #74471b;
////////////////////////////////////////////////
// Subchannel chat colors
diff --git a/tgui/packages/tgui/events.js b/tgui/packages/tgui/events.js
index a0bc2ab2da32..6eb4351194b7 100644
--- a/tgui/packages/tgui/events.js
+++ b/tgui/packages/tgui/events.js
@@ -203,7 +203,7 @@ document.addEventListener('keydown', (e) => {
if (canStealFocus(e.target)) {
return;
}
- const code = e.keyCode;
+ const code = e.code;
const key = new KeyEvent(e, 'keydown', keyHeldByCode[code]);
globalEvents.emit('keydown', key);
globalEvents.emit('key', key);
@@ -214,7 +214,7 @@ document.addEventListener('keyup', (e) => {
if (canStealFocus(e.target)) {
return;
}
- const code = e.keyCode;
+ const code = e.code;
const key = new KeyEvent(e, 'keyup');
globalEvents.emit('keyup', key);
globalEvents.emit('key', key);
diff --git a/tgui/packages/tgui/hotkeys.ts b/tgui/packages/tgui/hotkeys.ts
index f7176bd00300..2f6579a377f4 100644
--- a/tgui/packages/tgui/hotkeys.ts
+++ b/tgui/packages/tgui/hotkeys.ts
@@ -73,7 +73,10 @@ const keyCodeToByond = (keyCode: number) => {
const handlePassthrough = (key: KeyEvent) => {
const keyString = String(key);
// In addition to F5, support reloading with Ctrl+R and Ctrl+F5
- if (keyString === 'Ctrl+F5' || keyString === 'Ctrl+R') {
+ if (
+ !key.event.defaultPrevented &&
+ (keyString === 'Ctrl+F5' || keyString === 'Ctrl+R')
+ ) {
location.reload();
return;
}
diff --git a/tgui/packages/tgui/interfaces/KeyBinds.js b/tgui/packages/tgui/interfaces/KeyBinds.js
index 6f3841ceb0ab..f3319b725456 100644
--- a/tgui/packages/tgui/interfaces/KeyBinds.js
+++ b/tgui/packages/tgui/interfaces/KeyBinds.js
@@ -3,7 +3,6 @@ import { useBackend, useLocalState } from '../backend';
import { Button, Flex, Section, Box, Input, Dropdown } from '../components';
import { Window } from '../layouts';
import { globalEvents } from '../events.js';
-import { createLogger } from '../logging';
const KEY_MODS = {
'SHIFT': true,
@@ -34,10 +33,6 @@ export const KeyBinds = (props, context) => {
? getAllKeybinds(glob_keybinds)
: glob_keybinds[selectedTab];
- const logger = createLogger('waa');
-
- logger.warn(keybinds_to_use);
-
const filteredKeybinds = keybinds_to_use.filter((val) =>
val.full_name.toLowerCase().match(searchTerm)
);
@@ -255,7 +250,7 @@ export class ButtonKeybind extends Component {
let pressedKey = e.key.toUpperCase();
- this.finishTimerStart(200);
+ this.finishTimerStart(600);
// Prevents repeating
if (keysDown[pressedKey] && e.type === 'keydown') {
@@ -284,6 +279,8 @@ export class ButtonKeybind extends Component {
});
this.finishTimerStart(2000);
globalEvents.on('keydown', this.preventPassthrough);
+ globalEvents.on('key', this.preventPassthrough);
+ globalEvents.on('keyup', this.preventPassthrough);
}
doBlur() {
@@ -292,6 +289,8 @@ export class ButtonKeybind extends Component {
keysDown: {},
});
globalEvents.off('keydown', this.preventPassthrough);
+ globalEvents.off('key', this.preventPassthrough);
+ globalEvents.off('keyup', this.preventPassthrough);
}
render() {
diff --git a/tools/autowiki/autowiki.js b/tools/autowiki/autowiki.js
new file mode 100644
index 000000000000..a9a2ab29eb1f
--- /dev/null
+++ b/tools/autowiki/autowiki.js
@@ -0,0 +1,89 @@
+const fs = require("fs").promises;
+const MWBot = require("mwbot");
+
+const { USERNAME, PASSWORD } = process.env;
+
+if (!USERNAME) {
+ console.error("USERNAME was not set.");
+ process.exit(1);
+}
+
+if (!PASSWORD) {
+ console.error("PASSWORD was not set.");
+ process.exit(1);
+}
+
+const PAGE_EDIT_FILENAME = process.argv[2];
+
+if (!PAGE_EDIT_FILENAME) {
+ console.error("No filename specified to edit pages");
+ process.exit(1);
+}
+
+const FILE_EDIT_FILENAME = process.argv[3];
+
+if (!FILE_EDIT_FILENAME) {
+ console.error("No filename specified to edit files");
+ process.exit(1);
+}
+
+async function main() {
+ console.log(`Reading from ${PAGE_EDIT_FILENAME}`);
+ const editFile = await (
+ await fs.readFile(PAGE_EDIT_FILENAME, "utf8")
+ ).split("\n");
+
+ console.log(`Logging in as ${USERNAME}`);
+
+ const bot = new MWBot();
+
+ await bot.loginGetEditToken({
+ apiUrl: "https://cm-ss13.com/w/api.php",
+ username: USERNAME,
+ password: PASSWORD,
+ });
+
+ console.log("Logged in");
+
+ // This is not Promise.all as to not flood with a bunch of traffic at once
+ for (const editLine of editFile) {
+ if (editLine.length === 0) {
+ continue;
+ }
+
+ let { title, text } = JSON.parse(editLine);
+ text =
+ "This page is automated by Autowiki. Do NOT edit it manually." +
+ text;
+
+ console.log(`Editing ${title}...`);
+ await bot.edit(
+ title,
+ text,
+ `Autowiki edit @ ${new Date().toISOString()}`
+ );
+ }
+
+ // Same here
+ for (const asset of await fs.readdir(FILE_EDIT_FILENAME)) {
+ const assetPath = `${FILE_EDIT_FILENAME}/${asset}`;
+ const assetName = `Autowiki-${asset}`;
+
+ console.log(`Replacing ${assetName}...`);
+ await bot
+ .upload(
+ assetName,
+ assetPath,
+ `Autowiki upload @ ${new Date().toISOString()}`
+ )
+ .catch((error) => {
+ if (error.code === "fileexists-no-change") {
+ console.log(`${assetName} is an exact duplicate`);
+ } else {
+ return Promise.reject(error);
+ }
+ });
+ }
+}
+
+main().catch(console.error);
diff --git a/tools/autowiki/package-lock.json b/tools/autowiki/package-lock.json
new file mode 100644
index 000000000000..ab2b4493025e
--- /dev/null
+++ b/tools/autowiki/package-lock.json
@@ -0,0 +1,1043 @@
+{
+ "name": "autowiki",
+ "version": "1.0.0",
+ "lockfileVersion": 2,
+ "requires": true,
+ "packages": {
+ "": {
+ "name": "autowiki",
+ "version": "1.0.0",
+ "dependencies": {
+ "mwbot": "^2.0.0"
+ }
+ },
+ "node_modules/ajv": {
+ "version": "6.12.6",
+ "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz",
+ "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==",
+ "dependencies": {
+ "fast-deep-equal": "^3.1.1",
+ "fast-json-stable-stringify": "^2.0.0",
+ "json-schema-traverse": "^0.4.1",
+ "uri-js": "^4.2.2"
+ },
+ "funding": {
+ "type": "github",
+ "url": "https://github.com/sponsors/epoberezkin"
+ }
+ },
+ "node_modules/ansi-regex": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz",
+ "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=",
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/ansi-styles": {
+ "version": "2.2.1",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz",
+ "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=",
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/asn1": {
+ "version": "0.2.6",
+ "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.6.tgz",
+ "integrity": "sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==",
+ "dependencies": {
+ "safer-buffer": "~2.1.0"
+ }
+ },
+ "node_modules/assert-plus": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz",
+ "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=",
+ "engines": {
+ "node": ">=0.8"
+ }
+ },
+ "node_modules/asynckit": {
+ "version": "0.4.0",
+ "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz",
+ "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k="
+ },
+ "node_modules/aws-sign2": {
+ "version": "0.7.0",
+ "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz",
+ "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=",
+ "engines": {
+ "node": "*"
+ }
+ },
+ "node_modules/aws4": {
+ "version": "1.11.0",
+ "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.11.0.tgz",
+ "integrity": "sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA=="
+ },
+ "node_modules/bcrypt-pbkdf": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz",
+ "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=",
+ "dependencies": {
+ "tweetnacl": "^0.14.3"
+ }
+ },
+ "node_modules/bluebird": {
+ "version": "3.7.2",
+ "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz",
+ "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg=="
+ },
+ "node_modules/caseless": {
+ "version": "0.12.0",
+ "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz",
+ "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw="
+ },
+ "node_modules/chalk": {
+ "version": "1.1.3",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
+ "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=",
+ "dependencies": {
+ "ansi-styles": "^2.2.1",
+ "escape-string-regexp": "^1.0.2",
+ "has-ansi": "^2.0.0",
+ "strip-ansi": "^3.0.0",
+ "supports-color": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/colors": {
+ "version": "1.4.0",
+ "resolved": "https://registry.npmjs.org/colors/-/colors-1.4.0.tgz",
+ "integrity": "sha512-a+UqTh4kgZg/SlGvfbzDHpgRu7AAQOmmqRHJnxhRZICKFUT91brVhNNt58CMWU9PsBbv3PDCZUHbVxuDiH2mtA==",
+ "engines": {
+ "node": ">=0.1.90"
+ }
+ },
+ "node_modules/combined-stream": {
+ "version": "1.0.8",
+ "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz",
+ "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==",
+ "dependencies": {
+ "delayed-stream": "~1.0.0"
+ },
+ "engines": {
+ "node": ">= 0.8"
+ }
+ },
+ "node_modules/core-util-is": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz",
+ "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac="
+ },
+ "node_modules/dashdash": {
+ "version": "1.14.1",
+ "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz",
+ "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=",
+ "dependencies": {
+ "assert-plus": "^1.0.0"
+ },
+ "engines": {
+ "node": ">=0.10"
+ }
+ },
+ "node_modules/delayed-stream": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
+ "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=",
+ "engines": {
+ "node": ">=0.4.0"
+ }
+ },
+ "node_modules/ecc-jsbn": {
+ "version": "0.1.2",
+ "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz",
+ "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=",
+ "dependencies": {
+ "jsbn": "~0.1.0",
+ "safer-buffer": "^2.1.0"
+ }
+ },
+ "node_modules/escape-string-regexp": {
+ "version": "1.0.5",
+ "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
+ "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=",
+ "engines": {
+ "node": ">=0.8.0"
+ }
+ },
+ "node_modules/extend": {
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz",
+ "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g=="
+ },
+ "node_modules/extsprintf": {
+ "version": "1.3.0",
+ "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz",
+ "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=",
+ "engines": [
+ "node >=0.6.0"
+ ]
+ },
+ "node_modules/fast-deep-equal": {
+ "version": "3.1.3",
+ "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz",
+ "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q=="
+ },
+ "node_modules/fast-json-stable-stringify": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz",
+ "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw=="
+ },
+ "node_modules/forever-agent": {
+ "version": "0.6.1",
+ "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz",
+ "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=",
+ "engines": {
+ "node": "*"
+ }
+ },
+ "node_modules/form-data": {
+ "version": "2.3.3",
+ "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz",
+ "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==",
+ "dependencies": {
+ "asynckit": "^0.4.0",
+ "combined-stream": "^1.0.6",
+ "mime-types": "^2.1.12"
+ },
+ "engines": {
+ "node": ">= 0.12"
+ }
+ },
+ "node_modules/getpass": {
+ "version": "0.1.7",
+ "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz",
+ "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=",
+ "dependencies": {
+ "assert-plus": "^1.0.0"
+ }
+ },
+ "node_modules/har-schema": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz",
+ "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=",
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/har-validator": {
+ "version": "5.1.5",
+ "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz",
+ "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==",
+ "deprecated": "this library is no longer supported",
+ "dependencies": {
+ "ajv": "^6.12.3",
+ "har-schema": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/has-ansi": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz",
+ "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=",
+ "dependencies": {
+ "ansi-regex": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/http-signature": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz",
+ "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=",
+ "dependencies": {
+ "assert-plus": "^1.0.0",
+ "jsprim": "^1.2.2",
+ "sshpk": "^1.7.0"
+ },
+ "engines": {
+ "node": ">=0.8",
+ "npm": ">=1.3.7"
+ }
+ },
+ "node_modules/is-typedarray": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz",
+ "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo="
+ },
+ "node_modules/isstream": {
+ "version": "0.1.2",
+ "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz",
+ "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo="
+ },
+ "node_modules/jsbn": {
+ "version": "0.1.1",
+ "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz",
+ "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM="
+ },
+ "node_modules/json-schema": {
+ "version": "0.4.0",
+ "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.4.0.tgz",
+ "integrity": "sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA=="
+ },
+ "node_modules/json-schema-traverse": {
+ "version": "0.4.1",
+ "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz",
+ "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg=="
+ },
+ "node_modules/json-stringify-safe": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz",
+ "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus="
+ },
+ "node_modules/jsprim": {
+ "version": "1.4.2",
+ "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.2.tgz",
+ "integrity": "sha512-P2bSOMAc/ciLz6DzgjVlGJP9+BrJWu5UDGK70C2iweC5QBIeFf0ZXRvGjEj2uYgrY2MkAAhsSWHDWlFtEroZWw==",
+ "dependencies": {
+ "assert-plus": "1.0.0",
+ "extsprintf": "1.3.0",
+ "json-schema": "0.4.0",
+ "verror": "1.10.0"
+ },
+ "engines": {
+ "node": ">=0.6.0"
+ }
+ },
+ "node_modules/lru-cache": {
+ "version": "6.0.0",
+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
+ "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
+ "dependencies": {
+ "yallist": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/mime-db": {
+ "version": "1.51.0",
+ "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.51.0.tgz",
+ "integrity": "sha512-5y8A56jg7XVQx2mbv1lu49NR4dokRnhZYTtL+KGfaa27uq4pSTXkwQkFJl4pkRMyNFz/EtYDSkiiEHx3F7UN6g==",
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
+ "node_modules/mime-types": {
+ "version": "2.1.34",
+ "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.34.tgz",
+ "integrity": "sha512-6cP692WwGIs9XXdOO4++N+7qjqv0rqxxVvJ3VHPh/Sc9mVZcQP+ZGhkKiTvWMQRr2tbHkJP/Yn7Y0npb3ZBs4A==",
+ "dependencies": {
+ "mime-db": "1.51.0"
+ },
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
+ "node_modules/minimist": {
+ "version": "1.2.7",
+ "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.7.tgz",
+ "integrity": "sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g==",
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/mwbot": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/mwbot/-/mwbot-2.0.0.tgz",
+ "integrity": "sha512-9iTx8oFMntC60yyaPJjN4GEgiQlal7i03jATu7kq5b9BGW5aNz7YbrpjaciLNr0Z33PTdQe0hRTJ0JdUJi2WQg==",
+ "dependencies": {
+ "bluebird": "^3.7.2",
+ "request": "^2.88.2",
+ "semlog": "^0.6.10",
+ "semver": "7.3.4"
+ },
+ "engines": {
+ "node": ">=10.0.0"
+ }
+ },
+ "node_modules/oauth-sign": {
+ "version": "0.9.0",
+ "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz",
+ "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==",
+ "engines": {
+ "node": "*"
+ }
+ },
+ "node_modules/performance-now": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz",
+ "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns="
+ },
+ "node_modules/prettyjson": {
+ "version": "1.2.5",
+ "resolved": "https://registry.npmjs.org/prettyjson/-/prettyjson-1.2.5.tgz",
+ "integrity": "sha512-rksPWtoZb2ZpT5OVgtmy0KHVM+Dca3iVwWY9ifwhcexfjebtgjg3wmrUt9PvJ59XIYBcknQeYHD8IAnVlh9lAw==",
+ "dependencies": {
+ "colors": "1.4.0",
+ "minimist": "^1.2.0"
+ },
+ "bin": {
+ "prettyjson": "bin/prettyjson"
+ }
+ },
+ "node_modules/psl": {
+ "version": "1.8.0",
+ "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz",
+ "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ=="
+ },
+ "node_modules/punycode": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz",
+ "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==",
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/qs": {
+ "version": "6.5.3",
+ "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.3.tgz",
+ "integrity": "sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA==",
+ "engines": {
+ "node": ">=0.6"
+ }
+ },
+ "node_modules/request": {
+ "version": "2.88.2",
+ "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz",
+ "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==",
+ "deprecated": "request has been deprecated, see https://github.com/request/request/issues/3142",
+ "dependencies": {
+ "aws-sign2": "~0.7.0",
+ "aws4": "^1.8.0",
+ "caseless": "~0.12.0",
+ "combined-stream": "~1.0.6",
+ "extend": "~3.0.2",
+ "forever-agent": "~0.6.1",
+ "form-data": "~2.3.2",
+ "har-validator": "~5.1.3",
+ "http-signature": "~1.2.0",
+ "is-typedarray": "~1.0.0",
+ "isstream": "~0.1.2",
+ "json-stringify-safe": "~5.0.1",
+ "mime-types": "~2.1.19",
+ "oauth-sign": "~0.9.0",
+ "performance-now": "^2.1.0",
+ "qs": "~6.5.2",
+ "safe-buffer": "^5.1.2",
+ "tough-cookie": "~2.5.0",
+ "tunnel-agent": "^0.6.0",
+ "uuid": "^3.3.2"
+ },
+ "engines": {
+ "node": ">= 6"
+ }
+ },
+ "node_modules/safe-buffer": {
+ "version": "5.2.1",
+ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
+ "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==",
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/feross"
+ },
+ {
+ "type": "patreon",
+ "url": "https://www.patreon.com/feross"
+ },
+ {
+ "type": "consulting",
+ "url": "https://feross.org/support"
+ }
+ ]
+ },
+ "node_modules/safer-buffer": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
+ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg=="
+ },
+ "node_modules/semlog": {
+ "version": "0.6.10",
+ "resolved": "https://registry.npmjs.org/semlog/-/semlog-0.6.10.tgz",
+ "integrity": "sha1-DyJa6o6zwvJM6TWNhnjQ9Bp/4Fs=",
+ "dependencies": {
+ "chalk": "^1.1.3",
+ "prettyjson": "^1.1.3"
+ }
+ },
+ "node_modules/semver": {
+ "version": "7.3.4",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.4.tgz",
+ "integrity": "sha512-tCfb2WLjqFAtXn4KEdxIhalnRtoKFN7nAwj0B3ZXCbQloV2tq5eDbcTmT68JJD3nRJq24/XgxtQKFIpQdtvmVw==",
+ "dependencies": {
+ "lru-cache": "^6.0.0"
+ },
+ "bin": {
+ "semver": "bin/semver.js"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/sshpk": {
+ "version": "1.17.0",
+ "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.17.0.tgz",
+ "integrity": "sha512-/9HIEs1ZXGhSPE8X6Ccm7Nam1z8KcoCqPdI7ecm1N33EzAetWahvQWVqLZtaZQ+IDKX4IyA2o0gBzqIMkAagHQ==",
+ "dependencies": {
+ "asn1": "~0.2.3",
+ "assert-plus": "^1.0.0",
+ "bcrypt-pbkdf": "^1.0.0",
+ "dashdash": "^1.12.0",
+ "ecc-jsbn": "~0.1.1",
+ "getpass": "^0.1.1",
+ "jsbn": "~0.1.0",
+ "safer-buffer": "^2.0.2",
+ "tweetnacl": "~0.14.0"
+ },
+ "bin": {
+ "sshpk-conv": "bin/sshpk-conv",
+ "sshpk-sign": "bin/sshpk-sign",
+ "sshpk-verify": "bin/sshpk-verify"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/strip-ansi": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz",
+ "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=",
+ "dependencies": {
+ "ansi-regex": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/supports-color": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz",
+ "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=",
+ "engines": {
+ "node": ">=0.8.0"
+ }
+ },
+ "node_modules/tough-cookie": {
+ "version": "2.5.0",
+ "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz",
+ "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==",
+ "dependencies": {
+ "psl": "^1.1.28",
+ "punycode": "^2.1.1"
+ },
+ "engines": {
+ "node": ">=0.8"
+ }
+ },
+ "node_modules/tunnel-agent": {
+ "version": "0.6.0",
+ "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz",
+ "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=",
+ "dependencies": {
+ "safe-buffer": "^5.0.1"
+ },
+ "engines": {
+ "node": "*"
+ }
+ },
+ "node_modules/tweetnacl": {
+ "version": "0.14.5",
+ "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz",
+ "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q="
+ },
+ "node_modules/uri-js": {
+ "version": "4.4.1",
+ "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz",
+ "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==",
+ "dependencies": {
+ "punycode": "^2.1.0"
+ }
+ },
+ "node_modules/uuid": {
+ "version": "3.4.0",
+ "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz",
+ "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==",
+ "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.",
+ "bin": {
+ "uuid": "bin/uuid"
+ }
+ },
+ "node_modules/verror": {
+ "version": "1.10.0",
+ "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz",
+ "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=",
+ "engines": [
+ "node >=0.6.0"
+ ],
+ "dependencies": {
+ "assert-plus": "^1.0.0",
+ "core-util-is": "1.0.2",
+ "extsprintf": "^1.2.0"
+ }
+ },
+ "node_modules/yallist": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
+ "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A=="
+ }
+ },
+ "dependencies": {
+ "ajv": {
+ "version": "6.12.6",
+ "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz",
+ "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==",
+ "requires": {
+ "fast-deep-equal": "^3.1.1",
+ "fast-json-stable-stringify": "^2.0.0",
+ "json-schema-traverse": "^0.4.1",
+ "uri-js": "^4.2.2"
+ }
+ },
+ "ansi-regex": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz",
+ "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8="
+ },
+ "ansi-styles": {
+ "version": "2.2.1",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz",
+ "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4="
+ },
+ "asn1": {
+ "version": "0.2.6",
+ "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.6.tgz",
+ "integrity": "sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==",
+ "requires": {
+ "safer-buffer": "~2.1.0"
+ }
+ },
+ "assert-plus": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz",
+ "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU="
+ },
+ "asynckit": {
+ "version": "0.4.0",
+ "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz",
+ "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k="
+ },
+ "aws-sign2": {
+ "version": "0.7.0",
+ "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz",
+ "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg="
+ },
+ "aws4": {
+ "version": "1.11.0",
+ "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.11.0.tgz",
+ "integrity": "sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA=="
+ },
+ "bcrypt-pbkdf": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz",
+ "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=",
+ "requires": {
+ "tweetnacl": "^0.14.3"
+ }
+ },
+ "bluebird": {
+ "version": "3.7.2",
+ "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz",
+ "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg=="
+ },
+ "caseless": {
+ "version": "0.12.0",
+ "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz",
+ "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw="
+ },
+ "chalk": {
+ "version": "1.1.3",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
+ "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=",
+ "requires": {
+ "ansi-styles": "^2.2.1",
+ "escape-string-regexp": "^1.0.2",
+ "has-ansi": "^2.0.0",
+ "strip-ansi": "^3.0.0",
+ "supports-color": "^2.0.0"
+ }
+ },
+ "colors": {
+ "version": "1.4.0",
+ "resolved": "https://registry.npmjs.org/colors/-/colors-1.4.0.tgz",
+ "integrity": "sha512-a+UqTh4kgZg/SlGvfbzDHpgRu7AAQOmmqRHJnxhRZICKFUT91brVhNNt58CMWU9PsBbv3PDCZUHbVxuDiH2mtA=="
+ },
+ "combined-stream": {
+ "version": "1.0.8",
+ "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz",
+ "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==",
+ "requires": {
+ "delayed-stream": "~1.0.0"
+ }
+ },
+ "core-util-is": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz",
+ "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac="
+ },
+ "dashdash": {
+ "version": "1.14.1",
+ "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz",
+ "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=",
+ "requires": {
+ "assert-plus": "^1.0.0"
+ }
+ },
+ "delayed-stream": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
+ "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk="
+ },
+ "ecc-jsbn": {
+ "version": "0.1.2",
+ "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz",
+ "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=",
+ "requires": {
+ "jsbn": "~0.1.0",
+ "safer-buffer": "^2.1.0"
+ }
+ },
+ "escape-string-regexp": {
+ "version": "1.0.5",
+ "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
+ "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ="
+ },
+ "extend": {
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz",
+ "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g=="
+ },
+ "extsprintf": {
+ "version": "1.3.0",
+ "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz",
+ "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU="
+ },
+ "fast-deep-equal": {
+ "version": "3.1.3",
+ "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz",
+ "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q=="
+ },
+ "fast-json-stable-stringify": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz",
+ "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw=="
+ },
+ "forever-agent": {
+ "version": "0.6.1",
+ "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz",
+ "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE="
+ },
+ "form-data": {
+ "version": "2.3.3",
+ "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz",
+ "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==",
+ "requires": {
+ "asynckit": "^0.4.0",
+ "combined-stream": "^1.0.6",
+ "mime-types": "^2.1.12"
+ }
+ },
+ "getpass": {
+ "version": "0.1.7",
+ "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz",
+ "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=",
+ "requires": {
+ "assert-plus": "^1.0.0"
+ }
+ },
+ "har-schema": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz",
+ "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI="
+ },
+ "har-validator": {
+ "version": "5.1.5",
+ "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz",
+ "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==",
+ "requires": {
+ "ajv": "^6.12.3",
+ "har-schema": "^2.0.0"
+ }
+ },
+ "has-ansi": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz",
+ "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=",
+ "requires": {
+ "ansi-regex": "^2.0.0"
+ }
+ },
+ "http-signature": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz",
+ "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=",
+ "requires": {
+ "assert-plus": "^1.0.0",
+ "jsprim": "^1.2.2",
+ "sshpk": "^1.7.0"
+ }
+ },
+ "is-typedarray": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz",
+ "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo="
+ },
+ "isstream": {
+ "version": "0.1.2",
+ "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz",
+ "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo="
+ },
+ "jsbn": {
+ "version": "0.1.1",
+ "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz",
+ "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM="
+ },
+ "json-schema": {
+ "version": "0.4.0",
+ "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.4.0.tgz",
+ "integrity": "sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA=="
+ },
+ "json-schema-traverse": {
+ "version": "0.4.1",
+ "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz",
+ "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg=="
+ },
+ "json-stringify-safe": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz",
+ "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus="
+ },
+ "jsprim": {
+ "version": "1.4.2",
+ "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.2.tgz",
+ "integrity": "sha512-P2bSOMAc/ciLz6DzgjVlGJP9+BrJWu5UDGK70C2iweC5QBIeFf0ZXRvGjEj2uYgrY2MkAAhsSWHDWlFtEroZWw==",
+ "requires": {
+ "assert-plus": "1.0.0",
+ "extsprintf": "1.3.0",
+ "json-schema": "0.4.0",
+ "verror": "1.10.0"
+ }
+ },
+ "lru-cache": {
+ "version": "6.0.0",
+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
+ "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
+ "requires": {
+ "yallist": "^4.0.0"
+ }
+ },
+ "mime-db": {
+ "version": "1.51.0",
+ "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.51.0.tgz",
+ "integrity": "sha512-5y8A56jg7XVQx2mbv1lu49NR4dokRnhZYTtL+KGfaa27uq4pSTXkwQkFJl4pkRMyNFz/EtYDSkiiEHx3F7UN6g=="
+ },
+ "mime-types": {
+ "version": "2.1.34",
+ "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.34.tgz",
+ "integrity": "sha512-6cP692WwGIs9XXdOO4++N+7qjqv0rqxxVvJ3VHPh/Sc9mVZcQP+ZGhkKiTvWMQRr2tbHkJP/Yn7Y0npb3ZBs4A==",
+ "requires": {
+ "mime-db": "1.51.0"
+ }
+ },
+ "minimist": {
+ "version": "1.2.7",
+ "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.7.tgz",
+ "integrity": "sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g=="
+ },
+ "mwbot": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/mwbot/-/mwbot-2.0.0.tgz",
+ "integrity": "sha512-9iTx8oFMntC60yyaPJjN4GEgiQlal7i03jATu7kq5b9BGW5aNz7YbrpjaciLNr0Z33PTdQe0hRTJ0JdUJi2WQg==",
+ "requires": {
+ "bluebird": "^3.7.2",
+ "request": "^2.88.2",
+ "semlog": "^0.6.10",
+ "semver": "7.3.4"
+ }
+ },
+ "oauth-sign": {
+ "version": "0.9.0",
+ "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz",
+ "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ=="
+ },
+ "performance-now": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz",
+ "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns="
+ },
+ "prettyjson": {
+ "version": "1.2.5",
+ "resolved": "https://registry.npmjs.org/prettyjson/-/prettyjson-1.2.5.tgz",
+ "integrity": "sha512-rksPWtoZb2ZpT5OVgtmy0KHVM+Dca3iVwWY9ifwhcexfjebtgjg3wmrUt9PvJ59XIYBcknQeYHD8IAnVlh9lAw==",
+ "requires": {
+ "colors": "1.4.0",
+ "minimist": "^1.2.0"
+ }
+ },
+ "psl": {
+ "version": "1.8.0",
+ "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz",
+ "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ=="
+ },
+ "punycode": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz",
+ "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A=="
+ },
+ "qs": {
+ "version": "6.5.3",
+ "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.3.tgz",
+ "integrity": "sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA=="
+ },
+ "request": {
+ "version": "2.88.2",
+ "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz",
+ "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==",
+ "requires": {
+ "aws-sign2": "~0.7.0",
+ "aws4": "^1.8.0",
+ "caseless": "~0.12.0",
+ "combined-stream": "~1.0.6",
+ "extend": "~3.0.2",
+ "forever-agent": "~0.6.1",
+ "form-data": "~2.3.2",
+ "har-validator": "~5.1.3",
+ "http-signature": "~1.2.0",
+ "is-typedarray": "~1.0.0",
+ "isstream": "~0.1.2",
+ "json-stringify-safe": "~5.0.1",
+ "mime-types": "~2.1.19",
+ "oauth-sign": "~0.9.0",
+ "performance-now": "^2.1.0",
+ "qs": "~6.5.2",
+ "safe-buffer": "^5.1.2",
+ "tough-cookie": "~2.5.0",
+ "tunnel-agent": "^0.6.0",
+ "uuid": "^3.3.2"
+ }
+ },
+ "safe-buffer": {
+ "version": "5.2.1",
+ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
+ "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ=="
+ },
+ "safer-buffer": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
+ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg=="
+ },
+ "semlog": {
+ "version": "0.6.10",
+ "resolved": "https://registry.npmjs.org/semlog/-/semlog-0.6.10.tgz",
+ "integrity": "sha1-DyJa6o6zwvJM6TWNhnjQ9Bp/4Fs=",
+ "requires": {
+ "chalk": "^1.1.3",
+ "prettyjson": "^1.1.3"
+ }
+ },
+ "semver": {
+ "version": "7.3.4",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.4.tgz",
+ "integrity": "sha512-tCfb2WLjqFAtXn4KEdxIhalnRtoKFN7nAwj0B3ZXCbQloV2tq5eDbcTmT68JJD3nRJq24/XgxtQKFIpQdtvmVw==",
+ "requires": {
+ "lru-cache": "^6.0.0"
+ }
+ },
+ "sshpk": {
+ "version": "1.17.0",
+ "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.17.0.tgz",
+ "integrity": "sha512-/9HIEs1ZXGhSPE8X6Ccm7Nam1z8KcoCqPdI7ecm1N33EzAetWahvQWVqLZtaZQ+IDKX4IyA2o0gBzqIMkAagHQ==",
+ "requires": {
+ "asn1": "~0.2.3",
+ "assert-plus": "^1.0.0",
+ "bcrypt-pbkdf": "^1.0.0",
+ "dashdash": "^1.12.0",
+ "ecc-jsbn": "~0.1.1",
+ "getpass": "^0.1.1",
+ "jsbn": "~0.1.0",
+ "safer-buffer": "^2.0.2",
+ "tweetnacl": "~0.14.0"
+ }
+ },
+ "strip-ansi": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz",
+ "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=",
+ "requires": {
+ "ansi-regex": "^2.0.0"
+ }
+ },
+ "supports-color": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz",
+ "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc="
+ },
+ "tough-cookie": {
+ "version": "2.5.0",
+ "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz",
+ "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==",
+ "requires": {
+ "psl": "^1.1.28",
+ "punycode": "^2.1.1"
+ }
+ },
+ "tunnel-agent": {
+ "version": "0.6.0",
+ "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz",
+ "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=",
+ "requires": {
+ "safe-buffer": "^5.0.1"
+ }
+ },
+ "tweetnacl": {
+ "version": "0.14.5",
+ "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz",
+ "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q="
+ },
+ "uri-js": {
+ "version": "4.4.1",
+ "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz",
+ "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==",
+ "requires": {
+ "punycode": "^2.1.0"
+ }
+ },
+ "uuid": {
+ "version": "3.4.0",
+ "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz",
+ "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A=="
+ },
+ "verror": {
+ "version": "1.10.0",
+ "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz",
+ "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=",
+ "requires": {
+ "assert-plus": "^1.0.0",
+ "core-util-is": "1.0.2",
+ "extsprintf": "^1.2.0"
+ }
+ },
+ "yallist": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
+ "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A=="
+ }
+ }
+}
diff --git a/tools/autowiki/package.json b/tools/autowiki/package.json
new file mode 100644
index 000000000000..39ac2bc7d5d6
--- /dev/null
+++ b/tools/autowiki/package.json
@@ -0,0 +1,10 @@
+{
+ "name": "autowiki",
+ "version": "1.0.0",
+ "description": "Automatically publish generated pages to the tg wiki",
+ "main": "autowiki.js",
+ "author": "Mothblocks",
+ "dependencies": {
+ "mwbot": "^2.0.0"
+ }
+}