diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index ed94643dbe36..ad29d17a6394 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -24,6 +24,13 @@ /tools/docker/ @Fira /Dockerfile @Fira +# Forest2001 + +/code/game/machinery/ARES @realforest2001 +/tgui/packages/tgui/interfaces/AresAdmin.jsx @realforest2001 +/tgui/packages/tgui/interfaces/AresInterface.jsx @realforest2001 +/tgui/packages/tgui/interfaces/WorkingJoe.jsx @realforest2001 + # Nanu /maps @Nanu308 diff --git a/code/__DEFINES/__game.dm b/code/__DEFINES/__game.dm index e95ea026d749..f84b3d316d3c 100644 --- a/code/__DEFINES/__game.dm +++ b/code/__DEFINES/__game.dm @@ -187,6 +187,7 @@ #define DOCK_ATTEMPT_TIMEOUT 20 SECONDS #define DROPSHIP_WARMUP_TIME 10 SECONDS #define DROPSHIP_DROP_MSG_DELAY 30 SECONDS +#define DROPSHIP_DROP_FIRE_DELAY 20 SECONDS #define DROPSHIP_TRANSIT_DURATION 100 SECONDS #define DROPSHIP_CORSAT_DURATION 30 SECONDS #define ELEVATOR_TRANSIT_DURATION 5 SECONDS diff --git a/code/__DEFINES/access.dm b/code/__DEFINES/access.dm index 71b2b6f4b6ac..d9d62010e7b5 100644 --- a/code/__DEFINES/access.dm +++ b/code/__DEFINES/access.dm @@ -147,10 +147,12 @@ most of them are tied into map-placed objects. This should be reworked in the fu // Yautja Access Levels /// Requires a visible ID chip to open #define ACCESS_YAUTJA_SECURE 390 +/// Elites+ only +#define ACCESS_YAUTJA_ELITE 391 /// Elders+ only -#define ACCESS_YAUTJA_ELDER 391 +#define ACCESS_YAUTJA_ELDER 392 /// Ancients only -#define ACCESS_YAUTJA_ANCIENT 392 +#define ACCESS_YAUTJA_ANCIENT 393 /// Anything in a tutorial sequence that shouldn't be accessed #define ACCESS_TUTORIAL_LOCKED 998 diff --git a/code/__DEFINES/dcs/signals/atom/signals_area.dm b/code/__DEFINES/dcs/signals/atom/signals_area.dm new file mode 100644 index 000000000000..609b9e69e660 --- /dev/null +++ b/code/__DEFINES/dcs/signals/atom/signals_area.dm @@ -0,0 +1,2 @@ +/// From /area/proc/purge_weeds() +#define COMSIG_AREA_RESIN_DISALLOWED "area_weeds_disallowed" diff --git a/code/__DEFINES/equipment.dm b/code/__DEFINES/equipment.dm index bf7d10a6b96f..3d07a7abe9a7 100644 --- a/code/__DEFINES/equipment.dm +++ b/code/__DEFINES/equipment.dm @@ -178,7 +178,9 @@ /// 2 tiles of full and 2 of partial impairment #define VISION_IMPAIR_STRONG 5 /// 3 tiles of full and 2 of partial impairment (original one) -#define VISION_IMPAIR_MAX 6 +#define VISION_IMPAIR_ULTRA 6 +/// Full blindness, 1 tile visibility +#define VISION_IMPAIR_MAX 7 //VISION IMPAIRMENT LEVELS=========================================================================== @@ -467,6 +469,7 @@ GLOBAL_LIST_INIT(slot_to_contained_sprite_shorthand, list( #define ACCESSORY_SLOT_DECOR "Decor" #define ACCESSORY_SLOT_MEDAL "Medal" #define ACCESSORY_SLOT_PONCHO "Ponchos" +#define ACCESSORY_SLOT_TROPHY "Trophy" /// Used for uniform armor inserts. #define ACCESSORY_SLOT_ARMOR_C "Chest armor" diff --git a/code/__DEFINES/flags.dm b/code/__DEFINES/flags.dm index fc3772e66ff2..16e7c69bc254 100644 --- a/code/__DEFINES/flags.dm +++ b/code/__DEFINES/flags.dm @@ -33,6 +33,8 @@ #define EMOTE_IMPORTANT (1<<2) /// Does the emote not have a message? #define EMOTE_NO_MESSAGE (1<<3) +/// Can only code call this event instead of the player. +#define EMOTE_FORCED_AUDIO (1<<4) // Bitflags for Working Joe emotes /// Working Joe emote diff --git a/code/__DEFINES/job.dm b/code/__DEFINES/job.dm index 2cea4038c03f..ab27821bf3e0 100644 --- a/code/__DEFINES/job.dm +++ b/code/__DEFINES/job.dm @@ -261,24 +261,25 @@ GLOBAL_LIST_INIT(job_command_roles, JOB_COMMAND_ROLES_LIST) #define JOB_FORECON_SMARTGUNNER "Reconnaissance Smartgunner" //-------- UPP --------// -#define JOB_UPP "UPP Private" +#define JOB_UPP "UPP Ryadovoy" #define JOB_UPP_CONSCRIPT "UPP Conscript" -#define JOB_UPP_ENGI "UPP Korporal Sapper" -#define JOB_UPP_MEDIC "UPP Korporal Medic" +#define JOB_UPP_ENGI "UPP MSzht Engineer" +#define JOB_UPP_MEDIC "UPP MSzht Medic" #define JOB_UPP_SPECIALIST "UPP Serzhant" -#define JOB_UPP_LEADER "UPP Master Serzhant" +#define JOB_UPP_LEADER "UPP Starshiy Serzhant" #define JOB_UPP_POLICE "UPP Politsiya" +#define JOB_UPP_LT_OFFICER "UPP Mladshiy Leytenant" #define JOB_UPP_SUPPLY "UPP Logistics Technician" -#define JOB_UPP_LT_OFFICER "UPP Leytenant" #define JOB_UPP_LT_DOKTOR "UPP Leytenant Doktor" -#define JOB_UPP_SRLT_OFFICER "UPP Senior Leytenant" +#define JOB_UPP_SRLT_OFFICER "UPP Starshiy Leytenant" #define JOB_UPP_KPT_OFFICER "UPP Kapitan" #define JOB_UPP_MAY_OFFICER "UPP Mayjor" -#define JOB_UPP_LTKOL_OFFICER "UPP Leytenant Kolonel" -#define JOB_UPP_KOL_OFFICER "UPP Kolonel" -#define JOB_UPP_MAY_GENERAL "UPP Mayjor General" -#define JOB_UPP_LT_GENERAL "UPP Leytenant General" -#define JOB_UPP_GENERAL "UPP Army General" +#define JOB_UPP_LTKOL_OFFICER "UPP Podpolkovnik" +#define JOB_UPP_KOL_OFFICER "UPP Polkovnik" +#define JOB_UPP_BRIG_GENERAL "UPP General Mayjor" +#define JOB_UPP_MAY_GENERAL "UPP General Leytenant" +#define JOB_UPP_LT_GENERAL "UPP General Polkovnik" +#define JOB_UPP_GENERAL "UPP General Armii" #define JOB_UPP_COMBAT_SYNTH "UPP Combat Synthetic" #define JOB_UPP_SUPPORT_SYNTH "UPP Support Synthetic" diff --git a/code/__DEFINES/keybinding.dm b/code/__DEFINES/keybinding.dm index 3f4c90eaf7b9..035f0d8f214b 100644 --- a/code/__DEFINES/keybinding.dm +++ b/code/__DEFINES/keybinding.dm @@ -49,15 +49,15 @@ #define COMSIG_KB_HUMAN_ISSUE_ORDER_MOVE "keybinding_human_issue_order_move" #define COMSIG_KB_HUMAN_ISSUE_ORDER_HOLD "keybinding_human_issue_order_hold" #define COMSIG_KB_HUMAN_ISSUE_ORDER_FOCUS "keybinding_human_issue_order_focus" - #define COMSIG_KB_HUMAN_SPECIALIST_ACTIVATION_ONE "keybinding_human_specialist_activation_one" #define COMSIG_KB_HUMAN_SPECIALIST_ACTIVATION_TWO "keybinding_human_specialist_activation_two" - #define COMSIG_KB_HUMAN_ROTATE_CHAIR "keybinding_human_rotate_chair" - #define COMSIG_KB_HUMAN_SHOW_HELD_ITEM "keybinding_human_show_held_item" - #define COMSIG_KB_HUMAN_CYCLE_HELMET_HUD "keybinding_human_cycle_helmet_hud" +#define COMSIG_KB_HUMAN_PIXEL_SHIFT_GRABBED_NORTH "keybinding_human_pixel_shift_grabbed_north" +#define COMSIG_KB_HUMAN_PIXEL_SHIFT_GRABBED_SOUTH "keybinding_human_pixel_shift_grabbed_south" +#define COMSIG_KB_HUMAN_PIXEL_SHIFT_GRABBED_EAST "keybinding_human_pixel_shift_grabbed_east" +#define COMSIG_KB_HUMAN_PIXEL_SHIFT_GRABBED_WEST "keybinding_human_pixel_shift_grabbed_west" // Human Inventory Navigation #define COMSIG_KB_HUMAN_INTERACT_OTHER_HAND "keybinding_human_interact_other_hand" @@ -178,7 +178,7 @@ // Yautja Bracer #define COMSIG_KB_YAUTJA_TOGGLE_NOTIFICATION_SOUND "keybinding_yautja_toggle_notification_sound" #define COMSIG_KB_YAUTJA_BRACER_MESSAGE "keybinding_yautja_bracer_message" -#define COMSIG_KB_YAUTJA_WRISTBLADES "keybinding_yautja_wristblades" +#define COMSIG_KB_YAUTJA_BRACER_ATTACHMENT "keybinding_yautja_bracer_attachement" #define COMSIG_KB_YAUTJA_TRACK_GEAR "keybinding_yautja_track_gear" #define COMSIG_KB_YAUTJA_CLOAKER "keybinding_yautja_cloaker" #define COMSIG_KB_YAUTJA_CASTER "keybinding_yautja_caster" diff --git a/code/__DEFINES/maps.dm b/code/__DEFINES/maps.dm index ef3d17572f0d..84c0fc429732 100644 --- a/code/__DEFINES/maps.dm +++ b/code/__DEFINES/maps.dm @@ -120,3 +120,8 @@ require only minor tweaks. /// A map key that corresponds to being one exclusively for Space. #define SPACE_KEY "space" + +#define SENTRY_TOP_LEFT "top_left" +#define SENTRY_TOP_RIGHT "top_right" +#define SENTRY_BOTTOM_LEFT "bottom_left" +#define SENTRY_BOTTOM_RIGHT "bottom_right" diff --git a/code/__DEFINES/minimap.dm b/code/__DEFINES/minimap.dm index 0d05b7be6e1b..23fb97fdbc7e 100644 --- a/code/__DEFINES/minimap.dm +++ b/code/__DEFINES/minimap.dm @@ -1,4 +1,3 @@ - #define MINIMAP_FLAG_XENO (1<<0) #define MINIMAP_FLAG_USCM (1<<1) #define MINIMAP_FLAG_PMC (1<<2) @@ -17,12 +16,15 @@ #define MINIMAP_FLAG_XENO_RENEGADE (1<<15) #define MINIMAP_FLAG_ALL (1<<16) - 1 -///Converts the overworld x and y to minimap x and y values +///The minimap zoom scale #define MINIMAP_SCALE 2 +///Converts the overworld x and y to minimap x and y values #define MINIMAP_PIXEL_FROM_WORLD(val) (val * MINIMAP_SCALE - 3) -//actual size of a users screen in pixels +///The actual size of a users screen in pixels #define SCREEN_PIXEL_SIZE 480 +///The actual size of the minimap in pixels +#define MINIMAP_PIXEL_SIZE 512 GLOBAL_LIST_INIT(all_minimap_flags, bitfield2list(MINIMAP_FLAG_ALL)) @@ -68,18 +70,6 @@ GLOBAL_LIST_INIT(all_minimap_flags, bitfield2list(MINIMAP_FLAG_ALL)) #define MINIMAP_SQUAD_SOF "#400000" #define MINIMAP_SQUAD_INTEL "#053818" -#define MINIMAP_ICON_BACKGROUND_CIVILIAN "#7D4820" -#define MINIMAP_ICON_BACKGROUND_CIC "#3f3f3f" -#define MINIMAP_ICON_BACKGROUND_USCM "#888888" -#define MINIMAP_ICON_BACKGROUND_XENO "#3a064d" - -#define MINIMAP_ICON_COLOR_COMMANDER "#c6fcfc" -#define MINIMAP_ICON_COLOR_HEAD "#F0C542" -#define MINIMAP_ICON_COLOR_BRONZE "#eb9545" - -#define MINIMAP_ICON_COLOR_DOCTOR "#b83737" - - //Prison #define MINIMAP_AREA_CELL_MAX "#570101ee" #define MINIMAP_AREA_CELL_HIGH "#a54b01ee" diff --git a/code/__DEFINES/mode.dm b/code/__DEFINES/mode.dm index 1933f3da25d9..2f54513c4e23 100644 --- a/code/__DEFINES/mode.dm +++ b/code/__DEFINES/mode.dm @@ -73,6 +73,9 @@ #define MODE_DISPOSABLE_MOBS (1<<10) // Toggles if mobs fit in disposals or not. Off by default. #define MODE_BYPASS_JOE (1<<11) // Toggles if ghosts can bypass Working Joe spawn limitations, does NOT bypass WL requirement. Off by default. #define MODE_DISABLE_JOE_RESPAWN (1<<12) // Toggles if ghosts can respawn as Working Joes after dying as one when 15 minutes have passed. Off by default +#define MODE_INDESTRUCTIBLE_SPLINTS (1<<13) //Toggle is splints are to become nanosplints +#define MODE_NO_INTERNAL_BLEEDING (1<<14) // Toggles all internal bleeding behavior to cause normal bleeding instead + #define ROUNDSTATUS_FOG_DOWN 1 #define ROUNDSTATUS_PODDOORS_OPEN 2 diff --git a/code/__DEFINES/paygrade_defs/upp.dm b/code/__DEFINES/paygrade_defs/upp.dm index d753d531b67d..b4d105bef041 100644 --- a/code/__DEFINES/paygrade_defs/upp.dm +++ b/code/__DEFINES/paygrade_defs/upp.dm @@ -4,22 +4,22 @@ /// UE, #define PAY_SHORT_UEC "UEC" -/// UE1, Private +/// UE1, Private/Ryadovoy #define PAY_SHORT_UE1 "UE1" -/// UE2, Private First Class +/// UE2, Private First Class/Efreitor #define PAY_SHORT_UE2 "UE2" -/// UE3, Korporal +/// UE3, Korporal/Mladshiy Serzhant #define PAY_SHORT_UE3 "UE3" -/// UE4, unior Serzhant +/// UE4, Junior Serzhant/Serzhant #define PAY_SHORT_UE4 "UE4" -/// UE5, Serzhant +/// UE5, Serzhant/Starshiy Serzhant #define PAY_SHORT_UE5 "UE5" -/// UE6, Master Serzhant +/// UE6, Master Serzhant/Starshyna #define PAY_SHORT_UE6 "UE6" /// UC1, Junior Kommando @@ -31,32 +31,32 @@ /// UC3, 1st Kommando #define PAY_SHORT_UC3 "UC3" -/// UO1, Leytenant +/// UO1, Leytenant/Mladshiy Leytenant #define PAY_SHORT_UO1 "UO1" -/// UO2, Senior Leytenant +/// UO2, Senior Leytenant/Starshiy Leytenant #define PAY_SHORT_UO2 "UO2" -/// UO3, Kapitan +/// UO3, Kapitan/Captain #define PAY_SHORT_UO3 "UO3" -/// UO4, Mayjor +/// UO4, Mayjor/Major #define PAY_SHORT_UO4 "UO4" /// UO4P, Political Commissar #define PAY_SHORT_UO4P "UO4P" -/// UO5, Leytenant Kolonel +/// UO5, Leytenant Kolonel/Podpolkovnik #define PAY_SHORT_UO5 "UO5" -/// UO6, Kolonel +/// UO6, Kolonel/Polkovnik #define PAY_SHORT_UO6 "UO6" -/// UO7, Mayjor General +/// UO7, Mayjor General/General Leytenant #define PAY_SHORT_UO7 "UO7" -/// UO8, Leytenant General +/// UO8, Leytenant General/General Polkovnik #define PAY_SHORT_UO8 "UO8" -/// UO9, Army General +/// UO9, Army General/General Armii #define PAY_SHORT_UO9 "UO9" diff --git a/code/__DEFINES/subsystems.dm b/code/__DEFINES/subsystems.dm index 88496c79d630..9b709b9be3e5 100644 --- a/code/__DEFINES/subsystems.dm +++ b/code/__DEFINES/subsystems.dm @@ -141,6 +141,7 @@ #define SS_INIT_RADIO 2 #define SS_INIT_TIMER 100 #define SS_INIT_UNSPECIFIED 0 +#define SS_INIT_PREDSHIPS -19 #define SS_INIT_ASSETS -20 #define SS_INIT_TICKER -21 #define SS_INIT_VOTE -23 @@ -148,7 +149,6 @@ #define SS_INIT_ENTITYMANAGER -28 #define SS_INIT_PLAYTIME -29 #define SS_INIT_STICKY -30 -#define SS_INIT_PREDSHIPS -31 #define SS_INIT_OBJECTIVES -32 #define SS_INIT_MINIMAP -34 #define SS_INIT_STATPANELS -98 diff --git a/code/__DEFINES/vendors.dm b/code/__DEFINES/vendors.dm index 70e30edddf24..c118ad45b501 100644 --- a/code/__DEFINES/vendors.dm +++ b/code/__DEFINES/vendors.dm @@ -40,6 +40,7 @@ #define VENDOR_THEME_USCM 1 #define VENDOR_THEME_CLF 2 #define VENDOR_THEME_UPP 3 +#define VENDOR_THEME_YAUTJA 4 #define VENDOR_ITEM_REGULAR 1 #define VENDOR_ITEM_MANDATORY 2 diff --git a/code/__DEFINES/weapon_stats.dm b/code/__DEFINES/weapon_stats.dm index 1c3c09e9b28d..7313ebf80562 100644 --- a/code/__DEFINES/weapon_stats.dm +++ b/code/__DEFINES/weapon_stats.dm @@ -66,7 +66,7 @@ It DOES NOT control where your bullets go, that's scatter and projectile varianc ////SCATTER//// */ -#define SCATTER_AMOUNT_NEURO 60 +#define SCATTER_AMOUNT_NEURO 45 #define SCATTER_AMOUNT_TIER_1 15 #define SCATTER_AMOUNT_TIER_2 10 #define SCATTER_AMOUNT_TIER_3 8 diff --git a/code/__HELPERS/sanitize_values.dm b/code/__HELPERS/sanitize_values.dm index 291246e621a0..7c6f9046a9b9 100644 --- a/code/__HELPERS/sanitize_values.dm +++ b/code/__HELPERS/sanitize_values.dm @@ -77,3 +77,23 @@ if(65 to 70) . += ascii2text(ascii+32) //letters A to F - translates to lowercase else return default return . + +/proc/sanitize_gear(list/gear, client/user) + var/list/sanitized_gear = list() + var/running_cost = 0 + + for(var/gear_option in gear) + if(!GLOB.gear_datums_by_name[gear_option]) + continue + + var/datum/gear/gear_datum = GLOB.gear_datums_by_name[gear_option] + var/new_total = running_cost + gear_datum.cost + + if(new_total > MAX_GEAR_COST) + to_chat(user, SPAN_WARNING("Your [gear_option] was removed from your loadout as it exceeded the point limit.")) + continue + + running_cost = new_total + sanitized_gear += gear_option + + return sanitized_gear diff --git a/code/__pragmas.dm b/code/__pragmas.dm index 309883fbda20..ac6541a4a1b2 100644 --- a/code/__pragmas.dm +++ b/code/__pragmas.dm @@ -22,6 +22,9 @@ #pragma DanglingVarType error #pragma MissingInterpolatedExpression error #pragma InvalidIndexOperation error +#pragma PointlessPositionalArgument error +#pragma ProcArgumentGlobal error //3000-3999 #pragma EmptyBlock error +#pragma AmbiguousInOrder error diff --git a/code/controllers/configuration/entries/general.dm b/code/controllers/configuration/entries/general.dm index bad72cc8397c..a41a619e602f 100644 --- a/code/controllers/configuration/entries/general.dm +++ b/code/controllers/configuration/entries/general.dm @@ -369,6 +369,12 @@ The default value assumes youtube-dl is in your system PATH /datum/config_entry/string/invoke_youtubedl protection = CONFIG_ENTRY_LOCKED | CONFIG_ENTRY_HIDDEN +/datum/config_entry/string/cobalt_base_api + protection = CONFIG_ENTRY_LOCKED | CONFIG_ENTRY_HIDDEN + + +/datum/config_entry/string/cobalt_api_key + protection = CONFIG_ENTRY_LOCKED | CONFIG_ENTRY_HIDDEN /datum/config_entry/number/error_cooldown // The "cooldown" time for each occurrence of a unique error config_entry_value = 600 diff --git a/code/controllers/subsystem/minimap.dm b/code/controllers/subsystem/minimap.dm index 8c2cbc7c5ee7..951088436950 100644 --- a/code/controllers/subsystem/minimap.dm +++ b/code/controllers/subsystem/minimap.dm @@ -46,53 +46,72 @@ SUBSYSTEM_DEF(minimaps) minimaps_by_z["[level]"] = new /datum/hud_displays if(!is_ground_level(level) && !is_mainship_level(level)) continue - var/icon/icon_gen = new('icons/ui_icons/minimap.dmi') //480x480 blank icon template for drawing on the map + + var/icon/icon_gen = new('icons/ui_icons/minimap.dmi') //600x600 blank icon template for drawing on the map + var/xmin = world.maxx + var/ymin = world.maxy + var/xmax = 1 + var/ymax = 1 + for(var/xval in 1 to world.maxx) for(var/yval in 1 to world.maxy) //Scan all the turfs and draw as needed - var/turf/location = locate(xval,yval,level) - if(istype(location, /turf/open/space)) - continue + var/turf/location = locate(xval, yval, level) if(location.z != level) continue + if(location.density) + if(!istype(location, /turf/closed/wall/almayer/outer)) // Ignore almayer border + xmin = min(xmin, xval) + ymin = min(ymin, yval) + xmax = max(xmax, xval) + ymax = max(ymax, yval) icon_gen.DrawBox(location.minimap_color, xval, yval) continue + + if(istype(location, /turf/open/space)) + continue + var/atom/movable/alttarget = (locate(/obj/structure/machinery/door) in location) || (locate(/obj/structure/fence) in location) if(alttarget) + xmin = min(xmin, xval) + ymin = min(ymin, yval) + xmax = max(xmax, xval) + ymax = max(ymax, yval) icon_gen.DrawBox(alttarget.minimap_color, xval, yval) continue + var/area/turfloc = location.loc if(turfloc.minimap_color) + xmin = min(xmin, xval) + ymin = min(ymin, yval) + xmax = max(xmax, xval) + ymax = max(ymax, yval) icon_gen.DrawBox(BlendRGB(location.minimap_color, turfloc.minimap_color, 0.5), xval, yval) continue + + xmin = min(xmin, xval) + ymin = min(ymin, yval) + xmax = max(xmax, xval) + ymax = max(ymax, yval) icon_gen.DrawBox(location.minimap_color, xval, yval) - icon_gen.Scale(480 * MINIMAP_SCALE ,480 * MINIMAP_SCALE) //scale it up x2 to make it easer to see - icon_gen.Crop(1, 1, min(icon_gen.Width(), 480), min(icon_gen.Height(), 480)) //then cut all the empty pixels - - //generation is done, now we need to center the icon to someones view, this can be left out if you like it ugly and will halve SSinit time - //calculate the offset of the icon - var/largest_x = 0 - var/smallest_x = SCREEN_PIXEL_SIZE - var/largest_y = 0 - var/smallest_y = SCREEN_PIXEL_SIZE - for(var/xval=1 to SCREEN_PIXEL_SIZE step 2) - for(var/yval=1 to SCREEN_PIXEL_SIZE step 2) - if(!icon_gen.GetPixel(xval, yval)) - continue - if(xval > largest_x) - largest_x = xval - else if(xval < smallest_x) - smallest_x = xval - if(yval > largest_y) - largest_y = yval - else if(yval < smallest_y) - smallest_y = yval - minimaps_by_z["[level]"].x_offset = floor((SCREEN_PIXEL_SIZE-largest_x-smallest_x) / MINIMAP_SCALE) - minimaps_by_z["[level]"].y_offset = floor((SCREEN_PIXEL_SIZE-largest_y-smallest_y) / MINIMAP_SCALE) + xmin = xmin * MINIMAP_SCALE - 1 + ymin = ymin * MINIMAP_SCALE - 1 + xmax = min(xmax * MINIMAP_SCALE, MINIMAP_PIXEL_SIZE) + ymax = min(ymax * MINIMAP_SCALE, MINIMAP_PIXEL_SIZE) - icon_gen.Shift(EAST, minimaps_by_z["[level]"].x_offset) - icon_gen.Shift(NORTH, minimaps_by_z["[level]"].y_offset) + icon_gen.Scale(icon_gen.Width() * MINIMAP_SCALE, icon_gen.Height() * MINIMAP_SCALE) //scale it up x2 to make it easer to see + icon_gen.Crop(xmin, ymin, MINIMAP_PIXEL_SIZE + xmin - 1, MINIMAP_PIXEL_SIZE + ymin - 1) //then trim it down also cutting anything unused on the bottom left + + // Determine and assign the offsets + minimaps_by_z["[level]"].x_offset = floor((MINIMAP_PIXEL_SIZE - xmax - 1) / MINIMAP_SCALE) - xmin + minimaps_by_z["[level]"].y_offset = floor((MINIMAP_PIXEL_SIZE - ymax - 1) / MINIMAP_SCALE) - ymin + minimaps_by_z["[level]"].x_max = xmax + minimaps_by_z["[level]"].y_max = ymax + + // Center the map icon + icon_gen.Shift(EAST, minimaps_by_z["[level]"].x_offset + xmin) + icon_gen.Shift(NORTH, minimaps_by_z["[level]"].y_offset + ymin) minimaps_by_z["[level]"].hud_image = icon_gen //done making the image! @@ -196,6 +215,10 @@ SUBSYSTEM_DEF(minimaps) var/x_offset = 0 ///y offset of the actual icons to keep it to screens var/y_offset = 0 + ///max x for this zlevel + var/x_max = 1 + ///max y for this zlevel + var/y_max = 1 /datum/hud_displays/New() ..() @@ -329,13 +352,13 @@ SUBSYSTEM_DEF(minimaps) * * zlevel: zlevel to fetch map for * * flags: map flags to fetch from */ -/datum/controller/subsystem/minimaps/proc/fetch_minimap_object(zlevel, flags) - var/hash = "[zlevel]-[flags]" +/datum/controller/subsystem/minimaps/proc/fetch_minimap_object(zlevel, flags, shifting = FALSE) + var/hash = "[zlevel]-[flags]-[shifting]" if(hashed_minimaps[hash]) return hashed_minimaps[hash] - var/atom/movable/screen/minimap/map = new(null, zlevel, flags) + var/atom/movable/screen/minimap/map = new(null, zlevel, flags, shifting) if (!map.icon) //Don't wanna save an unusable minimap for a z-level. - CRASH("Empty and unusable minimap generated for '[zlevel]-[flags]'") //Can be caused by atoms calling this proc before minimap subsystem initializing. + CRASH("Empty and unusable minimap generated for '[zlevel]-[flags]-[shifting]'") //Can be caused by atoms calling this proc before minimap subsystem initializing. hashed_minimaps[hash] = map return map @@ -522,14 +545,57 @@ SUBSYSTEM_DEF(minimaps) layer = ABOVE_HUD_LAYER screen_loc = "1,1" mouse_opacity = MOUSE_OPACITY_TRANSPARENT - -/atom/movable/screen/minimap/Initialize(mapload, target, flags) + appearance_flags = TILE_BOUND + /// How many pixels to shift each update + var/shift_size = 8 + /// The horizontal max for this map (set at Initialize) + var/x_max = 1 + /// The vertical max for this map (set at Initialize) + var/y_max = 1 + /// The current x pixel shift + var/cur_x_shift = 0 + /// The current y pixel shift + var/cur_y_shift = 0 + /// Whether the horizontal shift is currently pushing the map westward + var/west_x_shift = TRUE + /// Whether the vertical shift is currently pushing the map southward + var/south_y_shift = TRUE + +/atom/movable/screen/minimap/Initialize(mapload, target, flags, shifting = FALSE) . = ..() if(!SSminimaps.minimaps_by_z["[target]"]) return icon = SSminimaps.minimaps_by_z["[target]"].hud_image SSminimaps.add_to_updaters(src, flags, target) + x_max = SSminimaps.minimaps_by_z["[target]"].x_max + y_max = SSminimaps.minimaps_by_z["[target]"].y_max + + if(shifting && (x_max > SCREEN_PIXEL_SIZE || y_max > SCREEN_PIXEL_SIZE)) + START_PROCESSING(SSobj, src) + if(findtext(screen_loc, "1") != 1) // We're detecting the first position matching, not the 1 there + CRASH("Shifting a minimap screen_loc of '[screen_loc]' is not currently implemented!") // Just need to do string manip in process to support it + +/atom/movable/screen/minimap/process() + if(x_max > SCREEN_PIXEL_SIZE) + if(west_x_shift) + cur_x_shift = min(cur_x_shift + shift_size, x_max - SCREEN_PIXEL_SIZE) + if(cur_x_shift == x_max - SCREEN_PIXEL_SIZE) + west_x_shift = !west_x_shift + else + cur_x_shift = max(cur_x_shift - shift_size, 0) + if(cur_x_shift == 0) + west_x_shift = !west_x_shift + if(y_max > SCREEN_PIXEL_SIZE) + if(south_y_shift) + cur_y_shift = min(cur_y_shift + shift_size, y_max - SCREEN_PIXEL_SIZE) + if(cur_y_shift == y_max - SCREEN_PIXEL_SIZE) + south_y_shift = !south_y_shift + else + cur_y_shift = max(cur_y_shift - shift_size, 0) + if(cur_y_shift == 0) + south_y_shift = !south_y_shift + screen_loc = "1:-[cur_x_shift],1:-[cur_y_shift]" // Pixel shift the map /** * Action that gives the owner access to the minimap pool @@ -547,6 +613,8 @@ SUBSYSTEM_DEF(minimaps) var/atom/movable/screen/minimap/map ///This is mostly for the AI & other things which do not move groundside. var/default_overwatch_level = 0 + ///Whether this minimap should shift or not + var/shifting = FALSE /datum/action/minimap/Destroy() map = null @@ -566,7 +634,7 @@ SUBSYSTEM_DEF(minimaps) . = ..() if(default_overwatch_level) - map = SSminimaps.fetch_minimap_object(default_overwatch_level, minimap_flags) + map = SSminimaps.fetch_minimap_object(default_overwatch_level, minimap_flags, shifting) else RegisterSignal(target, COMSIG_MOVABLE_Z_CHANGED, PROC_REF(on_owner_z_change)) @@ -577,7 +645,7 @@ SUBSYSTEM_DEF(minimaps) if(!SSminimaps.minimaps_by_z["[z_level]"] || !SSminimaps.minimaps_by_z["[z_level]"].hud_image) return - map = SSminimaps.fetch_minimap_object(z_level, minimap_flags) + map = SSminimaps.fetch_minimap_object(z_level, minimap_flags, shifting) /datum/action/minimap/remove_from(mob/target) . = ..() @@ -599,9 +667,9 @@ SUBSYSTEM_DEF(minimaps) if(!SSminimaps.minimaps_by_z["[newz]"] || !SSminimaps.minimaps_by_z["[newz]"].hud_image) return if(default_overwatch_level) - map = SSminimaps.fetch_minimap_object(default_overwatch_level, minimap_flags) + map = SSminimaps.fetch_minimap_object(default_overwatch_level, minimap_flags, shifting) return - map = SSminimaps.fetch_minimap_object(newz, minimap_flags) + map = SSminimaps.fetch_minimap_object(newz, minimap_flags, shifting) /datum/action/minimap/xeno minimap_flags = MINIMAP_FLAG_XENO @@ -614,6 +682,7 @@ SUBSYSTEM_DEF(minimaps) minimap_flags = MINIMAP_FLAG_ALL marker_flags = NONE hidden = TRUE + shifting = TRUE /datum/tacmap var/allowed_flags = MINIMAP_FLAG_USCM @@ -960,6 +1029,7 @@ SUBSYSTEM_DEF(minimaps) map = SSminimaps.fetch_minimap_object(zlevel, flags) map.screen_loc = "[map_ref]:1,1" map.assigned_map = map_ref + map.appearance_flags = NONE // If you really want TILE_BOUND for the tacmaps, you need to CENTER it but it won't be scaled right /datum/tacmap_holder/Destroy() map = null diff --git a/code/controllers/subsystem/objectives_controller.dm b/code/controllers/subsystem/objectives_controller.dm index 38accda46004..7f485288ada9 100644 --- a/code/controllers/subsystem/objectives_controller.dm +++ b/code/controllers/subsystem/objectives_controller.dm @@ -314,7 +314,7 @@ SUBSYSTEM_DEF(objectives) for(var/datum/cm_objective/objective in medium_value) while(LAZYLEN(objective.required_objectives) < objective.number_of_clues_to_generate && LAZYLEN(low_value)) var/datum/cm_objective/req = pick(low_value) - if(req in objective.required_objectives || (req.objective_flags & OBJECTIVE_DEAD_END)) + if((req in objective.required_objectives) || (req.objective_flags & OBJECTIVE_DEAD_END)) continue //don't want to pick the same thing twice OR use a dead-end objective. link_objectives(req, objective) @@ -327,7 +327,7 @@ SUBSYSTEM_DEF(objectives) for(var/datum/cm_objective/objective in high_value) while(LAZYLEN(objective.required_objectives) < objective.number_of_clues_to_generate && LAZYLEN(medium_value)) var/datum/cm_objective/req = pick(medium_value) - if(req in objective.required_objectives || (req.objective_flags & OBJECTIVE_DEAD_END)) + if((req in objective.required_objectives) || (req.objective_flags & OBJECTIVE_DEAD_END)) continue //don't want to pick the same thing twice OR use a dead-end objective. link_objectives(req, objective) @@ -340,7 +340,7 @@ SUBSYSTEM_DEF(objectives) for(var/datum/cm_objective/objective in extreme_value) while(LAZYLEN(objective.required_objectives) < objective.number_of_clues_to_generate && LAZYLEN(high_value)) var/datum/cm_objective/req = pick(high_value) - if(req in objective.required_objectives || (req.objective_flags & OBJECTIVE_DEAD_END)) + if((req in objective.required_objectives) || (req.objective_flags & OBJECTIVE_DEAD_END)) continue //don't want to pick the same thing twice OR use a dead-end objective. link_objectives(req, objective) @@ -353,7 +353,7 @@ SUBSYSTEM_DEF(objectives) for(var/datum/cm_objective/objective in absolute_value) while(LAZYLEN(objective.required_objectives) < objective.number_of_clues_to_generate && LAZYLEN(extreme_value)) var/datum/cm_objective/req = pick(extreme_value) - if(req in objective.required_objectives || (req.objective_flags & OBJECTIVE_DEAD_END)) + if((req in objective.required_objectives) || (req.objective_flags & OBJECTIVE_DEAD_END)) continue //don't want to pick the same thing twice OR use a dead-end objective. link_objectives(req, objective) diff --git a/code/datums/ammo/ammo.dm b/code/datums/ammo/ammo.dm index 587ffd805b6c..43f4e8ac0031 100644 --- a/code/datums/ammo/ammo.dm +++ b/code/datums/ammo/ammo.dm @@ -240,7 +240,7 @@ final_angle += rand(-total_scatter_angle, total_scatter_angle) var/turf/new_target = get_angle_target_turf(curloc, final_angle, 30) - P.fire_at(new_target, original_P.firer, original_P.shot_from, P.ammo.max_range, P.ammo.shell_speed, original_P.original) //Fire! + P.fire_at(new_target, original_P.firer, original_P.shot_from, P.ammo.max_range, P.ammo.shell_speed, original_P.original, FALSE) //Fire! /datum/ammo/proc/drop_flame(turf/turf, datum/cause_data/cause_data) // ~Art updated fire 20JAN17 if(!istype(turf)) diff --git a/code/datums/ammo/bullet/lever_action.dm b/code/datums/ammo/bullet/lever_action.dm index e1475146b21f..54019f35d6ef 100644 --- a/code/datums/ammo/bullet/lever_action.dm +++ b/code/datums/ammo/bullet/lever_action.dm @@ -12,6 +12,7 @@ accuracy = HIT_ACCURACY_TIER_1 shell_speed = AMMO_SPEED_TIER_6 accurate_range = 14 + effective_range_max = 7 handful_state = "lever_action_bullet" //unused and not working. need to refactor MD code. Unobtainable. @@ -34,6 +35,7 @@ damage = 70 //blanks CAN hurt you if shot very close penetration = 0 accuracy = HIT_ACCURACY_TIER_1 + effective_range_max = 0 damage_falloff = DAMAGE_FALLOFF_BLANK //not much, though (comparatively) shell_speed = AMMO_SPEED_TIER_5 handful_state = "training_lever_action_bullet" diff --git a/code/datums/ammo/bullet/pistol.dm b/code/datums/ammo/bullet/pistol.dm index 8b5239ba9127..f55691e8b2f6 100644 --- a/code/datums/ammo/bullet/pistol.dm +++ b/code/datums/ammo/bullet/pistol.dm @@ -94,6 +94,8 @@ name = "stun pistol bullet" sound_override = null + accuracy = HIT_ACCURACY_TIER_4 + // Used by M1911, Deagle and KT-42 /datum/ammo/bullet/pistol/heavy name = "heavy pistol bullet" diff --git a/code/datums/ammo/bullet/shotgun.dm b/code/datums/ammo/bullet/shotgun.dm index e71114dc24de..a1255605899a 100644 --- a/code/datums/ammo/bullet/shotgun.dm +++ b/code/datums/ammo/bullet/shotgun.dm @@ -11,10 +11,11 @@ name = "shotgun slug" handful_state = "slug_shell" - accurate_range = 6 + accurate_range = 8 max_range = 8 damage = 70 penetration = ARMOR_PENETRATION_TIER_4 + accuracy = HIT_ACCURACY_TIER_3 damage_armor_punch = 2 handful_state = "slug_shell" @@ -65,7 +66,7 @@ damage_type = BURN flags_ammo_behavior = AMMO_BALLISTIC - accuracy = -HIT_ACCURACY_TIER_2 + accuracy = HIT_ACCURACY_TIER_2 max_range = 12 damage = 55 penetration= ARMOR_PENETRATION_TIER_1 diff --git a/code/datums/ammo/bullet/special_ammo.dm b/code/datums/ammo/bullet/special_ammo.dm index b6d1ad4c93c3..ae5d63c79569 100644 --- a/code/datums/ammo/bullet/special_ammo.dm +++ b/code/datums/ammo/bullet/special_ammo.dm @@ -9,17 +9,18 @@ icon_state = "redbullet" flags_ammo_behavior = AMMO_BALLISTIC - damage_falloff = DAMAGE_FALLOFF_TIER_7 + damage_falloff = DAMAGE_FALLOFF_TIER_6 max_range = 12 accuracy = HIT_ACCURACY_TIER_4 damage = 30 penetration = 0 - effective_range_max = 7 + effective_range_max = 5 /datum/ammo/bullet/smartgun/armor_piercing name = "armor-piercing smartgun bullet" icon_state = "bullet" + damage_falloff = DAMAGE_FALLOFF_TIER_8 accurate_range = 12 accuracy = HIT_ACCURACY_TIER_2 damage = 20 diff --git a/code/datums/ammo/misc.dm b/code/datums/ammo/misc.dm index 28610f283df2..d7ba89b83c5b 100644 --- a/code/datums/ammo/misc.dm +++ b/code/datums/ammo/misc.dm @@ -184,7 +184,7 @@ /datum/ammo/flare/starshell/set_bullet_traits() LAZYADD(traits_to_give, list( BULLET_TRAIT_ENTRY(/datum/element/bullet_trait_iff), - BULLET_TRAIT_ENTRY(/datum/element/bullet_trait_incendiary, stacks = 1) + BULLET_TRAIT_ENTRY(/datum/element/bullet_trait_incendiary, stacks = 2) )) /datum/ammo/souto diff --git a/code/datums/ammo/rocket.dm b/code/datums/ammo/rocket.dm index d1050ed32062..f6e37abd24f5 100644 --- a/code/datums/ammo/rocket.dm +++ b/code/datums/ammo/rocket.dm @@ -277,8 +277,9 @@ /datum/ammo/rocket/custom name = "custom rocket" - accurate_range = 8 - max_range = 8 + accuracy = HIT_ACCURACY_TIER_5 + accurate_range = 7 + max_range = 7 /datum/ammo/rocket/custom/proc/prime(atom/atom, obj/projectile/projectile) var/obj/item/weapon/gun/launcher/rocket/launcher = projectile.shot_from diff --git a/code/datums/ammo/shrapnel.dm b/code/datums/ammo/shrapnel.dm index 836e142489e1..1db9f7b61631 100644 --- a/code/datums/ammo/shrapnel.dm +++ b/code/datums/ammo/shrapnel.dm @@ -39,7 +39,7 @@ name = ".22 hornet round" icon_state = "hornet_round" flags_ammo_behavior = AMMO_BALLISTIC - damage = 20 + damage = 8 shrapnel_chance = 0 shell_speed = AMMO_SPEED_TIER_3//she fast af boi penetration = ARMOR_PENETRATION_TIER_5 diff --git a/code/datums/ammo/xeno.dm b/code/datums/ammo/xeno.dm index 7b5c8ee71257..697fc83e641c 100644 --- a/code/datums/ammo/xeno.dm +++ b/code/datums/ammo/xeno.dm @@ -37,15 +37,21 @@ neuro_callback = CALLBACK(GLOBAL_PROC, GLOBAL_PROC_REF(apply_neuro)) -/proc/apply_neuro(mob/living/M, power, insta_neuro) +/proc/apply_neuro(mob/living/M, power, insta_neuro = FALSE, drain_stims = FALSE, drain_medchems = FALSE) if(skillcheck(M, SKILL_ENDURANCE, SKILL_ENDURANCE_MAX) && !insta_neuro) M.visible_message(SPAN_DANGER("[M] withstands the neurotoxin!")) return //endurance 5 makes you immune to weak neurotoxin if(ishuman(M)) var/mob/living/carbon/human/H = M + if(drain_stims) + for(var/datum/reagent/generated/stim in H.reagents.reagent_list) + H.reagents.remove_reagent(stim.id, power, TRUE) if(H.chem_effect_flags & CHEM_EFFECT_RESIST_NEURO || H.species.flags & NO_NEURO) H.visible_message(SPAN_DANGER("[M] shrugs off the neurotoxin!")) return //species like zombies or synths are immune to neurotoxin + if(drain_medchems) + for(var/datum/reagent/medical/med in H.reagents.reagent_list) + H.reagents.remove_reagent(med.id, power, TRUE) if(!isxeno(M)) if(insta_neuro) @@ -55,7 +61,7 @@ return if(ishuman(M)) - M.apply_effect(2.5, SUPERSLOW) + M.apply_effect(4, SUPERSLOW) M.visible_message(SPAN_DANGER("[M]'s movements are slowed.")) var/no_clothes_neuro = FALSE @@ -89,10 +95,10 @@ if(ishuman(M)) var/mob/living/carbon/human/H = M if(H.status_flags & XENO_HOST) - neuro_callback.Invoke(H, effect_power, TRUE) + neuro_callback.Invoke(H, effect_power, TRUE, TRUE, TRUE) return - neuro_callback.Invoke(M, effect_power, FALSE) + neuro_callback.Invoke(M, effect_power, FALSE, TRUE, TRUE) /datum/ammo/xeno/toxin/medium //Spitter name = "neurotoxic spatter" @@ -110,7 +116,7 @@ max_range = 6 - 1 /datum/ammo/xeno/toxin/queen/on_hit_mob(mob/M,obj/projectile/P) - neuro_callback.Invoke(M, effect_power, TRUE) + neuro_callback.Invoke(M, effect_power, TRUE, FALSE, FALSE) /datum/ammo/xeno/toxin/shotgun name = "neurotoxic droplet" @@ -121,7 +127,6 @@ accuracy_var_high = PROJECTILE_VARIANCE_TIER_6 accurate_range = 5 max_range = 5 - scatter = SCATTER_AMOUNT_NEURO bonus_projectiles_amount = EXTRA_PROJECTILES_TIER_4 /datum/ammo/xeno/toxin/shotgun/New() @@ -132,6 +137,7 @@ /datum/ammo/xeno/toxin/shotgun/additional name = "additional neurotoxic droplets" + scatter = SCATTER_AMOUNT_NEURO bonus_projectiles_amount = 0 /datum/ammo/xeno/acid diff --git a/code/datums/bug_report.dm b/code/datums/bug_report.dm index fd82d4950b91..4025ce38718f 100644 --- a/code/datums/bug_report.dm +++ b/code/datums/bug_report.dm @@ -56,7 +56,7 @@ /datum/tgui_bug_report_form/proc/sanitize_payload(list/params) for(var/param in params) - params[param] = sanitize(params[param], list("\t"=" ","�"=" ")) + params[param] = sanitize(params[param], list("\t"=" ","�"=" ","<"=" ",">"=" ","&"=" ")) return params diff --git a/code/datums/components/resin_cleanup.dm b/code/datums/components/resin_cleanup.dm new file mode 100644 index 000000000000..4305e4b358a4 --- /dev/null +++ b/code/datums/components/resin_cleanup.dm @@ -0,0 +1,19 @@ +/** + * Handles cleaning up resin when the area requests it + */ +/datum/component/resin_cleanup + +/datum/component/resin_cleanup/Initialize(...) + var/area/parent_area = get_area(parent) + + RegisterSignal(parent_area, COMSIG_AREA_RESIN_DISALLOWED, PROC_REF(cleanup_resin)) + +/datum/component/resin_cleanup/proc/cleanup_resin() + SIGNAL_HANDLER + + if(isturf(parent)) + var/turf/parent_turf = parent + addtimer(CALLBACK(parent_turf, TYPE_PROC_REF(/turf, ScrapeAway)), rand(1 SECONDS, 5 SECONDS)) + return + + QDEL_IN(parent, rand(1 SECONDS, 5 SECONDS)) diff --git a/code/datums/components/weed_food.dm b/code/datums/components/weed_food.dm index ce6fe35e4a28..4c8d6112fde2 100644 --- a/code/datums/components/weed_food.dm +++ b/code/datums/components/weed_food.dm @@ -228,8 +228,6 @@ UnregisterSignal(parent_buckle, COMSIG_OBJ_AFTER_BUCKLE) parent_buckle = null - if(parent_mob.is_xeno_grabbable()) - return FALSE if(!(parent_mob.status_flags & PERMANENTLY_DEAD)) var/mob/living/carbon/human/parent_human = parent_mob if(istype(parent_human) && !parent_human.undefibbable) diff --git a/code/datums/elements/bullet_trait/damage_boost.dm b/code/datums/elements/bullet_trait/damage_boost.dm index 20175d11256a..b4733396135a 100644 --- a/code/datums/elements/bullet_trait/damage_boost.dm +++ b/code/datums/elements/bullet_trait/damage_boost.dm @@ -55,6 +55,7 @@ GLOBAL_LIST_INIT(damage_boost_vehicles, typecacheof(/obj/vehicle/multitile)) /datum/element/bullet_trait_damage_boost/proc/check_type(atom/A) if(istype(A, /obj/structure/machinery/door)) return "door" + else if(istype(A, /turf/closed/wall)) return "wall" //add more cases for other interactions (switch doesn't seem to work with istype) else return 0 @@ -73,6 +74,12 @@ GLOBAL_LIST_INIT(damage_boost_vehicles, typecacheof(/obj/vehicle/multitile)) active_damage_mult = 1 //no bonus damage else active_damage_mult = damage_mult + if("wall") + var/turf/closed/wall/hit_wall = hit_atom + if(locate(/mob/living) in hit_wall) + active_damage_mult = 1 //block bonus damage reflected on mobs from wall turfs + else + active_damage_mult = damage_mult //add more cases for other interactions else active_damage_mult = damage_mult diff --git a/code/datums/emergency_calls/cryo_marines.dm b/code/datums/emergency_calls/cryo_marines.dm index 56fa434d09c3..7b675af8bb97 100644 --- a/code/datums/emergency_calls/cryo_marines.dm +++ b/code/datums/emergency_calls/cryo_marines.dm @@ -15,7 +15,7 @@ /datum/emergency_call/cryo_squad/spawn_candidates(quiet_launch, announce_incoming, override_spawn_loc) var/datum/squad/marine/cryo/cryo_squad = GLOB.RoleAuthority.squads_by_type[/datum/squad/marine/cryo] - leaders = cryo_squad.num_leaders + leaders = cryo_squad.roles_in[JOB_SQUAD_LEADER] . = ..() shipwide_ai_announcement("Successfully deployed [mob_max] Foxtrot marines, of which [length(members)] are ready for duty.") if(mob_max > length(members)) @@ -45,7 +45,7 @@ sleep(5) var/datum/squad/marine/cryo/cryo_squad = GLOB.RoleAuthority.squads_by_type[/datum/squad/marine/cryo] - 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)))) + if(leaders < cryo_squad.roles_cap[JOB_SQUAD_LEADER] && (!mind || (HAS_FLAG(human.client.prefs.toggles_ert, PLAY_LEADER) && check_timelock(human.client, JOB_SQUAD_LEADER, time_required_for_job)))) leader = human leaders++ human.client?.prefs.copy_all_to(human, JOB_SQUAD_LEADER, TRUE, TRUE) diff --git a/code/datums/emergency_calls/cryo_marines_heavy.dm b/code/datums/emergency_calls/cryo_marines_heavy.dm index 42f25a461254..b3fcc390d964 100644 --- a/code/datums/emergency_calls/cryo_marines_heavy.dm +++ b/code/datums/emergency_calls/cryo_marines_heavy.dm @@ -18,7 +18,7 @@ /datum/emergency_call/cryo_squad_equipped/spawn_candidates(quiet_launch, announce_incoming, override_spawn_loc) var/datum/squad/marine/cryo/cryo_squad = GLOB.RoleAuthority.squads_by_type[/datum/squad/marine/cryo] - leaders = cryo_squad.num_leaders + leaders = cryo_squad.roles_in[JOB_SQUAD_LEADER] . = ..() if(length(members)) shipwide_ai_announcement("Successfully deployed [length(members)] Foxtrot marines.") @@ -36,7 +36,7 @@ sleep(5) var/datum/squad/marine/cryo/cryo_squad = GLOB.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)) + if(leaders < cryo_squad.roles_cap[JOB_SQUAD_LEADER] && HAS_FLAG(H.client.prefs.toggles_ert, PLAY_LEADER) && check_timelock(H.client, JOB_SQUAD_LEADER, time_required_for_job)) leader = H leaders++ arm_equipment(H, /datum/equipment_preset/uscm/leader_equipped/cryo, TRUE, TRUE) diff --git a/code/datums/emergency_calls/upp.dm b/code/datums/emergency_calls/upp.dm index 6204d9818b8f..ea6a8608c740 100644 --- a/code/datums/emergency_calls/upp.dm +++ b/code/datums/emergency_calls/upp.dm @@ -32,12 +32,12 @@ to_chat(M, SPAN_BOLD("You grew up in relatively simple family in [pick(75;"Eurasia", 25;"a famished UPP colony")] with few belongings or luxuries.")) to_chat(M, SPAN_BOLD("The family you grew up with were [pick(50;"getting by", 25;"impoverished", 25;"starving")] and you were one of [pick(10;"two", 20;"three", 20;"four", 30;"five", 20;"six")] children.")) to_chat(M, SPAN_BOLD("You come from a long line of [pick(40;"crop-harvesters", 20;"soldiers", 20;"factory workers", 5;"scientists", 15;"engineers")], and quickly enlisted to improve your living conditions.")) - to_chat(M, SPAN_BOLD("Following your enlistment to the UPP military at the age of 17, you were assigned to the 17th 'Smoldering Sons' battalion (six hundred strong) under the command of Colonel Ganbaatar.")) + to_chat(M, SPAN_BOLD("Following your enlistment to the UPP military at the age of 17, you were assigned to the 17th 'Smoldering Sons' battalion (six hundred strong) under the command of Podpolkovnik Ganbaatar.")) else to_chat(M, SPAN_BOLD("You were brought online in a UPP engineering facility, knowing only your engineers for the first few weeks for your pseudo-life.")) to_chat(M, SPAN_BOLD("You were programmed with all of the medical and combat experience a military fighting force support asset required.")) to_chat(M, SPAN_BOLD("Throughout your career, your engineers, and later, your UPP compatriots, treated you like [pick(75;"a tool, and only that.", 25;"a person, despite your purpose.")]")) - to_chat(M, SPAN_BOLD("Some weeks after your unit integration, you were assigned to the 17th 'Smoldering Sons' battalion (six hundred strong) under the command of Colonel Ganbaatar.")) + to_chat(M, SPAN_BOLD("Some weeks after your unit integration, you were assigned to the 17th 'Smoldering Sons' battalion (six hundred strong) under the command of Podpolkovnik Ganbaatar.")) to_chat(M, SPAN_BOLD("You were shipped off with the battalion to one of the UPP's most remote territories, a gas giant designated MV-35 in the Anglo-Japanese Arm, in the Neroid Sector.")) to_chat(M, SPAN_BOLD("For the past 14 months, you and the rest of the Smoldering Sons have been stationed at MV-35's only facility, the helium refinery, Altai Station.")) to_chat(M, SPAN_BOLD("As MV-35 and Altai Station are the only UPP-held zones in the Neroid Sector for many lightyears, you have spent most of your military career holed up in crammed quarters in near darkness, waiting for supply shipments and transport escort deployments.")) @@ -46,7 +46,7 @@ to_chat(M, SPAN_BOLD("In an effort to protect the vulnerable MV-35 from the encroaching UA/USCM imperialists, the leadership of your battalion has opted this to be the best opportunity to strike at the Falling Falcons to catch them off guard.")) else to_chat(M, SPAN_BOLD("Despite this, the leadership of your battalion questions what may have prompted the distress signal from their rivals. Your squad is to find out why and to render aid to the beleaguered UA forces.")) - to_chat(M, SPAN_WARNING(FONT_SIZE_BIG("Glory to Colonel Ganbaatar."))) + to_chat(M, SPAN_WARNING(FONT_SIZE_BIG("Glory to Podpolkovnik Ganbaatar."))) to_chat(M, SPAN_WARNING(FONT_SIZE_BIG("Glory to the Smoldering Sons."))) to_chat(M, SPAN_WARNING(FONT_SIZE_BIG("Glory to the UPP."))) to_chat(M, SPAN_WARNING(FONT_SIZE_HUGE("YOU ARE [hostility? "HOSTILE":"FRIENDLY"] to the USCM"))) diff --git a/code/datums/emergency_calls/upp_commando.dm b/code/datums/emergency_calls/upp_commando.dm index 53f117c26127..311777a36d8c 100644 --- a/code/datums/emergency_calls/upp_commando.dm +++ b/code/datums/emergency_calls/upp_commando.dm @@ -14,13 +14,13 @@ to_chat(M, SPAN_BOLD("You grew up in relativly simple family in [pick(75;"Eurasia", 25;"a famished UPP colony")] with few belongings or luxuries.")) to_chat(M, SPAN_BOLD("The family you grew up with were [pick(50;"getting by", 25;"impoverished", 25;"starving")] and you were one of [pick(10;"two", 20;"three", 20;"four", 30;"five", 20;"six")] children.")) to_chat(M, SPAN_BOLD("You come from a long line of [pick(40;"crop-harvesters", 20;"soldiers", 20;"factory workers", 5;"scientists", 15;"engineers")], and quickly enlisted to improve your living conditions.")) - to_chat(M, SPAN_BOLD("Following your enlistment UPP military at the age of 17 you were assigned to the 17th 'Smoldering Sons' battalion (six hundred strong) under the command of Colonel Ganbaatar.")) + to_chat(M, SPAN_BOLD("Following your enlistment UPP military at the age of 17 you were assigned to the 17th 'Smoldering Sons' battalion (six hundred strong) under the command of Podpolkovnik Ganbaatar.")) to_chat(M, SPAN_BOLD("You were shipped off with the battalion to one of the UPP's most remote territories, a gas giant designated MV-35 in the Anglo-Japanese Arm, in the Neroid Sector.")) to_chat(M, SPAN_BOLD("For the past 14 months, you and the rest of the Smoldering Sons have been stationed at MV-35's only facility, the helium refinery, Altai Station.")) to_chat(M, SPAN_BOLD("As MV-35 and Altai Station are the only UPP-held zones in the Neroid Sector for many lightyears, you have spent most of your military career holed up in crammed quarters in near darkness, waiting for supply shipments and transport escort deployments.")) to_chat(M, SPAN_BOLD("With the recent arrival of the enemy USCM battalion the 'Falling Falcons' and their flagship, the [MAIN_SHIP_NAME], the UPP has felt threatened in the sector.")) to_chat(M, SPAN_BOLD("In an effort to protect the vunerable MV-35 from the emproaching UA/USCM imperialists, the leadership of your battalion has opted this the best opportunity to strike at the Falling Falcons to catch them off guard.")) - to_chat(M, SPAN_WARNING(FONT_SIZE_BIG("Glory to Colonel Ganbaatar."))) + to_chat(M, SPAN_WARNING(FONT_SIZE_BIG("Glory to Podpolkovnik Ganbaatar."))) to_chat(M, SPAN_WARNING(FONT_SIZE_BIG("Glory to the Smoldering Sons."))) to_chat(M, SPAN_WARNING(FONT_SIZE_BIG("Glory to the UPP."))) to_chat(M, SPAN_NOTICE(" Use say :3 to speak in your native tongue.")) diff --git a/code/datums/emotes.dm b/code/datums/emotes.dm index 6e84052720d4..1560ce846b42 100644 --- a/code/datums/emotes.dm +++ b/code/datums/emotes.dm @@ -262,6 +262,9 @@ return FALSE if(is_type_in_typecache(user, mob_type_blacklist_typecache)) return FALSE + if(intentional) + if(emote_type & EMOTE_FORCED_AUDIO) + return FALSE if(status_check && !is_type_in_typecache(user, mob_type_ignore_stat_typecache)) if(user.stat > stat_allowed) if(!intentional) @@ -294,6 +297,9 @@ if(istype(user.wear_mask, /obj/item/clothing/mask/muzzle)) return FALSE + if(istype(user.wear_mask, /obj/item/clothing/mask/facehugger)) + return FALSE + if(only_forced_audio && intentional) return FALSE return TRUE diff --git a/code/datums/entities/player.dm b/code/datums/entities/player.dm index fbdcc11e1037..0cba1c1f303a 100644 --- a/code/datums/entities/player.dm +++ b/code/datums/entities/player.dm @@ -509,6 +509,8 @@ BSQL_PROTECT_DATUM(/datum/entity/player) error("ALARM: MISMATCH. Loaded player data for client [ckey], player data ckey is [player.ckey], id: [player.id]") player_data = player player_data.owning_client = src + if(!player_data.discord_link_id) + add_verb(src, /client/proc/discord_connect) if(!player_data.last_login) player_data.first_join_date = "[time2text(world.realtime, "YYYY-MM-DD hh:mm:ss")]" if(!player_data.first_join_date) diff --git a/code/datums/entities/player_sticky_ban.dm b/code/datums/entities/player_sticky_ban.dm index 70715d1ce2f0..bfe6342ec774 100644 --- a/code/datums/entities/player_sticky_ban.dm +++ b/code/datums/entities/player_sticky_ban.dm @@ -131,3 +131,127 @@ BSQL_PROTECT_DATUM(/datum/entity/stickyban) "ip", "linked_stickyban", ) + +/// Returns either a list containing the primary CKEYs this alt is connected to, +/// or FALSE. +/proc/get_player_is_alt(ckey) + var/list/datum/view_record/known_alt/alts = DB_VIEW(/datum/view_record/known_alt, DB_COMP("ckey", DB_EQUALS, ckey)) + if(!length(alts)) + return FALSE + + var/ckeys = list() + for(var/datum/view_record/known_alt/alt as anything in alts) + ckeys += alt.player_ckey + + return ckeys + +/client/proc/add_known_alt() + set name = "Add Known Alt" + set category = "Admin.Alt" + + var/player_ckey = ckey(tgui_input_text(src, "What is the player's primary Ckey?", "Player Ckey")) + if(!player_ckey) + return + + var/datum/entity/player/player = get_player_from_key(player_ckey) + if(!istype(player)) + return + + var/existing_alts = get_player_is_alt(player_ckey) + if(existing_alts) + var/confirm = tgui_alert(src, "Primary Ckey [player_ckey] is already an alt for [english_list(existing_alts)].", "Primary Ckey", list("Confirm", "Cancel")) + + if(confirm != "Confirm") + return + + var/whitelist_to_add = ckey(tgui_input_text(src, "What is the Ckey that should be added to known alts?", "Alt Ckey")) + if(!whitelist_to_add) + return + + var/alts_existing_primaries = get_player_is_alt(whitelist_to_add) + if(alts_existing_primaries) + if(player_ckey in alts_existing_primaries) + to_chat(src, SPAN_WARNING("The alt '[whitelist_to_add]' is already set as an alt Ckey for '[player_ckey]'.")) + return + + var/confirm = tgui_alert(src, "Alt is already an alt for [english_list(alts_existing_primaries)].", "Alt Ckey", list("Confirm", "Cancel")) + + if(confirm != "Confirm") + return + + var/datum/entity/known_alt/alt = DB_ENTITY(/datum/entity/known_alt) + alt.player_id = player.id + alt.player_ckey = player.ckey + alt.ckey = whitelist_to_add + + alt.save() + + to_chat(src, SPAN_NOTICE("[alt.ckey] added to the known alts of [player.ckey].")) + +/client/proc/remove_known_alt() + set name = "Remove Known Alt" + set category = "Admin.Alt" + + var/player_ckey = ckey(tgui_input_text(src, "What is the player's primary Ckey?", "Player Ckey")) + if(!player_ckey) + return + + var/datum/entity/player/player = get_player_from_key(player_ckey) + if(!istype(player)) + return + + var/existing_alts = get_player_is_alt(player_ckey) + if(existing_alts) + var/confirm = tgui_alert(src, "Primary Ckey [player_ckey] is already an alt for [english_list(existing_alts)].", "Primary Ckey", list("Confirm", "Cancel")) + + if(confirm != "Confirm") + return + + var/list/datum/view_record/known_alt/alts = DB_VIEW(/datum/view_record/known_alt, DB_COMP("player_id", DB_EQUALS, player.id)) + if(!length(alts)) + to_chat(src, SPAN_WARNING("User has no alts on record.")) + return + + var/options = list() + for(var/datum/view_record/known_alt/alt in alts) + options[alt.ckey] = alt.id + + var/picked = tgui_input_list(src, "Which known alt should be removed?", "Alt Removal", options) + if(!picked) + return + + var/picked_id = options[picked] + var/datum/entity/known_alt/to_delete = DB_ENTITY(/datum/entity/known_alt, picked_id) + to_delete.delete() + + to_chat(src, SPAN_NOTICE("[picked] removed from the known alts of [player.ckey].")) + +/datum/entity/known_alt + var/player_id + var/player_ckey + var/ckey + +/datum/entity_meta/known_alt + entity_type = /datum/entity/known_alt + table_name = "known_alts" + field_types = list( + "player_id" = DB_FIELDTYPE_BIGINT, + "player_ckey" = DB_FIELDTYPE_STRING_LARGE, + "ckey" = DB_FIELDTYPE_STRING_LARGE, + ) + +/datum/view_record/known_alt + var/id + var/player_id + var/player_ckey + var/ckey + +/datum/entity_view_meta/known_alt + root_record_type = /datum/entity/known_alt + destination_entity = /datum/view_record/known_alt + fields = list( + "id", + "player_id", + "player_ckey", + "ckey", + ) diff --git a/code/datums/factions/upp.dm b/code/datums/factions/upp.dm index 0506833f80c3..4098d0c5002a 100644 --- a/code/datums/factions/upp.dm +++ b/code/datums/factions/upp.dm @@ -29,10 +29,10 @@ hud_icon_state = "xo" if(JOB_UPP_MAY_OFFICER) hud_icon_state = "co" - if(JOB_UPP_LTKOL_OFFICER) - hud_icon_state = "co" if(JOB_UPP_KOL_OFFICER) hud_icon_state = "co" + if(JOB_UPP_BRIG_GENERAL) + hud_icon_state = "co" if(JOB_UPP_MAY_GENERAL) hud_icon_state = "co" if(JOB_UPP_LT_GENERAL) diff --git a/code/datums/fluff_emails.dm b/code/datums/fluff_emails.dm index f7083541dd5a..12b7af74e1de 100644 --- a/code/datums/fluff_emails.dm +++ b/code/datums/fluff_emails.dm @@ -192,3 +192,48 @@ "} + +/datum/fluff_email/almayer/newgunny + title = "RE: New Gunny" + entry_text = {" + Hey man, you gotta be careful with those razors, + if our new Platoon Sergeant catches you trying to sell your stash, you'll be in for a world of pain. +
+
+ Way I heard it, he transferred in from dealing with the shittiest boot camp at Twentynine Palms, + so he's extra rough around the edges and might just cut you to ribbons with your own supply. + + "} + +/datum/fluff_email/almayer/immunization + title = "RE: Immunizations & Training" + entry_text = {" + One of the battalions just got mulched by a Beebop group and the AAR suggests their training was neglected, it's one hell of a shit show over here. + Command is breathing down everyone's necks and wants the entire regiment on high readiness. Orders are going out to immediately assess each battalion's state and conduct training. +
+
+ Make sure that the recent transfers to the battalion undergo the immunization program, you know the one that was prepared for Swamp Hopper. + It's apart of the readiness check, gotta be prepared for those plant-suckin shitholes like back on O'Bannon's. +
+
+ This is your heads-up, don't make me get chewed out chief. + + "} + +/datum/fluff_email/almayer/morevehicles + title = "RE: Any chance of replacement vehicles?" + entry_text = {" + No, sorry. What we lost on Tychon was what we had. Maisie thinks there might be enough spare bits left to refurbish + one of the old rust buckets, but the chances of that are next to nil unless she can pull more than coins from behind her ear. + + "} + +//Sticking this here because I'm too lazy to type it all out. +/* +/datum/fluff_email/almayer/ + title = "" + entry_text = {" + + + "} +*/ diff --git a/code/datums/global_variables.dm b/code/datums/global_variables.dm index 24d32bbf3552..87267ada41b6 100644 --- a/code/datums/global_variables.dm +++ b/code/datums/global_variables.dm @@ -211,7 +211,7 @@ to_chat(src, "A variable with this name ([param_var_name]) doesn't exist among global variables") return - if(param_var_name in locked && !check_rights(R_DEBUG)) + if((param_var_name in locked) && !check_rights(R_DEBUG)) return variable = param_var_name @@ -270,7 +270,7 @@ if(!variable) return var_value = global.vars[variable] - if(variable in locked && !check_rights(R_DEBUG)) + if((variable in locked) && !check_rights(R_DEBUG)) return if(!autodetect_class) diff --git a/code/datums/internet_media.dm b/code/datums/internet_media.dm new file mode 100644 index 000000000000..6c1c23b76e6b --- /dev/null +++ b/code/datums/internet_media.dm @@ -0,0 +1,112 @@ +/** + * Generic implementation to get a URL that can be sent to + * clients to play audio via [/datum/tgui_panel/proc/play_music], from a provided URL + */ +/datum/internet_media + /** + * If we have encountered an error while attempting to retrieve the URL + */ + var/error + +/** + * Handles a request for an audio file, from a provided media URL + * Must return a [/datum/media_response], which must have at least the [/datum/media_response/var/url] filled out + * + * If we are not returning a media_response, set the [/datum/internet_media/var/error] to be an error + */ +/datum/internet_media/proc/get_media(url) + RETURN_TYPE(/datum/media_response) + + CRASH("[type] does not override [nameof(__PROC__)].") + +/datum/internet_media/yt_dlp + +/datum/internet_media/yt_dlp/get_media(url) + var/ytdl = CONFIG_GET(string/invoke_youtubedl) + if(!ytdl) + error = "Youtube-dl FAILED: Not configured" + return + + if(findtext(url, ":") && !findtext(url, GLOB.is_http_protocol)) + error = "Youtube-dl FAILED: Non-http(s) URIs are not allowed. For youtube-dl shortcuts like ytsearch: please use the appropriate full url from the website." + return + + var/list/output = world.shelleo("[ytdl] --geo-bypass --format \"bestaudio\[ext=mp3]/best\[ext=mp4]\[height<=360]/bestaudio\[ext=m4a]/bestaudio\[ext=aac]\" --dump-single-json --no-playlist -- \"[shell_url_scrub(url)]\"") + var/errorlevel = output[SHELLEO_ERRORLEVEL] + var/stdout = output[SHELLEO_STDOUT] + var/stderr = output[SHELLEO_STDERR] + + if(errorlevel) + error = "Youtube-dl URL retrieval FAILED: [stderr]" + return + + var/data + + try + data = json_decode(stdout) + catch(var/exception/decode_error) + error = "Youtube-dl JSON parsing FAILED: [decode_error]: [stdout]" + return + + return new /datum/media_response(data["url"], data["title"], data["start_time"], data["end_time"]) + +/datum/internet_media/cobalt + +/datum/internet_media/cobalt/get_media(url) + var/cobalt = CONFIG_GET(string/cobalt_base_api) + if(!cobalt) + error = "cobalt.tools FAILED: Not configured" + return + + var/list/headers = list() + headers["Accept"] = "application/json" + headers["Content-Type"] = "application/json" + + var/auth_key = CONFIG_GET(string/cobalt_api_key) + if(auth_key) + headers["Authorization"] = "Api-Key [auth_key]" + + var/datum/http_request/request = new + request.prepare(RUSTG_HTTP_METHOD_POST, cobalt, json_encode(list( + "url" = url, + "downloadMode" = "audio" + )), headers) + + request.execute_blocking() + + var/datum/http_response/response_raw = request.into_response() + + if(response_raw.errored) + error = "cobalt.tools web request FAILED: [response_raw.error]" + return + + var/list/response + try + response = json_decode(response_raw.body) + catch(var/exception/decode_error) + error = "cobalt.tools JSON parsing FAILED: [decode_error]: [response_raw.body]" + return + + if(!(response["status"] in list("redirect", "tunnel"))) + error = "cobalt.tools request FAILED - invalid response: [response_raw.body]" + return + + return new /datum/media_response(response["url"]) + +/datum/media_response + var/url + var/title + var/start_time + var/end_time + +/datum/media_response/New(url, title, start_time, end_time) + if(isnull(url)) + CRASH("/datum/media_response created without a URL field.") + + src.url = url + src.title = title + src.start_time = start_time + src.end_time = end_time + +/datum/media_response/proc/get_list() + return list("url" = url, "title" = title, "start_time" = start_time, "end_time" = end_time) diff --git a/code/datums/keybinding/human.dm b/code/datums/keybinding/human.dm index 810ee828880b..a6f9edcf7754 100644 --- a/code/datums/keybinding/human.dm +++ b/code/datums/keybinding/human.dm @@ -3,7 +3,7 @@ weight = WEIGHT_MOB /datum/keybinding/human/can_use(client/user) - return ishuman(user.mob) + return ishuman(user.mob) && user.mob.stat == CONSCIOUS /datum/keybinding/human/issue_order hotkey_keys = list("Unbound") @@ -135,3 +135,95 @@ cycle_action?.set_action_overlay(cycled_hud) return TRUE + +/datum/keybinding/human/pixel_shift + hotkey_keys = list("Unbound") + classic_keys = list("Unbound") + +/datum/keybinding/human/pixel_shift/can_use(client/user) + . = ..() + if(!.) + return + + var/mob/living/carbon/human/human_user = user.mob + var/obj/item/grab/grab = human_user.get_active_hand() + if(!istype(grab)) + return FALSE + var/obj/grabbed_atom = grab.grabbed_thing + if(ismob(grabbed_atom)) + return FALSE + if(grabbed_atom.anchored) + return FALSE + return TRUE + +/datum/keybinding/human/pixel_shift/north + name = "pixel_shift_grabbed_north" + full_name = "Pixel Shift Grabbed - North" + keybind_signal = COMSIG_KB_HUMAN_PIXEL_SHIFT_GRABBED_NORTH + +/datum/keybinding/human/pixel_shift/north/down(client/user) + . = ..() + if(.) + return + var/mob/living/carbon/human/human_user = user.mob + var/obj/item/grab/grab = human_user.get_active_hand() + var/obj/grabbed = grab.grabbed_thing + + if(grabbed.pixel_y >= 16) + return + grabbed.pixel_y += 1 + return TRUE + +/datum/keybinding/human/pixel_shift/south + name = "pixel_shift_grabbed_south" + full_name = "Pixel Shift Grabbed - South" + keybind_signal = COMSIG_KB_HUMAN_PIXEL_SHIFT_GRABBED_SOUTH + +/datum/keybinding/human/pixel_shift/south/down(client/user) + . = ..() + if(.) + return + var/mob/living/carbon/human/human_user = user.mob + var/obj/item/grab/grab = human_user.get_active_hand() + var/obj/grabbed = grab.grabbed_thing + + if(grabbed.pixel_y <= -16) + return + grabbed.pixel_y -= 1 + return TRUE + +/datum/keybinding/human/pixel_shift/east + name = "pixel_shift_grabbed_east" + full_name = "Pixel Shift Grabbed - East" + keybind_signal = COMSIG_KB_HUMAN_PIXEL_SHIFT_GRABBED_EAST + +/datum/keybinding/human/pixel_shift/east/down(client/user) + . = ..() + if(.) + return + var/mob/living/carbon/human/human_user = user.mob + var/obj/item/grab/grab = human_user.get_active_hand() + var/obj/grabbed = grab.grabbed_thing + + if(grabbed.pixel_x >= 16) + return + grabbed.pixel_x += 1 + return TRUE + +/datum/keybinding/human/pixel_shift/west + name = "pixel_shift_grabbed_west" + full_name = "Pixel Shift Grabbed - West" + keybind_signal = COMSIG_KB_HUMAN_PIXEL_SHIFT_GRABBED_WEST + +/datum/keybinding/human/pixel_shift/west/down(client/user) + . = ..() + if(.) + return + var/mob/living/carbon/human/human_user = user.mob + var/obj/item/grab/grab = human_user.get_active_hand() + var/obj/grabbed = grab.grabbed_thing + + if(grabbed.pixel_x <= -16) + return + grabbed.pixel_x -= 1 + return TRUE diff --git a/code/datums/keybinding/yautja.dm b/code/datums/keybinding/yautja.dm index 947d80854a35..2933684f8bba 100644 --- a/code/datums/keybinding/yautja.dm +++ b/code/datums/keybinding/yautja.dm @@ -118,12 +118,12 @@ if(istype(H.gloves, /obj/item/clothing/gloves/yautja/hunter)) return TRUE -/datum/keybinding/yautja/bracer_hunter/wristblades +/datum/keybinding/yautja/bracer_hunter/bracer_attachments hotkey_keys = list("Unbound") classic_keys = list("Unbound") - name = "wristblades" - full_name = "Toggle wristblades" - keybind_signal = COMSIG_KB_YAUTJA_WRISTBLADES + name = "Bracer Attachments" + full_name = "Use Bracer Attachments" + keybind_signal = COMSIG_KB_YAUTJA_BRACER_ATTACHMENT /datum/keybinding/yautja/bracer_hunter/track_gear hotkey_keys = list("Unbound") @@ -277,7 +277,7 @@ hotkey_keys = list("Unbound") classic_keys = list("Unbound") name = "bracername" - full_name = "Toggle bracer name" + full_name = "Toggle Bracer Name" keybind_signal = COMSIG_KB_YAUTJA_BRACERNAME /datum/keybinding/yautja/bracer_hunter/bracername/down(client/user) diff --git a/code/datums/map_config.dm b/code/datums/map_config.dm index fc527f07a9e0..2880b7b84d43 100644 --- a/code/datums/map_config.dm +++ b/code/datums/map_config.dm @@ -32,6 +32,7 @@ var/announce_text = "" var/infection_announce_text = "" + var/liaison_briefing = "" var/squads_max_num = 4 @@ -347,6 +348,9 @@ if(json["infection_announce_text"]) infection_announce_text = json["infection_announce_text"] + if(json["liaison_briefing"]) + liaison_briefing = json["liaison_briefing"] + if(json["weather_holder"]) weather_holder = text2path(json["weather_holder"]) if(!weather_holder) diff --git a/code/datums/mob_hud.dm b/code/datums/mob_hud.dm index 64ad6e31280a..c2cb0d8791f0 100644 --- a/code/datums/mob_hud.dm +++ b/code/datums/mob_hud.dm @@ -478,6 +478,7 @@ GLOBAL_LIST_INIT_TYPED(huds, /datum/mob_hud, list( holder2.icon_state = "huddeaddefib" holder3.icon_state = "huddead" holder2_set = 1 + update_minimap_icon() else if(is_heart_broken()) // broken heart icon holder.icon_state = "huddeadheart" diff --git a/code/datums/paygrades/factions/upp/upp.dm b/code/datums/paygrades/factions/upp/upp.dm index 3eef33921137..afa07a96572f 100644 --- a/code/datums/paygrades/factions/upp/upp.dm +++ b/code/datums/paygrades/factions/upp/upp.dm @@ -12,37 +12,38 @@ /datum/paygrade/upp/ue1 paygrade = PAY_SHORT_UE1 - name = "Private" - prefix = "PVT." + name = "Ryadovoy" + prefix = "Rya." + pay_multiplier = 0.1 /datum/paygrade/upp/ue2 paygrade = PAY_SHORT_UE2 - name = "Private First Class" - prefix = "PFC." - pay_multiplier = 0.2 + name = "Efreitor" + prefix = "Efr." + pay_multiplier = 0.15 /datum/paygrade/upp/ue3 paygrade = PAY_SHORT_UE3 - name = "Korporal" - prefix = "Kpl." + name = "Mladshiy Serzhant" + prefix = "MSzht." pay_multiplier = 0.3 /datum/paygrade/upp/ue4 paygrade = PAY_SHORT_UE4 - name = "Junior Serzhant" - prefix = "JrSzh." + name = "Serzhant" + prefix = "Sgt." pay_multiplier = 0.5 /datum/paygrade/upp/ue5 paygrade = PAY_SHORT_UE5 - name = "Serzhant" - prefix = "Szh." + name = "Starshiy Serzhant" + prefix = "SSgt." pay_multiplier = 0.7 /datum/paygrade/upp/ue6 paygrade = PAY_SHORT_UE6 - name = "Master Serzhant" - prefix = "MSzh." + name = "Starshyna" + prefix = "StS" pay_multiplier = 0.9 //UPP Commandos @@ -69,15 +70,15 @@ //UPP Officers /datum/paygrade/upp/uo1 paygrade = PAY_SHORT_UO1 - name = "Leytenant" - prefix = "Lt." + name = "Mladshiy Leytenant" + prefix = "MsLt." pay_multiplier = 1.25 officer_grade = GRADE_OFFICER /datum/paygrade/upp/uo2 paygrade = PAY_SHORT_UO2 - name = "Senior Leytenant" - prefix = "Sr. LT." + name = "Starshiy Leytenant" + prefix = "SrLt." pay_multiplier = 1.5 officer_grade = GRADE_OFFICER @@ -104,35 +105,35 @@ /datum/paygrade/upp/uo5 paygrade = PAY_SHORT_UO5 - name = "Leytenant Kolonel" - prefix = "Lt. Kol." + name = "Podpolkovnik" + prefix = "Pdk." pay_multiplier = 3 officer_grade = GRADE_OFFICER /datum/paygrade/upp/uo6 paygrade = PAY_SHORT_UO6 - name = "Kolonel" - prefix = "Kol." + name = "Polkovnik" + prefix = "Plk." pay_multiplier = 4 officer_grade = GRADE_OFFICER /datum/paygrade/upp/uo7 paygrade = PAY_SHORT_UO7 - name = "Mayjor General" - prefix = "May. Gen." + name = "General Leytenant" + prefix = "GenLt." pay_multiplier = 5 officer_grade = GRADE_FLAG /datum/paygrade/upp/uo8 paygrade = PAY_SHORT_UO8 - name = "Leytenant General" - prefix = "Lt. Gen." + name = "General Polkovnik" + prefix = "GenPlk" pay_multiplier = 6 officer_grade = GRADE_FLAG /datum/paygrade/upp/uo9 paygrade = PAY_SHORT_UO9 - name = "Army General" - prefix = "Gen." + name = "General Armii" + prefix = "GenArm." pay_multiplier = 7 officer_grade = GRADE_FLAG diff --git a/code/datums/skills/synthetic.dm b/code/datums/skills/synthetic.dm index 99d86dda7a3e..dd33dca59028 100644 --- a/code/datums/skills/synthetic.dm +++ b/code/datums/skills/synthetic.dm @@ -12,7 +12,6 @@ SYNTHETIC SKILL_CONSTRUCTION = SKILL_CONSTRUCTION_MASTER, SKILL_FIREARMS = SKILL_FIREARMS_EXPERT, SKILL_SPEC_WEAPONS = SKILL_SPEC_ALL, - SKILL_LEADERSHIP = SKILL_LEAD_EXPERT, SKILL_OVERWATCH = SKILL_OVERWATCH_TRAINED, SKILL_MEDICAL = SKILL_MEDICAL_MASTER, SKILL_SURGERY = SKILL_SURGERY_EXPERT, @@ -33,8 +32,8 @@ SYNTHETIC name = SYNTH_COLONY skills = list( SKILL_CQC = SKILL_CQC_EXPERT, - SKILL_ENGINEER = SKILL_ENGINEER_TRAINED, - SKILL_CONSTRUCTION = SKILL_CONSTRUCTION_ENGI, + SKILL_ENGINEER = SKILL_ENGINEER_MASTER, + SKILL_CONSTRUCTION = SKILL_CONSTRUCTION_MASTER, SKILL_FIREARMS = SKILL_FIREARMS_EXPERT, SKILL_SPEC_WEAPONS = SKILL_SPEC_ALL, SKILL_MEDICAL = SKILL_MEDICAL_DOCTOR, diff --git a/code/game/area/BigRed.dm b/code/game/area/BigRed.dm index c5e96c78175a..d3f87d2fe478 100644 --- a/code/game/area/BigRed.dm +++ b/code/game/area/BigRed.dm @@ -20,6 +20,7 @@ name = "\improper Garage Workshop" icon_state = "green" ceiling = CEILING_METAL + linked_lz = DROPSHIP_LZ1 /area/bigred/ground/ship name = "\improper Crashed Vessel" @@ -262,6 +263,7 @@ sound_environment = SOUND_ENVIRONMENT_ROOM soundscape_playlist = list() minimap_color = MINIMAP_AREA_RESEARCH + unoviable_timer = FALSE /area/bigredv2/caves/lambda/virology name = "\improper Lambda Virology" @@ -289,6 +291,7 @@ ambience_exterior = AMBIENCE_CAVE soundscape_playlist = SCAPE_PL_CAVE base_muffle = MUFFLE_HIGH + unoviable_timer = FALSE // serve for the security checkpoint. /area/bigredv2/outside/lambda_cave_cas @@ -329,7 +332,7 @@ /area/bigredv2/outside/nw name = "\improper Northwest Colony Grounds" icon_state = "northwest" - is_resin_allowed = FALSE + linked_lz = DROPSHIP_LZ1 soundscape_playlist = SCAPE_PL_DESERT_STORM /area/bigredv2/outside/nw/ceiling @@ -348,7 +351,7 @@ /area/bigredv2/outside/w name = "\improper Western Colony Grounds" icon_state = "west" - is_resin_allowed = FALSE + linked_lz = DROPSHIP_LZ2 /area/bigredv2/outside/e name = "\improper Eastern Colony Grounds" @@ -368,7 +371,7 @@ /area/bigredv2/outside/sw name = "\improper Southwest Colony Grounds" icon_state = "southwest" - is_resin_allowed = FALSE + linked_lz = DROPSHIP_LZ2 soundscape_playlist = SCAPE_PL_DESERT_STORM /area/bigredv2/caves @@ -387,7 +390,7 @@ name = "\improper Southwest Abandoned Mining Caves" icon_state = "bluenew" color = "purple" - + unoviable_timer = FALSE /area/bigredv2/caves/eta ceiling = CEILING_UNDERGROUND_METAL_BLOCK_CAS @@ -395,6 +398,7 @@ ambience_exterior = AMBIENCE_ALMAYER sound_environment = SOUND_ENVIRONMENT_ROOM soundscape_playlist = list() + unoviable_timer = FALSE /area/bigredv2/outside/eta name = "\improper Eta Labs Compound" @@ -422,25 +426,27 @@ name = "\improper Cargo" icon_state = "storage" ceiling = CEILING_METAL - is_resin_allowed = FALSE + linked_lz = DROPSHIP_LZ2 /area/bigredv2/outside/general_store name = "\improper General Store" icon_state = "blueold" ceiling = CEILING_METAL - + linked_lz = DROPSHIP_LZ2 /area/bigredv2/outside/marshal_office name = "\improper Marshal Offices" icon_state = "brig" ceiling = CEILING_METAL minimap_color = MINIMAP_AREA_SEC + linked_lz = DROPSHIP_LZ1 /area/bigredv2/outside/medical name = "\improper Hospital" icon_state = "CMO" ceiling = CEILING_METAL minimap_color = MINIMAP_AREA_MEDBAY + linked_lz = DROPSHIP_LZ1 /area/bigredv2/outside/admin_building name = "\improper Administration" @@ -461,6 +467,7 @@ ceiling_muffle = FALSE base_muffle = MUFFLE_MEDIUM minimap_color = MINIMAP_AREA_MEDBAY + linked_lz = DROPSHIP_LZ1 /area/bigredv2/outside/dorms name = "\improper Dormitories" @@ -496,14 +503,14 @@ name = "\improper Space Port" icon_state = "green" ceiling = CEILING_GLASS - is_resin_allowed = FALSE + linked_lz = DROPSHIP_LZ1 is_landing_zone = TRUE /area/bigredv2/outside/space_port_lz2 name = "\improper Cargo Landing Pad" icon_state = "green" ceiling = CEILING_NONE - is_resin_allowed = FALSE + linked_lz = DROPSHIP_LZ2 is_landing_zone = TRUE minimap_color = MINIMAP_AREA_LZ @@ -512,7 +519,7 @@ name = "\improper LZ1 Communications Relay" icon_state = "ass_line" ceiling = CEILING_UNDERGROUND_METAL_ALLOW_CAS - is_resin_allowed = FALSE + linked_lz = DROPSHIP_LZ1 ceiling_muffle = FALSE base_muffle = MUFFLE_LOW is_landing_zone = TRUE @@ -524,6 +531,7 @@ /area/bigredv2/outside/telecomm/n_cave name = "\improper North Cave Communications Relay" is_landing_zone = FALSE + linked_lz = DROPSHIP_LZ1 /area/bigredv2/outside/telecomm/warehouse name = "\improper Warehouse Communications Relay" @@ -550,6 +558,11 @@ name = "\improper Engineering Complex" icon_state = "engine" ceiling = CEILING_METAL + linked_lz = DROPSHIP_LZ2 + +/area/bigredv2/outside/engineering/reactor + name = "\improper Main Reactor" + linked_lz = null /area/bigredv2/outside/storage name = "\improper Storage" @@ -601,6 +614,7 @@ soundscape_playlist = SCAPE_PL_CAVE base_muffle = MUFFLE_HIGH minimap_color = MINIMAP_AREA_RESEARCH_CAVE + unoviable_timer = FALSE /area/bigredv2/caves_se name = "\improper Southeastern Caves" @@ -611,6 +625,7 @@ ambience_exterior = AMBIENCE_CAVE soundscape_playlist = SCAPE_PL_CAVE base_muffle = MUFFLE_HIGH + unoviable_timer = FALSE /area/bigredv2/caves_east name = "\improper Eastern Caves" @@ -621,6 +636,7 @@ ambience_exterior = AMBIENCE_CAVE soundscape_playlist = SCAPE_PL_CAVE base_muffle = MUFFLE_HIGH + unoviable_timer = FALSE /area/bigredv2/caves_north name = "\improper Northern Caves" @@ -650,21 +666,25 @@ name = "\improper Northern Caves Entrance" icon_state = "garden" ceiling = CEILING_UNDERGROUND_ALLOW_CAS + linked_lz = DROPSHIP_LZ1 /area/bigredv2/outside/lz1_telecomm_cas name = "\improper Virology Caves Entrance" icon_state = "garden" ceiling = CEILING_UNDERGROUND_ALLOW_CAS + linked_lz = DROPSHIP_LZ1 /area/bigredv2/outside/lz2_west_cas name = "\improper Southwestern Caves Entrance" icon_state = "garden" ceiling = CEILING_UNDERGROUND_ALLOW_CAS + linked_lz = DROPSHIP_LZ2 /area/bigredv2/outside/lz2_south_cas name = "\improper ETA Lockdown Caves Entrance" icon_state = "garden" ceiling = CEILING_UNDERGROUND_ALLOW_CAS + linked_lz = DROPSHIP_LZ2 /area/bigredv2/outside/filtration_cave_cas name = "\improper Filtration Lockdown Caves Entrance" diff --git a/code/game/area/DesertDam.dm b/code/game/area/DesertDam.dm index 9f53494b1bbf..24d5ec5a7fa4 100644 --- a/code/game/area/DesertDam.dm +++ b/code/game/area/DesertDam.dm @@ -11,68 +11,65 @@ // areas under rock /area/desert_dam/interior ceiling = CEILING_UNDERGROUND_METAL_ALLOW_CAS + //NorthEastern Lab Section /area/desert_dam/interior/lab_northeast name = "Northeastern Lab" icon_state = "purple" minimap_color = MINIMAP_AREA_RESEARCH + unoviable_timer = FALSE + /area/desert_dam/interior/lab_northeast/east_lab_lobby name = "East Lab Lobby" icon_state = "green" + /area/desert_dam/interior/lab_northeast/east_lab_west_hallway name = "East Lab Western Hallway" icon_state = "blue" + /area/desert_dam/interior/lab_northeast/east_lab_central_hallway name = "East Lab Central Hallway" icon_state = "green" + /area/desert_dam/interior/lab_northeast/east_lab_east_hallway name = "East Lab East Hallway" icon_state = "yellow" + /area/desert_dam/interior/lab_northeast/east_lab_workshop name = "East Lab Workshop" icon_state = "ass_line" -/area/desert_dam/interior/lab_northeast/east_lab_storage - name = "East Lab Storage " - icon_state = "storage" -/area/desert_dam/interior/lab_northeast/east_lab_RD_office - name = "East Lab Research Director's Office" - icon_state = "yellow" + /area/desert_dam/interior/lab_northeast/east_lab_maintenence name = "East Lab Maintenence" icon_state = "maintcentral" + /area/desert_dam/interior/lab_northeast/east_lab_containment name = "East Lab Containment" icon_state = "purple" + /area/desert_dam/interior/lab_northeast/east_lab_RND name = "East Lab Research and Development" icon_state = "purple" + /area/desert_dam/interior/lab_northeast/east_lab_biology name = "East Lab Biology" icon_state = "purple" -/area/desert_dam/interior/lab_northeast/east_lab_surgery - name = "East Lab Surgery" - icon_state = "red" + /area/desert_dam/interior/lab_northeast/east_lab_excavation name = "East Lab Excavation Prep" icon_state = "blue" + /area/desert_dam/interior/lab_northeast/east_lab_west_entrance name = "East Lab West Entrance" icon_state = "purple" + /area/desert_dam/interior/lab_northeast/east_lab_east_entrance name = "East Lab Entrance" icon_state = "purple" -/area/desert_dam/interior/lab_northeast/east_lab_security_checkpoint - name = "East Lab Security Checkpoint" - icon_state = "purple" -/area/desert_dam/interior/lab_northeast/east_lab_security_office - name = "East Lab Security Office" - icon_state = "security" + /area/desert_dam/interior/lab_northeast/east_lab_security_armory name = "East Lab Armory" icon_state = "armory" -/area/desert_dam/interior/lab_northeast/east_lab_xenobiology - name = "East Lab Xenobiology" - icon_state = "red" //Dam Interior /area/desert_dam/interior/dam_interior @@ -81,78 +78,103 @@ /area/desert_dam/interior/dam_interior/engine_room name = "Engineering Generator Room" icon_state = "yellow" + /area/desert_dam/interior/dam_interior/control_room name = "Engineering Control Room" icon_state = "red" + /area/desert_dam/interior/dam_interior/smes_main name = "Engineering Main Substation" icon_state = "purple" + /area/desert_dam/interior/dam_interior/smes_backup name = "Engineering Secondary Backup Substation" icon_state = "green" + /area/desert_dam/interior/dam_interior/engine_east_wing name = "Engineering East Engine Wing" icon_state = "blue-red" + /area/desert_dam/interior/dam_interior/engine_west_wing name = "Engineering West Engine Wing" icon_state = "yellow" + /area/desert_dam/interior/dam_interior/lobby name = "Engineering Lobby" icon_state = "purple" + /area/desert_dam/interior/dam_interior/atmos_storage name = "Engineering Atmospheric Storage" icon_state = "purple" + /area/desert_dam/interior/dam_interior/northwestern_tunnel name = "Engineering Northwestern Tunnel" icon_state = "green" + /area/desert_dam/interior/dam_interior/north_tunnel name = "Engineering Northern Tunnel" icon_state = "blue-red" + /area/desert_dam/interior/dam_interior/west_tunnel name = "Engineering Western Tunnel" icon_state = "yellow" + /area/desert_dam/interior/dam_interior/central_tunnel name = "Engineering Central Tunnel" icon_state = "red" + /area/desert_dam/interior/dam_interior/south_tunnel name = "Engineering Southern Tunnel" icon_state = "purple" + /area/desert_dam/interior/dam_interior/northeastern_tunnel name = "Engineering Northeastern Tunnel" icon_state = "green" + /area/desert_dam/interior/dam_interior/CE_office name = "Engineering Chief Engineer's Office" icon_state = "yellow" + /area/desert_dam/interior/dam_interior/workshop name = "Engineering Workshop" icon_state = "purple" + /area/desert_dam/interior/dam_interior/hanger name = "Engineering Hangar" icon_state = "hangar" + /area/desert_dam/interior/dam_interior/hangar_storage name = "Engineering Hangar Storage" icon_state = "storage" + /area/desert_dam/interior/dam_interior/auxilary_tool_storage name = "Engineering Auxiliary Tool Storage" icon_state = "red" + /area/desert_dam/interior/dam_interior/primary_tool_storage name = "Engineering Primary Tool Storage" icon_state = "blue" + /area/desert_dam/interior/dam_interior/tech_storage name = "Engineering Secure Tech Storage" icon_state = "dark" + /area/desert_dam/interior/dam_interior/break_room name = "Engineering Breakroom" icon_state = "yellow" + /area/desert_dam/interior/dam_interior/disposals name = "Engineering Disposals" icon_state = "disposal" + /area/desert_dam/interior/dam_interior/western_dam_cave name = "Engineering West Entrance" icon_state = "red" + /area/desert_dam/interior/dam_interior/office name = "Engineering Office" icon_state = "red" + /area/desert_dam/interior/dam_interior name = "Engineering" icon_state = "" @@ -160,15 +182,19 @@ /area/desert_dam/interior/dam_interior/north_tunnel_entrance name = "Engineering North Tunnel Entrance" icon_state = "yellow" + /area/desert_dam/interior/dam_interior/east_tunnel_entrance name = "Engineering East Tunnel Entrance" icon_state = "yellow" + /area/desert_dam/interior/dam_interior/south_tunnel_entrance name = "Engineering South Tunnel Entrance" icon_state = "red" + /area/desert_dam/interior/dam_interior/garage name = "Garage" icon_state = "green" + /area/desert_dam/interior/caves name = "Caves" ceiling = CEILING_DEEP_UNDERGROUND @@ -178,35 +204,28 @@ soundscape_interval = 25 sound_environment = SOUND_ENVIRONMENT_AUDITORIUM minimap_color = MINIMAP_AREA_CAVES -/area/desert_dam/interior/caves/northern_caves - name = "Northern Caves" - icon_state = "red" + /area/desert_dam/interior/caves/east_caves name = "Eastern Caves" icon_state = "red" + unoviable_timer = FALSE /area/desert_dam/interior/caves/central_caves name = "Central Caves" icon_state = "yellow" -/area/desert_dam/interior/caves/central_caves/entrances/east_tunnel_entrance - name = "Eastern Central Tunnel Entrance" - icon_state = "red" -/area/desert_dam/interior/caves/central_caves/entrances/south_tunnel_entrance - name = "Southern Central Tunnel Entrance" - icon_state = "red" -/area/desert_dam/interior/caves/central_caves/entrances/west_tunnel_entrance - name = "Western Central Tunnel Entrance" - icon_state = "red" + unoviable_timer = FALSE /area/desert_dam/interior/caves/temple name = "Sand Temple" icon_state = "green" + unoviable_timer = FALSE //BUILDING //areas not under rock // ceiling = CEILING_METAL /area/desert_dam/building ceiling = CEILING_METAL + //Substations /area/desert_dam/building/substation name = "Substation" @@ -217,25 +236,25 @@ name = "Command Substation" icon_state = "northewestern_ss" is_landing_zone = TRUE + /area/desert_dam/building/substation/northeast name = "Command Substation" icon_state = "northeastern_ss" -/area/desert_dam/building/substation/east - name = "Command Substation" - icon_state = "eastern_ss" -/area/desert_dam/building/substation/southeast - name = "Command Substation" - icon_state = "southeastern_ss" + unoviable_timer = FALSE + /area/desert_dam/building/substation/central name = "Command Substation" icon_state = "central_ss" + unoviable_timer = FALSE + /area/desert_dam/building/substation/southwest name = "Command Substation" icon_state = "southwestern_ss" + /area/desert_dam/building/substation/west name = "Command Substation" icon_state = "western_ss" - is_resin_allowed = FALSE + linked_lz = DROPSHIP_LZ2 //Administration /area/desert_dam/building/administration @@ -244,76 +263,94 @@ /area/desert_dam/building/administration/control_room name = "Administration Landing Control Room" icon_state = "yellow" - is_resin_allowed = FALSE + linked_lz = DROPSHIP_LZ1 + /area/desert_dam/building/administration/lobby name = "Administration Lobby" icon_state = "green" - is_resin_allowed = FALSE + linked_lz = DROPSHIP_LZ1 + /area/desert_dam/building/administration/hallway name = "Administration Hallway" icon_state = "purple" - is_resin_allowed = FALSE + linked_lz = DROPSHIP_LZ1 + /area/desert_dam/building/administration/office name = "Administration Office" icon_state = "blue-red" - is_resin_allowed = FALSE + linked_lz = DROPSHIP_LZ1 + /area/desert_dam/building/administration/overseer_office name = "Administration Overseer's Office" icon_state = "red" - is_resin_allowed = FALSE + linked_lz = DROPSHIP_LZ1 + /area/desert_dam/building/administration/meetingrooom name = "Administration Meeting Room" icon_state = "yellow" - is_resin_allowed = FALSE + linked_lz = DROPSHIP_LZ1 + /area/desert_dam/building/administration/archives name = "Administration Archives" icon_state = "green" - is_resin_allowed = FALSE + linked_lz = DROPSHIP_LZ1 //Bar /area/desert_dam/building/bar/bar name = "Bar" icon_state = "yellow" + /area/desert_dam/building/bar/backroom name = "Bar Backroom" icon_state = "green" + /area/desert_dam/building/bar/bar_restroom name = "Bar Restroom" icon_state = "purple" //Cafe +/area/desert_dam/building/cafeteria + name = "DO NOT USE" + icon_state = "purple" + unoviable_timer = FALSE + /area/desert_dam/building/cafeteria/cafeteria name = "Cafeteria" icon_state = "yellow" + /area/desert_dam/building/cafeteria/backroom name = "Cafeteria Backroom" icon_state = "green" -/area/desert_dam/building/cafeteria/restroom - name = "Cafeteria Restroom" - icon_state = "purple" + /area/desert_dam/building/cafeteria/loading name = "Cafeteria Loading Room" icon_state = "blue-red" + /area/desert_dam/building/cafeteria/cold_room name = "Cafeteria Coldroom" icon_state = "red" //Dorms +/area/desert_dam/building/dorms + name = "DO NOT USE" + icon_state = "purple" + unoviable_timer = FALSE + /area/desert_dam/building/dorms/hallway_northwing name = "Dormitory North Wing" icon_state = "yellow" + /area/desert_dam/building/dorms/hallway_westwing name = "Dormitory West Wing" icon_state = "green" -/area/desert_dam/building/dorms/hallway_eastwing - name = "Dormitory East Wing" - icon_state = "purple" + /area/desert_dam/building/dorms/restroom name = "Dormitory Showers" icon_state = "blue-red" + /area/desert_dam/building/dorms/pool name = "Dormitory Pool Room" icon_state = "red" @@ -322,67 +359,84 @@ //Medical /area/desert_dam/building/medical minimap_color = MINIMAP_AREA_MEDBAY + unoviable_timer = FALSE /area/desert_dam/building/medical/garage name = "Medical Garage" icon_state = "garage" + /area/desert_dam/building/medical/emergency_room name = "Medical Emergency Room" icon_state = "medbay" + /area/desert_dam/building/medical/treatment_room name = "Medical Treatment Room" icon_state = "medbay2" + /area/desert_dam/building/medical/lobby name = "Medical Lobby" icon_state = "medbay3" + /area/desert_dam/building/medical/chemistry name = "Medical Pharmacy" icon_state = "medbay" + /area/desert_dam/building/medical/west_wing_hallway - name = "Medical West Wing " + name = "Medical West Wing" icon_state = "medbay2" + /area/desert_dam/building/medical/north_wing_hallway name = "Medical North Wing" icon_state = "medbay3" + /area/desert_dam/building/medical/east_wing_hallway name = "Medical East Wing" icon_state = "medbay" + /area/desert_dam/building/medical/primary_storage name = "Medical Primary Storage" icon_state = "red" + /area/desert_dam/building/medical/surgery_room_one name = "Medical Surgery Room One" icon_state = "yellow" + /area/desert_dam/building/medical/surgery_room_two name = "Medical Surgery Room Two" icon_state = "purple" + /area/desert_dam/building/medical/surgury_observation name = "Medical Surgery Observation" icon_state = "medbay2" + /area/desert_dam/building/medical/morgue name = "Medical Morgue" icon_state = "blue" + /area/desert_dam/building/medical/break_room name = "Medical Breakroom" icon_state = "medbay" + /area/desert_dam/building/medical/CMO name = "Medical CMO's Office" icon_state = "CMO" + /area/desert_dam/building/medical/office1 name = "Medical Office One" icon_state = "red" + /area/desert_dam/building/medical/office2 name = "Medical Office Two" icon_state = "blue" -/area/desert_dam/building/medical/patient_wing - name = "Medical Patient Wing" - icon_state = "medbay2" + /area/desert_dam/building/medical/virology_wing name = "Medical Virology Wing" icon_state = "medbay3" + /area/desert_dam/building/medical/virology_isolation name = "Medical Virology Isolation" icon_state = "medbay" + /area/desert_dam/building/medical name = "Medical" icon_state = "medbay2" @@ -392,15 +446,17 @@ /area/desert_dam/building/warehouse/warehouse name = "Warehouse" icon_state = "yellow" - is_resin_allowed = FALSE + linked_lz = DROPSHIP_LZ2 + /area/desert_dam/building/warehouse/loading name = "Warehouse Loading Room" icon_state = "red" - is_resin_allowed = FALSE + linked_lz = DROPSHIP_LZ2 + /area/desert_dam/building/warehouse/breakroom name = "Warehouse Breakroom" icon_state = "green" - is_resin_allowed = FALSE + linked_lz = DROPSHIP_LZ2 //Hydroponics @@ -410,23 +466,19 @@ /area/desert_dam/building/hydroponics/hydroponics name = "Hydroponics" icon_state = "hydro" + /area/desert_dam/building/hydroponics/hydroponics_storage name = "Hydroponics Storage" icon_state = "green" + /area/desert_dam/building/hydroponics/hydroponics_loading name = "Hydroponics Loading Room" icon_state = "garage" + /area/desert_dam/building/hydroponics/hydroponics_breakroom name = "Hydroponics Breakroom" icon_state = "red" - -//Telecoms -/area/desert_dam/building/telecommunication - name = "Telecommunications" - icon_state = "yellow" - is_resin_allowed = FALSE - //Water Treatment Plant 1 /area/desert_dam/building/water_treatment_one minimap_color = MINIMAP_AREA_ENGI @@ -434,74 +486,69 @@ /area/desert_dam/building/water_treatment_one name = "Water Treatment One" icon_state = "yellow" + //Water Treatment Plant 1 /area/desert_dam/building/water_treatment_one/lobby name = "Water Treatment One Lobby" icon_state = "red" + /area/desert_dam/building/water_treatment_one/breakroom name = "Water Treatment One Breakroom" icon_state = "green" + /area/desert_dam/building/water_treatment_one/garage name = "Water Treatment One Garage" icon_state = "garage" -/area/desert_dam/building/water_treatment_one/sedimentation - name = "Water Treatment One Sedimentation" - icon_state = "blue" + /area/desert_dam/building/water_treatment_one/equipment name = "Water Treatment One Equipment Room" icon_state = "red" + /area/desert_dam/building/water_treatment_one/hallway name = "Water Treatment One Hallway" icon_state = "purple" + /area/desert_dam/building/water_treatment_one/control_room name = "Water Treatment One Control Room" icon_state = "yellow" + /area/desert_dam/building/water_treatment_one/purification name = "Water Treatment One Purification" icon_state = "green" + /area/desert_dam/building/water_treatment_one/floodgate_control name = "Water Treatment One Floodgate Control" icon_state = "green" -/area/desert_dam/building/water_treatment_one/floodgate_control/central - name = "Central Floodgate Control" - icon_state = "green" - -/area/desert_dam/building/water_treatment_one/floodgate_control/central2 - name = "Central Floodgate Control Storage" - icon_state = "green" - //Water Treatment Plant 2 /area/desert_dam/building/water_treatment_two minimap_color = MINIMAP_AREA_ENGI + unoviable_timer = FALSE /area/desert_dam/building/water_treatment_two name = "Water Treatment Two" icon_state = "yellow" + /area/desert_dam/building/water_treatment_two/lobby name = "Water Treatment Two Lobby" icon_state = "red" -/area/desert_dam/building/water_treatment_two/breakroom - name = "Water Treatment Two Breakroom" - icon_state = "green" -/area/desert_dam/building/water_treatment_two/garage - name = "Water Treatment Two Garage" - icon_state = "garage" -/area/desert_dam/building/water_treatment_two/sedimentation - name = "Water Treatment Two Sedimentation" - icon_state = "blue" + /area/desert_dam/building/water_treatment_two/equipment name = "Water Treatment Two Equipment" icon_state = "red" + /area/desert_dam/building/water_treatment_two/hallway name = "Water Treatment Two Hallway" icon_state = "purple" + /area/desert_dam/building/water_treatment_two/control_room name = "Water Treatment Two Control Room" icon_state = "yellow" + /area/desert_dam/building/water_treatment_two/purification name = "Water Treatment Two Purification" icon_state = "green" + /area/desert_dam/building/water_treatment_two/floodgate_control name = "Water Treatment Two Floodgate Control" icon_state = "green" @@ -527,54 +574,67 @@ /area/desert_dam/building/security/prison name = "Security Prison" icon_state = "sec_prison" + /area/desert_dam/building/security/marshals_office name = "Security Marshal's Office" icon_state = "sec_hos" + /area/desert_dam/building/security/armory name = "Security Armory" icon_state = "armory" + /area/desert_dam/building/security/warden name = "Security Warden's Office" icon_state = "Warden" + /area/desert_dam/building/security/interrogation name = "Security Interrogation" icon_state = "interrogation" -/area/desert_dam/building/security/backroom - name = "Security Interrogation" - icon_state = "sec_backroom" + /area/desert_dam/building/security/observation name = "Security Observation" icon_state = "observatory" + /area/desert_dam/building/security/detective name = "Security Detective's Office" icon_state = "detective" + /area/desert_dam/building/security/office name = "Security Office" icon_state = "yellow" + /area/desert_dam/building/security/lobby name = "Security Lobby" icon_state = "green" + /area/desert_dam/building/security/northern_hallway name = "Security North Hallway" icon_state = "purple" + /area/desert_dam/building/security/courtroom name = "Security Courtroom" icon_state = "courtroom" + /area/desert_dam/building/security/evidence name = "Security Evidence" icon_state = "red" + /area/desert_dam/building/security/holding name = "Security Holding Room" icon_state = "yellow" + /area/desert_dam/building/security/southern_hallway name = "Security South Hallway" icon_state = "green" + /area/desert_dam/building/security/deathrow name = "Security Death Row" icon_state = "cells_max_n" + /area/desert_dam/building/security/execution_chamber name = "Security Execution Chamber" icon_state = "red" + /area/desert_dam/building/security/staffroom name = "Security Staffroom" icon_state = "security" @@ -583,100 +643,29 @@ /area/desert_dam/building/church name = "Church" icon_state = "courtroom" - is_resin_allowed = FALSE + linked_lz = DROPSHIP_LZ2 //Mining area +/area/desert_dam/building/mining + name = "DO NOT USE" + icon_state = "purple" + unoviable_timer = FALSE + /area/desert_dam/building/mining/workshop name = "Mining Workshop" icon_state = "yellow" + /area/desert_dam/building/mining/workshop_foyer name = "Mining Workshop Foyer" icon_state = "purple" -//Legacy Areas for mining - /* -/area/desert_dam/building/mining/garage - name = "Mining Garage" - icon_state = "garage" -/area/desert_dam/building/mining/boxing_room - name = "Mining Boxing Room" - icon_state = "red" -/area/desert_dam/building/mining/loading_room - name = "Mining Loading Bay" - icon_state = "yellow" -/area/desert_dam/building/mining/break_room - name = "Mining Breakroom" - icon_state = "purple" -/area/desert_dam/building/mining/locker_room - name = "Mining Locker Room" - icon_state = "green" -/area/desert_dam/building/mining/lobby - name = "Mining Lobby" - icon_state = "red" -/area/desert_dam/building/mining/front_desk - name = "Mining Front Desk" - icon_state = "green" -/area/desert_dam/building/mining/foremans_office - name = "Mining Foreman's Office" - icon_state = "yellow" -/area/desert_dam/building/mining/maintenance_north - name = "Mining Maintenance North" - icon_state = "dark160" -/area/desert_dam/building/mining/maintenance_east - name = "Mining Maintenance East" - icon_state = "dark128" -/area/desert_dam/building/mining/bunkhouse - name = "Mining Bunkhouse" - icon_state = "red" -/area/desert_dam/building/mining/construction_site - name = "Construction Site" - icon_state = "yellow" -*/ - //NorthWest Lab Buildings /area/desert_dam/building/lab_northwest minimap_color = MINIMAP_AREA_RESEARCH -/area/desert_dam/building/lab_northwest/west_lab_robotics - name = "West Lab Robotics" - icon_state = "ass_line" -/area/desert_dam/building/lab_northwest/west_lab_robotics_mechbay - name = "West Lab Mechbay" - icon_state = "purple" -/area/desert_dam/building/lab_northwest/west_lab_east_hallway - name = "West Lab Hallway" - icon_state = "red" -/area/desert_dam/building/lab_northwest/west_lab_west_hallway - name = "West Lab Hallway" - icon_state = "red" -/area/desert_dam/building/lab_northwest/west_lab_maintenance - name = "West Lab Maintenance" - icon_state = "purple" -/area/desert_dam/building/lab_northwest/west_lab_chemistry - name = "West Lab Chemistry" - icon_state = "yellow" -/area/desert_dam/building/lab_northwest/west_lab_cafeteria - name = "West Lab Cafeteria" - icon_state = "blue" -/area/desert_dam/building/lab_northwest/west_lab_kitchen - name = "West Lab Kitchen" - icon_state = "kitchen" -/area/desert_dam/building/lab_northwest/west_lab_dormitory - name = "West Lab Dormitory" - icon_state = "red" -/area/desert_dam/building/lab_northwest/west_lab_meeting_room - name = "West Lab Meeting Room" - icon_state = "purple" /area/desert_dam/building/lab_northwest/west_lab_xenoflora name = "West Lab Xenoflora" icon_state = "purple" -/area/desert_dam/building/lab_northeast/checkpoint - name = "East Lab Checkpoint" - icon_state = "red" -/area/desert_dam/building/lab_northeast/garage - name = "East Lab Garage" - icon_state = "garage" - //EXTERIOR //under open sky @@ -697,114 +686,126 @@ /area/desert_dam/exterior/landing_pad_one name = "Airstrip Landing Pad" icon_state = "landing_pad" - is_resin_allowed = FALSE + linked_lz = DROPSHIP_LZ1 is_landing_zone = TRUE minimap_color = MINIMAP_AREA_LZ -/area/desert_dam/exterior/landing_pad_one_external - name = "Airstrip Landing Valley" - icon_state = "landing_pad_ext" - is_resin_allowed = FALSE - minimap_color = MINIMAP_AREA_LZ - - //Landing Pad for the Normandy. THIS IS NOT THE SHUTTLE AREA /area/desert_dam/exterior/landing_pad_two name = "Aerodrome Landing Pad" icon_state = "landing_pad" - is_resin_allowed = FALSE + linked_lz = DROPSHIP_LZ2 is_landing_zone = TRUE minimap_color = MINIMAP_AREA_LZ -/area/desert_dam/exterior/landing_pad_two_external - name = "Aerodrome Landing Valley" - icon_state = "landing_pad_ext" - is_resin_allowed = FALSE - minimap_color = MINIMAP_AREA_LZ - //Valleys //Near LZ //TODO: incorporate valleys and substrations for floodlight coverage /area/desert_dam/exterior/valley + name = "Valley" + icon_state = "red" + /area/desert_dam/exterior/valley/valley_northwest name = "Northwest Valley" icon_state = "valley_north_west" - is_resin_allowed = FALSE + linked_lz = DROPSHIP_LZ1 + /area/desert_dam/exterior/valley/valley_cargo name = "Shipping Valley" icon_state = "valley_south_west" - is_resin_allowed = FALSE + linked_lz = DROPSHIP_LZ2 + /area/desert_dam/exterior/valley/valley_telecoms name = "Telecomms Valley" icon_state = "valley_west" - is_resin_allowed = FALSE + linked_lz = DROPSHIP_LZ2 // Generic bridge used in nightmare inserts... Can in fact be different places (sigh) /area/desert_dam/exterior/valley/valley_bridge name = "Valley Bridge" icon_state = "valley" - //telecomms areas /area/desert_dam/exterior/telecomm name = "\improper Trijent Dam Communications Relay" icon_state = "ass_line" - is_resin_allowed = FALSE ceiling_muffle = FALSE base_muffle = MUFFLE_LOW always_unpowered = 0 /area/desert_dam/exterior/telecomm/lz2_containers name = "\improper Containers Communications Relay" + linked_lz = DROPSHIP_LZ2 /area/desert_dam/exterior/telecomm/lz2_tcomms name = "\improper Telecomms Communications Relay" + linked_lz = DROPSHIP_LZ2 + /area/desert_dam/exterior/telecomm/lz2_storage name = "\improper East LZ2 Communications Relay" + linked_lz = DROPSHIP_LZ2 + /area/desert_dam/exterior/telecomm/lz1_south name = "\improper South LZ1 Communications Relay" + linked_lz = DROPSHIP_LZ1 /area/desert_dam/exterior/telecomm/lz1_valley name = "\improper LZ1 Valley Communications Relay" + linked_lz = DROPSHIP_LZ1 /area/desert_dam/exterior/telecomm/lz1_xenoflora name = "\improper Xenoflora Communications Relay" + linked_lz = DROPSHIP_LZ1 //Away from LZ /area/desert_dam/exterior/valley/valley_labs name = "Lab Valley" icon_state = "valley_north" + /area/desert_dam/exterior/valley/valley_mining name = "Mining Valley" icon_state = "valley_east" + unoviable_timer = FALSE + /area/desert_dam/exterior/valley/valley_civilian name = "Civilian Valley" icon_state = "valley_south_excv" + unoviable_timer = FALSE + /area/desert_dam/exterior/valley/valley_medical name = "Medical Valley" icon_state = "valley" + unoviable_timer = FALSE + /area/desert_dam/exterior/valley/valley_hydro name = "Hydro Valley" icon_state = "valley" + /area/desert_dam/exterior/valley/valley_crashsite name = "Crash Site Valley" icon_state = "yellow" + unoviable_timer = FALSE + /area/desert_dam/exterior/valley/north_valley_dam name = "North Dam Valley" icon_state = "valley" + /area/desert_dam/exterior/valley/south_valley_dam name = "South Dam Valley" icon_state = "valley" + /area/desert_dam/exterior/valley/bar_valley_dam name = "Bar Valley" icon_state = "yellow" + /area/desert_dam/exterior/valley/valley_wilderness name = "Wilderness Valley" icon_state = "central" + unoviable_timer = FALSE //Rivers @@ -829,43 +830,33 @@ A.check_filtered() - //End of the river areas, no Next -/area/desert_dam/exterior/river/riverside_northwest - name = "Northwestern Riverbed" - icon_state = "bluenew" /area/desert_dam/exterior/river/riverside_central_north name = "Northern Central Riverbed" icon_state = "purple" + /area/desert_dam/exterior/river/riverside_central_south name = "Southern Central Riverbed" icon_state = "purple" + /area/desert_dam/exterior/river/riverside_south name = "Southern Riverbed" icon_state = "bluenew" + /area/desert_dam/exterior/river/riverside_east name = "Eastern Riverbed" icon_state = "bluenew" -/area/desert_dam/exterior/river/riverside_northeast - name = "Northeastern Riverbed" - icon_state = "bluenew" + //The filtration plants - This area isn't for the WHOLE plant, but the areas that have water in them, so the water changes color as well. /area/desert_dam/exterior/river/filtration_a name = "Filtration Plant A" -/area/desert_dam/exterior/river/filtration_b - name = "Filtration Plant B" - //Areas that are rivers, but will not change because they're before the floodgates /area/desert_dam/exterior/river_mouth/southern name = "Southern River Mouth" icon_state = "purple" -/area/desert_dam/exterior/river_mouth/eastern - name = "Eastern River Mouth" - icon_state = "purple" - /area/desert_dam/landing/console name = "LZ1 'Admin'" icon_state = "tcomsatcham" @@ -880,14 +871,18 @@ //Transit Shuttle /area/shuttle/tri_trans1/alpha icon_state = "shuttle" + /area/shuttle/tri_trans1/away icon_state = "away1" + /area/shuttle/tri_trans1/omega icon_state = "shuttle2" /area/shuttle/tri_trans2/alpha icon_state = "shuttlered" + /area/shuttle/tri_trans2/away icon_state = "away2" + /area/shuttle/tri_trans2/omega icon_state = "shuttle2" diff --git a/code/game/area/LV522_Chances_Claim.dm b/code/game/area/LV522_Chances_Claim.dm index c3e5c96ad4d7..12e5cab97509 100644 --- a/code/game/area/LV522_Chances_Claim.dm +++ b/code/game/area/LV522_Chances_Claim.dm @@ -115,6 +115,11 @@ icon_state = "green" ceiling = CEILING_NONE +/area/lv522/outdoors/colony_streets/containers + name = "Colony Streets - Container Yard" + icon_state = "yellow" + unoviable_timer = FALSE + /area/lv522/outdoors/colony_streets/windbreaker name = "Colony Windbreakers" icon_state = "tcomsatcham" @@ -129,11 +134,11 @@ soundscape_playlist = SCAPE_PL_LV522_INDOORS /area/lv522/outdoors/colony_streets/central_streets - name = "Central Street - West" + name = "Central Streets - West" icon_state = "west" /area/lv522/outdoors/colony_streets/east_central_street - name = "Central Street - East" + name = "Central Streets - East" icon_state = "east" /area/lv522/outdoors/colony_streets/south_street @@ -403,6 +408,7 @@ ceiling = CEILING_REINFORCED_METAL ambience_exterior = AMBIENCE_SHIP minimap_color = MINIMAP_AREA_ENGI + unoviable_timer = FALSE /area/lv522/atmos/outdoor name = "Atmospheric Processor - Outdoors" diff --git a/code/game/area/LV624.dm b/code/game/area/LV624.dm index 464067e827d3..0e91b7355c27 100644 --- a/code/game/area/LV624.dm +++ b/code/game/area/LV624.dm @@ -37,7 +37,7 @@ name ="\improper Western Jungle" icon_state = "west" //ambience = list('sound/ambience/jungle_amb1.ogg') - is_resin_allowed = FALSE + linked_lz = DROPSHIP_LZ2 /area/lv624/ground/jungle/west_jungle/ceiling ceiling = CEILING_GLASS @@ -177,27 +177,31 @@ /area/lv624/ground/colony/north_tcomms_road name = "\improper North T-Comms Road" icon_state = "north" + linked_lz = DROPSHIP_LZ2 /area/lv624/ground/colony/west_tcomms_road name = "\improper West T-Comms Road" icon_state = "west" + linked_lz = DROPSHIP_LZ2 /area/lv624/ground/colony/telecomm name = "\improper LZ1 Communications Relay" icon_state = "ass_line" ceiling = CEILING_UNDERGROUND_METAL_ALLOW_CAS - is_resin_allowed = FALSE + linked_lz = DROPSHIP_LZ1 ceiling_muffle = FALSE base_muffle = MUFFLE_LOW always_unpowered = FALSE /area/lv624/ground/colony/telecomm/cargo name = "\improper Far North Storage Dome Communications Relay" + linked_lz = DROPSHIP_LZ1 /area/lv624/ground/colony/telecomm/sw_lz1 name = "\improper South-West LZ1 Communications Relay" ceiling = CEILING_NONE + linked_lz = DROPSHIP_LZ1 /area/lv624/ground/colony/telecomm/tcommdome name = "\improper Telecomms Dome Communications Relay" @@ -209,6 +213,7 @@ /area/lv624/ground/colony/telecomm/sw_lz2 name = "\improper South-West LZ2 Communications Relay" ceiling = CEILING_NONE + linked_lz = DROPSHIP_LZ2 // ambience = list('sound/ambience/jungle_amb1.ogg') @@ -224,6 +229,7 @@ ceiling = CEILING_UNDERGROUND_BLOCK_CAS sound_environment = SOUND_ENVIRONMENT_AUDITORIUM minimap_color = MINIMAP_AREA_CAVES + unoviable_timer = FALSE /area/lv624/ground/caves/west_caves name ="\improper Western Caves" @@ -283,9 +289,11 @@ /area/lv624/lazarus/landing_zones/lz1 name = "\improper Alamo Landing Zone" + linked_lz = DROPSHIP_LZ1 /area/lv624/lazarus/landing_zones/lz2 name = "\improper Normandy Landing Zone" + linked_lz = DROPSHIP_LZ2 /area/lv624/lazarus name = "\improper Lazarus" @@ -295,11 +303,13 @@ /area/lv624/lazarus/corporate_dome name = "\improper Corporate Dome" icon_state = "green" + linked_lz = DROPSHIP_LZ2 /area/lv624/lazarus/yggdrasil name = "\improper Yggdrasil Tree" icon_state = "atmos" ceiling = CEILING_GLASS + linked_lz = DROPSHIP_LZ1 /area/lv624/lazarus/medbay name = "\improper Medbay" @@ -315,35 +325,39 @@ name = "\improper Security" icon_state = "security" minimap_color = MINIMAP_AREA_SEC + linked_lz = DROPSHIP_LZ1 /area/lv624/lazarus/captain name = "\improper Commandant's Quarters" icon_state = "captain" minimap_color = MINIMAP_AREA_COMMAND + linked_lz = DROPSHIP_LZ1 /area/lv624/lazarus/hop name = "\improper Head of Personnel's Office" icon_state = "head_quarters" minimap_color = MINIMAP_AREA_COMMAND + linked_lz = DROPSHIP_LZ1 /area/lv624/lazarus/kitchen name = "\improper Kitchen" icon_state = "kitchen" - is_resin_allowed = FALSE + linked_lz = DROPSHIP_LZ1 /area/lv624/lazarus/canteen name = "\improper Canteen" icon_state = "cafeteria" - is_resin_allowed = FALSE + linked_lz = DROPSHIP_LZ1 /area/lv624/lazarus/main_hall name = "\improper Main Hallway" icon_state = "hallC1" - is_resin_allowed = FALSE + linked_lz = DROPSHIP_LZ1 /area/lv624/lazarus/toilet name = "\improper Dormitory Toilet" icon_state = "toilet" + linked_lz = DROPSHIP_LZ1 /area/lv624/lazarus/chapel name = "\improper Chapel" @@ -361,23 +375,23 @@ /area/lv624/lazarus/sleep_female name = "\improper Female Dorm" icon_state = "Sleep" - is_resin_allowed = FALSE + linked_lz = DROPSHIP_LZ1 /area/lv624/lazarus/quart name = "\improper Quartermasters" icon_state = "quart" - is_resin_allowed = FALSE + linked_lz = DROPSHIP_LZ1 /area/lv624/lazarus/quartstorage name = "\improper Cargo Bay" icon_state = "quartstorage" - is_resin_allowed = FALSE + linked_lz = DROPSHIP_LZ1 /area/lv624/lazarus/quartstorage/outdoors name = "\improper Cargo Bay Area" icon_state = "purple" ceiling = CEILING_NONE - is_resin_allowed = FALSE + linked_lz = DROPSHIP_LZ1 always_unpowered = TRUE /area/lv624/lazarus/engineering @@ -398,7 +412,7 @@ /area/lv624/lazarus/robotics name = "\improper Robotics" icon_state = "ass_line" - is_resin_allowed = FALSE + linked_lz = DROPSHIP_LZ2 /area/lv624/lazarus/research name = "\improper Research Lab" diff --git a/code/game/area/almayer.dm b/code/game/area/almayer.dm index 55f65c8ecdef..1007f155ace4 100644 --- a/code/game/area/almayer.dm +++ b/code/game/area/almayer.dm @@ -720,7 +720,7 @@ flags_area = AREA_AVOID_BIOSCAN|AREA_NOTUNNEL|AREA_CONTAINMENT /area/almayer/medical/containment/cell/cl - name = "\improper Containment" + name = "\improper Storage Room" /area/almayer/medical/chemistry name = "\improper Medical Chemical laboratory" diff --git a/code/game/area/areas.dm b/code/game/area/areas.dm index db0702200d16..8ac6a7ad4788 100644 --- a/code/game/area/areas.dm +++ b/code/game/area/areas.dm @@ -82,6 +82,13 @@ /// Doesn't need to be set for areas/Z levels that are marked as admin-only var/block_game_interaction = FALSE + /// Which, if any, LZ this area belongs to. If an area belongs to an LZ, if that LZ is designated as the primary + /// LZ, all weeds will be destroyed and further weed placement disabled + var/linked_lz = FALSE + + /// How long this area should be un-oviable + var/unoviable_timer = 25 MINUTES + /area/New() // This interacts with the map loader, so it needs to be set immediately @@ -105,6 +112,9 @@ update_base_lighting() + if(unoviable_timer) + SSticker.OnRoundstart(CALLBACK(src, PROC_REF(handle_ovi_timer))) + /area/proc/initialize_power(override_power) if(requires_power) if(override_power) //Reset everything if you want to override. @@ -418,3 +428,14 @@ areas_in_z["[z]"] = list() areas_in_z["[z]"] += src +/** + * Purges existing weeds, and prevents future weeds from being placed. + */ +/area/proc/purge_weeds() + SEND_SIGNAL(src, COMSIG_AREA_RESIN_DISALLOWED) + + is_resin_allowed = FALSE + +/// From roundstart, sets a timer to make an area oviable. +/area/proc/handle_ovi_timer() + addtimer(VARSET_CALLBACK(src, unoviable_timer, FALSE), unoviable_timer) diff --git a/code/game/area/kutjevo.dm b/code/game/area/kutjevo.dm index 1180e10a761e..e10cbe305009 100644 --- a/code/game/area/kutjevo.dm +++ b/code/game/area/kutjevo.dm @@ -67,27 +67,36 @@ /area/kutjevo/exterior/lz_river name = "Kutjevo - Power Station River" icon_state = "lz_river" + linked_lz = DROPSHIP_LZ1 /area/kutjevo/exterior/spring name = "Kutjevo - Southern Spring" icon_state = "lz_river" + unoviable_timer = FALSE /area/kutjevo/exterior/scrubland - name = "Kutjevo - Scrubland" + name = "Kutjevo - North Scrubland" icon_state = "scrubland" + linked_lz = DROPSHIP_LZ2 + +/area/kutjevo/exterior/scrubland/south + name = "Kutjevo - South Scrubland" + linked_lz = list(DROPSHIP_LZ1, DROPSHIP_LZ2) /area/kutjevo/exterior/stonyfields name = "Kutjevo - Stony Fields" icon_state = "stone_fields" + linked_lz = DROPSHIP_LZ1 /area/kutjevo/exterior/Northwest_Colony name = "Kutjevo - Northwest Colony Grounds" icon_state = "rf_dunes" - is_resin_allowed = FALSE + linked_lz = DROPSHIP_LZ2 /area/kutjevo/exterior/runoff_dunes name = "Kutjevo - Runoff Dunes" icon_state = "rf_dunes" + linked_lz = DROPSHIP_LZ1 /area/kutjevo/exterior/runoff_river name = "Kutjevo - Runoff River" @@ -108,6 +117,7 @@ /area/kutjevo/exterior/construction name = "Kutjevo - Abandoned Construction" icon_state = "construction" + unoviable_timer = FALSE /area/kutjevo/exterior/complex_border name = "Kutjevo Complex - Exterior" @@ -129,21 +139,24 @@ /area/kutjevo/exterior/telecomm name = "Kutjevo - Communications Relay" icon_state = "ass_line" - is_resin_allowed = FALSE ceiling_muffle = FALSE base_muffle = MUFFLE_LOW /area/kutjevo/exterior/telecomm/lz1_north name = "Kutjevo - North LZ1 Communications Relay" + linked_lz = DROPSHIP_LZ1 /area/kutjevo/exterior/telecomm/lz1_south name = "Kutjevo - South LZ1 Communications Relay" + linked_lz = DROPSHIP_LZ1 /area/kutjevo/exterior/telecomm/lz2_north name = "Kutjevo - North LZ2 Communications Relay" + linked_lz = DROPSHIP_LZ2 /area/kutjevo/exterior/telecomm/lz2_south name = "Kutjevo - South LZ2 Communications Relay" + linked_lz = DROPSHIP_LZ2 //interior areas + caves @@ -203,21 +216,21 @@ name = "Kutjevo Complex - Northwest Colony Dorms" icon_state = "Colony_int" ceiling = CEILING_METAL - is_resin_allowed = FALSE + linked_lz = DROPSHIP_LZ2 is_landing_zone = TRUE /area/kutjevo/interior/complex/Northwest_Flight_Control name = "Kutjevo Complex - Northwest Flight Control Room" icon_state = "Colony_int" ceiling = CEILING_METAL - is_resin_allowed = FALSE + linked_lz = DROPSHIP_LZ2 is_landing_zone = TRUE /area/kutjevo/interior/complex/Northwest_Security_Checkpoint name = "Kutjevo Complex - Northwest Security Checkpoint" icon_state = "Colony_int" ceiling = CEILING_METAL - is_resin_allowed = FALSE + linked_lz = DROPSHIP_LZ2 minimap_color = MINIMAP_AREA_SEC is_landing_zone = TRUE @@ -227,6 +240,7 @@ ceiling = CEILING_METAL icon_state = "power" minimap_color = MINIMAP_AREA_ENGI + linked_lz = DROPSHIP_LZ1 /area/kutjevo/interior/power/comms name = "Kutjevo - Hydroelectric Dam Comms Relay" @@ -237,11 +251,13 @@ name = "Kutjevo - Abandoned Construction Interior" ceiling = CEILING_METAL icon_state = "construction_int" + unoviable_timer = FALSE /area/kutjevo/interior/foremans_office name = "Kutjevo - Foreman's Office" ceiling = CEILING_METAL icon_state = "foremans" + unoviable_timer = FALSE /area/kutjevo/interior/botany_bay_int name = "Kutjevo - Space Weed Farm Interior" @@ -263,26 +279,31 @@ ceiling = CEILING_UNDERGROUND_ALLOW_CAS icon_state = "colony_caves_0" minimap_color = MINIMAP_AREA_CAVES + unoviable_timer = FALSE /area/kutjevo/interior/colony_central/mine_elevator name = "Kutjevo - Central Colony Elevator" ceiling = CEILING_UNDERGROUND_ALLOW_CAS icon_state = "colony_caves_0" + unoviable_timer = FALSE /area/kutjevo/interior/colony_north name = "Kutjevo - North Colony Caves" ceiling = CEILING_DEEP_UNDERGROUND icon_state = "colony_caves_1" + unoviable_timer = FALSE /area/kutjevo/interior/colony_S_East name = "Kutjevo - North East Colony Caves" ceiling = CEILING_DEEP_UNDERGROUND icon_state = "colony_caves_2" + unoviable_timer = FALSE /area/kutjevo/interior/colony_N_East name = "Kutjevo - South East Colony Caves" ceiling = CEILING_DEEP_UNDERGROUND icon_state = "colony_caves_2" + unoviable_timer = FALSE /area/kutjevo/interior/colony_South name = "Kutjevo - South Colony Caves" @@ -294,3 +315,4 @@ ceiling = CEILING_DEEP_UNDERGROUND icon_state = "colony_caves_3" minimap_color = MINIMAP_AREA_ENGI_CAVE + unoviable_timer = FALSE diff --git a/code/game/area/prison_v3_fiorina.dm b/code/game/area/prison_v3_fiorina.dm index c02ed0310816..7b9ba983e553 100644 --- a/code/game/area/prison_v3_fiorina.dm +++ b/code/game/area/prison_v3_fiorina.dm @@ -29,6 +29,8 @@ icon_state = "tumor0" temperature = 309.15 //its uh, gettin' kinda warm in here SL... ceiling = CEILING_UNDERGROUND_METAL_BLOCK_CAS + unoviable_timer = FALSE + /area/fiorina/tumor/deep icon_state = "tumor0-deep" @@ -74,29 +76,33 @@ /area/fiorina/lz/near_lzI name = "Fiorina - LZ1 Aux Port" + linked_lz = DROPSHIP_LZ1 + is_resin_allowed = null /area/fiorina/lz/near_lzII name = "Fiorina - LZ2 Prison Port" + linked_lz = DROPSHIP_LZ2 + is_resin_allowed = null /area/fiorina/lz/console_I name = "Fiorina - LZ1 Control Console" icon_state = "lz1" - requires_power = 0 + requires_power = FALSE /area/fiorina/lz/console_II name = "Fiorina - LZ2 Control Console" icon_state = "lz2" - requires_power = 0 + requires_power = FALSE /area/shuttle/drop1/prison_v3 name = "Fiorina - Dropship Alamo Landing Zone" icon_state = "shuttle" - is_resin_allowed = FALSE + linked_lz = DROPSHIP_LZ1 /area/shuttle/drop2/prison_v3 name = "Fiorina - Normandy Landing Zone" icon_state = "shuttle2" - is_resin_allowed = FALSE + linked_lz = DROPSHIP_LZ2 //STATION AREAS AAAA /area/fiorina/station @@ -108,23 +114,42 @@ name = "Fiorina - Low Security Cells" icon_state = "station1" +/area/fiorina/station/lowsec/showers_laundry + name = "Fiorina - Low Security Showers & Laundry" + linked_lz = DROPSHIP_LZ2 + +/area/fiorina/station/lowsec/east + name = "Fiorina - Low Security Eastside" + linked_lz = DROPSHIP_LZ1 + /area/fiorina/station/power_ring name = "Fiorina - Engineering Ring" icon_state = "power0" minimap_color = MINIMAP_AREA_ENGI + linked_lz = list(DROPSHIP_LZ2, DROPSHIP_LZ1) + +/area/fiorina/station/power_ring/reactor + name = "Fiorina - Engineering Reactor" + linked_lz = null /area/fiorina/station/disco - name = "Fiorina - Disco Storage" + name = "Fiorina - West Disco Storage" icon_state = "disco" +/area/fiorina/station/disco/east_disco + name = "Fiorina - East Disco Storage" + linked_lz = DROPSHIP_LZ1 + /area/fiorina/station/flight_deck name = "Fiorina - Flight Deck" icon_state = "police_line" + linked_lz = DROPSHIP_LZ1 /area/fiorina/station/security name = "Fiorina - Security Hub" icon_state = "security_hub" minimap_color = MINIMAP_AREA_SEC + linked_lz = DROPSHIP_LZ2 /area/fiorina/station/security/wardens name = "Fiorina - Warden's Office" @@ -155,6 +180,7 @@ /area/fiorina/station/civres_blue name = "Fiorina - Blue Block Residences" icon_state = "station1" + unoviable_timer = FALSE /area/fiorina/station/medbay name = "Fiorina - Medical Bay" @@ -166,12 +192,22 @@ icon_state = "station0" minimap_color = MINIMAP_AREA_RESEARCH +/area/fiorina/station/research_cells/west + name = "Fiorina - West Research Cellblock" + +/area/fiorina/station/research_cells/east + name = "Fiorina - East Research Cellblock" + linked_lz = DROPSHIP_LZ1 + +/area/fiorina/station/research_cells/basketball + name = "Fiorina - Basketball Court" + linked_lz = DROPSHIP_LZ1 //telecomms areas /area/fiorina/station/telecomm name = "Fiorina - Communications Relay" icon_state = "ass_line" - is_resin_allowed = FALSE + linked_lz = DROPSHIP_LZ1 ceiling_muffle = FALSE base_muffle = MUFFLE_LOW diff --git a/code/game/area/shiva.dm b/code/game/area/shiva.dm index dee9eb5f0aea..c577a00eb251 100644 --- a/code/game/area/shiva.dm +++ b/code/game/area/shiva.dm @@ -14,14 +14,14 @@ name = "Shiva's Snowball - Dropship Alamo Landing Zone" icon_state = "shuttle" icon = 'icons/turf/area_shiva.dmi' - is_resin_allowed = FALSE + linked_lz = DROPSHIP_LZ1 minimap_color = MINIMAP_AREA_LZ /area/shuttle/drop2/shiva name = "Shiva's Snowball - Dropship Normandy Landing Zone" icon_state = "shuttle2" icon = 'icons/turf/area_shiva.dmi' - is_resin_allowed = FALSE + linked_lz = DROPSHIP_LZ2 minimap_color = MINIMAP_AREA_LZ /area/shiva/exterior/lz1_console @@ -60,73 +60,83 @@ /area/shiva/exterior/telecomm name = "Shiva's Snowball - Communications Relay" icon_state = "ass_line" - is_resin_allowed = FALSE /area/shiva/exterior/telecomm/lz1_north name = "Shiva's Snowball - North LZ1 Communications Relay" minimap_color = MINIMAP_AREA_LZ + linked_lz = DROPSHIP_LZ1 /area/shiva/exterior/telecomm/lz2_southeast name = "Shiva's Snowball - South-East LZ2 Communications Relay" minimap_color = MINIMAP_AREA_LZ + linked_lz = DROPSHIP_LZ2 /area/shiva/exterior/telecomm/lz2_northeast name = "Shiva's Snowball - North-East LZ2 Communications Relay" minimap_color = MINIMAP_AREA_LZ - + linked_lz = DROPSHIP_LZ2 //telecomms areas - interior /area/shiva/interior/telecomm name = "Shiva's Snowball - Communications Relay" icon_state = "ass_line" - is_resin_allowed = FALSE /area/shiva/interior/telecomm/lz1_biceps name = "Shiva's Snowball - Fort Biceps Communications Relay" icon_state = "hangars0" minimap_color = MINIMAP_AREA_LZ + linked_lz = DROPSHIP_LZ1 /area/shiva/interior/telecomm/lz1_flight name = "Shiva's Snowball - LZ1 Aerodrome Communications Relay" minimap_color = MINIMAP_AREA_LZ + linked_lz = DROPSHIP_LZ1 /area/shiva/interior/telecomm/lz2_research name = "Shiva's Snowball - Argentinian Communications Relay" minimap_color = MINIMAP_AREA_LZ + linked_lz = DROPSHIP_LZ2 //telecomms areas - caves /area/shiva/caves/telecomm name = "Shiva's Snowball - Communications Relay" icon_state = "ass_line" - is_resin_allowed = FALSE /area/shiva/caves/telecomm/lz2_south name = "Shiva's Snowball - Backup Communications Relay" minimap_color = MINIMAP_AREA_LZ + linked_lz = DROPSHIP_LZ2 //exterior areas /area/shiva/exterior/lz1_valley name = "Shiva's Snowball - Landing Valley" icon_state = "landing_valley" - is_resin_allowed = FALSE + linked_lz = DROPSHIP_LZ1 is_landing_zone = TRUE minimap_color = MINIMAP_AREA_LZ /area/shiva/exterior/lz2_fortress name = "Shiva's Snowball - Landing Bulwark" icon_state = "lz2_fortress" - is_resin_allowed = FALSE + linked_lz = DROPSHIP_LZ2 is_landing_zone = TRUE minimap_color = MINIMAP_AREA_LZ /area/shiva/exterior/valley name = "Shiva's Snowball - Storage Bunker Valley" icon_state = "junkyard1" + unoviable_timer = FALSE + +/area/shiva/exterior/southwest_valley + name = "Shiva's Snowball - Southwest Valley" + icon_state = "sw" + linked_lz = DROPSHIP_LZ1 /area/shiva/exterior/cp_colony_grounds name = "Shiva's Snowball - Colony Grounds" icon_state = "junkyard2" + unoviable_timer = FALSE /area/shiva/exterior/junkyard name = "Shiva's Snowball - Junkyard" @@ -139,14 +149,17 @@ /area/shiva/exterior/junkyard/cp_bar name = "Shiva's Snowball - Bar Grounds" icon_state = "bar0" + unoviable_timer = FALSE /area/shiva/exterior/cp_s_research name = "Shiva's Snowball - Research Hab Exterior" icon_state = "junkyard1" + unoviable_timer = FALSE /area/shiva/exterior/cp_lz2 name = "Shiva's Snowball - North Colony Grounds" icon_state = "junkyard3" + linked_lz = DROPSHIP_LZ2 /area/shiva/exterior/research_alley name = "Shiva's Snowball - South Research Alley" @@ -165,6 +178,7 @@ /area/shiva/interior/caves/right_spiders name = "Shiva's Snowball - Forgotten Passage" icon_state = "caves1" + unoviable_timer = FALSE /area/shiva/interior/caves/left_spiders name = "Shiva's Snowball - Crevice Passage" @@ -174,19 +188,23 @@ name = "Shiva's Snowball - South LZ2 Caves" icon_state = "caves3" minimap_color = MINIMAP_AREA_LZ + linked_lz = DROPSHIP_LZ2 /area/shiva/interior/caves/cp_camp name = "Shiva's Snowball - Cave Camp" icon_state = "bar3" + linked_lz = list(DROPSHIP_LZ1, DROPSHIP_LZ2) /area/shiva/interior/caves/research_caves name = "Shiva's Snowball - South Research Hab Caves" icon_state = "caves2" minimap_color = MINIMAP_AREA_RESEARCH_CAVE + unoviable_timer = FALSE /area/shiva/interior/caves/medseceng_caves name = "Shiva's Snowball - South Med-Sec-Eng Complex Caves" icon_state = "caves3" + unoviable_timer = FALSE /area/shiva/interior/colony name = "Shiva's Snowball - Colony MegaStruct(TM)" @@ -214,19 +232,17 @@ /area/shiva/interior/colony/research_hab name = "Shiva's Snowball - Research Hab Interior" icon_state = "res2" + unoviable_timer = FALSE /area/shiva/interior/colony/medseceng name = "Shiva's Snowball - Colony MegaStruct(TM) Med-Sec-Eng Segment" icon_state = "res0" - -/area/shiva/interior/colony/deck - name = "Shiva's Snowball - Colony MegaStruct(TM) Open Deck" - icon_state = "res1" - ceiling = CEILING_GLASS + unoviable_timer = FALSE /area/shiva/interior/aerodrome name = "Shiva's Snowball - Aerodrome" icon_state = "hangars0" + linked_lz = DROPSHIP_LZ1 /area/shiva/interior/bar name = "Shiva's Snowball - Anti-Freeze Bar" @@ -239,6 +255,7 @@ /area/shiva/interior/warehouse name = "Shiva's Snowball - Blue Warehouse" icon_state = "hangars1" + linked_lz = DROPSHIP_LZ1 /area/shiva/interior/warehouse/caves name = "Shiva's Snowball - Blue Warehouse Ice Cave" @@ -247,18 +264,22 @@ /area/shiva/interior/valley_huts name = "Shiva's Snowball - Valley Bunker 1" icon_state = "hangars1" + unoviable_timer = FALSE /area/shiva/interior/valley_huts/no2 name = "Shiva's Snowball - Valley Bunker 2" icon_state = "hangars2" + unoviable_timer = FALSE /area/shiva/interior/valley_huts/disposals name = "Shiva's Snowball - Valley Disposals" icon_state = "hangars3" + unoviable_timer = FALSE /area/shiva/interior/garage name = "Shiva's Snowball - Cargo Tug Repair Station" icon_state = "hangars2" + unoviable_timer = FALSE /area/shiva/interior/lz2_habs name = "Shiva's Snowball - Argentinian Research Headquarters" diff --git a/code/game/area/shuttles.dm b/code/game/area/shuttles.dm index 3a8d53ab30b7..1890f31925be 100644 --- a/code/game/area/shuttles.dm +++ b/code/game/area/shuttles.dm @@ -73,6 +73,7 @@ /area/shuttle/escape_pod icon = 'icons/turf/area_almayer.dmi' icon_state = "lifeboat" + flags_area = AREA_NOTUNNEL /area/shuttle/escape_pod/afterShuttleMove(new_parallax_dir) . = ..() diff --git a/code/game/area/strata.dm b/code/game/area/strata.dm index 8b1132c2dce1..fe2e61cd7265 100644 --- a/code/game/area/strata.dm +++ b/code/game/area/strata.dm @@ -21,14 +21,14 @@ EXTERIOR is FUCKING FREEZING, and refers to areas out in the open and or exposed icon_state = "shuttle" base_lighting_alpha = 255 minimap_color = MINIMAP_AREA_LZ - is_resin_allowed = FALSE + linked_lz = DROPSHIP_LZ1 /area/shuttle/drop2/strata name = "Dropship Normandy Landing Zone" icon_state = "shuttle2" base_lighting_alpha = 255 minimap_color = MINIMAP_AREA_LZ - is_resin_allowed = FALSE + linked_lz = DROPSHIP_LZ2 //Begin actual area definitions. There's probably a better way to do this. @@ -90,25 +90,25 @@ EXTERIOR is FUCKING FREEZING, and refers to areas out in the open and or exposed name = "Do not use." icon_state = "landingzone_2" minimap_color = MINIMAP_AREA_LZ - is_resin_allowed = FALSE /area/strata/ag/exterior/landing_zones/lz2 name = "Landing Zone 2 Pad - Ice Fields" unlimited_power = 1 //So the DS computer always works for the Queen weather_enabled = FALSE is_landing_zone = TRUE + linked_lz = DROPSHIP_LZ2 /area/strata/ag/exterior/landing_zones/near_lz2 name = "Landing Zone 2 - Ice Fields" icon_state = "nearlz2" weather_enabled = TRUE is_landing_zone = TRUE + linked_lz = DROPSHIP_LZ2 /area/strata/ag/interior/landing_zones name = "Do not use." icon_state = "landingzone_1" minimap_color = MINIMAP_AREA_LZ - is_resin_allowed = FALSE weather_enabled = FALSE ceiling = CEILING_NONE @@ -116,11 +116,13 @@ EXTERIOR is FUCKING FREEZING, and refers to areas out in the open and or exposed name = "Landing Zone 1 Pad - Mining Aerodrome" unlimited_power = 1 //So the DS computer always works for the Queen is_landing_zone = TRUE + linked_lz = DROPSHIP_LZ1 /area/strata/ag/interior/landing_zones/near_lz1 name = "Landing Zone 1 - Mining Aerodrome" icon_state = "nearlz1" is_landing_zone = TRUE + linked_lz = DROPSHIP_LZ1 //-Caves @@ -133,11 +135,13 @@ EXTERIOR is FUCKING FREEZING, and refers to areas out in the open and or exposed /area/strata/ag/exterior/caves/lz_caves name = "External Mining Aerodrome Caves" + linked_lz = DROPSHIP_LZ1 /area/strata/ag/exterior/jungle/carplake_center name = "Deep Jungle - Carp Lake Center Island" icon_state = "ug_jung_1" weather_enabled = TRUE + unoviable_timer = FALSE //-Marsh @@ -147,34 +151,42 @@ EXTERIOR is FUCKING FREEZING, and refers to areas out in the open and or exposed /area/strata/ag/exterior/marsh/spring_marshes name = "Cryo-Thermal Springs Marshes" + linked_lz = list(DROPSHIP_LZ1, DROPSHIP_LZ2) /area/strata/ag/exterior/marsh/water_marshes name = "Cryo-Thermal Water Marshes" + linked_lz = DROPSHIP_LZ2 /area/strata/ag/exterior/marsh/island_marshes name = "Cryo-Thermal Island Marshes" is_landing_zone = TRUE + linked_lz = DROPSHIP_LZ2 /area/strata/ag/exterior/marsh/relay_marshes name = "Cryo-Thermal Relay Marshes" is_landing_zone = TRUE + linked_lz = DROPSHIP_LZ2 /area/strata/ag/exterior/marsh/center name = "Cryo-Thermal Springs" icon_state = "marshcenter" + linked_lz = list(DROPSHIP_LZ1, DROPSHIP_LZ2) /area/strata/ag/exterior/marsh/river name = "Cryo-Thermal River" icon_state = "marshriver" + linked_lz = DROPSHIP_LZ1 /area/strata/ag/exterior/marsh/crash name = "Cryo-Thermal Crashed Lifeboat" icon_state = "marshship" + linked_lz = list(DROPSHIP_LZ1, DROPSHIP_LZ2) /area/strata/ag/exterior/marsh/water name = "Cryo-Thermal Water" icon_state = "marshwater" temperature = TCMB //space cold + linked_lz = DROPSHIP_LZ2 //-Outside "interiors" @@ -204,9 +216,11 @@ EXTERIOR is FUCKING FREEZING, and refers to areas out in the open and or exposed /area/strata/ag/exterior/paths/flight_control_exterior name = "Flight Control Exterior" + linked_lz = DROPSHIP_LZ1 /area/strata/ag/exterior/paths/mining_outpost_exterior name = "Mining Outpost Exterior" + linked_lz = DROPSHIP_LZ1 /area/strata/ag/exterior/paths/north_outpost name = "Outpost - North Access Channel" @@ -215,10 +229,12 @@ EXTERIOR is FUCKING FREEZING, and refers to areas out in the open and or exposed /area/strata/ag/exterior/paths/far_north_outpost name = "Far North Of The Outpost" icon_state = "cabin" + unoviable_timer = FALSE /area/strata/ag/exterior/paths/south_outpost name = "South Of The Outpost" ceiling = CEILING_NONE + linked_lz = DROPSHIP_LZ2 //////////////////////////////////////// // ------===| Interior |===------ // @@ -235,23 +251,12 @@ EXTERIOR is FUCKING FREEZING, and refers to areas out in the open and or exposed name = "Sorokyne Outpost" icon_state = "shed_x_ag" minimap_color = MINIMAP_AREA_CAVES + ceiling = CEILING_UNDERGROUND_METAL_ALLOW_CAS /area/strata/ag/interior/outpost/foyer name = "Outpost Main Foyer" icon_state = "outpost_gen_1" -/area/strata/ag/interior/outpost/hallways - name = "Do not use." - icon_state = "outpost_admin_3" - minimap_color = MINIMAP_AREA_GLASS - ceiling = CEILING_GLASS - -/area/strata/ag/interior/outpost/hallways/north - name = "Outpost North Hallways" - -/area/strata/ag/interior/outpost/hallways/south - name = "Outpost South Hallways" - /area/strata/ag/interior/outpost/maint name = "Outpost Canteen - Eastern Maintenance" icon_state = "outpost_maint" @@ -283,46 +288,39 @@ EXTERIOR is FUCKING FREEZING, and refers to areas out in the open and or exposed name = "Outpost Administration" icon_state = "outpost_admin_0" minimap_color = MINIMAP_AREA_COMMAND + ceiling = CEILING_GLASS /area/strata/ag/interior/outpost/canteen name = "Outpost Canteen" icon_state = "outpost_canteen_0" + ceiling = CEILING_GLASS /area/strata/ag/interior/outpost/canteen/bar name = "Outpost Bar" icon_state = "outpost_canteen_2" -/area/strata/ag/interior/outpost/canteen/lower_cafeteria - name = "Outpost Cafeteria" - icon_state = "outpost_canteen_0" - -/area/strata/ag/interior/outpost/canteen/personal_storage - name = "Outpost Personal Storage" - //-Mining Outpost /area/strata/ag/interior/mining_outpost name = "Do not use." minimap_color = MINIMAP_AREA_MINING + linked_lz = DROPSHIP_LZ1 + ceiling = CEILING_UNDERGROUND_METAL_ALLOW_CAS /area/strata/ag/interior/mining_outpost/central - name = "Mining Outpost Central Hallway" + name = "Mining Outpost Central" icon_state = "dorms_0" + ceiling = CEILING_GLASS /area/strata/ag/interior/mining_outpost/south_dormitories name = "Mining Outpost South Dormitories" icon_state = "dorms_3" + ceiling = CEILING_GLASS /area/strata/ag/interior/mining_outpost/maintenance name = "Mining Outpost Dormitory Maintenance" icon_state = "outpost_maint" -/area/strata/ag/interior/mining_outpost/hallways - name = "Mining Outpost Hallways" - icon_state = "outpost_admin_3" - minimap_color = MINIMAP_AREA_GLASS - ceiling = CEILING_GLASS - /area/strata/ag/interior/mining_outpost/hive name = "Mining Outpost Dormitory Thermal Storage" icon_state = "dorms_beno" @@ -330,6 +328,7 @@ EXTERIOR is FUCKING FREEZING, and refers to areas out in the open and or exposed /area/strata/ag/interior/mining_outpost/canteen name = "Mining Outpost Dormitory Canteen" icon_state = "dorms_canteen" + ceiling = CEILING_GLASS /area/strata/ag/interior/mining_outpost/flight_control name = "Mining Outpost Flight Control" @@ -347,11 +346,13 @@ EXTERIOR is FUCKING FREEZING, and refers to areas out in the open and or exposed icon_state = "offices" minimap_color = MINIMAP_AREA_COMMAND ceiling = CEILING_UNDERGROUND_METAL_ALLOW_CAS + linked_lz = DROPSHIP_LZ1 /area/strata/ag/interior/outside/wooden_hospital name = "Wooden Hospital - Hospital Proper" icon_state = "cabin3" minimap_color = MINIMAP_AREA_CAVES + unoviable_timer = FALSE /area/strata/ag/interior/mountain name = "Outside mountain" @@ -388,6 +389,7 @@ EXTERIOR is FUCKING FREEZING, and refers to areas out in the open and or exposed name = "Do not use." icon_state = "outpost_engi_3" minimap_color = MINIMAP_AREA_ENGI + linked_lz = DROPSHIP_LZ2 /area/strata/ag/interior/outside/engineering/parts_storage name = "Engineering Parts Storage" @@ -415,6 +417,7 @@ EXTERIOR is FUCKING FREEZING, and refers to areas out in the open and or exposed icon_state = "hive_1" ceiling = CEILING_UNDERGROUND_BLOCK_CAS minimap_color = MINIMAP_AREA_CAVES_DEEP + unoviable_timer = FALSE //-Underground Dorms @@ -431,21 +434,26 @@ EXTERIOR is FUCKING FREEZING, and refers to areas out in the open and or exposed /area/strata/ug/interior/outpost/underground_dorms/sec1 name = "Underground Security Dorm #1" + unoviable_timer = FALSE /area/strata/ug/interior/outpost/underground_dorms/sec2 name = "Underground Security Dorm #2" + unoviable_timer = FALSE /area/strata/ug/interior/outpost/underground_dorms/admin1 name = "Underground General Staff Dorm #1" /area/strata/ug/interior/outpost/underground_dorms/admin2 name = "Underground General Staff Dorm #2" + unoviable_timer = FALSE /area/strata/ug/interior/outpost/underground_dorms/admin3 name = "Underground General Staff Dorm #3" + unoviable_timer = FALSE /area/strata/ug/interior/outpost/underground_dorms/admin4 name = "Underground General Staff Dorm #4" + unoviable_timer = FALSE /area/strata/ug/interior/outpost/underground_dorms/med1 name = "Underground Medical Dorm #1" @@ -472,6 +480,7 @@ EXTERIOR is FUCKING FREEZING, and refers to areas out in the open and or exposed /area/strata/ug/interior/jungle/carplake name = "Do not use." icon_state = "ug_jung_1" + unoviable_timer = FALSE /area/strata/ug/interior/jungle/carplake/north name = "Deep Jungle - North of Carp Lake" @@ -488,10 +497,12 @@ EXTERIOR is FUCKING FREEZING, and refers to areas out in the open and or exposed /area/strata/ug/interior/jungle/platform/south name = "Deep Jungle - South of Underground Platform" icon_state = "ug_jung_4" + unoviable_timer = FALSE /area/strata/ug/interior/jungle/platform/east name = "Deep Jungle - East of Underground Platform" icon_state = "ug_jung_0" + unoviable_timer = FALSE /area/strata/ug/interior/jungle/structures name = "Do not use." @@ -502,6 +513,7 @@ EXTERIOR is FUCKING FREEZING, and refers to areas out in the open and or exposed icon_state = "ug_jung_2" name = "Deep Jungle - Classified Research Station" minimap_color = MINIMAP_AREA_RESEARCH + unoviable_timer = FALSE /area/strata/ug/interior/jungle/structures/research/south icon_state = "ug_jung_3" @@ -522,6 +534,7 @@ EXTERIOR is FUCKING FREEZING, and refers to areas out in the open and or exposed icon_state = "ug_jung_5" name = "Deep Jungle - Planetary Core Monitoring" minimap_color = MINIMAP_AREA_CAVES_STRUCTURE + unoviable_timer = FALSE /area/strata/ug/interior/jungle/structures/monitoring/west icon_state = "ug_jung_6" @@ -541,10 +554,12 @@ EXTERIOR is FUCKING FREEZING, and refers to areas out in the open and or exposed /area/strata/ug/interior/jungle/structures/ruin icon_state = "ug_jung_mine_4" name = "Deep Jungle - Ancient Dorms" + unoviable_timer = FALSE /area/strata/ug/interior/jungle/tearlake name = "Deep Jungle - Weeping Pool" icon_state = "ug_jung_3" + unoviable_timer = FALSE //-Others diff --git a/code/game/area/varadero.dm b/code/game/area/varadero.dm index b0e5d283fdcd..f54106f67bfe 100644 --- a/code/game/area/varadero.dm +++ b/code/game/area/varadero.dm @@ -17,7 +17,7 @@ name = "New Varadero - Dropship Alamo Landing Zone" icon_state = "shuttle" icon = 'icons/turf/area_varadero.dmi' - is_resin_allowed = FALSE + linked_lz = DROPSHIP_LZ1 minimap_color = MINIMAP_AREA_LZ @@ -25,7 +25,7 @@ name = "New Varadero - Dropship Normandy Landing Zone" icon_state = "shuttle2" icon = 'icons/turf/area_varadero.dmi' - is_resin_allowed = FALSE + linked_lz = DROPSHIP_LZ2 minimap_color = MINIMAP_AREA_LZ //Parent areas @@ -51,7 +51,7 @@ /area/varadero/interior/comms1 name = "New Varadero - Cargo Generator" - is_resin_allowed = FALSE + linked_lz = DROPSHIP_LZ1 icon_state = "comms1" minimap_color = MINIMAP_AREA_ENGI_CAVE @@ -59,15 +59,17 @@ name = "New Varadero - Communications Project Site" icon_state = "comms2" minimap_color = MINIMAP_AREA_ENGI_CAVE + linked_lz = DROPSHIP_LZ2 /area/varadero/interior/comms3 name = "New Varadero - Engineering Communications" icon_state = "comms3" minimap_color = MINIMAP_AREA_ENGI_CAVE + linked_lz = DROPSHIP_LZ2 /area/varadero/exterior/comms4 name = "New Varadero - Walkway Extension" - is_resin_allowed = FALSE + linked_lz = DROPSHIP_LZ1 icon_state = "comms4" minimap_color = MINIMAP_AREA_ENGI_CAVE @@ -98,21 +100,21 @@ /area/varadero/exterior/lz1_near name = "New Varadero - Pontoon Airfield" icon_state = "lz1" - is_resin_allowed = FALSE + linked_lz = DROPSHIP_LZ1 minimap_color = MINIMAP_AREA_LZ is_landing_zone = TRUE /area/varadero/exterior/lz2_near name = "New Varadero - Palm Airfield" icon_state = "lz2" - is_resin_allowed = FALSE + linked_lz = DROPSHIP_LZ2 minimap_color = MINIMAP_AREA_LZ is_landing_zone = TRUE /area/varadero/exterior/pontoon_beach name = "New Varadero - Rockabilly Beach" icon_state = "varadero0" - is_resin_allowed = FALSE + linked_lz = list(DROPSHIP_LZ1, DROPSHIP_LZ2) minimap_color = MINIMAP_AREA_JUNGLE /area/varadero/exterior/pontoon_beach/lz @@ -120,7 +122,7 @@ /area/varadero/exterior/eastbeach name = "New Varadero - East Beach" - is_resin_allowed = FALSE + linked_lz = DROPSHIP_LZ2 icon_state = "varadero1" minimap_color = MINIMAP_AREA_JUNGLE @@ -136,7 +138,7 @@ /area/varadero/exterior/eastocean name = "New Varadero - East Ocean" - is_resin_allowed = FALSE + linked_lz = DROPSHIP_LZ2 flags_area = AREA_NOTUNNEL icon_state = "varadero2" minimap_color = MINIMAP_AREA_CONTESTED_ZONE @@ -154,14 +156,14 @@ /area/varadero/interior/beach_bar name = "New Varadero - Beach Bar" icon_state = "varadero4" - is_resin_allowed = FALSE + linked_lz = list(DROPSHIP_LZ1, DROPSHIP_LZ2) minimap_color = MINIMAP_AREA_JUNGLE sound_environment = SOUND_ENVIRONMENT_ROOM /area/varadero/interior/dock_control name = "New Varadero - Dock Control" icon_state = "varadero3" - is_resin_allowed = FALSE + linked_lz = DROPSHIP_LZ1 minimap_color = MINIMAP_AREA_JUNGLE sound_environment = SOUND_ENVIRONMENT_ROOM is_landing_zone = TRUE @@ -169,7 +171,7 @@ /area/varadero/interior/cargo name = "New Varadero - Cargo" icon_state = "req0" - is_resin_allowed = FALSE + linked_lz = DROPSHIP_LZ2 minimap_color = MINIMAP_AREA_ENGI /area/varadero/interior/hall_NW @@ -179,7 +181,7 @@ /area/varadero/interior/hall_N name = "New Varadero - Hallway N" icon_state = "hall2" - is_resin_allowed = FALSE + linked_lz = list(DROPSHIP_LZ1, DROPSHIP_LZ2) /area/varadero/interior/hall_SE name = "New Varadero - Hallway SE" @@ -188,19 +190,20 @@ /area/varadero/interior/chapel name = "New Vardero - Chapel" icon_state = "offices1" - is_resin_allowed = FALSE + linked_lz = DROPSHIP_LZ1 minimap_color = MINIMAP_AREA_COMMAND_CAVE /area/varadero/interior/morgue name = "New Varadero - Morgue" icon_state = "offices0" - is_resin_allowed = FALSE + linked_lz = DROPSHIP_LZ2 minimap_color = MINIMAP_AREA_MEDBAY_CAVE /area/varadero/interior/medical name = "New Varadero - Medical" icon_state = "offices2" minimap_color = MINIMAP_AREA_MEDBAY + linked_lz = list(DROPSHIP_LZ2, DROPSHIP_LZ1) /area/varadero/interior/maintenance name = "New Varadero - Central Maintenance" @@ -209,18 +212,26 @@ /area/varadero/interior/maintenance/north name = "New Varadero - Northern Maintenance" icon_state = "tunnels1" - is_resin_allowed = FALSE + linked_lz = DROPSHIP_LZ1 /area/varadero/interior/maintenance/research name = "New Varadero - Research Maintenance" icon_state = "tunnels1" minimap_color = MINIMAP_AREA_RESEARCH_CAVE + linked_lz = DROPSHIP_LZ1 /area/varadero/interior/maintenance/security - name = "New Varadero - Security Maintenance" + name = "New Varadero - Sec. Maintenance" icon_state = "tunnels2" minimap_color = MINIMAP_AREA_SEC_CAVE +/area/varadero/interior/maintenance/security/north + name = "New Varadero - North Sec. Maintenance" + linked_lz = DROPSHIP_LZ2 + +/area/varadero/interior/maintenance/security/south + name = "New Varadero - South Sec. Maintenance" + /area/varadero/interior/research name = "New Varadero - Research Offices" icon_state = "offices4" @@ -230,6 +241,7 @@ name = "New Varadero - Electrical Annex" icon_state = "req4" minimap_color = MINIMAP_AREA_ENGI + linked_lz = DROPSHIP_LZ2 /area/varadero/interior/toilets name = "New Varadero - Restrooms" @@ -257,18 +269,20 @@ /area/varadero/interior/library name = "New Varadero - Library" icon_state = "offices0" - is_resin_allowed = FALSE + linked_lz = DROPSHIP_LZ1 minimap_color = MINIMAP_AREA_COMMAND_CAVE /area/varadero/interior/court name = "New Varadero - Basketball Court" icon_state = "req4" minimap_color = MINIMAP_AREA_COMMAND_CAVE + linked_lz = list(DROPSHIP_LZ2, DROPSHIP_LZ1) /area/varadero/interior/mess name = "New Varadero - Mess Hall" icon_state = "req2" minimap_color = MINIMAP_AREA_COMMAND_CAVE + linked_lz = DROPSHIP_LZ2 /area/varadero/interior/bunks name = "New Varadero - Level 1 Quarters" @@ -312,7 +326,7 @@ power_equip = FALSE power_environ = FALSE minimap_color = MINIMAP_AREA_RESEARCH_CAVE - + unoviable_timer = FALSE /area/varadero/interior_protected/caves/central name = "New Varadero - Grass Caves" @@ -331,10 +345,10 @@ name = "New Varadero - Southern Maintenance" icon_state = "deepcaves4" minimap_color = MINIMAP_AREA_CAVES + unoviable_timer = FALSE /area/varadero/interior_protected/vessel name = "New Varadero - Unknown Vessel" icon_state = "predship" minimap_color = MINIMAP_AREA_SHIP - - + unoviable_timer = FALSE diff --git a/code/game/gamemodes/cm_initialize.dm b/code/game/gamemodes/cm_initialize.dm index 4cfc02eecad9..3d1b85395438 100644 --- a/code/game/gamemodes/cm_initialize.dm +++ b/code/game/gamemodes/cm_initialize.dm @@ -119,10 +119,10 @@ Additional game mode variables. xeno_starting_num = clamp((GLOB.readied_players/CONFIG_GET(number/xeno_number_divider)), xeno_required_num, INFINITY) //(n, minimum, maximum) surv_starting_num = clamp((GLOB.readied_players/CONFIG_GET(number/surv_number_divider)), 2, 8) //this doesnt run marine_starting_num = length(GLOB.player_list) - xeno_starting_num - surv_starting_num - for(var/datum/squad/sq in GLOB.RoleAuthority.squads) - if(sq) - sq.max_engineers = engi_slot_formula(marine_starting_num) - sq.max_medics = medic_slot_formula(marine_starting_num) + for(var/datum/squad/target_squad in GLOB.RoleAuthority.squads) + if(target_squad) + target_squad.roles_cap[JOB_SQUAD_ENGI] = engi_slot_formula(marine_starting_num) + target_squad.roles_cap[JOB_SQUAD_MEDIC] = medic_slot_formula(marine_starting_num) for(var/i in GLOB.RoleAuthority.roles_by_name) var/datum/job/J = GLOB.RoleAuthority.roles_by_name[i] diff --git a/code/game/gamemodes/cm_process.dm b/code/game/gamemodes/cm_process.dm index d6519bbcd887..2c11af9ca6f9 100644 --- a/code/game/gamemodes/cm_process.dm +++ b/code/game/gamemodes/cm_process.dm @@ -254,7 +254,7 @@ GLOBAL_VAR_INIT(next_admin_bioscan, 30 MINUTES) for(var/mob/living/carbon/human/current_human as anything in GLOB.alive_human_list) if(!(current_human.z && (current_human.z in z_levels) && !istype(current_human.loc, /turf/open/space))) continue - if(current_human.faction in FACTION_LIST_WY || current_human.job == "Corporate Liaison") //The CL is assigned the USCM faction for gameplay purposes + if((current_human.faction in FACTION_LIST_WY) || current_human.job == "Corporate Liaison") //The CL is assigned the USCM faction for gameplay purposes num_WY++ num_headcount++ continue diff --git a/code/game/gamemodes/colonialmarines/colonialmarines.dm b/code/game/gamemodes/colonialmarines/colonialmarines.dm index 14f5397b1f91..073b9ab29106 100644 --- a/code/game/gamemodes/colonialmarines/colonialmarines.dm +++ b/code/game/gamemodes/colonialmarines/colonialmarines.dm @@ -19,6 +19,11 @@ var/list/running_round_stats = list() var/list/lz_smoke = list() + /** + * How long, after first drop, should the resin protection in proximity to the selected LZ last + */ + var/near_lz_protection_delay = 8 MINUTES + //////////////////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////////////////// @@ -140,27 +145,41 @@ var/right = marine_dropship.x + marine_dropship.dwidth + 2 var/z = marine_dropship.z + var/dropship_type = marine_dropship.type + // Bottom left - options += get_valid_sentry_turfs(left, bottom, z, width=5, height=2, structures_to_ignore=structures_to_break) - options += get_valid_sentry_turfs(left, bottom + 2, z, width=2, height=6, structures_to_ignore=structures_to_break) + if(GLOB.sentry_spawns[dropship_type]?[SENTRY_BOTTOM_LEFT]) + options += GLOB.sentry_spawns[dropship_type][SENTRY_BOTTOM_LEFT] + else + options += get_valid_sentry_turfs(left, bottom, z, width=5, height=2, structures_to_ignore=structures_to_break) + options += get_valid_sentry_turfs(left, bottom + 2, z, width=2, height=6, structures_to_ignore=structures_to_break) spawn_lz_sentry(pick(options), structures_to_break) // Bottom right options.Cut() - options += get_valid_sentry_turfs(right-4, bottom, z, width=5, height=2, structures_to_ignore=structures_to_break) - options += get_valid_sentry_turfs(right-1, bottom + 2, z, width=2, height=6, structures_to_ignore=structures_to_break) + if(GLOB.sentry_spawns[dropship_type]?[SENTRY_BOTTOM_RIGHT]) + options += GLOB.sentry_spawns[dropship_type][SENTRY_BOTTOM_RIGHT] + else + options += get_valid_sentry_turfs(right-4, bottom, z, width=5, height=2, structures_to_ignore=structures_to_break) + options += get_valid_sentry_turfs(right-1, bottom + 2, z, width=2, height=6, structures_to_ignore=structures_to_break) spawn_lz_sentry(pick(options), structures_to_break) // Top left options.Cut() - options += get_valid_sentry_turfs(left, top-1, z, width=5, height=2, structures_to_ignore=structures_to_break) - options += get_valid_sentry_turfs(left, top-7, z, width=2, height=6, structures_to_ignore=structures_to_break) + if(GLOB.sentry_spawns[dropship_type]?[SENTRY_TOP_LEFT]) + options += GLOB.sentry_spawns[dropship_type][SENTRY_TOP_LEFT] + else + options += get_valid_sentry_turfs(left, top-1, z, width=5, height=2, structures_to_ignore=structures_to_break) + options += get_valid_sentry_turfs(left, top-7, z, width=2, height=6, structures_to_ignore=structures_to_break) spawn_lz_sentry(pick(options), structures_to_break) // Top right options.Cut() - options += get_valid_sentry_turfs(right-4, top-1, z, width=5, height=2, structures_to_ignore=structures_to_break) - options += get_valid_sentry_turfs(right-1, top-7, z, width=2, height=6, structures_to_ignore=structures_to_break) + if(GLOB.sentry_spawns[dropship_type]?[SENTRY_TOP_RIGHT]) + options += GLOB.sentry_spawns[dropship_type][SENTRY_TOP_RIGHT] + else + options += get_valid_sentry_turfs(right-4, top-1, z, width=5, height=2, structures_to_ignore=structures_to_break) + options += get_valid_sentry_turfs(right-1, top-7, z, width=2, height=6, structures_to_ignore=structures_to_break) spawn_lz_sentry(pick(options), structures_to_break) ///Returns a list of non-dense turfs using the given block arguments ignoring the provided structure types @@ -238,6 +257,69 @@ smoke.time_to_live = rand(1, 5) lz_smoke.Cut() +/// Called during the dropship flight, clears resin and indicates to those in flight that resin near the LZ has been cleared. +/datum/game_mode/colonialmarines/proc/warn_resin_clear(obj/docking_port/mobile/marine_dropship) + clear_proximity_resin() + + var/list/announcement_mobs = list() + for(var/area/area in marine_dropship.shuttle_areas) + for(var/mob/mob in area) + shake_camera(mob, steps = 3, strength = 1) + announcement_mobs += mob + + announcement_helper("Dropship [marine_dropship.name] dispersing [/obj/effect/particle_effect/smoke/weedkiller::name] due to potential biological infestation.", MAIN_AI_SYSTEM, announcement_mobs, 'sound/effects/rocketpod_fire.ogg') + +/** + * Clears any built resin in the areas around the landing zone, + * when the dropship first deploys. + */ +/datum/game_mode/colonialmarines/proc/clear_proximity_resin() + var/datum/cause_data/cause_data = create_cause_data(/obj/effect/particle_effect/smoke/weedkiller::name) + + for(var/area/near_area as anything in GLOB.all_areas) + var/area_lz = near_area.linked_lz + if(!area_lz) + continue + + if(islist(area_lz)) + if(!(active_lz.linked_lz in area_lz)) + continue + + else if(area_lz != active_lz.linked_lz) + continue + + for(var/turf/turf in near_area) + if(turf.density) + if(!istype(turf, /turf/closed/wall)) + continue + var/turf/closed/wall/wall = turf + if(wall.hull) + continue + new /obj/effect/particle_effect/smoke/weedkiller(turf, null, cause_data) + + near_area.purge_weeds() + + addtimer(CALLBACK(src, PROC_REF(allow_proximity_resin)), near_lz_protection_delay) + +/** + * If the area was previously weedable, and this was disabled by the + * LZ proximity, re-enable the weedability + */ +/datum/game_mode/colonialmarines/proc/allow_proximity_resin() + for(var/area/near_area as anything in GLOB.all_areas) + var/area_lz = near_area.linked_lz + if(!area_lz) + continue + + if(area_lz != active_lz.linked_lz) + continue + + if(initial(near_area.is_resin_allowed) == FALSE) + continue + + near_area.is_resin_allowed = TRUE + + #define MONKEYS_TO_TOTAL_RATIO 1/32 /datum/game_mode/colonialmarines/proc/spawn_smallhosts() @@ -403,6 +485,8 @@ /datum/game_mode/colonialmarines/ds_first_drop(obj/docking_port/mobile/marine_dropship) addtimer(CALLBACK(GLOBAL_PROC, GLOBAL_PROC_REF(show_blurb_uscm)), DROPSHIP_DROP_MSG_DELAY) + addtimer(CALLBACK(src, PROC_REF(warn_resin_clear), marine_dropship), DROPSHIP_DROP_FIRE_DELAY) + add_current_round_status_to_end_results("First Drop") clear_lz_hazards() diff --git a/code/game/gamemodes/colonialmarines/xenovsxeno.dm b/code/game/gamemodes/colonialmarines/xenovsxeno.dm index e1672f362731..2a7b29cea5b0 100644 --- a/code/game/gamemodes/colonialmarines/xenovsxeno.dm +++ b/code/game/gamemodes/colonialmarines/xenovsxeno.dm @@ -91,9 +91,9 @@ initialize_post_xenomorph_list(GLOB.xeno_hive_spawns) round_time_lobby = world.time - for(var/area/A in GLOB.all_areas) - if(!(A.is_resin_allowed)) - A.is_resin_allowed = TRUE + for(var/area/cur_area in GLOB.all_areas) + cur_area.is_resin_allowed = TRUE + cur_area.unoviable_timer = FALSE open_podlocks("map_lockdown") diff --git a/code/game/gamemodes/extended/extended_clash.dm b/code/game/gamemodes/extended/extended_clash.dm index e0e526d91afa..ae7e18f36b83 100644 --- a/code/game/gamemodes/extended/extended_clash.dm +++ b/code/game/gamemodes/extended/extended_clash.dm @@ -2,8 +2,7 @@ name = "Faction Clash" config_tag = "Faction Clash" flags_round_type = MODE_THUNDERSTORM|MODE_FACTION_CLASH - toggleable_flags = MODE_NO_SNIPER_SENTRY|MODE_NO_ATTACK_DEAD|MODE_NO_STRIPDRAG_ENEMY|MODE_STRONG_DEFIBS|MODE_BLOOD_OPTIMIZATION|MODE_NO_COMBAT_CAS - taskbar_icon = 'icons/taskbar/gml_hvh.png' + toggleable_flags = MODE_NO_SNIPER_SENTRY|MODE_NO_ATTACK_DEAD|MODE_NO_STRIPDRAG_ENEMY|MODE_STRONG_DEFIBS|MODE_BLOOD_OPTIMIZATION|MODE_NO_COMBAT_CAS|MODE_INDESTRUCTIBLE_SPLINTS|MODE_NO_INTERNAL_BLEEDING /datum/game_mode/extended/faction_clash/get_roles_list() return GLOB.ROLES_FACTION_CLASH diff --git a/code/game/jobs/job/command/cic/captain.dm b/code/game/jobs/job/command/cic/captain.dm index 30fa455beeee..4fae09ce808b 100644 --- a/code/game/jobs/job/command/cic/captain.dm +++ b/code/game/jobs/job/command/cic/captain.dm @@ -32,7 +32,7 @@ return get_desired_status(player.prefs.commander_status, WHITELIST_NORMAL) /datum/job/command/commander/announce_entry_message(mob/living/carbon/human/H) - addtimer(CALLBACK(src, PROC_REF(do_announce_entry_message), H), 1.5 SECONDS) + addtimer(CALLBACK(GLOBAL_PROC, GLOBAL_PROC_REF(all_hands_on_deck), "Attention all hands, [H.get_paygrade(0)] [H.real_name] on deck!"), 1.5 SECONDS) return ..() /datum/job/command/commander/generate_entry_conditions(mob/living/M, whitelist_status) @@ -44,16 +44,6 @@ SIGNAL_HANDLER GLOB.marine_leaders -= JOB_CO -/datum/job/command/commander/proc/do_announce_entry_message(mob/living/carbon/human/H) - all_hands_on_deck("Attention all hands, [H.get_paygrade(0)] [H.real_name] on deck!") - //for(var/i in GLOB.co_secure_boxes) - //var/obj/structure/closet/secure_closet/securecom/S = i - //var/loc_to_spawn = S.opened ? get_turf(S) : S - //var/obj/item/weapon/gun/rifle/m46c/I = new(loc_to_spawn) - //new /obj/item/clothing/suit/storage/marine/MP/CO(loc_to_spawn) - //new /obj/item/clothing/head/helmet/marine/CO(loc_to_spawn) - //I.name_after_co(H, I) - /obj/effect/landmark/start/captain name = JOB_CO icon_state = "co_spawn" diff --git a/code/game/jobs/job/command/cic/executive.dm b/code/game/jobs/job/command/cic/executive.dm index f03c384bbb86..9f2135f5ee52 100644 --- a/code/game/jobs/job/command/cic/executive.dm +++ b/code/game/jobs/job/command/cic/executive.dm @@ -22,6 +22,10 @@ AddTimelock(/datum/job/command/executive, list( JOB_SQUAD_LEADER = 10 HOURS, )) +/datum/job/command/executive/announce_entry_message(mob/living/carbon/human/H) + addtimer(CALLBACK(GLOBAL_PROC, GLOBAL_PROC_REF(all_hands_on_deck), "Attention all hands, [H.get_paygrade(0)] [H.real_name] on deck!"), 1.5 SECONDS) + return ..() + /obj/effect/landmark/start/executive name = JOB_XO icon_state = "xo_spawn" diff --git a/code/game/jobs/job/marine/squad/engineer.dm b/code/game/jobs/job/marine/squad/engineer.dm index a4422572f218..66b667aa133c 100644 --- a/code/game/jobs/job/marine/squad/engineer.dm +++ b/code/game/jobs/job/marine/squad/engineer.dm @@ -8,9 +8,9 @@ entry_message_body = "You have the equipment and skill to build fortifications, reroute power lines, and bunker down. Your squaddies will look to you when it comes to construction in the field of battle." /datum/job/marine/engineer/set_spawn_positions(count) - for(var/datum/squad/sq in GLOB.RoleAuthority.squads) - if(sq) - sq.max_engineers = engi_slot_formula(count) + for(var/datum/squad/target_squad in GLOB.RoleAuthority.squads) + if(target_squad) + target_squad.roles_cap[title] = engi_slot_formula(count) /datum/job/marine/engineer/get_total_positions(latejoin=0) var/slots = engi_slot_formula(get_total_marines()) @@ -21,9 +21,9 @@ total_positions_so_far = slots if(latejoin) - for(var/datum/squad/sq in GLOB.RoleAuthority.squads) - if(sq) - sq.max_engineers = slots + for(var/datum/squad/target_squad in GLOB.RoleAuthority.squads) + if(target_squad) + target_squad.roles_cap[title] = slots return (slots*4) diff --git a/code/game/jobs/job/marine/squad/medic.dm b/code/game/jobs/job/marine/squad/medic.dm index 450d1176658f..9161ee082d8c 100644 --- a/code/game/jobs/job/marine/squad/medic.dm +++ b/code/game/jobs/job/marine/squad/medic.dm @@ -8,9 +8,9 @@ entry_message_body = "You tend the wounds of your squad mates and make sure they are healthy and active. You may not be a fully-fledged doctor, but you stand between life and death when it matters." /datum/job/marine/medic/set_spawn_positions(count) - for(var/datum/squad/sq in GLOB.RoleAuthority.squads) - if(sq) - sq.max_medics = medic_slot_formula(count) + for(var/datum/squad/target_squad in GLOB.RoleAuthority.squads) + if(target_squad) + target_squad.roles_cap[title] = medic_slot_formula(count) /datum/job/marine/medic/get_total_positions(latejoin=0) var/slots = medic_slot_formula(get_total_marines()) @@ -21,9 +21,9 @@ total_positions_so_far = slots if(latejoin) - for(var/datum/squad/sq in GLOB.RoleAuthority.squads) - if(sq) - sq.max_medics = slots + for(var/datum/squad/target_squad in GLOB.RoleAuthority.squads) + if(target_squad) + target_squad.roles_cap[title] = slots return (slots*4) diff --git a/code/game/jobs/job/marine/squads.dm b/code/game/jobs/job/marine/squads.dm index 26cca9019639..79f2be855447 100644 --- a/code/game/jobs/job/marine/squads.dm +++ b/code/game/jobs/job/marine/squads.dm @@ -43,21 +43,20 @@ var/list/access = list() /// Can use any squad vendor regardless of squad connection var/omni_squad_vendor = FALSE - /// maximum # of engineers allowed in the squad - var/max_engineers = 3 - /// maximum # of squad medics allowed in the squad - var/max_medics = 4 - /// maximum # of specs allowed in the squad - var/max_specialists = 1 - /// maximum # of fireteam leaders allowed in the suqad - var/max_tl = 2 - /// maximum # of smartgunners allowed in the squad - var/max_smartgun = 1 - /// maximum # of squad leaders allowed in the squad - var/max_leaders = 1 + /// Squad roles max caps per role list + var/list/roles_cap = list( + JOB_SQUAD_MARINE = null, + JOB_SQUAD_ENGI = 3, + JOB_SQUAD_MEDIC = 4, + JOB_SQUAD_SMARTGUN = 1, + JOB_SQUAD_SPECIALIST = 1, + JOB_SQUAD_TEAM_LEADER = 2, + JOB_SQUAD_LEADER = 1, + ) + /// Squad roles actual number of players list + var/list/roles_in = list() /// Squad headsets default radio frequency var/radio_freq = 1461 - /// Whether this squad can be used by marines var/usable = FALSE /// Whether this squad can be picked at roundstart @@ -88,12 +87,6 @@ ) //3 FTs where references to marines stored. var/list/squad_info_data = list() - var/num_engineers = 0 - var/num_medics = 0 - var/num_leaders = 0 - var/num_smartgun = 0 - var/num_specialists = 0 - var/num_tl = 0 var/count = 0 //Current # in the squad var/list/marines_list = list() // list of mobs (or name, not always a mob ref) in that squad. @@ -110,10 +103,14 @@ var/minimap_color = MINIMAP_SQUAD_UNKNOWN + ///Icon for the background of minimap icon + var/background_icon = "background" + ///Should we add the name of our squad in front of their name? Ex: Alpha Hospital Corpsman var/prepend_squad_name_to_assignment = TRUE + /datum/squad/marine name = "Root" usable = TRUE @@ -128,6 +125,7 @@ access = list(ACCESS_MARINE_ALPHA) radio_freq = ALPHA_FREQ minimap_color = MINIMAP_SQUAD_ALPHA + background_icon = "background_alpha" /datum/squad/marine/bravo name = SQUAD_MARINE_2 @@ -136,6 +134,7 @@ access = list(ACCESS_MARINE_BRAVO) radio_freq = BRAVO_FREQ minimap_color = MINIMAP_SQUAD_BRAVO + background_icon = "background_bravo" /datum/squad/marine/charlie name = SQUAD_MARINE_3 @@ -144,6 +143,7 @@ access = list(ACCESS_MARINE_CHARLIE) radio_freq = CHARLIE_FREQ minimap_color = MINIMAP_SQUAD_CHARLIE + background_icon = "background_charlie" /datum/squad/marine/delta name = SQUAD_MARINE_4 @@ -152,6 +152,7 @@ access = list(ACCESS_MARINE_DELTA) radio_freq = DELTA_FREQ minimap_color = MINIMAP_SQUAD_DELTA + background_icon = "background_delta" /datum/squad/marine/echo name = SQUAD_MARINE_5 @@ -161,6 +162,7 @@ radio_freq = ECHO_FREQ omni_squad_vendor = TRUE minimap_color = MINIMAP_SQUAD_ECHO + background_icon = "background_echo" active = FALSE roundstart = FALSE @@ -172,6 +174,7 @@ chat_color = "#c47a50" access = list(ACCESS_MARINE_ALPHA, ACCESS_MARINE_BRAVO, ACCESS_MARINE_CHARLIE, ACCESS_MARINE_DELTA) minimap_color = MINIMAP_SQUAD_FOXTROT + background_icon = "background_foxtrot" omni_squad_vendor = TRUE radio_freq = CRYO_FREQ @@ -186,16 +189,20 @@ equipment_color = "#053818" minimap_color = MINIMAP_SQUAD_INTEL radio_freq = INTEL_FREQ + background_icon = "background_intel" roundstart = FALSE prepend_squad_name_to_assignment = FALSE - max_engineers = 0 - max_medics = 0 - max_specialists = 0 - max_tl = 0 - max_smartgun = 0 - max_leaders = 0 + roles_cap = list( + JOB_SQUAD_MARINE = null, + JOB_SQUAD_ENGI = 0, + JOB_SQUAD_MEDIC = 0, + JOB_SQUAD_SMARTGUN = 0, + JOB_SQUAD_SPECIALIST = 0, + JOB_SQUAD_TEAM_LEADER = 0, + JOB_SQUAD_LEADER = 0, + ) /datum/squad/marine/sof name = SQUAD_SOF @@ -205,6 +212,7 @@ squad_type = "Team" lead_icon = "soctl" minimap_color = MINIMAP_SQUAD_SOF + background_icon = "background_sof" active = FALSE roundstart = FALSE @@ -216,6 +224,7 @@ chat_color = "#553EB2" radio_freq = CBRN_FREQ minimap_color = "#3B2A7B" + background_icon = "background_cbrn" active = FALSE roundstart = FALSE @@ -227,6 +236,7 @@ chat_color = "#32CD32" radio_freq = FORECON_FREQ minimap_color = "#32CD32" + background_icon = "background_forecon" active = FALSE roundstart = FALSE @@ -238,6 +248,7 @@ chat_color = "#5a2c2c" radio_freq = SOF_FREQ minimap_color = "#5a2c2c" + background_icon = "background_civillian" active = FALSE roundstart = FALSE @@ -277,6 +288,7 @@ chat_color = "#c47a50" squad_type = "Team" locked = TRUE + //############################### /datum/squad/pmc name = "Root" @@ -340,15 +352,15 @@ break /// Sets an overwatch officer for the squad, returning TRUE on success -/datum/squad/proc/assume_overwatch(mob/M) +/datum/squad/proc/assume_overwatch(mob/target_mob) var/mob/previous if(overwatch_officer) - if(overwatch_officer == M) + if(overwatch_officer == target_mob) return FALSE previous = overwatch_officer overwatch_officer = null clear_ref_tracking(previous) - overwatch_officer = M + overwatch_officer = target_mob RegisterSignal(overwatch_officer, COMSIG_PARENT_QDELETING, PROC_REF(personnel_deleted), override = TRUE) return TRUE @@ -362,30 +374,31 @@ return TRUE /// Clear deletion signal as needed for mob - to call *after* removal -/datum/squad/proc/clear_ref_tracking(mob/M) - if(!M) return FALSE - if(M in marines_list) +/datum/squad/proc/clear_ref_tracking(mob/target_mob) + if(!target_mob) return FALSE - if(overwatch_officer == M) + if(target_mob in marines_list) return FALSE - UnregisterSignal(M, COMSIG_PARENT_QDELETING) + if(overwatch_officer == target_mob) + return FALSE + UnregisterSignal(target_mob, COMSIG_PARENT_QDELETING) return TRUE /// Clear references in squad listing upon deletion. Zap also erases the kept records. /// NOTE: zap will be set true for a forced COMSIG_PARENT_QDELETING -/datum/squad/proc/personnel_deleted(mob/M, zap = FALSE) +/datum/squad/proc/personnel_deleted(mob/target_mob, zap = FALSE) SIGNAL_HANDLER - if(M == overwatch_officer) + if(target_mob == overwatch_officer) overwatch_officer = null - if(M == squad_leader) + if(target_mob == squad_leader) squad_leader = null - SStracking.stop_tracking(tracking_id, M) + SStracking.stop_tracking(tracking_id, target_mob) if(zap) - marines_list.Remove(M) + marines_list.Remove(target_mob) return - var/idx = marines_list.Find(M) + var/idx = marines_list.Find(target_mob) if(idx) - marines_list[idx] = M.name // legacy behavior, replace mob ref index by name. very weird + marines_list[idx] = target_mob.name // legacy behavior, replace mob ref index by name. very weird /* * Send a text message to the squad members following legacy overwatch usage @@ -411,9 +424,9 @@ if(leader_only) targets = list(squad_leader) else - for(var/mob/M in marines_list) - if(!M.stat && M.client) - targets += M.client + for(var/mob/target_mob in marines_list) + if(!target_mob.stat && target_mob.client) + targets += target_mob.client if(displayed_icon) message = "[icon2html(displayed_icon, targets, dir = null)] [message]" @@ -451,73 +464,64 @@ to_chat(SL, "[SPAN_BLUE("SL Overwatch: [nametext][text]")]", type = MESSAGE_TYPE_RADIO) return else - for(var/mob/living/carbon/human/M in marines_list) - if(!M.stat && M.client) //Only living and connected people in our squad + for(var/mob/living/carbon/human/target_mob in marines_list) + if(!target_mob.stat && target_mob.client) //Only living and connected people in our squad if(plus_name) - M << sound('sound/effects/tech_notification.ogg') - to_chat(M, "[SPAN_BLUE("Overwatch: [nametext][text]")]", type = MESSAGE_TYPE_RADIO) + target_mob << sound('sound/effects/tech_notification.ogg') + to_chat(target_mob, "[SPAN_BLUE("Overwatch: [nametext][text]")]", type = MESSAGE_TYPE_RADIO) //Straight-up insert a marine into a squad. //This sets their ID, increments the total count, and so on. Everything else is done in job_controller.dm. //So it does not check if the squad is too full already, or randomize it, etc. -/datum/squad/proc/put_marine_in_squad(mob/living/carbon/human/M, obj/item/card/id/ID) - - if(!istype(M)) +/datum/squad/proc/put_marine_in_squad(mob/living/carbon/human/target_mob, obj/item/card/id/id_card) + if(!istype(target_mob)) return FALSE //Logic - if(!src.usable) + if(!usable) return FALSE - if(!M.job) + if(!target_mob.job) return FALSE //Not yet - if(M.assigned_squad) + if(target_mob.assigned_squad) return FALSE //already in a squad - var/obj/item/card/id/C = ID - if(!C) - C = M.get_idcard() - if(!C) - C = M.get_active_hand() - if(!istype(C)) + if(!id_card) + id_card = target_mob.wear_id + if(!id_card) + id_card = target_mob.get_active_hand() + + if(!istype(id_card)) return FALSE //No ID found - var/assignment = M.job + var/assignment = target_mob.job var/paygrade var/list/extra_access = list() - switch(GET_DEFAULT_ROLE(M.job)) + var/mob_role = GET_DEFAULT_ROLE(target_mob.job) + switch(mob_role) if(JOB_SQUAD_ENGI) assignment = JOB_SQUAD_ENGI - num_engineers++ - C.claimedgear = FALSE + id_card.claimedgear = FALSE if(JOB_SQUAD_MEDIC) assignment = JOB_SQUAD_MEDIC - num_medics++ - C.claimedgear = FALSE + id_card.claimedgear = FALSE if(JOB_SQUAD_SPECIALIST) assignment = JOB_SQUAD_SPECIALIST - num_specialists++ if(JOB_SQUAD_TEAM_LEADER) assignment = JOB_SQUAD_TEAM_LEADER - num_tl++ - M.important_radio_channels += radio_freq + target_mob.important_radio_channels += radio_freq if(JOB_SQUAD_SMARTGUN) assignment = JOB_SQUAD_SMARTGUN - num_smartgun++ if(JOB_SQUAD_LEADER) if(squad_leader && GET_DEFAULT_ROLE(squad_leader.job) != JOB_SQUAD_LEADER) //field promoted SL var/old_lead = squad_leader demote_squad_leader() //replaced by the real one SStracking.start_tracking(tracking_id, old_lead) assignment = squad_type + " Leader" - squad_leader = M - SStracking.set_leader(tracking_id, M) - SStracking.start_tracking("marine_sl", M) - - if(GET_DEFAULT_ROLE(M.job) == JOB_SQUAD_LEADER) //field promoted SL don't count as real ones - num_leaders++ - + squad_leader = target_mob + SStracking.set_leader(tracking_id, target_mob) + SStracking.start_tracking("marine_sl", target_mob) if(JOB_MARINE_RAIDER) assignment = JOB_MARINE_RAIDER if(name == JOB_MARINE_RAIDER) @@ -530,97 +534,88 @@ demote_squad_leader() //replaced by the real one SStracking.start_tracking(tracking_id, old_lead) assignment = squad_type + " Leader" - squad_leader = M - SStracking.set_leader(tracking_id, M) - SStracking.start_tracking("marine_sl", M) - if(GET_DEFAULT_ROLE(M.job) == JOB_MARINE_RAIDER_SL) //field promoted SL don't count as real ones - num_leaders++ + squad_leader = target_mob + SStracking.set_leader(tracking_id, target_mob) + SStracking.start_tracking("marine_sl", target_mob) + mob_role = JOB_SQUAD_LEADER if(JOB_MARINE_RAIDER_CMD) assignment = JOB_MARINE_RAIDER_CMD if(name == JOB_MARINE_RAIDER) assignment = "Officer" - RegisterSignal(M, COMSIG_PARENT_QDELETING, PROC_REF(personnel_deleted), override = TRUE) + if(mob_role in roles_cap) + roles_in[mob_role]++ + + RegisterSignal(target_mob, COMSIG_PARENT_QDELETING, PROC_REF(personnel_deleted), override = TRUE) if(assignment != JOB_SQUAD_LEADER) - SStracking.start_tracking(tracking_id, M) + SStracking.start_tracking(tracking_id, target_mob) count++ //Add up the tally. This is important in even squad distribution. - if(GET_DEFAULT_ROLE(M.job) != JOB_SQUAD_MARINE) - log_admin("[key_name(M)] has been assigned as [name] [M.job]") // we don't want to spam squad marines but the others are useful + if(GET_DEFAULT_ROLE(target_mob.job) != JOB_SQUAD_MARINE) + log_admin("[key_name(target_mob)] has been assigned as [name] [target_mob.job]") // we don't want to spam squad marines but the others are useful - marines_list += M - M.assigned_squad = src //Add them to the squad - C.access += (src.access + extra_access) //Add their squad access to their ID + marines_list += target_mob + target_mob.assigned_squad = src //Add them to the squad + id_card.access += (src.access + extra_access) //Add their squad access to their ID if(prepend_squad_name_to_assignment) - C.assignment = "[name] [assignment]" + id_card.assignment = "[name] [assignment]" else - C.assignment = assignment + id_card.assignment = assignment - SEND_SIGNAL(M, COMSIG_SET_SQUAD) + SEND_SIGNAL(target_mob, COMSIG_SET_SQUAD) if(paygrade) - C.paygrade = paygrade - C.name = "[C.registered_name]'s ID Card ([C.assignment])" + id_card.paygrade = paygrade + id_card.name = "[id_card.registered_name]'s ID Card ([id_card.assignment])" - var/obj/item/device/radio/headset/almayer/marine/headset = locate() in list(M.wear_l_ear, M.wear_r_ear) + var/obj/item/device/radio/headset/almayer/marine/headset = locate() in list(target_mob.wear_l_ear, target_mob.wear_r_ear) if(headset && radio_freq) headset.set_frequency(radio_freq) - M.update_inv_head() - M.update_inv_wear_suit() - M.update_inv_gloves() + target_mob.update_inv_head() + target_mob.update_inv_wear_suit() + target_mob.update_inv_gloves() return TRUE //proc used by the overwatch console to transfer marine to another squad -/datum/squad/proc/remove_marine_from_squad(mob/living/carbon/human/M, obj/item/card/id/ID) - if(M.assigned_squad != src) +/datum/squad/proc/remove_marine_from_squad(mob/living/carbon/human/target_mob, obj/item/card/id/id_card) + if(target_mob.assigned_squad != src) return //not assigned to the correct squad - var/obj/item/card/id/C = ID - if(!istype(C)) - C = M.get_idcard() - if(!istype(C)) + if(!istype(id_card)) + id_card = target_mob.get_idcard() + if(!istype(id_card)) return FALSE //Abort, no ID found - C.access -= src.access - C.assignment = M.job - C.name = "[C.registered_name]'s ID Card ([C.assignment])" + id_card.access -= src.access + id_card.assignment = target_mob.job + id_card.name = "[id_card.registered_name]'s ID Card ([id_card.assignment])" - forget_marine_in_squad(M) + forget_marine_in_squad(target_mob) //gracefully remove a marine from squad system, alive, dead or otherwise -/datum/squad/proc/forget_marine_in_squad(mob/living/carbon/human/M) - if(M.assigned_squad.squad_leader == M) - if(GET_DEFAULT_ROLE(M.job) != JOB_SQUAD_LEADER) //a field promoted SL, not a real one +/datum/squad/proc/forget_marine_in_squad(mob/living/carbon/human/target_mob) + if(target_mob.assigned_squad.squad_leader == target_mob) + if(GET_DEFAULT_ROLE(target_mob.job) != JOB_SQUAD_LEADER) //a field promoted SL, not a real one demote_squad_leader() else - M.assigned_squad.squad_leader = null + target_mob.assigned_squad.squad_leader = null update_squad_leader() else - if(M.assigned_fireteam) - if(fireteam_leaders[M.assigned_fireteam] == M) - unassign_ft_leader(M.assigned_fireteam, TRUE, FALSE) - unassign_fireteam(M, FALSE) + if(target_mob.assigned_fireteam) + if(fireteam_leaders[target_mob.assigned_fireteam] == target_mob) + unassign_ft_leader(target_mob.assigned_fireteam, TRUE, FALSE) + unassign_fireteam(target_mob, FALSE) count-- - marines_list -= M - personnel_deleted(M, zap = TRUE) // Free all refs and Zap it entierly as this is on purpose - clear_ref_tracking(M) + marines_list -= target_mob + personnel_deleted(target_mob, zap = TRUE) // Free all refs and Zap it entierly as this is on purpose + clear_ref_tracking(target_mob) update_free_mar() - M.assigned_squad = null + target_mob.assigned_squad = null - switch(GET_DEFAULT_ROLE(M.job)) - if(JOB_SQUAD_ENGI) - num_engineers-- - if(JOB_SQUAD_MEDIC) - num_medics-- - if(JOB_SQUAD_SPECIALIST) - num_specialists-- - if(JOB_SQUAD_SMARTGUN) - num_smartgun-- - if(JOB_SQUAD_TEAM_LEADER) - num_tl-- - if(JOB_SQUAD_LEADER) - num_leaders-- + var/slot_check = GET_DEFAULT_ROLE(target_mob.job) + if(slot_check && !isnull(roles_cap[slot_check])) + roles_in[slot_check]-- //proc for demoting current Squad Leader /datum/squad/proc/demote_squad_leader(leader_killed) @@ -781,13 +776,13 @@ SStracking.start_tracking(new_id, H) //moved the main proc for ft management from human.dm here to make it support both examine and squad info way to edit fts -/datum/squad/proc/manage_fireteams(mob/living/carbon/human/target) - var/obj/item/card/id/ID = target.get_idcard() +/datum/squad/proc/manage_fireteams(mob/living/carbon/human/target_mob) + var/obj/item/card/id/ID = target_mob.get_idcard() if(!ID || !(ID.rank in GLOB.ROLES_MARINES)) return - if(ID.rank == JOB_SQUAD_LEADER || squad_leader == target) //if SL/aSL are chosen + if(ID.rank == JOB_SQUAD_LEADER || squad_leader == target_mob) //if SL/aSL are chosen var/choice = tgui_input_list(squad_leader, "Manage Fireteams and Team leaders.", "Fireteams Management", list("Cancel", "Unassign Fireteam 1 Leader", "Unassign Fireteam 2 Leader", "Unassign Fireteam 3 Leader", "Unassign all Team Leaders")) - if(target.assigned_squad != src) + if(target_mob.assigned_squad != src) return //in case they somehow change squad while SL is choosing if(squad_leader.is_mob_incapacitated() || !hasHUD(squad_leader,"squadleader")) return //if SL got knocked out or demoted while choosing @@ -797,77 +792,77 @@ if("Unassign Fireteam 3 Leader") unassign_ft_leader("FT3", TRUE) if("Unassign all Team Leaders") unassign_all_ft_leaders() else return - target.hud_set_squad() + target_mob.hud_set_squad() return - if(target.assigned_fireteam) - if(fireteam_leaders[target.assigned_fireteam] == target) //Check if person already is FT leader + if(target_mob.assigned_fireteam) + if(fireteam_leaders[target_mob.assigned_fireteam] == target_mob) //Check if person already is FT leader var/choice = tgui_input_list(squad_leader, "Manage Fireteams and Team leaders.", "Fireteams Management", list("Cancel", "Unassign from Team Leader position")) - if(target.assigned_squad != src) + if(target_mob.assigned_squad != src) return if(squad_leader.is_mob_incapacitated() || !hasHUD(squad_leader,"squadleader")) return if(choice == "Unassign from Team Leader position") - unassign_ft_leader(target.assigned_fireteam, TRUE) - target.hud_set_squad() + unassign_ft_leader(target_mob.assigned_fireteam, TRUE) + target_mob.hud_set_squad() return var/choice = tgui_input_list(squad_leader, "Manage Fireteams and Team leaders.", "Fireteams Management", list("Remove from Fireteam", "Assign to Fireteam 1", "Assign to Fireteam 2", "Assign to Fireteam 3", "Assign as Team Leader")) - if(target.assigned_squad != src) + if(target_mob.assigned_squad != src) return if(squad_leader.is_mob_incapacitated() || !hasHUD(squad_leader,"squadleader")) return switch(choice) - if("Remove from Fireteam") unassign_fireteam(target) - if("Assign to Fireteam 1") assign_fireteam("FT1", target) - if("Assign to Fireteam 2") assign_fireteam("FT2", target) - if("Assign to Fireteam 3") assign_fireteam("FT3", target) - if("Assign as Team Leader") assign_ft_leader(target.assigned_fireteam, target) + if("Remove from Fireteam") unassign_fireteam(target_mob) + if("Assign to Fireteam 1") assign_fireteam("FT1", target_mob) + if("Assign to Fireteam 2") assign_fireteam("FT2", target_mob) + if("Assign to Fireteam 3") assign_fireteam("FT3", target_mob) + if("Assign as Team Leader") assign_ft_leader(target_mob.assigned_fireteam, target_mob) else return - target.hud_set_squad() + target_mob.hud_set_squad() return var/choice = tgui_input_list(squad_leader, "Manage Fireteams and Team leaders.", "Fireteams Management", list("Cancel", "Assign to Fireteam 1", "Assign to Fireteam 2", "Assign to Fireteam 3")) - if(target.assigned_squad != src) + if(target_mob.assigned_squad != src) return if(squad_leader.is_mob_incapacitated() || !hasHUD(squad_leader,"squadleader")) return switch(choice) - if("Assign to Fireteam 1") assign_fireteam("FT1", target) - if("Assign to Fireteam 2") assign_fireteam("FT2", target) - if("Assign to Fireteam 3") assign_fireteam("FT3", target) + if("Assign to Fireteam 1") assign_fireteam("FT1", target_mob) + if("Assign to Fireteam 2") assign_fireteam("FT2", target_mob) + if("Assign to Fireteam 3") assign_fireteam("FT3", target_mob) else return - target.hud_set_squad() + target_mob.hud_set_squad() return //Managing MIA and KIA statuses for marines -/datum/squad/proc/change_squad_status(mob/living/carbon/human/target) - if(target == squad_leader) +/datum/squad/proc/change_squad_status(mob/living/carbon/human/target_mob) + if(target_mob == squad_leader) return //you can't mark yourself KIA var/choice = tgui_input_list(squad_leader, "Marine status management: M.I.A. for missing marines, K.I.A. for confirmed unrevivable dead.", "Squad Management", list("Cancel", "Remove status", "M.I.A.", "K.I.A.")) - if(target.assigned_squad != src) + if(target_mob.assigned_squad != src) return //in case they somehow change squad while SL is choosing if(squad_leader.is_mob_incapacitated() || !hasHUD(squad_leader,"squadleader")) return //if SL got knocked out or demoted while choosing switch(choice) - if("Remove status") target.squad_status = null + if("Remove status") target_mob.squad_status = null if("M.I.A.") - target.squad_status = choice - to_chat(squad_leader, FONT_SIZE_BIG(SPAN_BLUE("You set [target]'s status as Missing In Action."))) - if(target.stat == CONSCIOUS) - to_chat(target, FONT_SIZE_HUGE(SPAN_BLUE("You were marked as Missing In Action by Squad Leader."))) + target_mob.squad_status = choice + to_chat(squad_leader, FONT_SIZE_BIG(SPAN_BLUE("You set [target_mob]'s status as Missing In Action."))) + if(target_mob.stat == CONSCIOUS) + to_chat(target_mob, FONT_SIZE_HUGE(SPAN_BLUE("You were marked as Missing In Action by Squad Leader."))) if("K.I.A.") - target.squad_status = choice - if(target.assigned_fireteam) - if(fireteam_leaders[target.assigned_fireteam] == target) - unassign_ft_leader(target.assigned_fireteam, TRUE, FALSE) - unassign_fireteam(target, FALSE) - to_chat(squad_leader, FONT_SIZE_BIG(SPAN_BLUE("You set [target]'s status as Killed In Action. If they were Team Leader or in fireteam, they were demoted and unassigned."))) - if(target.stat == CONSCIOUS) - to_chat(target, FONT_SIZE_HUGE(SPAN_BLUE("You were marked as Killed In Action by Squad Leader."))) + target_mob.squad_status = choice + if(target_mob.assigned_fireteam) + if(fireteam_leaders[target_mob.assigned_fireteam] == target_mob) + unassign_ft_leader(target_mob.assigned_fireteam, TRUE, FALSE) + unassign_fireteam(target_mob, FALSE) + to_chat(squad_leader, FONT_SIZE_BIG(SPAN_BLUE("You set [target_mob]'s status as Killed In Action. If they were Team Leader or in fireteam, they were demoted and unassigned."))) + if(target_mob.stat == CONSCIOUS) + to_chat(target_mob, FONT_SIZE_HUGE(SPAN_BLUE("You were marked as Killed In Action by Squad Leader."))) else return - if(target.assigned_fireteam) - update_fireteam(target.assigned_fireteam) + if(target_mob.assigned_fireteam) + update_fireteam(target_mob.assigned_fireteam) else update_free_mar() - target.hud_set_squad() + target_mob.hud_set_squad() return diff --git a/code/game/jobs/role_authority.dm b/code/game/jobs/role_authority.dm index 6801807b9693..2e1b35f5449a 100644 --- a/code/game/jobs/role_authority.dm +++ b/code/game/jobs/role_authority.dm @@ -386,65 +386,35 @@ I hope it's easier to tell what the heck this proc is even doing, unlike previou J.current_positions-- return 1 -/datum/authority/branch/role/proc/free_role_admin(datum/job/J, latejoin = 1, user) //Specific proc that used for admin "Free Job Slots" verb (round tab) - if(!istype(J) || J.total_positions == -1) +/datum/authority/branch/role/proc/free_role_admin(datum/job/job, latejoin = TRUE, user) //Specific proc that used for admin "Free Job Slots" verb (round tab) + if(!istype(job) || job.total_positions == -1) return - if(J.current_positions < 1) //this should be filtered earlier, but we still check just in case - to_chat(user, "There are no [J] job slots occupied.") + if(job.current_positions < 1) //this should be filtered earlier, but we still check just in case + to_chat(user, "There are no [job] job slots occupied.") return //here is the main reason this proc exists - to remove freed squad jobs from squad, //so latejoining person ends in the squad which's job was freed and not random one - var/datum/squad/sq = null - if(GLOB.job_squad_roles.Find(J.title)) + var/datum/squad/squad = null + if(GLOB.job_squad_roles.Find(job.title)) var/list/squad_list = list() - for(sq in GLOB.RoleAuthority.squads) - if(sq.usable) - squad_list += sq - sq = null - sq = input(user, "Select squad you want to free [J.title] slot from.", "Squad Selection") as null|anything in squad_list - if(!sq) + for(squad in GLOB.RoleAuthority.squads) + if(squad.roundstart && squad.usable && squad.name != "Root") + squad_list += squad + squad = null + squad = tgui_input_list(user, "Select squad you want to free [job.title] slot from.", "Squad Selection", squad_list) + if(!squad) return - switch(J.title) - if(JOB_SQUAD_ENGI) - if(sq.num_engineers > 0) - sq.num_engineers-- - else - to_chat(user, "There are no [J.title] slots occupied in [sq.name] Squad.") - return - if(JOB_SQUAD_MEDIC) - if(sq.num_medics > 0) - sq.num_medics-- - else - to_chat(user, "There are no [J.title] slots occupied in [sq.name] Squad.") - return - if(JOB_SQUAD_SPECIALIST) - if(sq.num_specialists > 0) - sq.num_specialists-- - else - to_chat(user, "There are no [J.title] slots occupied in [sq.name] Squad.") - return - if(JOB_SQUAD_SMARTGUN) - if(sq.num_smartgun > 0) - sq.num_smartgun-- - else - to_chat(user, "There are no [J.title] slots occupied in [sq.name] Squad.") - return - if(JOB_SQUAD_TEAM_LEADER) - if(sq.num_tl > 0) - sq.num_tl-- - else - to_chat(user, "There are no [J.title] slots occupied in [sq.name] Squad.") - return - if(JOB_SQUAD_LEADER) - if(sq.num_leaders > 0) - sq.num_leaders-- - else - to_chat(user, "There are no [J.title] slots occupied in [sq.name] Squad.") - return - J.current_positions-- - message_admins("[key_name(user)] freed the [J.title] job slot[sq ? " in [sq.name] Squad" : ""].") - return 1 + + if(squad.roles_in[job.title] > 0) + squad.roles_in[job.title]-- + else + to_chat(user, "There are no [job.title] slots occupied in [squad.name] Squad.") + return + + job.current_positions-- + message_admins("[key_name(user)] freed the [job.title] job slot[squad ? " in [squad.name] Squad" : ""].") + return TRUE /datum/authority/branch/role/proc/modify_role(datum/job/J, amount) if(!istype(J)) @@ -542,188 +512,66 @@ I hope it's easier to tell what the heck this proc is even doing, unlike previou SEND_SIGNAL(new_human, COMSIG_POST_SPAWN_UPDATE) SSround_recording.recorder.track_player(new_human) -//Find which squad has the least population. If all 4 squads are equal it should just use a random one -/datum/authority/branch/role/proc/get_lowest_squad(mob/living/carbon/human/H) - if(!length(squads)) //Something went wrong, our squads aren't set up. - to_world("Warning, something messed up in get_lowest_squad(). No squads set up!") - return null - - - //we make a list of squad that is randomized so alpha isn't always lowest squad. - var/list/squads_copy = squads.Copy() - var/list/mixed_squads = list() - - for(var/i= 1 to length(squads_copy)) - var/datum/squad/S = pick_n_take(squads_copy) - if (S.roundstart && S.usable && S.faction == H.faction && S.name != "Root") - mixed_squads += S - - var/datum/squad/lowest = pick(mixed_squads) - - var/datum/pref_squad_name - if(H && H.client && H.client.prefs.preferred_squad && H.client.prefs.preferred_squad != "None") - pref_squad_name = H.client.prefs.preferred_squad - - for(var/datum/squad/L in mixed_squads) - if(L.usable) - if(pref_squad_name && L.name == pref_squad_name) - lowest = L - break - - - if(!lowest) - to_world("Warning! Bug in get_random_squad()!") - return null - - var/lowest_count = lowest.count - var/current_count = 0 - - if(!pref_squad_name) - //Loop through squads. - for(var/datum/squad/S in mixed_squads) - if(!S) - to_world("Warning: Null squad in get_lowest_squad. Call a coder!") - break //null squad somehow, let's just abort - current_count = S.count //Grab our current squad's # - if(current_count >= (lowest_count - 2)) //Current squad count is not much lower than the chosen one. Skip it. - continue - lowest_count = current_count //We found a winner! This squad is much lower than our default. Make it the new default. - lowest = S //'Select' this squad. - - return lowest //Return whichever squad won the competition. - //This proc is a bit of a misnomer, since there's no actual randomization going on. -/datum/authority/branch/role/proc/randomize_squad(mob/living/carbon/human/H, skip_limit = FALSE) - if(!H) +/datum/authority/branch/role/proc/randomize_squad(mob/living/carbon/human/human, skip_limit = FALSE) + if(!human) return if(!length(squads)) - to_chat(H, "Something went wrong with your squad randomizer! Tell a coder!") + to_chat(human, "Something went wrong with your squad randomizer! Tell a coder!") return //Shit, where's our squad data - if(H.assigned_squad) //Wait, we already have a squad. Get outta here! + if(human.assigned_squad) //Wait, we already have a squad. Get outta here! return - //we make a list of squad that is randomized so alpha isn't always lowest squad. - var/list/squads_copy = squads.Copy() - var/list/mixed_squads = list() - // The following code removes non useable squads from the lists of squads we assign marines too. - for(var/i= 1 to length(squads_copy)) - var/datum/squad/S = pick_n_take(squads_copy) - if (S.roundstart && S.usable && S.faction == H.faction && S.name != "Root") - mixed_squads += S - //Deal with IOs first - if(H.job == JOB_INTEL) + if(human.job == JOB_INTEL) var/datum/squad/intel_squad = get_squad_by_name(SQUAD_MARINE_INTEL) if(!intel_squad || !istype(intel_squad)) //Something went horribly wrong! - to_chat(H, "Something went wrong with randomize_squad()! Tell a coder!") + to_chat(human, "Something went wrong with randomize_squad()! Tell a coder!") return - intel_squad.put_marine_in_squad(H) //Found one, finish up + intel_squad.put_marine_in_squad(human) return - //Deal with non-standards first. - //Non-standards are distributed regardless of squad population. - //If the number of available positions for the job are more than max_whatever, it will break. - //Ie. 8 squad medic jobs should be available, and total medics in squads should be 8. - if(H.job != JOB_SQUAD_MARINE && H.job != "Reinforcements") - var/pref_squad_name - if(H && H.client && H.client.prefs.preferred_squad && H.client.prefs.preferred_squad != "None") - pref_squad_name = H.client.prefs.preferred_squad - - var/datum/squad/lowest - - switch(H.job) - if(JOB_SQUAD_ENGI) - for(var/datum/squad/S in mixed_squads) - if(S.usable && S.roundstart) - if(!skip_limit && S.num_engineers >= S.max_engineers) continue - if(pref_squad_name && S.name == pref_squad_name) - S.put_marine_in_squad(H) //fav squad has a spot for us, no more searching needed. - return - - if(!lowest) - lowest = S - else if(S.num_engineers < lowest.num_engineers) - lowest = S - - if(JOB_SQUAD_MEDIC) - for(var/datum/squad/S in mixed_squads) - if(S.usable && S.roundstart) - if(!skip_limit && S.num_medics >= S.max_medics) continue - if(pref_squad_name && S.name == pref_squad_name) - S.put_marine_in_squad(H) //fav squad has a spot for us. - return - - if(!lowest) - lowest = S - else if(S.num_medics < lowest.num_medics) - lowest = S - - if(JOB_SQUAD_LEADER) - for(var/datum/squad/S in mixed_squads) - if(S.usable && S.roundstart) - if(!skip_limit && S.num_leaders >= S.max_leaders) continue - if(pref_squad_name && S.name == pref_squad_name) - S.put_marine_in_squad(H) //fav squad has a spot for us. - return - - if(!lowest) - lowest = S - else if(S.num_leaders < lowest.num_leaders) - lowest = S - - if(JOB_SQUAD_SPECIALIST) - for(var/datum/squad/S in mixed_squads) - if(S.usable && S.roundstart) - if(!skip_limit && S.num_specialists >= S.max_specialists) continue - if(pref_squad_name && S.name == pref_squad_name) - S.put_marine_in_squad(H) //fav squad has a spot for us. - return - - if(!lowest) - lowest = S - else if(S.num_specialists < lowest.num_specialists) - lowest = S - - if(JOB_SQUAD_TEAM_LEADER) - for(var/datum/squad/S in mixed_squads) - if(S.usable && S.roundstart) - if(!skip_limit && S.num_tl >= S.max_tl) continue - if(pref_squad_name && S.name == pref_squad_name) - S.put_marine_in_squad(H) //fav squad has a spot for us. - return - - if(!lowest) - lowest = S - else if(S.num_tl < lowest.num_tl) - lowest = S - - if(JOB_SQUAD_SMARTGUN) - for(var/datum/squad/S in mixed_squads) - if(S.usable && S.roundstart) - if(!skip_limit && S.num_smartgun >= S.max_smartgun) continue - if(pref_squad_name && S.name == pref_squad_name) - S.put_marine_in_squad(H) //fav squad has a spot for us. - return - - if(!lowest) - lowest = S - else if(S.num_smartgun < lowest.num_smartgun) - lowest = S + var/slot_check + if(human.job != "Reinforcements") + slot_check = GET_DEFAULT_ROLE(human.job) + + //we make a list of squad that is randomized so alpha isn't always lowest squad. + var/list/mixed_squads = list() + for(var/datum/squad/squad in squads) + if(squad.roundstart && squad.usable && squad.faction == human.faction && squad.name != "Root") + mixed_squads += squad + + var/preferred_squad + if(human?.client?.prefs?.preferred_squad) + preferred_squad = human.client.prefs.preferred_squad + + var/datum/squad/lowest + for(var/datum/squad/squad in mixed_squads) + if(slot_check && !isnull(squad.roles_cap[slot_check]) && !skip_limit) + if(squad.roles_in[slot_check] >= squad.roles_cap[slot_check]) + continue + + if(preferred_squad == "None") + if(squad.put_marine_in_squad(human)) + return + + else if(squad.name == preferred_squad) //fav squad has a spot for us, no more searching needed. + if(squad.put_marine_in_squad(human)) + return + if(!lowest) - var/ranpick = rand(1,4) - lowest = mixed_squads[ranpick] - if(lowest) lowest.put_marine_in_squad(H) - else to_chat(H, "Something went badly with randomize_squad()! Tell a coder!") + lowest = squad - else - //Deal with marines. They get distributed to the lowest populated squad. - var/datum/squad/given_squad = get_lowest_squad(H) - if(!given_squad || !istype(given_squad)) //Something went horribly wrong! - to_chat(H, "Something went wrong with randomize_squad()! Tell a coder!") - return - given_squad.put_marine_in_squad(H) //Found one, finish up + else if(slot_check) + if(squad.roles_in[slot_check] < lowest.roles_in[slot_check]) + lowest = squad + + if(!lowest || !lowest.put_marine_in_squad(human)) + to_world("Warning! Bug in get_random_squad()!") + return + return /datum/authority/branch/role/proc/get_caste_by_text(name) var/mob/living/carbon/xenomorph/M @@ -814,23 +662,7 @@ I hope it's easier to tell what the heck this proc is even doing, unlike previou // returns TRUE if transfer_marine's role is at max capacity in the new squad /datum/authority/branch/role/proc/check_squad_capacity(mob/living/carbon/human/transfer_marine, datum/squad/new_squad) - switch(transfer_marine.job) - if(JOB_SQUAD_LEADER) - if(new_squad.num_leaders >= new_squad.max_leaders) - return TRUE - if(JOB_SQUAD_SPECIALIST) - if(new_squad.num_specialists >= new_squad.max_specialists) - return TRUE - if(JOB_SQUAD_ENGI) - if(new_squad.num_engineers >= new_squad.max_engineers) - return TRUE - if(JOB_SQUAD_MEDIC) - if(new_squad.num_medics >= new_squad.max_medics) - return TRUE - if(JOB_SQUAD_SMARTGUN) - if(new_squad.num_smartgun >= new_squad.max_smartgun) - return TRUE - if(JOB_SQUAD_TEAM_LEADER) - if(new_squad.num_tl >= new_squad.max_tl) - return TRUE + if(!isnull(new_squad.roles_cap[transfer_marine.job])) + if(new_squad.roles_in[transfer_marine.job] >= new_squad.roles_cap[transfer_marine.job]) + return TRUE return FALSE diff --git a/code/game/machinery/ARES/apollo_pda.dm b/code/game/machinery/ARES/apollo_pda.dm index 3a6535a9890f..ad070a8e63c7 100644 --- a/code/game/machinery/ARES/apollo_pda.dm +++ b/code/game/machinery/ARES/apollo_pda.dm @@ -14,6 +14,7 @@ var/current_menu = "login" var/last_menu = "off" + var/base_icon_state = "karnak" var/authentication = APOLLO_ACCESS_LOGOUT /// The last person to login. @@ -62,11 +63,11 @@ /obj/item/device/working_joe_pda/update_icon() . = ..() if(last_menu == "off") - icon_state = "karnak_off" + icon_state = "[base_icon_state]_off" else if(current_menu == "login") - icon_state = "karnak_login_anim" + icon_state = "[base_icon_state]_login_anim" else - icon_state = "karnak_on_anim" + icon_state = "[base_icon_state]_on_anim" // ------ Maintenance Controller UI ------ // /obj/item/device/working_joe_pda/attack_self(mob/user) @@ -473,3 +474,9 @@ if(playsound) var/sound = pick('sound/machines/pda_button1.ogg', 'sound/machines/pda_button2.ogg') playsound(src, sound, 15, TRUE) + +/obj/item/device/working_joe_pda/uscm + name = "KN5500/2 PDA" + desc = "A portable interface used by AI technicians, capable of connecting to the local command AI to relay tasking information. Built to withstand a nuclear bomb." + icon_state = "karnak_uscm_off" + base_icon_state = "karnak_uscm" diff --git a/code/game/machinery/autolathe_datums.dm b/code/game/machinery/autolathe_datums.dm index 9c8ee271845d..fcff34a86f8e 100644 --- a/code/game/machinery/autolathe_datums.dm +++ b/code/game/machinery/autolathe_datums.dm @@ -49,7 +49,7 @@ /datum/autolathe/recipe/weldertool name = "blowtorch" - path = /obj/item/tool/weldingtool + path = /obj/item/tool/weldingtool/empty category = AUTOLATHE_CATEGORY_TOOLS /datum/autolathe/recipe/screwdriver diff --git a/code/game/machinery/computer/arcade.dm b/code/game/machinery/computer/arcade.dm index 4f6f4df4ef08..e0eac6e1043c 100644 --- a/code/game/machinery/computer/arcade.dm +++ b/code/game/machinery/computer/arcade.dm @@ -15,16 +15,38 @@ var/enemy_mp = 25 var/gameover = 0 var/blocked = 0 //Player cannot attack/heal while set - var/list/prizes = list( /obj/item/storage/box/MRE = 3, - /obj/item/spacecash/c10 = 4, - /obj/item/ammo_magazine/flamer_tank = 1, - /obj/item/tool/lighter/zippo = 2, - /obj/item/tool/weldingtool = 1, - /obj/item/storage/box/uscm_mre = 2, - /obj/item/device/camera = 2, - /obj/item/device/camera_film = 4, - /obj/item/cell/crap/empty = 3, - /obj/item/tool/hand_labeler = 1 + var/list/prizes = list( /obj/item/tool/lighter/zippo = 4, + /obj/item/spacecash/ewallet = 100, worth = 25, + /obj/item/facepaint/sniper = 4, + /obj/item/toy/gun = 4, + /obj/item/toy/crossbow = 4, + /obj/item/toy/sword = 5, + /obj/item/toy/katana = 1, + /obj/item/toy/spinningtoy = 2, + /obj/item/toy/prize/ripley = 2, + /obj/item/toy/prize/fireripley = 2, + /obj/item/toy/prize/deathripley = 2, + /obj/item/toy/prize/gygax = 2, + /obj/item/toy/prize/durand = 2, + /obj/item/toy/prize/honk = 2, + /obj/item/toy/prize/marauder = 2, + /obj/item/toy/prize/seraph = 2, + /obj/item/toy/prize/mauler = 2, + /obj/item/toy/prize/odysseus = 2, + /obj/item/toy/bikehorn = 2, // honk + /obj/item/clothing/head/collectable/tophat/super = 2, + /obj/item/toy/plush/farwa = 2, + /obj/item/toy/plush/barricade = 2, + /obj/item/toy/plush/shark = 2, + /obj/item/toy/plush/bee = 2, + /obj/item/toy/plush/moth = 2, + /obj/item/toy/plush/rock = 5, + /obj/item/storage/box/snappops = 5, + /obj/item/facepaint/lipstick = 1, + /obj/item/facepaint/lipstick/jade = 1, + /obj/item/clothing/head/headband/gray = 5, + /obj/item/clothing/head/headband/red = 5, + /obj/item/clothing/mask/tornscarf = 5, ) /obj/structure/machinery/computer/arcade diff --git a/code/game/machinery/cryopod.dm b/code/game/machinery/cryopod.dm index f9dc5815e568..88e74ccdf141 100644 --- a/code/game/machinery/cryopod.dm +++ b/code/game/machinery/cryopod.dm @@ -262,7 +262,7 @@ GLOBAL_LIST_INIT(frozen_items, list(SQUAD_MARINE_1 = list(), SQUAD_MARINE_2 = li item_loop: for(var/obj/item/W in items) - if(((W.flags_inventory & CANTSTRIP) || (W.flags_item & NODROP) || (W.flags_item & NO_CRYO_STORE)) && !gearless_role(occupant)) //We don't keep donor items, undroppable/unremovable items, and specifically filtered items + if((W.flags_inventory & CANTSTRIP) || (W.flags_item & NODROP) || (W.flags_item & NO_CRYO_STORE) || gearless_role(occupant)) //We don't keep donor items, undroppable/unremovable items, and specifically filtered items if(istype(W, /obj/item/clothing/suit/storage)) var/obj/item/clothing/suit/storage/SS = W for(var/obj/item/I in SS.pockets) //But we keep stuff inside them @@ -321,6 +321,9 @@ GLOBAL_LIST_INIT(frozen_items, list(SQUAD_MARINE_1 = list(), SQUAD_MARINE_2 = li stripped_items: for(var/obj/item/A in strippeditems) + if(gearless_role(occupant)) + qdel(A) + continue stripped_items for(var/DAA in deleteall) if(istype(A, DAA)) qdel(A) diff --git a/code/game/machinery/doors/poddoor/almayer.dm b/code/game/machinery/doors/poddoor/almayer.dm index 2b296412df7d..b7d19eaa7252 100644 --- a/code/game/machinery/doors/poddoor/almayer.dm +++ b/code/game/machinery/doors/poddoor/almayer.dm @@ -32,6 +32,15 @@ /obj/structure/machinery/door/poddoor/almayer/blended/white/open density = FALSE +/obj/structure/machinery/door/poddoor/almayer/blended/liaison + name = "hull" + desc = "A metal wall used to separate rooms and make up the ship." + icon_state = "liaison_pdoor1" + base_icon_state = "liaison_pdoor" + +/obj/structure/machinery/door/poddoor/almayer/blended/liaison/open + density = FALSE + /obj/structure/machinery/door/poddoor/almayer/blended/aicore icon_state = "aidoor1" base_icon_state = "aidoor" diff --git a/code/game/machinery/doors/runed_sandstone.dm b/code/game/machinery/doors/runed_sandstone.dm index a6de7348dd7f..e51877395d75 100644 --- a/code/game/machinery/doors/runed_sandstone.dm +++ b/code/game/machinery/doors/runed_sandstone.dm @@ -24,10 +24,10 @@ /obj/structure/machinery/door/airlock/sandstone/runed/attackby(obj/item/W as obj, mob/user as mob) // ..() user.set_interaction(src) - if (!istype(W, /obj/item/weapon/wristblades || !isyautja(user))) + if (!istype(W, /obj/item/weapon/bracer_attachment || !isyautja(user))) return - if(istype(W, /obj/item/weapon/wristblades)) + if(istype(W, /obj/item/weapon/bracer_attachment)) playsound(user.loc, 'sound/effects/bladeinsert.ogg', 25, 0) var/list/options = list() diff --git a/code/game/machinery/robot_fabricator.dm b/code/game/machinery/robot_fabricator.dm index e0cc2b0c3a02..a3bded9fe962 100644 --- a/code/game/machinery/robot_fabricator.dm +++ b/code/game/machinery/robot_fabricator.dm @@ -112,7 +112,7 @@ Please wait until completion...
build_cost = 75000 var/building = build_type - if (building in subtypesof(/obj/item/robot_parts) + /obj/item/fake_robot_head) + if (building in (subtypesof(/obj/item/robot_parts) + /obj/item/fake_robot_head)) if (src.metal_amount >= build_cost) src.operating = 1 src.update_use_power(USE_POWER_ACTIVE) diff --git a/code/game/machinery/vending/cm_vending.dm b/code/game/machinery/vending/cm_vending.dm index f2f4c2fbda61..0e27e804d12a 100644 --- a/code/game/machinery/vending/cm_vending.dm +++ b/code/game/machinery/vending/cm_vending.dm @@ -833,6 +833,8 @@ GLOBAL_LIST_EMPTY(vending_products) .["theme"] = VENDOR_THEME_UPP if(FACTION_CLF) .["theme"] = VENDOR_THEME_CLF + if(FACTION_YAUTJA) + .["theme"] = VENDOR_THEME_YAUTJA .["show_points"] = show_points | use_snowflake_points /obj/structure/machinery/cm_vending/ui_assets(mob/user) diff --git a/code/game/machinery/vending/vendor_types/antag/antag_predator.dm b/code/game/machinery/vending/vendor_types/antag/antag_predator.dm new file mode 100644 index 000000000000..ac2d83b5d7d1 --- /dev/null +++ b/code/game/machinery/vending/vendor_types/antag/antag_predator.dm @@ -0,0 +1,200 @@ +GLOBAL_LIST_INIT(cm_vending_equipment_yautja, list( + list("Essential Hunting Supplies", 0, null, null, null), + list("Hunting Equipment", 0, list(/obj/item/clothing/under/chainshirt/hunter, /obj/item/storage/backpack/yautja, /obj/item/storage/medicomp/full, /obj/item/device/yautja_teleporter), MARINE_CAN_BUY_ESSENTIALS, VENDOR_ITEM_MANDATORY), + list("Armor", 0, list(/obj/item/clothing/suit/armor/yautja/hunter, /obj/item/clothing/mask/gas/yautja/hunter, /obj/item/clothing/shoes/yautja/hunter/knife), MARINE_CAN_BUY_COMBAT_ARMOR, VENDOR_ITEM_MANDATORY), + + list("Main Weapons (CHOOSE 1)", 0, null, null, null), + list("The Primary Hunting Sword", 0, /obj/item/weapon/yautja/sword, MARINE_CAN_BUY_SECONDARY, VENDOR_ITEM_RECOMMENDED), + list("The Rending Hunting Sword", 0, /obj/item/weapon/yautja/sword/alt_1, MARINE_CAN_BUY_SECONDARY, VENDOR_ITEM_RECOMMENDED), + list("The Piercing Hunting Sword", 0, /obj/item/weapon/yautja/sword/alt_2, MARINE_CAN_BUY_SECONDARY, VENDOR_ITEM_RECOMMENDED), + list("The Severing Hunting Sword", 0, /obj/item/weapon/yautja/sword/alt_3, MARINE_CAN_BUY_SECONDARY, VENDOR_ITEM_RECOMMENDED), + list("The Sundering Chain-Whip", 0, /obj/item/weapon/yautja/chain, MARINE_CAN_BUY_SECONDARY, VENDOR_ITEM_RECOMMENDED), + list("The Cleaving War-Scythe", 0, /obj/item/weapon/yautja/scythe, MARINE_CAN_BUY_SECONDARY, VENDOR_ITEM_RECOMMENDED), + list("The Ripping War-Scythe", 0, /obj/item/weapon/yautja/scythe/alt, MARINE_CAN_BUY_SECONDARY, VENDOR_ITEM_RECOMMENDED), + list("The Adaptive Combi-Stick", 0, /obj/item/weapon/yautja/chained/combistick, MARINE_CAN_BUY_SECONDARY, VENDOR_ITEM_RECOMMENDED), + list("The Butchering War Axe", 0, /obj/item/weapon/yautja/chained/war_axe, MARINE_CAN_BUY_SECONDARY, VENDOR_ITEM_RECOMMENDED), + list("The Lumbering Glaive", 0, /obj/item/weapon/twohanded/yautja/glaive, MARINE_CAN_BUY_SECONDARY, VENDOR_ITEM_RECOMMENDED), + list("The Imposing Glaive", 0, /obj/item/weapon/twohanded/yautja/glaive/alt, MARINE_CAN_BUY_SECONDARY, VENDOR_ITEM_RECOMMENDED), + + list("Bracer Attachments", 0, null, null, null), + list("Wrist Blades", 0,list(/obj/item/bracer_attachments/wristblades, /obj/item/bracer_attachments/wristblades), MARINE_CAN_BUY_ATTACHMENT, VENDOR_ITEM_MANDATORY), + list("The Fearsome Scimitars", 0, list(/obj/item/bracer_attachments/scimitars, /obj/item/bracer_attachments/scimitars), MARINE_CAN_BUY_SECONDARY, VENDOR_ITEM_RECOMMENDED), + list("The Skewering Scimitars", 0, list(/obj/item/bracer_attachments/scimitars_alt, /obj/item/bracer_attachments/scimitars_alt), MARINE_CAN_BUY_SECONDARY, VENDOR_ITEM_RECOMMENDED), + + list("Secondary Equipment (CHOOSE 2)", 0, null, null, null), + list("The Fleeting Spike Launcher", 0, /obj/item/weapon/gun/launcher/spike, MARINE_CAN_BUY_POUCH, VENDOR_ITEM_REGULAR), + list("The Swift Plasma Pistol", 0, /obj/item/weapon/gun/energy/yautja/plasmapistol, MARINE_CAN_BUY_POUCH, VENDOR_ITEM_REGULAR), + list("The Agile Drone", 0, /obj/item/falcon_drone, MARINE_CAN_BUY_POUCH, VENDOR_ITEM_REGULAR), + list("The Purifying Smart-Disc", 0, /obj/item/explosive/grenade/spawnergrenade/smartdisc, MARINE_CAN_BUY_POUCH, VENDOR_ITEM_REGULAR), + list("The Steadfast Shield", 0, /obj/item/weapon/shield/riot/yautja, MARINE_CAN_BUY_POUCH, VENDOR_ITEM_REGULAR), + + list("Clothing Accessory (CHOOSE 1)", 0, null, null, null), + list("Third-Cape", 0, /obj/item/clothing/yautja_cape/third, MARINE_CAN_BUY_ACCESSORY, VENDOR_ITEM_REGULAR), + list("Half-Cape", 0, /obj/item/clothing/yautja_cape/half, MARINE_CAN_BUY_ACCESSORY, VENDOR_ITEM_REGULAR), + list("Quarter-Cape", 0, /obj/item/clothing/yautja_cape/quarter, MARINE_CAN_BUY_ACCESSORY, VENDOR_ITEM_REGULAR), + list("Poncho", 0, /obj/item/clothing/yautja_cape/poncho, MARINE_CAN_BUY_ACCESSORY, VENDOR_ITEM_REGULAR), + )) + +GLOBAL_LIST_INIT(cm_vending_elder_yautja, list( + list("Essential Hunting Supplies", 0, null, null, null), + list("Hunting Equipment", 0, list(/obj/item/clothing/under/chainshirt/hunter, /obj/item/storage/backpack/yautja, /obj/item/storage/medicomp/full, /obj/item/device/yautja_teleporter), MARINE_CAN_BUY_ESSENTIALS, VENDOR_ITEM_MANDATORY), + list("Armor", 0, list(/obj/item/clothing/suit/armor/yautja/hunter, /obj/item/clothing/mask/gas/yautja/hunter, /obj/item/clothing/shoes/yautja/hunter/knife), MARINE_CAN_BUY_COMBAT_ARMOR, VENDOR_ITEM_MANDATORY), + + list("Main Weapons (CHOOSE 1)", 0, null, null, null), + list("The Primary Hunting Sword", 0, /obj/item/weapon/yautja/sword, MARINE_CAN_BUY_SECONDARY, VENDOR_ITEM_RECOMMENDED), + list("The Rending Hunting Sword", 0, /obj/item/weapon/yautja/sword/alt_1, MARINE_CAN_BUY_SECONDARY, VENDOR_ITEM_RECOMMENDED), + list("The Piercing Hunting Sword", 0, /obj/item/weapon/yautja/sword/alt_2, MARINE_CAN_BUY_SECONDARY, VENDOR_ITEM_RECOMMENDED), + list("The Severing Hunting Sword", 0, /obj/item/weapon/yautja/sword/alt_3, MARINE_CAN_BUY_SECONDARY, VENDOR_ITEM_RECOMMENDED), + list("The Sundering Chain-Whip", 0, /obj/item/weapon/yautja/chain, MARINE_CAN_BUY_SECONDARY, VENDOR_ITEM_RECOMMENDED), + list("The Cleaving War-Scythe", 0, /obj/item/weapon/yautja/scythe, MARINE_CAN_BUY_SECONDARY, VENDOR_ITEM_RECOMMENDED), + list("The Ripping War-Scythe", 0, /obj/item/weapon/yautja/scythe/alt, MARINE_CAN_BUY_SECONDARY, VENDOR_ITEM_RECOMMENDED), + list("The Adaptive Combi-Stick", 0, /obj/item/weapon/yautja/chained/combistick, MARINE_CAN_BUY_SECONDARY, VENDOR_ITEM_RECOMMENDED), + list("The Butchering War Axe", 0, /obj/item/weapon/yautja/chained/war_axe, MARINE_CAN_BUY_SECONDARY, VENDOR_ITEM_RECOMMENDED), + list("The Lumbering Glaive", 0, /obj/item/weapon/twohanded/yautja/glaive, MARINE_CAN_BUY_SECONDARY, VENDOR_ITEM_RECOMMENDED), + list("The Imposing Glaive", 0, /obj/item/weapon/twohanded/yautja/glaive/alt, MARINE_CAN_BUY_SECONDARY, VENDOR_ITEM_RECOMMENDED), + + list("Bracer Attachments", 0, null, null, null), + list("Wrist Blades", 0,list(/obj/item/bracer_attachments/wristblades, /obj/item/bracer_attachments/wristblades), MARINE_CAN_BUY_ATTACHMENT, VENDOR_ITEM_MANDATORY), + list("The Fearsome Scimitars", 0, list(/obj/item/bracer_attachments/scimitars, /obj/item/bracer_attachments/scimitars), MARINE_CAN_BUY_SECONDARY, VENDOR_ITEM_RECOMMENDED), + list("The Skewering Scimitars", 0, list(/obj/item/bracer_attachments/scimitars_alt, /obj/item/bracer_attachments/scimitars_alt), MARINE_CAN_BUY_SECONDARY, VENDOR_ITEM_RECOMMENDED), + + list("Secondary Equipment (CHOOSE 2)", 0, null, null, null), + list("The Fleeting Spike Launcher", 0, /obj/item/weapon/gun/launcher/spike, MARINE_CAN_BUY_POUCH, VENDOR_ITEM_REGULAR), + list("The Swift Plasma Pistol", 0, /obj/item/weapon/gun/energy/yautja/plasmapistol, MARINE_CAN_BUY_POUCH, VENDOR_ITEM_REGULAR), + list("The Agile Drone", 0, /obj/item/falcon_drone, MARINE_CAN_BUY_POUCH, VENDOR_ITEM_REGULAR), + list("The Purifying Smart-Disc", 0, /obj/item/explosive/grenade/spawnergrenade/smartdisc, MARINE_CAN_BUY_POUCH, VENDOR_ITEM_REGULAR), + list("The Steadfast Shield", 0, /obj/item/weapon/shield/riot/yautja, MARINE_CAN_BUY_POUCH, VENDOR_ITEM_REGULAR), + + list("Clothing Accessory (CHOOSE 1)", 0, null, null, null), + list("Third-Cape", 0, /obj/item/clothing/yautja_cape/third, MARINE_CAN_BUY_ACCESSORY, VENDOR_ITEM_REGULAR), + list("Half-Cape", 0, /obj/item/clothing/yautja_cape/half, MARINE_CAN_BUY_ACCESSORY, VENDOR_ITEM_REGULAR), + list("Quarter-Cape", 0, /obj/item/clothing/yautja_cape/quarter, MARINE_CAN_BUY_ACCESSORY, VENDOR_ITEM_REGULAR), + list("Poncho", 0, /obj/item/clothing/yautja_cape/poncho, MARINE_CAN_BUY_ACCESSORY, VENDOR_ITEM_REGULAR), + list("Damaged-Cape", 0, /obj/item/clothing/yautja_cape/damaged, MARINE_CAN_BUY_ACCESSORY, VENDOR_ITEM_REGULAR), + list("Ceremonial Cape", 0, /obj/item/clothing/yautja_cape/ceremonial, MARINE_CAN_BUY_ACCESSORY, VENDOR_ITEM_REGULAR), + list("Full-Cape", 0, /obj/item/clothing/yautja_cape, MARINE_CAN_BUY_ACCESSORY, VENDOR_ITEM_REGULAR), + )) + +/obj/structure/machinery/cm_vending/clothing/yautja + name = "\improper Yautja Hunting Gear Rack" + desc = "A gear rack for hunting." + icon = 'icons/obj/items/hunter/pred_vendor.dmi' + icon_state = "pred_vendor_left" + req_access = list(ACCESS_YAUTJA_SECURE) + vendor_role = list(JOB_PREDATOR) + show_points = FALSE + vendor_theme = VENDOR_THEME_YAUTJA + +/obj/structure/machinery/cm_vending/clothing/yautja/can_access_to_vend(mob/user, display = TRUE, ignore_hack = FALSE) + if(!allowed(user)) + if(display) + to_chat(user, SPAN_WARNING("Access denied.")) + vend_fail() + return FALSE + + if(LAZYLEN(vendor_role) && !vendor_role.Find(user.job)) + if(display) + to_chat(user, SPAN_WARNING("This machine isn't for you.")) + vend_fail() + return FALSE + return TRUE + +/obj/structure/machinery/cm_vending/clothing/yautja/left_centre + icon_state = "pred_vendor_lcenter" + +/obj/structure/machinery/cm_vending/clothing/yautja/centre + icon_state = "pred_vendor_centre" + +/obj/structure/machinery/cm_vending/clothing/yautja/right_centre + icon_state = "pred_vendor_rcentre" + +/obj/structure/machinery/cm_vending/clothing/yautja/right + icon_state = "pred_vendor_right" + +/obj/structure/machinery/cm_vending/clothing/yautja/get_listed_products(mob/user) + return GLOB.cm_vending_equipment_yautja + +/obj/structure/machinery/cm_vending/clothing/yautja/elder + name = "\improper Yautja Elder Hunting Gear Rack" + icon_state = "pred_vendor_elder_left" + req_access = list(ACCESS_YAUTJA_ELITE) + +/obj/structure/machinery/cm_vending/clothing/yautja/elder/right + icon_state = "pred_vendor_elder_right" + +/obj/structure/machinery/cm_vending/clothing/yautja/elder/get_listed_products(mob/user) + return GLOB.cm_vending_elder_yautja + +//Armour Prefs +/obj/item/clothing/suit/armor/yautja/post_vendor_spawn_hook(mob/living/carbon/human/user) + if(!user?.client?.prefs) + return + var/client/mob_client = user.client + + if(mob_client.prefs.predator_use_legacy != "None") + switch(mob_client.prefs.predator_use_legacy) + if("dragon") + icon_state = "halfarmor_elder_tr" + LAZYSET(item_state_slots, WEAR_JACKET, "halfarmor_elder_tr") + if("swamp") + icon_state = "halfarmor_elder_joshuu" + LAZYSET(item_state_slots, WEAR_JACKET, "halfarmor_elder_joshuu") + if("enforcer") + icon_state = "halfarmor_elder_feweh" + LAZYSET(item_state_slots, WEAR_JACKET, "halfarmor_elder_feweh") + if("collector") + icon_state = "halfarmor_elder_n" + LAZYSET(item_state_slots, WEAR_JACKET, "halfarmor_elder_n") + user.update_inv_wear_suit() + return + + icon_state = "halfarmor[mob_client.prefs.predator_armor_type]_[mob_client.prefs.predator_armor_material]" + LAZYSET(item_state_slots, WEAR_JACKET, "halfarmor[mob_client.prefs.predator_armor_type]_[mob_client.prefs.predator_armor_material]") + user.update_inv_wear_suit() + +//Mask Prefs +/obj/item/clothing/mask/gas/yautja/hunter/post_vendor_spawn_hook(mob/living/carbon/human/user) + if(!user?.client?.prefs) + return + var/client/mob_client = user.client + + if(mob_client.prefs.predator_use_legacy != "None") + switch(mob_client.prefs.predator_use_legacy) + if("Dragon") + icon_state = "pred_mask_elder_tr" + LAZYSET(item_state_slots, WEAR_FACE, "pred_mask_elder_tr") + if("Swamp") + icon_state = "pred_mask_elder_joshuu" + LAZYSET(item_state_slots, WEAR_FACE, "pred_mask_elder_joshuu") + if("Enforcer") + icon_state = "pred_mask_elder_feweh" + LAZYSET(item_state_slots, WEAR_FACE, "pred_mask_elder_feweh") + if("Collector") + icon_state = "pred_mask_elder_n" + LAZYSET(item_state_slots, WEAR_FACE, "pred_mask_elder_n") + user.update_inv_wear_mask() + return + + icon_state = "pred_mask[mob_client.prefs.predator_mask_type]_[mob_client.prefs.predator_mask_material]" + LAZYSET(item_state_slots, WEAR_FACE, "pred_mask[mob_client.prefs.predator_mask_type]_[mob_client.prefs.predator_mask_material]") + user.update_inv_wear_mask() + +//Greaves Prefs + +/obj/item/clothing/shoes/yautja/hunter/post_vendor_spawn_hook(mob/living/carbon/human/user) + if(!user?.client?.prefs) + return + var/client/mob_client = user.client + + icon_state = "y-boots[mob_client.prefs.predator_boot_type]_[mob_client.prefs.predator_greave_material]" + user.update_inv_shoes() + +//Cape Prefs + +/obj/item/clothing/yautja_cape/post_vendor_spawn_hook(mob/living/carbon/human/user) + if(!user?.client?.prefs) + return + var/client/mob_client = user.client + + color = mob_client.prefs.predator_cape_color + user.update_inv_back() 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 e724d2f33a3b..3e3101f64e8a 100644 --- a/code/game/machinery/vending/vendor_types/crew/senior_officers.dm +++ b/code/game/machinery/vending/vendor_types/crew/senior_officers.dm @@ -87,9 +87,10 @@ GLOBAL_LIST_INIT(cm_vending_clothing_chief_engineer, 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("Headset", 0, /obj/item/device/radio/headset/almayer/ce, MARINE_CAN_BUY_EAR, VENDOR_ITEM_MANDATORY), - list("Toolbelt", 0, /obj/item/storage/belt/utility/full, MARINE_CAN_BUY_BELT, VENDOR_ITEM_MANDATORY), list("Marine Combat Boots", 0, /obj/item/clothing/shoes/marine, MARINE_CAN_BUY_SHOES, VENDOR_ITEM_MANDATORY), list("Welding Goggles", 0, /obj/item/clothing/glasses/welding, MARINE_CAN_BUY_GLASSES, VENDOR_ITEM_MANDATORY), + list("KN5500/2 PDA", 0, /obj/item/device/working_joe_pda/uscm, MARINE_CAN_BUY_KIT, VENDOR_ITEM_MANDATORY), + list("Tactical Compact Nailgun", 0, /obj/item/weapon/gun/smg/nailgun/compact/tactical, MARINE_CAN_BUY_KIT, VENDOR_ITEM_MANDATORY), list("UNIFORM (CHOOSE 1)", 0, null, null, null), list("Chief Engineer Uniform", 0, /obj/item/clothing/under/marine/officer/ce, MARINE_CAN_BUY_UNIFORM, VENDOR_ITEM_RECOMMENDED), @@ -115,6 +116,11 @@ GLOBAL_LIST_INIT(cm_vending_clothing_chief_engineer, list( list("Technician Welderpack", 0, /obj/item/storage/backpack/marine/engineerpack, MARINE_CAN_BUY_BACKPACK, VENDOR_ITEM_REGULAR), list("Welding Kit", 0, /obj/item/tool/weldpack, MARINE_CAN_BUY_BACKPACK, VENDOR_ITEM_REGULAR), + list("BELT (CHOOSE 1)", 0, null, null, null), + list("M277 Pattern Construction Rig", 0, /obj/item/storage/belt/utility/construction, 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("Toolbelt", 0, /obj/item/storage/belt/utility/full, 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), @@ -128,7 +134,7 @@ GLOBAL_LIST_INIT(cm_vending_clothing_chief_engineer, list( list("Sidearm Pouch", 0, /obj/item/storage/pouch/pistol, MARINE_CAN_BUY_POUCH, VENDOR_ITEM_REGULAR), list("Flare Pouch (Full)", 0, /obj/item/storage/pouch/flare/full, MARINE_CAN_BUY_POUCH, VENDOR_ITEM_REGULAR), list("Fuel Tank Strap Pouch", 0, /obj/item/storage/pouch/flamertank, MARINE_CAN_BUY_POUCH, VENDOR_ITEM_REGULAR), - + list("Engineer kit Pouch", 0, /obj/item/storage/pouch/engikit, MARINE_CAN_BUY_POUCH, VENDOR_ITEM_REGULAR), 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), @@ -141,6 +147,7 @@ GLOBAL_LIST_INIT(cm_vending_clothing_chief_engineer, list( list("Webbing", 0, /obj/item/clothing/accessory/storage/webbing, 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("Drop Pouch", 0, /obj/item/clothing/accessory/storage/droppouch, MARINE_CAN_BUY_ACCESSORY, VENDOR_ITEM_REGULAR), + list("Small Tool Webbing (Full)", 0, /obj/item/clothing/accessory/storage/tool_webbing/small/equipped, MARINE_CAN_BUY_ACCESSORY, VENDOR_ITEM_REGULAR), list("DEPLOYMENT GEAR", 0, null, null, null), @@ -483,7 +490,7 @@ 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("Headset", 0, /obj/item/device/radio/headset/almayer/mcom/cdrcom, MARINE_CAN_BUY_EAR, 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("BAG (CHOOSE 1)", 0, null, null, null), diff --git a/code/game/machinery/vending/vendor_types/crew/synthetic.dm b/code/game/machinery/vending/vendor_types/crew/synthetic.dm index 240155176efa..bd7ba7cb04dc 100644 --- a/code/game/machinery/vending/vendor_types/crew/synthetic.dm +++ b/code/game/machinery/vending/vendor_types/crew/synthetic.dm @@ -80,8 +80,8 @@ list("Space Cleaner", 2, /obj/item/reagent_container/spray/cleaner, null, VENDOR_ITEM_REGULAR), list("Whistle", 5, /obj/item/device/whistle, null, VENDOR_ITEM_REGULAR), list("Machete Scabbard (Full)", 2, /obj/item/storage/large_holster/machete/full, null, VENDOR_ITEM_REGULAR), - list("Stethoscope", 2, /obj/item/clothing/accessory/stethoscope, null, VENDOR_ITEM_REGULAR) - + list("Stethoscope", 2, /obj/item/clothing/accessory/stethoscope, null, VENDOR_ITEM_REGULAR), + list("Penlight", 2, /obj/item/device/flashlight/pen, null, VENDOR_ITEM_REGULAR) ) //------------CLOTHING VENDOR--------------- @@ -356,9 +356,7 @@ GLOBAL_LIST_INIT(cm_vending_clothing_synth_snowflake, list( list("Gold Tie", 6, /obj/item/clothing/accessory/gold, null, VENDOR_ITEM_REGULAR), list("Red Tie", 6, /obj/item/clothing/accessory/red, null, VENDOR_ITEM_REGULAR), list("Purple Tie", 6, /obj/item/clothing/accessory/purple, null, VENDOR_ITEM_REGULAR), - list("Stethoscope", 6, /obj/item/clothing/accessory/stethoscope, null, VENDOR_ITEM_REGULAR), list("Dress Gloves", 6, /obj/item/clothing/gloves/marine/dress, null, VENDOR_ITEM_REGULAR), - )) /obj/structure/machinery/cm_vending/clothing/synth/snowflake 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 2dd5bdf2ee68..a05d7286ea16 100644 --- a/code/game/machinery/vending/vendor_types/crew/vehicle_crew.dm +++ b/code/game/machinery/vending/vendor_types/crew/vehicle_crew.dm @@ -353,6 +353,7 @@ GLOBAL_LIST_INIT(cm_vending_clothing_vehicle_crew, list( //Not essentials sets but fuck it the code's here /obj/effect/essentials_set/tank/ltb + desc = "A giant cannon firing explosive 86mm shells. You'd be lucky if this even leaves the dust of whatever you hit with it." spawned_gear_list = list( /obj/item/hardpoint/primary/cannon, /obj/item/ammo_magazine/hardpoint/ltb_cannon, @@ -363,6 +364,7 @@ GLOBAL_LIST_INIT(cm_vending_clothing_vehicle_crew, list( ) /obj/effect/essentials_set/tank/gatling + desc = "A primary LTAA Minigun utilizing AP ammo for tanks. The barrel spins up as it is fired, improving its fire rate and accuracy dramatically. Capable of shredding apart even the thickest walls in seconds." spawned_gear_list = list( /obj/item/hardpoint/primary/minigun, /obj/item/ammo_magazine/hardpoint/ltaaap_minigun, @@ -370,6 +372,7 @@ GLOBAL_LIST_INIT(cm_vending_clothing_vehicle_crew, list( ) /obj/effect/essentials_set/tank/dragonflamer + desc = "A heavy flamer that spews out high-combustion napalm in a wide radius. The fuel burns intensely and quickly, which allows for it to be used offensively by armoured vehicles." spawned_gear_list = list( /obj/item/hardpoint/primary/flamer, /obj/item/ammo_magazine/hardpoint/primary_flamer, @@ -377,6 +380,7 @@ GLOBAL_LIST_INIT(cm_vending_clothing_vehicle_crew, list( ) /obj/effect/essentials_set/tank/autocannon + desc = "An automatic cannon for tanks, capable of firing precisely even at long ranges. Loads 20mm explosive shells." spawned_gear_list = list( /obj/item/hardpoint/primary/autocannon, /obj/item/ammo_magazine/hardpoint/ace_autocannon, @@ -386,12 +390,14 @@ GLOBAL_LIST_INIT(cm_vending_clothing_vehicle_crew, list( ) /obj/effect/essentials_set/tank/tankflamer + desc = "A small LZR-N Flamer Unit - a modified version of your bog standard flamer." spawned_gear_list = list( /obj/item/hardpoint/secondary/small_flamer, /obj/item/ammo_magazine/hardpoint/secondary_flamer, ) /obj/effect/essentials_set/tank/tow + desc = "A quint rocket launcher capable of firing four rockets in quick succession." spawned_gear_list = list( /obj/item/hardpoint/secondary/towlauncher, /obj/item/ammo_magazine/hardpoint/towlauncher, @@ -399,12 +405,14 @@ GLOBAL_LIST_INIT(cm_vending_clothing_vehicle_crew, list( ) /obj/effect/essentials_set/tank/m56cupola + desc = "A permanently fixed M56D, firing standard issue 10x28mm rounds." spawned_gear_list = list( /obj/item/hardpoint/secondary/m56cupola, /obj/item/ammo_magazine/hardpoint/m56_cupola, ) /obj/effect/essentials_set/tank/tankgl + desc = "A magazine feed grenade launcher capable of holding 10 grenades. This model loads M40 grenades." spawned_gear_list = list( /obj/item/hardpoint/secondary/grenade_launcher, /obj/item/ammo_magazine/hardpoint/tank_glauncher, 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 f59f9543592a..fb27581b0fa2 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 @@ -86,6 +86,7 @@ GLOBAL_LIST_INIT(cm_vending_gear_engi, list( list("HELMET OPTICS", 0, null, null, null), list("Medical Helmet Optic", 12, /obj/item/device/helmet_visor/medical, null, VENDOR_ITEM_REGULAR), + list("Welding Visor", 5, /obj/item/device/helmet_visor/welding_visor, null, VENDOR_ITEM_REGULAR), list("PAMPHLETS", 0, null, null, null), list("JTAC Pamphlet", 15, /obj/item/pamphlet/skill/jtac, null, 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 8cb71a57872f..d9cd2c54681b 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 @@ -37,7 +37,7 @@ GLOBAL_LIST_INIT(cm_vending_gear_leader, list( list("HELMET OPTICS", 0, null, null, null), list("Welding Visor", 5, /obj/item/device/helmet_visor/welding_visor, null, VENDOR_ITEM_REGULAR), list("Medical Helmet Optic", 4, /obj/item/device/helmet_visor/medical, null, VENDOR_ITEM_RECOMMENDED), - list("Night Vision Optic", 20, /obj/item/device/helmet_visor/night_vision, null, VENDOR_ITEM_RECOMMENDED), + list("Night Vision Optic", 25, /obj/item/device/helmet_visor/night_vision, null, VENDOR_ITEM_RECOMMENDED), list("ENGINEERING SUPPLIES", 0, null, null, null), list("Insulated Gloves", 3, /obj/item/clothing/gloves/yellow, null, 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 7274e07265ee..241d021d7c76 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 @@ -146,13 +146,13 @@ GLOBAL_LIST_INIT(cm_vending_clothing_medic, list( list("POUCHES (CHOOSE 2)", 0, null, null, null), list("Pressurized Reagent Canister Pouch (Revival Mix - Tricordrazine)", 0, /obj/item/storage/pouch/pressurized_reagent_canister/revival_tricord, MARINE_CAN_BUY_POUCH, VENDOR_ITEM_RECOMMENDED), + list("Pressurized Reagent Canister Pouch (Revival Mix - Peridaxon)", 0, /obj/item/storage/pouch/pressurized_reagent_canister/revival_peri, MARINE_CAN_BUY_POUCH, VENDOR_ITEM_REGULAR), list("Medical Kit Pouch", 0, /obj/item/storage/pouch/medkit, MARINE_CAN_BUY_POUCH, VENDOR_ITEM_RECOMMENDED), list("Autoinjector Pouch", 0, /obj/item/storage/pouch/autoinjector, MARINE_CAN_BUY_POUCH, VENDOR_ITEM_REGULAR), list("First Responder Pouch", 0, /obj/item/storage/pouch/first_responder, MARINE_CAN_BUY_POUCH, VENDOR_ITEM_REGULAR), list("Pressurized Reagent Canister Pouch (Bicaridine)", 0, /obj/item/storage/pouch/pressurized_reagent_canister/bicaridine, MARINE_CAN_BUY_POUCH, VENDOR_ITEM_REGULAR), list("Pressurized Reagent Canister Pouch (Kelotane)", 0, /obj/item/storage/pouch/pressurized_reagent_canister/kelotane, MARINE_CAN_BUY_POUCH, VENDOR_ITEM_REGULAR), list("Pressurized Reagent Canister Pouch (Tricordrazine)", 0, /obj/item/storage/pouch/pressurized_reagent_canister/tricordrazine, MARINE_CAN_BUY_POUCH, VENDOR_ITEM_REGULAR), - list("Pressurized Reagent Canister Pouch (Revival Mix - Peridaxon)", 0, /obj/item/storage/pouch/pressurized_reagent_canister/revival_peri, MARINE_CAN_BUY_POUCH, VENDOR_ITEM_REGULAR), list("Pressurized Reagent Canister Pouch (EMPTY)", 0, /obj/item/storage/pouch/pressurized_reagent_canister, MARINE_CAN_BUY_POUCH, VENDOR_ITEM_REGULAR), list("Vial Pouch (Full)", 0, /obj/item/storage/pouch/vials/full, MARINE_CAN_BUY_POUCH, VENDOR_ITEM_REGULAR), list("Medical Pouch", 0, /obj/item/storage/pouch/medical, MARINE_CAN_BUY_POUCH, VENDOR_ITEM_REGULAR), diff --git a/code/game/objects/effects/client_image_holder.dm b/code/game/objects/effects/client_image_holder.dm new file mode 100644 index 000000000000..4bff6f2a48d1 --- /dev/null +++ b/code/game/objects/effects/client_image_holder.dm @@ -0,0 +1,99 @@ +/** + * Simple effect that holds an image + * to be shown to one or multiple clients only. + * + * Pass a list of mobs in initialize() that corresponds to all mobs that can see it. + * Code ripped from tgstation, though this has missing parts. Original path is 'code/modules/hallucination/_hallucination.dm' + */ + +/obj/effect/client_image_holder + invisibility = INVISIBILITY_OBSERVER + anchored = TRUE + + /// A list of mobs which can see us. + var/list/mob/who_sees_us + /// The created image, what we look like. + var/image/shown_image + /// The icon file the image uses. If null, we have no image + var/image_icon + /// The icon state the image uses + var/image_state + /// The x pixel offset of the image + var/image_pixel_x = 0 + /// The y pixel offset of the image + var/image_pixel_y = 0 + /// Optional, the color of the image + var/image_color + /// The layer of the image + var/image_layer = MOB_LAYER + /// The plane of the image + var/image_plane = GAME_PLANE + +/obj/effect/client_image_holder/Initialize(mapload, list/mobs_which_see_us) + if(isnull(mobs_which_see_us)) + return INITIALIZE_HINT_QDEL + + . = ..() + shown_image = generate_image() + + if(!islist(mobs_which_see_us)) + mobs_which_see_us = list(mobs_which_see_us) + + who_sees_us = list() + for(var/mob/seer as anything in mobs_which_see_us) + who_sees_us += seer + show_image_to(seer) + +/obj/effect/client_image_holder/Destroy(force) + if(shown_image) + for(var/mob/seer as anything in who_sees_us) + hide_image_from(seer) + who_sees_us -= seer + shown_image = null + + QDEL_NULL_LIST(who_sees_us) + return ..() + +/// Generates the image which we take on. +/obj/effect/client_image_holder/proc/generate_image() + var/image/created = image(image_icon, src, image_state, image_layer, dir = src.dir) + created.pixel_x = image_pixel_x + created.pixel_y = image_pixel_y + if(image_color) + created.color = image_color + return created + +/// Shows the image we generated to the passed mob +/obj/effect/client_image_holder/proc/show_image_to(mob/show_to) + SIGNAL_HANDLER + + show_to.client?.images |= shown_image + +/// Hides the image we generated from the passed mob +/obj/effect/client_image_holder/proc/hide_image_from(mob/hide_from) + SIGNAL_HANDLER + + hide_from.client?.images -= shown_image + +/// Simple helper for refreshing / showing the image to everyone in our list. +/obj/effect/client_image_holder/proc/regenerate_image() + for(var/mob/seer as anything in who_sees_us) + hide_image_from(seer) + + shown_image = generate_image() + + for(var/mob/seer as anything in who_sees_us) + show_image_to(seer) + +// Whenever we perform icon updates, regenerate our image +/obj/effect/client_image_holder/update_icon(updates = ALL) + . = ..() + regenerate_image() + +// If we move for some reason, regenerate our image +/obj/effect/client_image_holder/Moved(atom/old_loc, movement_dir, forced, list/old_locs, momentum_change = TRUE) + . = ..() + if(!loc) + return + regenerate_image() + diff --git a/code/game/objects/effects/effect_system/smoke.dm b/code/game/objects/effects/effect_system/smoke.dm index d0ea5d2ed5ef..212b0fac4b9d 100644 --- a/code/game/objects/effects/effect_system/smoke.dm +++ b/code/game/objects/effects/effect_system/smoke.dm @@ -242,6 +242,20 @@ /obj/effect/particle_effect/smoke/miasma/ex_act(severity) return +/obj/effect/particle_effect/smoke/weedkiller + name = "C10-W Weedkiller" + amount = 1 + time_to_live = 15 + smokeranking = SMOKE_RANK_HARMLESS + opacity = FALSE + color = "#c2aac7" + alpha = 0 + +/obj/effect/particle_effect/smoke/weedkiller/Initialize(mapload, oldamount, datum/cause_data/new_cause_data) + . = ..() + + animate(src, alpha = 75, time = rand(1 SECONDS, 5 SECONDS)) + ///////////////////////////////////////////// // Sleep smoke ///////////////////////////////////////////// diff --git a/code/game/objects/effects/landmarks/landmarks.dm b/code/game/objects/effects/landmarks/landmarks.dm index 87c820054475..559f65ad0810 100644 --- a/code/game/objects/effects/landmarks/landmarks.dm +++ b/code/game/objects/effects/landmarks/landmarks.dm @@ -213,6 +213,10 @@ /obj/effect/landmark/queen_spawn/Initialize(mapload, ...) . = ..() + + var/area/area = get_area(src) + area.unoviable_timer = FALSE + GLOB.queen_spawns += src /obj/effect/landmark/queen_spawn/Destroy() @@ -232,7 +236,7 @@ return ..() /obj/effect/landmark/xeno_hive_spawn - name = "xeno hive spawn" + name = "xeno vs xeno hive spawn" icon_state = "hive_spawn" /obj/effect/landmark/xeno_hive_spawn/Initialize(mapload, ...) diff --git a/code/game/objects/items/cards_ids.dm b/code/game/objects/items/cards_ids.dm index f90e54ef7854..8316da964ae8 100644 --- a/code/game/objects/items/cards_ids.dm +++ b/code/game/objects/items/cards_ids.dm @@ -377,6 +377,7 @@ icon_state = "dogtag_taken" icon = 'icons/obj/items/card.dmi' w_class = SIZE_TINY + var/list/fallen_references var/list/fallen_names var/list/fallen_blood_types var/list/fallen_assgns @@ -384,6 +385,7 @@ /obj/item/dogtag/Initialize() . = ..() + fallen_references = list() fallen_names = list() fallen_blood_types = list() fallen_assgns = list() @@ -394,6 +396,7 @@ to_chat(user, SPAN_NOTICE("You join the [length(fallen_names)>1 ? "tags":"two tags"] together.")) name = "information dog tags" if(D.fallen_names) + fallen_references += D.fallen_references fallen_names += D.fallen_names fallen_blood_types += D.fallen_blood_types fallen_assgns += D.fallen_assgns diff --git a/code/game/objects/items/devices/flashlight.dm b/code/game/objects/items/devices/flashlight.dm index de2a328de370..c7d03afe9c33 100644 --- a/code/game/objects/items/devices/flashlight.dm +++ b/code/game/objects/items/devices/flashlight.dm @@ -477,7 +477,7 @@ if(mapload) return INITIALIZE_HINT_QDEL . = ..() - fuel = rand(30 SECONDS, 60 SECONDS) + fuel = rand(4.5 MINUTES, 5.5 MINUTES) /obj/item/device/flashlight/flare/on/illumination/chemical name = "chemical light" diff --git a/code/game/objects/items/devices/helmet_visors.dm b/code/game/objects/items/devices/helmet_visors.dm index e2005a841bc3..723b6b4ef817 100644 --- a/code/game/objects/items/devices/helmet_visors.dm +++ b/code/game/objects/items/devices/helmet_visors.dm @@ -169,7 +169,7 @@ helmet_overlay = "weld_visor" /obj/item/device/helmet_visor/welding_visor/activate_visor(obj/item/clothing/head/helmet/marine/attached_helmet, mob/living/carbon/human/user) - attached_helmet.vision_impair = VISION_IMPAIR_MAX + attached_helmet.vision_impair = VISION_IMPAIR_ULTRA attached_helmet.flags_inventory |= COVEREYES|COVERMOUTH attached_helmet.flags_inv_hide |= HIDEEYES|HIDEFACE attached_helmet.eye_protection = EYE_PROTECTION_WELDING @@ -201,9 +201,9 @@ toggle_off_sound = 'sound/handling/toggle_nv2.ogg' /// The internal battery for the visor - var/obj/item/cell/high/power_cell + var/obj/item/cell/super/power_cell - /// About 5 minutes active use charge (hypothetically) + /// About 10 minutes active use charge (hypothetically) var/power_use = 33 /// The alpha of darkness we set to for the mob while the visor is on, not completely fullbright but see-able diff --git a/code/game/objects/items/devices/radio/headset.dm b/code/game/objects/items/devices/radio/headset.dm index 5842b3204f47..205fa7710312 100644 --- a/code/game/objects/items/devices/radio/headset.dm +++ b/code/game/objects/items/devices/radio/headset.dm @@ -165,6 +165,11 @@ to_chat(user, SPAN_NOTICE("This headset doesn't have any encryption keys! How useless...")) if(istype(W, /obj/item/device/encryptionkey/)) + for (var/obj/item/device/encryptionkey/key as anything in keys) + if (istype(key, W.type)) + to_chat(user, SPAN_NOTICE("A [W.name] is already installed on this device!")) + return + var/keycount = 0 for (var/obj/item/device/encryptionkey/key in keys) if(!key.abstract) @@ -362,7 +367,16 @@ ///Change the minimap icon to a dead icon /obj/item/device/radio/headset/proc/set_dead_on_minimap(z_level, marker_flags) - SSminimaps.add_marker(wearer, z_level, marker_flags, given_image = wearer.assigned_equipment_preset.get_minimap_icon(wearer), overlay_iconstates = list("defibbable")) + var/icon_to_use + if(world.time > wearer.timeofdeath + wearer.revive_grace_period - 1 MINUTES) + icon_to_use = "defibbable4" + else if(world.time > wearer.timeofdeath + wearer.revive_grace_period - 2 MINUTES) + icon_to_use = "defibbable3" + else if(world.time > wearer.timeofdeath + wearer.revive_grace_period - 3 MINUTES) + icon_to_use = "defibbable2" + else + icon_to_use = "defibbable" + SSminimaps.add_marker(wearer, z_level, marker_flags, given_image = wearer.assigned_equipment_preset.get_minimap_icon(wearer), overlay_iconstates = list(icon_to_use)) ///Change the minimap icon to a undefibbable icon /obj/item/device/radio/headset/proc/set_undefibbable_on_minimap(z_level, marker_flags) diff --git a/code/game/objects/items/devices/walkman.dm b/code/game/objects/items/devices/walkman.dm index bef8e8f5ff79..b88bfb017abd 100644 --- a/code/game/objects/items/devices/walkman.dm +++ b/code/game/objects/items/devices/walkman.dm @@ -7,6 +7,7 @@ icon_state = "walkman" w_class = SIZE_SMALL flags_equip_slot = SLOT_WAIST | SLOT_EAR + flags_obj = OBJ_IS_HELMET_GARB actions_types = list(/datum/action/item_action/walkman/play_pause,/datum/action/item_action/walkman/next_song,/datum/action/item_action/walkman/restart_song) var/obj/item/device/cassette_tape/tape var/paused = TRUE @@ -311,6 +312,7 @@ icon = 'icons/obj/items/walkman.dmi' icon_state = "cassette_flip" w_class = SIZE_SMALL + flags_obj = OBJ_IS_HELMET_GARB black_market_value = 15 var/side1_icon = "cassette" var/flipped = FALSE //Tape side diff --git a/code/game/objects/items/explosives/explosive.dm b/code/game/objects/items/explosives/explosive.dm index 0be81ba8a0ed..bd9e57a108d8 100644 --- a/code/game/objects/items/explosives/explosive.dm +++ b/code/game/objects/items/explosives/explosive.dm @@ -19,8 +19,8 @@ var/max_container_volume = 120 var/current_container_volume = 0 var/assembly_stage = ASSEMBLY_EMPTY //The assembly_stage of the assembly - var/list/reaction_limits = list("max_ex_power" = 175, "base_ex_falloff" = 75, "max_ex_shards" = 32, - "max_fire_rad" = 5, "max_fire_int" = 20, "max_fire_dur" = 24, + var/list/reaction_limits = list("max_ex_power" = 180, "base_ex_falloff" = 80, "max_ex_shards" = 40, + "max_fire_rad" = 5, "max_fire_int" = 25, "max_fire_dur" = 24, "min_fire_rad" = 1, "min_fire_int" = 3, "min_fire_dur" = 3 ) var/falloff_mode = EXPLOSION_FALLOFF_SHAPE_LINEAR diff --git a/code/game/objects/items/explosives/grenades/chem_grenade.dm b/code/game/objects/items/explosives/grenades/chem_grenade.dm index 48430aacecc9..ce08d7dfe08d 100644 --- a/code/game/objects/items/explosives/grenades/chem_grenade.dm +++ b/code/game/objects/items/explosives/grenades/chem_grenade.dm @@ -8,8 +8,8 @@ customizable = TRUE underslug_launchable = TRUE allowed_sensors = list(/obj/item/device/assembly/timer) - max_container_volume = 90 - matter = list("metal" = 3750) + max_container_volume = 120 + matter = list("metal" = 4250) has_blast_wave_dampener = TRUE /obj/item/explosive/grenade/custom/prime() @@ -22,8 +22,8 @@ icon_state = "large_grenade_custom" allowed_containers = list(/obj/item/reagent_container/glass) max_container_volume = 180 - reaction_limits = list( "max_ex_power" = 215, "base_ex_falloff" = 90, "max_ex_shards" = 32, - "max_fire_rad" = 5, "max_fire_int" = 20, "max_fire_dur" = 24, + reaction_limits = list( "max_ex_power" = 220, "base_ex_falloff" = 120, "max_ex_shards" = 80, + "max_fire_rad" = 6, "max_fire_int" = 30, "max_fire_dur" = 32, "min_fire_rad" = 1, "min_fire_int" = 3, "min_fire_dur" = 3 ) underslug_launchable = FALSE diff --git a/code/game/objects/items/explosives/grenades/marines.dm b/code/game/objects/items/explosives/grenades/marines.dm index e669a27ab1a7..28b3d308a92e 100644 --- a/code/game/objects/items/explosives/grenades/marines.dm +++ b/code/game/objects/items/explosives/grenades/marines.dm @@ -182,10 +182,10 @@ desc = "Functions identically to the standard AGM-F 40mm grenade, except instead of exploding into shrapnel, the hornet shell shoots off holo-targeting .22lr rounds. The equivalent to buckshot at-range." icon_state = "grenade_hornet" item_state = "grenade_hornet_active" - shrapnel_count = 5 + shrapnel_count = 15 shrapnel_type = /datum/ammo/bullet/shrapnel/hornet_rounds direct_hit_shrapnel = 5 - dispersion_angle = 15//tight cone + dispersion_angle = 25//tight cone /obj/item/explosive/grenade/high_explosive/airburst/starshell name = "\improper M74 AGM-S Star Shell" diff --git a/code/game/objects/items/explosives/mine.dm b/code/game/objects/items/explosives/mine.dm index 6e7aa2bdccc3..b92d3ccf97cb 100644 --- a/code/game/objects/items/explosives/mine.dm +++ b/code/game/objects/items/explosives/mine.dm @@ -17,8 +17,8 @@ antigrief_protection = TRUE allowed_sensors = list(/obj/item/device/assembly/prox_sensor) max_container_volume = 120 - reaction_limits = list( "max_ex_power" = 105, "base_ex_falloff" = 60, "max_ex_shards" = 32, - "max_fire_rad" = 5, "max_fire_int" = 12, "max_fire_dur" = 18, + reaction_limits = list( "max_ex_power" = 100, "base_ex_falloff" = 80, "max_ex_shards" = 40, + "max_fire_rad" = 4, "max_fire_int" = 20, "max_fire_dur" = 18, "min_fire_rad" = 2, "min_fire_int" = 3, "min_fire_dur" = 3 ) angle = 60 diff --git a/code/game/objects/items/explosives/plastic.dm b/code/game/objects/items/explosives/plastic.dm index c6a3dfaed5f9..2ac3c475aef5 100644 --- a/code/game/objects/items/explosives/plastic.dm +++ b/code/game/objects/items/explosives/plastic.dm @@ -9,13 +9,13 @@ w_class = SIZE_SMALL allowed_sensors = list(/obj/item/device/assembly/prox_sensor, /obj/item/device/assembly/signaller, /obj/item/device/assembly/timer) max_container_volume = 180 - reaction_limits = list( "max_ex_power" = 260, "base_ex_falloff" = 90, "max_ex_shards" = 64, - "max_fire_rad" = 6, "max_fire_int" = 26, "max_fire_dur" = 30, + reaction_limits = list( "max_ex_power" = 280, "base_ex_falloff" = 120, "max_ex_shards" = 100, + "max_fire_rad" = 4, "max_fire_int" = 50, "max_fire_dur" = 20, "min_fire_rad" = 2, "min_fire_int" = 4, "min_fire_dur" = 5 ) var/deploying_time = 50 - var/penetration = 1.5 // How much damage adjacent walls receive + var/penetration = 2 // How much damage adjacent walls receive var/timer = 10 // detonation time var/min_timer = 10 var/atom/plant_target = null //which atom the plstique explosive is planted on diff --git a/code/game/objects/items/explosives/warhead.dm b/code/game/objects/items/explosives/warhead.dm index 1b7ec1ed4f94..e026e635fad7 100644 --- a/code/game/objects/items/explosives/warhead.dm +++ b/code/game/objects/items/explosives/warhead.dm @@ -12,8 +12,8 @@ max_container_volume = 210 allow_star_shape = FALSE matter = list("metal" = 11250) //3 sheets - reaction_limits = list( "max_ex_power" = 240, "base_ex_falloff" = 90,"max_ex_shards" = 64, - "max_fire_rad" = 6, "max_fire_int" = 40, "max_fire_dur" = 48, + reaction_limits = list( "max_ex_power" = 220, "base_ex_falloff" = 160,"max_ex_shards" = 80, + "max_fire_rad" = 4, "max_fire_int" = 45, "max_fire_dur" = 48, "min_fire_rad" = 2, "min_fire_int" = 4, "min_fire_dur" = 5 ) has_blast_wave_dampener = TRUE @@ -24,8 +24,8 @@ icon_state = "warhead_mortar" max_container_volume = 240 matter = list("metal" = 11250) //3 sheets - reaction_limits = list( "max_ex_power" = 360, "base_ex_falloff" = 90, "max_ex_shards" = 128, - "max_fire_rad" = 8, "max_fire_int" = 40, "max_fire_dur" = 48, + reaction_limits = list( "max_ex_power" = 360, "base_ex_falloff" = 130, "max_ex_shards" = 200, + "max_fire_rad" = 8, "max_fire_int" = 45, "max_fire_dur" = 48, "min_fire_rad" = 3, "min_fire_int" = 5, "min_fire_dur" = 5 ) has_blast_wave_dampener = TRUE diff --git a/code/game/objects/items/stacks/medical.dm b/code/game/objects/items/stacks/medical.dm index c4a496a12366..0636244bb0fd 100644 --- a/code/game/objects/items/stacks/medical.dm +++ b/code/game/objects/items/stacks/medical.dm @@ -271,6 +271,13 @@ var/indestructible_splints = FALSE +/obj/item/stack/medical/splint/Initialize(mapload, amount) + . = ..() + if(SSticker.mode && MODE_HAS_TOGGLEABLE_FLAG(MODE_INDESTRUCTIBLE_SPLINTS)) + icon_state = "nanosplint" + indestructible_splints = TRUE + update_icon() + /obj/item/stack/medical/splint/attack(mob/living/carbon/M, mob/user) if(..()) return 1 diff --git a/code/game/objects/items/storage/belt.dm b/code/game/objects/items/storage/belt.dm index 139d90ff33ce..b1e7f65b82d0 100644 --- a/code/game/objects/items/storage/belt.dm +++ b/code/game/objects/items/storage/belt.dm @@ -301,10 +301,10 @@ new /obj/item/stack/medical/splint(src) /obj/item/storage/belt/medical/lifesaver/full/dutch/fill_preset_inventory() - new /obj/item/stack/medical/advanced/bruise_pack(src) - new /obj/item/stack/medical/advanced/bruise_pack(src) - new /obj/item/stack/medical/advanced/ointment(src) - new /obj/item/stack/medical/advanced/ointment(src) + new /obj/item/stack/medical/advanced/bruise_pack/upgraded(src) + new /obj/item/stack/medical/advanced/bruise_pack/upgraded(src) + new /obj/item/stack/medical/advanced/ointment/upgraded(src) + new /obj/item/stack/medical/advanced/ointment/upgraded(src) new /obj/item/reagent_container/hypospray/autoinjector/adrenaline(src) new /obj/item/reagent_container/hypospray/autoinjector/dexalinp(src) new /obj/item/reagent_container/hypospray/autoinjector/oxycodone(src) @@ -315,7 +315,7 @@ new /obj/item/storage/pill_bottle/inaprovaline(src) new /obj/item/storage/pill_bottle/tramadol(src) new /obj/item/storage/pill_bottle/peridaxon(src) - new /obj/item/stack/medical/splint(src) + new /obj/item/stack/medical/splint/nano(src) new /obj/item/device/healthanalyzer(src) new /obj/item/storage/pill_bottle/imidazoline(src) new /obj/item/storage/pill_bottle/alkysine(src) @@ -343,6 +343,17 @@ new /obj/item/reagent_container/hypospray/autoinjector/oxycodone(src) new /obj/item/device/healthanalyzer(src) +/obj/item/storage/belt/medical/lifesaver/dutch/partial/fill_preset_inventory() + new /obj/item/stack/medical/advanced/bruise_pack/upgraded(src) + new /obj/item/stack/medical/advanced/ointment/upgraded(src) + new /obj/item/stack/medical/splint/nano(src) + new /obj/item/reagent_container/hypospray/autoinjector/oxycodone(src) + new /obj/item/storage/pill_bottle/bicaridine(src) + new /obj/item/storage/pill_bottle/kelotane(src) + new /obj/item/storage/pill_bottle/inaprovaline(src) + new /obj/item/storage/pill_bottle/tramadol(src) + new /obj/item/device/healthanalyzer(src) + /obj/item/storage/belt/medical/lifesaver/upp name = "\improper Type 41 pattern lifesaver bag" desc = "The Type 41 load rig is the standard load-bearing equipment of the UPP military. This configuration mounts a duffel bag filled with a range of injectors and light medical supplies, and is common among medics." @@ -1307,6 +1318,16 @@ "icon_x" = -11, "icon_y" = -5)) +/obj/item/storage/belt/gun/m39/full/fill_preset_inventory() + handle_item_insertion(new /obj/item/weapon/gun/smg/m39(src)) + for(var/i = 1 to storage_slots - 1) + new /obj/item/ammo_magazine/smg/m39(src) + +/obj/item/storage/belt/gun/m39/full/extended/fill_preset_inventory() + handle_item_insertion(new /obj/item/weapon/gun/smg/m39(src)) + for(var/i = 1 to storage_slots - 1) + new /obj/item/ammo_magazine/smg/m39/extended(src) + #define MAXIMUM_MAGAZINE_COUNT 2 /obj/item/storage/belt/gun/xm51 diff --git a/code/game/objects/items/storage/firstaid.dm b/code/game/objects/items/storage/firstaid.dm index a684586675a6..f4a5c22699e8 100644 --- a/code/game/objects/items/storage/firstaid.dm +++ b/code/game/objects/items/storage/firstaid.dm @@ -321,6 +321,9 @@ /obj/item/tool/surgery/scalpel, /obj/item/tool/surgery/hemostat, /obj/item/tool/surgery/retractor, + /obj/item/tool/surgery/surgical_line, + /obj/item/tool/surgery/synthgraft, + /obj/item/tool/surgery/FixOVein, ) /obj/item/storage/surgical_case/regular @@ -359,6 +362,23 @@ maptext_x = 18 maptext_y = 3 + var/base_icon = "pill_canister" + var/static/list/possible_colors = list( + "Orange" = "", + "Blue" = "1", + "Yellow" = "2", + "Light Purple" = "3", + "Light Grey" = "4", + "White" = "5", + "Light Green" = "6", + "Cyan" = "7", + "Bordeaux" = "8", + "Aquamarine" = "9", + "Grey" = "10", + "Red" = "11", + "Black" = "12", + ) + /obj/item/storage/pill_bottle/Initialize() . = ..() if(display_maptext == FALSE) @@ -515,28 +535,14 @@ /obj/item/storage/pill_bottle/proc/choose_color(mob/user) if(!user) user = usr - var/static/list/possible_colors = list( - "Orange" = "", - "Blue" = "1", - "Yellow" = "2", - "Light Purple" = "3", - "Light Grey" = "4", - "White" = "5", - "Light Green" = "6", - "Cyan" = "7", - "Bordeaux" = "8", - "Aquamarine" = "9", - "Grey" = "10", - "Red" = "11", - "Black" = "12", - ) + var/selected_color = tgui_input_list(user, "Select a color.", "Color choice", possible_colors) if(!selected_color) return selected_color = possible_colors[selected_color] - icon_state = "pill_canister" + selected_color + icon_state = base_icon + selected_color to_chat(user, SPAN_NOTICE("You color [src].")) update_icon() diff --git a/code/game/objects/items/storage/pouch.dm b/code/game/objects/items/storage/pouch.dm index 5993aa6b6f67..791bb27d58a4 100644 --- a/code/game/objects/items/storage/pouch.dm +++ b/code/game/objects/items/storage/pouch.dm @@ -1412,6 +1412,7 @@ icon_state = "cassette_pouch_closed" var/base_icon_state = "cassette_pouch" w_class = SIZE_SMALL + flags_obj = OBJ_IS_HELMET_GARB can_hold = list(/obj/item/device/cassette_tape, /obj/item/tape/regulation) storage_slots = 3 diff --git a/code/game/objects/items/storage/smartpack.dm b/code/game/objects/items/storage/smartpack.dm index 3763064aa333..afdfbdfa2246 100644 --- a/code/game/objects/items/storage/smartpack.dm +++ b/code/game/objects/items/storage/smartpack.dm @@ -176,7 +176,8 @@ update_icon(user) /obj/item/storage/backpack/marine/smartpack/proc/protective_form(mob/living/carbon/human/user) - if(!istype(user) || activated_form || immobile_form) + if(!istype(user) || activated_form || immobile_form || user.stat == DEAD) + to_chat(user, SPAN_WARNING("You cannot use the S-V42 prototype smartpack right now.")) return if(battery_charge < PROTECTIVE_COST) @@ -224,7 +225,8 @@ /obj/item/storage/backpack/marine/smartpack/proc/immobile_form(mob/living/user) - if(activated_form) + if(activated_form || user.stat == DEAD) + to_chat(user, SPAN_WARNING("You cannot use the S-V42 prototype smartpack right now.")) return if(battery_charge < IMMOBILE_COST && !immobile_form) @@ -263,7 +265,8 @@ /obj/item/storage/backpack/marine/smartpack/proc/repair_form(mob/user) - if(!ishuman(user) || activated_form || repairing) + if(!ishuman(user) || activated_form || repairing || user.stat == DEAD) + to_chat(user, SPAN_WARNING("You cannot use the S-V42 prototype smartpack right now.")) return if(battery_charge < REPAIR_COST) @@ -322,6 +325,8 @@ item_state = "w_smartpack" icon_state = "w_smartpack" +/obj/item/storage/backpack/marine/smartpack/white/drained + battery_charge = 0 #undef BACKPACK_LIGHT_LEVEL #undef PROTECTIVE_COST diff --git a/code/game/objects/items/tools/flame_tools.dm b/code/game/objects/items/tools/flame_tools.dm index 8af7d15e0ff3..45097c57c153 100644 --- a/code/game/objects/items/tools/flame_tools.dm +++ b/code/game/objects/items/tools/flame_tools.dm @@ -27,6 +27,7 @@ CIGARETTE PACKETS ARE IN FANCY.DM icon_state = "candle1" item_state = "candle1" w_class = SIZE_TINY + flags_obj = OBJ_IS_HELMET_GARB var/wax = 800 diff --git a/code/game/objects/items/tools/maintenance_tools.dm b/code/game/objects/items/tools/maintenance_tools.dm index f45953040a07..d5c7e371025d 100644 --- a/code/game/objects/items/tools/maintenance_tools.dm +++ b/code/game/objects/items/tools/maintenance_tools.dm @@ -159,6 +159,7 @@ */ /obj/item/tool/weldingtool name = "blowtorch" + desc = "A blowtorch for welding and cutting metals." icon = 'icons/obj/items/items.dmi' icon_state = "welder" pickup_sound = 'sound/handling/weldingtool_pickup.ogg' @@ -188,6 +189,8 @@ var/welding = 0 /// The max amount of fuel the welder can hold var/max_fuel = 40 + /// Adding this line of code to determine whether a welder should have fuel when created or not. + var/starting_fuel = TRUE /// Used to slowly deplete the fuel when the tool is left on. var/weld_tick = 0 var/has_welding_screen = FALSE @@ -196,7 +199,9 @@ /obj/item/tool/weldingtool/Initialize() . = ..() create_reagents(max_fuel) - reagents.add_reagent("fuel", max_fuel) + if (starting_fuel) + reagents.add_reagent("fuel", max_fuel) + base_icon_state = initial(icon_state) return @@ -417,6 +422,9 @@ to_chat(H, SPAN_WARNING("Your eyes are really starting to hurt. This can't be good for you!")) return FALSE +/obj/item/tool/weldingtool/empty + starting_fuel = FALSE + /obj/item/tool/weldingtool/largetank name = "industrial blowtorch" max_fuel = 60 diff --git a/code/game/objects/items/toys/cards.dm b/code/game/objects/items/toys/cards.dm index 89aea51bb8c0..4c466fba43f2 100644 --- a/code/game/objects/items/toys/cards.dm +++ b/code/game/objects/items/toys/cards.dm @@ -21,6 +21,7 @@ icon = 'icons/obj/items/playing_cards.dmi' icon_state = "deck" w_class = SIZE_TINY + flags_obj = OBJ_IS_HELMET_GARB var/base_icon = "deck" var/max_cards = 52 @@ -50,6 +51,7 @@ icon_state = "deck_uno" base_icon = "deck_uno" max_cards = 108 + flags_obj = OBJ_IS_HELMET_GARB /obj/item/toy/deck/uno/populate_deck() var/card_id = 1 diff --git a/code/game/objects/items/toys/toys.dm b/code/game/objects/items/toys/toys.dm index 91d8164dcf38..cda721aae515 100644 --- a/code/game/objects/items/toys/toys.dm +++ b/code/game/objects/items/toys/toys.dm @@ -241,6 +241,7 @@ /obj/item/toy/prize icon_state = "ripleytoy" var/cooldown = 0 + w_class = SIZE_TINY //all credit to skasi for toy mech fun ideas /obj/item/toy/prize/attack_self(mob/user) @@ -315,6 +316,7 @@ desc = "Mini-Mecha action figure! Collect them all! 11/11." icon_state = "phazonprize" + /obj/item/toy/inflatable_duck name = "inflatable duck" desc = "No bother to sink or swim when you can just float!" diff --git a/code/game/objects/structures/cargo_container.dm b/code/game/objects/structures/cargo_container.dm index 66d0cc8c18e0..343a6b06c23b 100644 --- a/code/game/objects/structures/cargo_container.dm +++ b/code/game/objects/structures/cargo_container.dm @@ -8,6 +8,36 @@ health = 200 opacity = TRUE anchored = TRUE + ///multiples any demage taken from bullets + var/bullet_damage_multiplier = 0.2 + ///multiples any demage taken from explosion + var/explosion_damage_multiplier = 2 + +/obj/structure/cargo_container/bullet_act(obj/projectile/projectile) + . = ..() + update_health(projectile.damage * bullet_damage_multiplier) + +/obj/structure/cargo_container/attack_alien(mob/living/carbon/xenomorph/xenomorph) + . = ..() + var/damage = ((floor((xenomorph.melee_damage_lower + xenomorph.melee_damage_upper)/2)) ) + + //Frenzy bonus + if(xenomorph.frenzy_aura > 0) + damage += (xenomorph.frenzy_aura * FRENZY_DAMAGE_MULTIPLIER) + + xenomorph.animation_attack_on(src) + + xenomorph.visible_message(SPAN_DANGER("[xenomorph] slashes [src]!"), \ + SPAN_DANGER("You slash [src]!")) + + update_health(damage) + + return XENO_ATTACK_ACTION + +/obj/structure/cargo_container/ex_act(severity, direction) + . = ..() + update_health(severity * explosion_damage_multiplier) + //Note, for Watatsumi, Grant, and Arious, "left" and "leftmid" are both the left end of the container, but "left" is generic and "leftmid" has the Sat Mover mark on it /obj/structure/cargo_container/watatsumi name = "Watatsumi Cargo Container" diff --git a/code/game/objects/structures/props.dm b/code/game/objects/structures/props.dm index 066f101f60bd..2a67cdc3637c 100644 --- a/code/game/objects/structures/props.dm +++ b/code/game/objects/structures/props.dm @@ -202,8 +202,6 @@ icon_state = "boulder1" desc = "A large rock. It's not cooking anything." icon = 'icons/obj/structures/props/dam.dmi' - unslashable = TRUE - unacidable = TRUE /obj/structure/prop/dam/boulder/boulder1 icon_state = "boulder1" /obj/structure/prop/dam/boulder/boulder2 @@ -218,8 +216,6 @@ icon = 'icons/obj/structures/props/boulder_large.dmi' bound_height = 64 bound_width = 64 - unslashable = TRUE - unacidable = TRUE /obj/structure/prop/dam/large_boulder/boulder1 icon_state = "boulder_large1" /obj/structure/prop/dam/large_boulder/boulder2 diff --git a/code/game/objects/structures/tables_racks.dm b/code/game/objects/structures/tables_racks.dm index 760633348b81..425d4caadbdc 100644 --- a/code/game/objects/structures/tables_racks.dm +++ b/code/game/objects/structures/tables_racks.dm @@ -304,7 +304,7 @@ if(W.flags_item & ITEM_ABSTRACT) return - if(istype(W, /obj/item/weapon/wristblades)) + if(istype(W, /obj/item/weapon/bracer_attachment)) if(rand(0, 2) == 0) playsound(src.loc, 'sound/weapons/wristblades_hit.ogg', 25, 1) user.visible_message(SPAN_DANGER("[user] slices [src] apart!"), diff --git a/code/game/sound.dm b/code/game/sound.dm index 662bc8ff96e2..051fa578d957 100644 --- a/code/game/sound.dm +++ b/code/game/sound.dm @@ -373,6 +373,10 @@ sound = pick('sound/voice/warcry/male_go.ogg', 'sound/voice/warcry/male_attack.ogg', 'sound/voice/warcry/male_charge.ogg', 'sound/voice/warcry/male_charge2.ogg', 'sound/voice/warcry/warcry_male_1.ogg', 'sound/voice/warcry/warcry_male_2.ogg', 'sound/voice/warcry/warcry_male_3.ogg', 'sound/voice/warcry/warcry_male_4.ogg', 'sound/voice/warcry/warcry_male_5.ogg', 'sound/voice/warcry/warcry_male_6.ogg', 'sound/voice/warcry/warcry_male_7.ogg', 'sound/voice/warcry/warcry_male_8.ogg', 'sound/voice/warcry/warcry_male_9.ogg', 'sound/voice/warcry/warcry_male_10.ogg', 'sound/voice/warcry/warcry_male_11.ogg', 'sound/voice/warcry/warcry_male_12.ogg', 'sound/voice/warcry/warcry_male_13.ogg', 'sound/voice/warcry/warcry_male_14.ogg', 'sound/voice/warcry/warcry_male_15.ogg', 'sound/voice/warcry/warcry_male_16.ogg', 'sound/voice/warcry/warcry_male_17.ogg', 'sound/voice/warcry/warcry_male_18.ogg', 'sound/voice/warcry/warcry_male_19.ogg', 'sound/voice/warcry/warcry_male_20.ogg', 'sound/voice/warcry/warcry_male_21.ogg', 'sound/voice/warcry/warcry_male_22.ogg', 'sound/voice/warcry/warcry_male_23.ogg', 'sound/voice/warcry/warcry_male_24.ogg', 'sound/voice/warcry/warcry_male_25.ogg', 'sound/voice/warcry/warcry_male_26.ogg', 'sound/voice/warcry/warcry_male_27.ogg', 'sound/voice/warcry/warcry_male_28.ogg', 'sound/voice/warcry/warcry_male_29.ogg', 'sound/voice/warcry/warcry_male_30.ogg', 'sound/voice/warcry/warcry_male_31.ogg', 'sound/voice/warcry/warcry_male_32.ogg', 'sound/voice/warcry/warcry_male_33.ogg', 'sound/voice/warcry/warcry_male_34.ogg', 'sound/voice/warcry/warcry_male_35.ogg', 5;'sound/voice/warcry/warcry_male_rare_1.ogg', 5;'sound/voice/warcry/warcry_male_rare_2.ogg', 5;'sound/voice/warcry/warcry_male_rare_3.ogg', 5;'sound/voice/warcry/warcry_male_rare_4.ogg', 5;'sound/voice/warcry/warcry_male_rare_5.ogg') if("male_upp_warcry") sound = pick('sound/voice/upp_warcry/warcry_male_1.ogg', 'sound/voice/upp_warcry/warcry_male_2.ogg') + if("male_preburst") + sound = pick("sound/voice/human_male_preburst1.ogg", 'sound/voice/human_male_preburst2.ogg', 'sound/voice/human_male_preburst3.ogg', 'sound/voice/human_male_preburst4.ogg', 'sound/voice/human_male_preburst5.ogg', 'sound/voice/human_male_preburst6.ogg', 'sound/voice/human_male_preburst7.ogg', 'sound/voice/human_male_preburst8.ogg', 'sound/voice/human_male_preburst9.ogg') + if("male_hugged") + sound = pick("sound/voice/human_male_facehugged1.ogg", 'sound/voice/human_male_facehugged2.ogg', 'sound/voice/human_male_facehugged3.ogg') if("female_scream") sound = pick('sound/voice/human_female_scream_1.ogg','sound/voice/human_female_scream_2.ogg','sound/voice/human_female_scream_3.ogg','sound/voice/human_female_scream_4.ogg',5;'sound/voice/human_female_scream_5.ogg') if("female_pain") @@ -383,6 +387,10 @@ sound = pick('sound/voice/warcry/female_charge.ogg', 'sound/voice/warcry/female_yell1.ogg', 'sound/voice/warcry/warcry_female_1.ogg', 'sound/voice/warcry/warcry_female_2.ogg', 'sound/voice/warcry/warcry_female_3.ogg', 'sound/voice/warcry/warcry_female_4.ogg', 'sound/voice/warcry/warcry_female_5.ogg', 'sound/voice/warcry/warcry_female_6.ogg', 'sound/voice/warcry/warcry_female_7.ogg', 'sound/voice/warcry/warcry_female_8.ogg', 'sound/voice/warcry/warcry_female_9.ogg', 'sound/voice/warcry/warcry_female_10.ogg', 'sound/voice/warcry/warcry_female_11.ogg', 'sound/voice/warcry/warcry_female_12.ogg', 'sound/voice/warcry/warcry_female_13.ogg', 'sound/voice/warcry/warcry_female_14.ogg', 'sound/voice/warcry/warcry_female_15.ogg', 'sound/voice/warcry/warcry_female_16.ogg', 'sound/voice/warcry/warcry_female_17.ogg', 'sound/voice/warcry/warcry_female_18.ogg', 'sound/voice/warcry/warcry_female_19.ogg', 'sound/voice/warcry/warcry_female_20.ogg') if("female_upp_warcry") sound = pick('sound/voice/upp_warcry/warcry_female_1.ogg', 'sound/voice/upp_warcry/warcry_female_2.ogg') + if("female_preburst") + sound = pick("sound/voice/human_female_preburst1.ogg", 'sound/voice/human_female_preburst2.ogg', 'sound/voice/human_female_preburst3.ogg', 'sound/voice/human_female_preburst4.ogg', 'sound/voice/human_female_preburst5.ogg', 'sound/voice/human_female_preburst6.ogg', 'sound/voice/human_female_preburst7.ogg') + if("female_hugged") + sound = pick("sound/voice/human_female_facehugged1.ogg", 'sound/voice/human_female_facehugged2.ogg') if("rtb_handset") sound = pick('sound/machines/telephone/rtb_handset_1.ogg', 'sound/machines/telephone/rtb_handset_2.ogg', 'sound/machines/telephone/rtb_handset_3.ogg', 'sound/machines/telephone/rtb_handset_4.ogg', 'sound/machines/telephone/rtb_handset_5.ogg') if("talk_phone") @@ -396,6 +404,8 @@ sound = pick('sound/voice/cat_meow_1.ogg','sound/voice/cat_meow_2.ogg','sound/voice/cat_meow_3.ogg','sound/voice/cat_meow_4.ogg','sound/voice/cat_meow_5.ogg','sound/voice/cat_meow_6.ogg','sound/voice/cat_meow_7.ogg') if("pred_pain") sound = pick('sound/voice/pred_pain1.ogg','sound/voice/pred_pain2.ogg','sound/voice/pred_pain3.ogg','sound/voice/pred_pain4.ogg','sound/voice/pred_pain5.ogg',5;'sound/voice/pred_pain_rare1.ogg') + if("pred_preburst") + sound = pick('sound/voice/pred_pain_rare1.ogg') if("pred_death") sound = pick('sound/voice/pred_death1.ogg', 'sound/voice/pred_death2.ogg') if("pred_laugh4") diff --git a/code/game/turfs/floor_types.dm b/code/game/turfs/floor_types.dm index 096b39e988d2..5e72483f420f 100644 --- a/code/game/turfs/floor_types.dm +++ b/code/game/turfs/floor_types.dm @@ -1128,11 +1128,11 @@ /turf/open/floor/vault icon_state = "rockvault" -/turf/open/floor/vault/Initialize(mapload, type) - . = ..() - icon_state = "[type]vault" - +/turf/open/floor/vault/sandstone + icon_state = "sandstonevault" +/turf/open/floor/vault/alien + icon_state = "alienvault" /turf/open/floor/engine name = "reinforced floor" diff --git a/code/game/turfs/walls/wall_types.dm b/code/game/turfs/walls/wall_types.dm index 6db61002c2fe..8f18d1a3840a 100644 --- a/code/game/turfs/walls/wall_types.dm +++ b/code/game/turfs/walls/wall_types.dm @@ -627,6 +627,7 @@ INITIALIZE_IMMEDIATE(/turf/closed/wall/indestructible/splashscreen) icon_state = "solaris_rock" walltype = WALL_SOLARIS_ROCK hull = 1 + baseturfs = /turf/open/mars_cave/mars_cave_2 diff --git a/code/game/turfs/walls/walls.dm b/code/game/turfs/walls/walls.dm index f82ba6ddadaf..e8c7d84d8baf 100644 --- a/code/game/turfs/walls/walls.dm +++ b/code/game/turfs/walls/walls.dm @@ -79,6 +79,12 @@ for(var/i in GLOB.cardinals) T = get_step(src, i) + if(istype(T, /turf/closed/wall)) + var/turf/closed/wall/neighbour_wall = T + + neighbour_wall.update_connections() + neighbour_wall.update_icon() + //nearby glowshrooms updated for(var/obj/effect/glowshroom/shroom in T) if(!shroom.floor) //shrooms drop to the floor diff --git a/code/game/verbs/discord.dm b/code/game/verbs/discord.dm index 2446c89aafe5..e9c69481c93c 100644 --- a/code/game/verbs/discord.dm +++ b/code/game/verbs/discord.dm @@ -1,4 +1,4 @@ -/client/verb/discord_connect() +/client/proc/discord_connect() set name = "Discord Certify" set category = "OOC" @@ -8,13 +8,6 @@ to_chat(src, SPAN_ALERTWARNING("You don't have enough minutes - [CONFIG_GET(number/certification_minutes) - total_playtime] remaining.")) return - if(!player_data) - load_player_data() - - if(player_data.discord_link) - to_chat(src, SPAN_ALERTWARNING("You already have a linked Discord. Ask an Admin to remove it.")) - return - var/datum/view_record/discord_identifier/ident = locate() in DB_VIEW(/datum/view_record/discord_identifier, DB_AND( DB_COMP("playerid", DB_EQUALS, player_data.id), DB_COMP("realtime", DB_GREATER, world.realtime - 4 HOURS), diff --git a/code/game/verbs/ooc.dm b/code/game/verbs/ooc.dm index 4d52635c6f88..d379acac2722 100644 --- a/code/game/verbs/ooc.dm +++ b/code/game/verbs/ooc.dm @@ -142,7 +142,7 @@ var/display_name = S.key if(S.stat != DEAD && !isobserver(S)) - display_name = S.name + display_name = S.real_name msg = process_chat_markup(msg, list("*")) @@ -164,7 +164,7 @@ // Now handle admins display_name = S.key if(S.stat != DEAD && !isobserver(S)) - display_name = "[S.name]/([S.key])" + display_name = "[S.real_name]/([S.key])" for(var/client/C in GLOB.admins) if(!C.admin_holder || !(C.admin_holder.rights & R_MOD)) diff --git a/code/modules/admin/admin_verbs.dm b/code/modules/admin/admin_verbs.dm index 5f5135bd0905..9e7482714a3d 100644 --- a/code/modules/admin/admin_verbs.dm +++ b/code/modules/admin/admin_verbs.dm @@ -74,6 +74,8 @@ GLOBAL_LIST_INIT(admin_verbs_default, list( /client/proc/cmd_admin_tacmaps_panel, /client/proc/other_records, /client/proc/toggle_admin_afk_safety, + /client/proc/add_known_alt, + /client/proc/remove_known_alt, /client/proc/toogle_door_control, )) diff --git a/code/modules/admin/verbs/playsound.dm b/code/modules/admin/verbs/playsound.dm index 0763a0e10795..05bde482f504 100644 --- a/code/modules/admin/verbs/playsound.dm +++ b/code/modules/admin/verbs/playsound.dm @@ -16,36 +16,38 @@ var/announce_title = TRUE if(sound_mode == "Web") - var/ytdl = CONFIG_GET(string/invoke_youtubedl) - if(!ytdl) - to_chat(src, SPAN_BOLDWARNING("Youtube-dl was not configured, action unavailable"), confidential = TRUE) //Check config.txt for the INVOKE_YOUTUBEDL value + var/list/datum/internet_media/media_players = list() + + if(CONFIG_GET(string/invoke_youtubedl)) + media_players += new /datum/internet_media/yt_dlp + + if(CONFIG_GET(string/cobalt_base_api)) + media_players += new /datum/internet_media/cobalt + + if(!length(media_players)) + to_chat(src, SPAN_BOLDWARNING("Your server host has not set up any web media players.")) return - web_sound_input = input("Enter content URL (supported sites only)", "Play Internet Sound via youtube-dl") as text|null + web_sound_input = input("Enter content URL (supported sites only)", "Play Internet Sound") as text|null if(!istext(web_sound_input) || !length(web_sound_input)) return web_sound_input = trim(web_sound_input) - if(findtext(web_sound_input, ":") && !findtext(web_sound_input, GLOB.is_http_protocol)) - to_chat(src, SPAN_WARNING("Non-http(s) URIs are not allowed.")) - to_chat(src, SPAN_WARNING("For youtube-dl shortcuts like ytsearch: please use the appropriate full url from the website.")) - return + var/datum/media_response/response + for(var/datum/internet_media/player as anything in media_players) + response = player.get_media(web_sound_input) - var/list/output = world.shelleo("[ytdl] --geo-bypass --format \"bestaudio\[ext=mp3]/best\[ext=mp4]\[height<=360]/bestaudio\[ext=m4a]/bestaudio\[ext=aac]\" --dump-single-json --no-playlist -- \"[shell_url_scrub(web_sound_input)]\"") - var/errorlevel = output[SHELLEO_ERRORLEVEL] - var/stdout = output[SHELLEO_STDOUT] - var/stderr = output[SHELLEO_STDERR] + if(istype(response)) + break - if(errorlevel) - to_chat(src, SPAN_WARNING("Youtube-dl URL retrieval FAILED: [stderr]")) + if(!istype(response)) + to_chat(src, SPAN_BOLDWARNING("All configured web media players failed to provide a valid response:")) + for(var/datum/internet_media/player as anything in media_players) + to_chat(src, SPAN_WARNING("[player.type] error: [player.error]")) return - try - data = json_decode(stdout) - catch(var/exception/e) - to_chat(src, SPAN_WARNING("Youtube-dl JSON parsing FAILED: [e]: [stdout]")) - return + data = response.get_list() else if(sound_mode == "Upload") var/current_transport = CONFIG_GET(string/asset_transport) @@ -80,17 +82,21 @@ var/list/music_extra_data = list() if(data["url"]) music_extra_data["link"] = data["url"] - music_extra_data["title"] = data["title"] web_sound_url = data["url"] - title = data["title"] music_extra_data["start"] = data["start_time"] music_extra_data["end"] = data["end_time"] + if(isnull(data["title"])) + data["title"] = tgui_input_text(src, "What is the title of this media?", "Media Title") + title = data["title"] + music_extra_data["title"] = data["title"] + if(!must_send_assets && web_sound_url && !findtext(web_sound_url, GLOB.is_http_protocol)) to_chat(src, SPAN_BOLDWARNING("BLOCKED: Content URL not using http(s) protocol"), confidential = TRUE) to_chat(src, SPAN_WARNING("The media provider returned a content URL that isn't using the HTTP or HTTPS protocol"), confidential = TRUE) return + switch(tgui_alert(src, "Show the name of this sound to the players?", "Sound Name", list("Yes","No","Cancel"))) if("No") music_extra_data["title"] = "Admin sound" diff --git a/code/modules/almayer/machinery.dm b/code/modules/almayer/machinery.dm index d4ca5da20378..6ad4285ffb43 100644 --- a/code/modules/almayer/machinery.dm +++ b/code/modules/almayer/machinery.dm @@ -187,47 +187,6 @@ unslashable = TRUE unacidable = TRUE -/obj/structure/prop/almayer/ship_memorial - name = "slab of victory" - desc = "A ship memorial dedicated to the triumphs of the USCM and the fallen marines of this ship. On the left there are grand tales of victory etched into the slab. On the right there is a list of famous marines who have fallen in combat serving the USCM." - icon = 'icons/obj/structures/props/almayer_props64.dmi' - icon_state = "ship_memorial" - bound_width = 64 - bound_height = 32 - unslashable = TRUE - unacidable = TRUE - -/obj/structure/prop/almayer/ship_memorial/centcomm - name = "slab of remembrance" - desc = "A memorial to all Maintainer Team members that have retired from working on CM. No mentor names are present." - - -/obj/structure/prop/almayer/ship_memorial/centcomm/admin - desc = "A memorial to all Admins and Moderators who have retired from CM. No mentor names are present." - - -/obj/structure/prop/almayer/ship_memorial/attackby(obj/item/I, mob/user) - if(istype(I, /obj/item/dogtag)) - var/obj/item/dogtag/D = I - if(D.fallen_names) - to_chat(user, SPAN_NOTICE("You add [D] to [src].")) - GLOB.fallen_list += D.fallen_names - qdel(D) - return TRUE - else - . = ..() - -/obj/structure/prop/almayer/ship_memorial/get_examine_text(mob/user) - . = ..() - if((isobserver(user) || ishuman(user)) && GLOB.fallen_list) - var/faltext = "" - for(var/i = 1 to length(GLOB.fallen_list)) - if(i != length(GLOB.fallen_list)) - faltext += "[GLOB.fallen_list[i]], " - else - faltext += GLOB.fallen_list[i] - . += SPAN_NOTICE("To our fallen soldiers: [faltext].") - /obj/structure/prop/almayer/particle_cannon name = "\improper 75cm/140 Mark 74 General Atomics railgun" desc = "The Mark 74 Railgun is top of the line for space-based weaponry. Capable of firing a round with a diameter of 3/4ths of a meter at 24 kilometers per second. It also is capable of using a variety of round types which can be interchanged at any time with its newly designed feed system." diff --git a/code/modules/almayer/ship_memorial.dm b/code/modules/almayer/ship_memorial.dm new file mode 100644 index 000000000000..a1979908045f --- /dev/null +++ b/code/modules/almayer/ship_memorial.dm @@ -0,0 +1,386 @@ +/** + * Ship Memorial + * + * Lists all dead marines whose dog tags were recovered. + * Allows personnel, while alone, to inspect the memorial and see ghosts of the fallen. + * Squad marines have the ability to have a final goodbye with their squad if enough dog tags were collected. + */ + +#define COOLDOWN_SLAB_CHECK "cooldown_slab_check" +#define FLASHBACK_DEFAULT "flashback_default" +#define FLASHBACK_SQUAD "flashback_squad" +#define REQUIRED_DEAD_SQUADDIES 4 + +/obj/structure/prop/almayer/ship_memorial + name = "slab of victory" + desc = "A ship memorial dedicated to the triumphs of the USCM and the fallen marines of this ship. On the left there are grand tales of victory etched into the slab. On the right there is a list of famous marines who have fallen in combat serving the USCM." + icon = 'icons/obj/structures/props/almayer_props64.dmi' + icon_state = "ship_memorial" + bound_width = 64 + bound_height = 32 + unslashable = TRUE + unacidable = TRUE + //Sound files that play when a hallucination pops up. + ///Voicelines for male ghosts. + var/list/hallucination_sounds = list('sound/hallucinations/ghost_whisper_01.ogg', + 'sound/hallucinations/ghost_whisper_02.ogg', + 'sound/hallucinations/ghost_whisper_03.ogg', + 'sound/hallucinations/ghost_whisper_04.ogg', + 'sound/hallucinations/ghost_whisper_05.ogg', + 'sound/hallucinations/ghost_whisper_06.ogg', + 'sound/hallucinations/ghost_whisper_07.ogg', + 'sound/hallucinations/ghost_whisper_08.ogg', + 'sound/hallucinations/ghost_whisper_09.ogg', + 'sound/hallucinations/ghost_whisper_10.ogg', + 'sound/hallucinations/ghost_whisper_11.ogg', + 'sound/hallucinations/ghost_whisper_12.ogg', + 'sound/hallucinations/ghost_whisper_13.ogg' + ) + ///Voicelines for female ghosts. + var/list/hallucination_sounds_female = list('sound/hallucinations/ghost_whisper_female_01.ogg', + 'sound/hallucinations/ghost_whisper_female_02.ogg', + 'sound/hallucinations/ghost_whisper_female_03.ogg', + 'sound/hallucinations/ghost_whisper_female_04.ogg', + 'sound/hallucinations/ghost_whisper_female_05.ogg', + 'sound/hallucinations/ghost_whisper_female_06.ogg', + 'sound/hallucinations/ghost_whisper_female_07.ogg', + 'sound/hallucinations/ghost_whisper_female_08.ogg', + 'sound/hallucinations/ghost_whisper_female_09.ogg', + 'sound/hallucinations/ghost_whisper_female_10.ogg', + 'sound/hallucinations/ghost_whisper_female_11.ogg', + 'sound/hallucinations/ghost_whisper_female_12.ogg', + 'sound/hallucinations/ghost_whisper_female_13.ogg', + 'sound/hallucinations/ghost_whisper_female_14.ogg', + 'sound/hallucinations/ghost_whisper_female_15.ogg' + ) + ///All mobs that went through a squad flashback. + var/list/went_through_flashback = list() + ///Weakrefs of mobs of the dogtags that are placed on the slab. + var/list/datum/weakref/fallen_personnel = list() + +/obj/structure/prop/almayer/ship_memorial/centcomm + name = "slab of remembrance" + desc = "A memorial to all Maintainer Team members that have retired from working on CM. No mentor names are present." + +/obj/structure/prop/almayer/ship_memorial/centcomm/admin + desc = "A memorial to all Admins and Moderators who have retired from CM. No mentor names are present." + +/obj/structure/prop/almayer/ship_memorial/attackby(obj/item/attacking_item, mob/user) + if(istype(attacking_item, /obj/item/dogtag)) + var/obj/item/dogtag/attacking_dogtag = attacking_item + if(attacking_dogtag.fallen_names) + to_chat(user, SPAN_NOTICE("You add [attacking_dogtag] to [src].")) + GLOB.fallen_list += attacking_dogtag.fallen_names + fallen_personnel += attacking_dogtag.fallen_references + qdel(attacking_dogtag) + return TRUE + + return ..() + +/obj/structure/prop/almayer/ship_memorial/get_examine_text(mob/user) + . = ..() + if((isobserver(user) || ishuman(user)) && length(GLOB.fallen_list)) + var/faltext = "" + for(var/i = 1 to length(GLOB.fallen_list)) + if(i != length(GLOB.fallen_list)) + faltext += "[GLOB.fallen_list[i]], " + else + faltext += GLOB.fallen_list[i] + . += SPAN_NOTICE("To our fallen soldiers: [faltext].") + +/obj/structure/prop/almayer/ship_memorial/attack_hand(mob/living/carbon/human/user) + . = ..() + if(user.action_busy) + return ..() + + if(user in went_through_flashback) + to_chat(user, SPAN_NOTICE("It's all in the past now. You need to keep looking forward. It's what they would have wanted.")) + return ..() + + if(TIMER_COOLDOWN_CHECK(user, COOLDOWN_SLAB_CHECK)) + to_chat(user, SPAN_DANGER("You can't bring yourself to look at this right now.")) + return ..() + + ///References of all fallen personnel whose mobs still exist. + var/list/fallen_personnel_resolved = list() + resolve_refs(fallen_personnel_resolved) + + if(!length(fallen_personnel) || !length(fallen_personnel_resolved) || user.faction != FACTION_MARINE) + to_chat(user, SPAN_NOTICE("You start looking through the names on the slab but nothing catches your attention.")) + return ..() + + fallen_personnel_resolved = shuffle(fallen_personnel_resolved) + + to_chat(user, SPAN_NOTICE("You start looking through the names on the slab...")) + ///Text that's prefixed everytime a name is listed. + var/list/inspection_text = list("A name catches your eyes,", + "You know this name,", + "This one...", + "You recognize this name,", + "You take a deep breath and see", + "You remember them.", + "Your attention is drawn to this name,", + "You read the name on the slab,") + + var/list/voicelines = hallucination_sounds.Copy() + var/list/voicelines_female = hallucination_sounds_female.Copy() + + ///Did a flashback event trigger? + var/had_flashback = FALSE + for(var/i in 1 to clamp(length(fallen_personnel_resolved), 1, 8)) + if(!do_after(user, 4 SECONDS, INTERRUPT_ALL_OUT_OF_RANGE)) + if(had_flashback) + cancel_flashback(user, null, FLASHBACK_DEFAULT) + return ..() + + cancel_flashback(user) + return ..() + + ///Is someone else within a set range of the mob interacting with the slab? + var/interrupted_by_mob = FALSE + for(var/mob/living/mob in view(src, 6)) + if(mob != user && mob.stat == CONSCIOUS) + interrupted_by_mob = TRUE + + var/mob/living/carbon/human/person = fallen_personnel_resolved[i] + + //There is a chance for special flashback events to trigger, and a guaranteed one for squad marines + //if they recover enough dogtags from their squad. + if(!interrupted_by_mob && !had_flashback) + var/flashback_type + //If the user is part of a squad, check the memorial for dogtags belonging to their squad. + //If there are enough (equal or greater than REQUIRED_DEAD_SQUADDIES), trigger a special flashback sequence. + if(user.assigned_squad) + ///Every squad member of the user that is listed on the memorial. + var/list/squad_members = list() + for(var/mob/living/carbon/human/squad_member in fallen_personnel_resolved) + if(squad_member.assigned_squad == user.assigned_squad) + squad_members += squad_member + + if(length(squad_members) >= REQUIRED_DEAD_SQUADDIES) + flashback_type = FLASHBACK_SQUAD + INVOKE_ASYNC(src, PROC_REF(flashback_trigger), user, flashback_type, squad_members) + return + + if(prob(i*2) && length(fallen_personnel_resolved) >= 5) + had_flashback = TRUE + flashback_type = FLASHBACK_DEFAULT + INVOKE_ASYNC(src, PROC_REF(flashback_trigger), user, flashback_type, fallen_personnel_resolved) + + //If we somehow lose a mob reference, we need to account for it. + if(!person) + to_chat(user, SPAN_NOTICE("You can't bring yourself to read this name... you press on.")) + continue + + to_chat(user, SPAN_NOTICE("[pick_n_take(inspection_text)] [person], [GET_DEFAULT_ROLE(person.job)].")) + + if(interrupted_by_mob || !user.client) + continue + + ///The ghost that is generated this iteration. + var/obj/effect/client_image_holder/memorial_ghost/ghost = generate_ghost(person, user) + if(!ghost) + continue + + ///Gender of the generated ghost. + var/ghost_gender = person.get_gender() + if(ghost_gender == FEMALE) + playsound_client(user.client, pick_n_take(voicelines_female), ghost.loc, 55) + else + playsound_client(user.client, pick_n_take(voicelines), ghost.loc, 100) + + //Faulty generation can cause the ghost to get qdel'd before this proc runs. + if(!QDELETED(ghost)) + addtimer(CALLBACK(ghost, TYPE_PROC_REF(/obj/effect/client_image_holder/memorial_ghost, disappear)), rand(1.5 SECONDS, 1.9 SECONDS)) + + if(had_flashback) + TIMER_COOLDOWN_START(user, COOLDOWN_SLAB_CHECK, 60 SECONDS) + + ///A sentence that's displayed at the end of the slab interaction. + var/list/realization_text = list("Those people were your family.", + "You'll never forget. Even if it hurts to remember.", + "They're gone. And you'll never see them again.", + "You say your goodbyes silently.", + "Nothing good lasts forever.") + addtimer(CALLBACK(GLOBAL_PROC, GLOBAL_PROC_REF(to_chat), user, SPAN_NOTICE("[pick(realization_text)]")), 1 SECONDS) + +///Proc for resolving weakrefs from fallen_personnel. +/obj/structure/prop/almayer/ship_memorial/proc/resolve_refs(list/list_to_add) + for(var/i in 1 to length(fallen_personnel)) + var/resolved_mob = fallen_personnel[i].resolve() + if(resolved_mob) + list_to_add += resolved_mob + else + //weakref didn't get resolved, bad reference. remove it from the list. + fallen_personnel -= fallen_personnel[i] + +///Proc for canceling memorial interaction. Used when interrupted by a mob or when the do_after() is cancelled. +/obj/structure/prop/almayer/ship_memorial/proc/cancel_flashback(mob/user, list/ghosts, flashback_type) + switch(flashback_type) + if(FLASHBACK_DEFAULT) + to_chat(user, SPAN_DANGER("You turn away from the slab. You turn away from them all...")) + TIMER_COOLDOWN_START(user, COOLDOWN_SLAB_CHECK, 25 SECONDS) + if(FLASHBACK_SQUAD) + to_chat(user, SPAN_DANGER("You turn your back on your squad. You just can't. Not now.")) + TIMER_COOLDOWN_START(user, COOLDOWN_SLAB_CHECK, 10 SECONDS) + else + to_chat(user, SPAN_NOTICE("...maybe it's better to forget.")) + + if(length(ghosts)) + for(var/obj/effect/client_image_holder/memorial_ghost/ghost in ghosts) + ghost.disappear() + +///Proc for generating a ghost image of a mob. +/obj/structure/prop/almayer/ship_memorial/proc/generate_ghost(person, mob/living/user, range = 3) + if(!person) + return + + ///All acceptable turfs where the ghost could spawn. + var/list/ghost_turf = list() + for(var/turf/turf in range(user.loc, range)) + var/bad_turf = FALSE + if(turf.density || istype(turf, /turf/open/space)) + continue + + if(!(user in view(3, turf))) + continue + + for(var/obj/object in turf) + if(object.density || istype(object, /obj/effect/client_image_holder/memorial_ghost)) + bad_turf = TRUE + break + + for(var/mob/mob in turf) + bad_turf = TRUE + break + + if(bad_turf) + continue + + ghost_turf += turf + + if(!length(ghost_turf)) + return + + var/turf/spawn_loc = pick(ghost_turf) + var/dir_to_face = get_dir(spawn_loc, user.loc) + var/obj/effect/client_image_holder/memorial_ghost/ghost = new(spawn_loc, user, person, dir_to_face) + + return ghost + +///Proc that handles special flashback events. +/obj/structure/prop/almayer/ship_memorial/proc/flashback_trigger(mob/living/carbon/human/user, flashback_type = FLASHBACK_DEFAULT, list/mob_references) + playsound_client(user.client, 'sound/hallucinations/ears_ringing.ogg', user.loc, 40) + to_chat(user, SPAN_DANGER("It's like time has stopped. All you can focus on are the names on that list.")) + user.apply_effect(6, ROOT) + user.apply_effect(6, STUTTER) + + sleep(1 SECONDS) + + ///Every ghost that was generated in the flashback event. + var/list/image/all_ghosts = list() + + switch(flashback_type) + //Default flashback. Spawns ghost images of every (max 16) name listed on the memorial. + if(FLASHBACK_DEFAULT) + var/list/references_copy = mob_references.Copy() + for(var/i = clamp(length(references_copy), 1, 16), i > 0, i--) + if(!do_after(user, 0.1 SECONDS, INTERRUPT_ALL_OUT_OF_RANGE)) + cancel_flashback(user, all_ghosts, FLASHBACK_DEFAULT) + return + + for(var/times_to_generate = rand(1, 2), times_to_generate > 0, times_to_generate--) + all_ghosts += generate_ghost(pick_n_take(references_copy), user, 4) + + for(var/obj/effect/client_image_holder/memorial_ghost/ghost in all_ghosts) + ghost.disappear() + + //Special flashback reserved for squad marines that is guaranteed to trigger if there are REQUIRED_DEAD_SQUADDIES amount + //of squad dogtags on the memorial. Only counts the squad members from which the user is a part of. + //Spawns ghost images of all (max 12) dead squad members listed on the memorial. + //On completion, the user can no longer interact with the slab. A final goodbye. + if(FLASHBACK_SQUAD) + var/list/inspection_text = list("Could you have saved them? You sigh and continue reading.", + "Thinking someone is behind you, you turn around. Nothing. You look back at the names.", + "You're not alone. You're sure of it. The next name reads", + "Deep down, you knew it would come to this. You set your eyes back on the slab.", + "You always thought it'd be you on that slab. Guess not.", + "You wish you could have taken their place. You keep reading.", + "It goes dark for a moment. Then you see", + "This is what duty gets you. A name on a plaque. The following name reads", + "You had fond memories with these people.", + "It's a lot to take in. They're gone, and you'll never see them again.", + "Every name you read feels like a dead family member to remember.", + "It's almost as if they were still here. Alive. You keep reading," + ) + + inspection_text = shuffle(inspection_text) + + var/list/voicelines = hallucination_sounds.Copy() + var/list/voicelines_female = hallucination_sounds_female.Copy() + for(var/i = clamp(length(mob_references), 1, 12), i > 0, i--) + if(!do_after(user, 4 SECONDS, INTERRUPT_ALL_OUT_OF_RANGE)) + cancel_flashback(user, all_ghosts, FLASHBACK_SQUAD) + return + + for(var/mob/living/mob in view(src, 6)) + if(mob != user && mob.stat == CONSCIOUS) + cancel_flashback(user, all_ghosts, FLASHBACK_SQUAD) + return + + var/mob/living/carbon/human/picked_member = pick_n_take(mob_references) + var/obj/effect/client_image_holder/memorial_ghost/generated_ghost = generate_ghost(picked_member, user, 2) + all_ghosts += generated_ghost + + var/ghost_gender = picked_member.get_gender() + if(ghost_gender == FEMALE) + playsound_client(user.client, pick_n_take(voicelines_female), generated_ghost.loc, 55) + else + playsound_client(user.client, pick_n_take(voicelines), generated_ghost.loc, 100) + + to_chat(user, SPAN_DANGER("[pick_n_take(inspection_text)] [picked_member], [GET_DEFAULT_ROLE(picked_member.job)].")) + sleep(rand(0.5 SECONDS, 0.7 SECONDS)) + + went_through_flashback += user + sleep(5 SECONDS) + + for(var/obj/effect/client_image_holder/memorial_ghost/ghost in all_ghosts) + ghost.disappear() + + ///Name of the user, split so we can retrieve their first name. + var/list/split_name = splittext(user.name, " ") + to_chat(user, SPAN_NOTICE("You hear someone whisper 'Thank you, [split_name[1]]. Goodbye.' into your ear.")) + addtimer(CALLBACK(GLOBAL_PROC, GLOBAL_PROC_REF(to_chat), user, SPAN_NOTICE("It feels final. Maybe it's time to look forward now.")), 3 SECONDS) + +#undef COOLDOWN_SLAB_CHECK +#undef FLASHBACK_DEFAULT +#undef FLASHBACK_SQUAD +#undef REQUIRED_DEAD_SQUADDIES + +/obj/effect/client_image_holder/memorial_ghost + desc = "May we never forget freedom isn't free." + var/mob/living/mob_reference + +/obj/effect/client_image_holder/memorial_ghost/proc/disappear() + var/time_to_disappear = rand(0.4 SECONDS, 0.8 SECONDS) + animate(shown_image, alpha = 0, QUAD_EASING, time = time_to_disappear) + QDEL_IN(src, time_to_disappear) + +/obj/effect/client_image_holder/memorial_ghost/Initialize(mapload, list/mobs_which_see_us, mob/living/reference = null, direction_to_face) + mob_reference = reference + if(!mob_reference) + return INITIALIZE_HINT_QDEL + + dir = direction_to_face + name = mob_reference.name + return ..() + +/obj/effect/client_image_holder/memorial_ghost/generate_image() + var/image/created = image(null, src, null, image_layer, src.dir, image_pixel_x, image_pixel_y) + created.appearance = mob_reference.appearance + created.transform = matrix(mob_reference.base_transform) + created.alpha = 0 + if(image_color) + created.color = image_color + animate(created, alpha = 120, QUAD_EASING, time = rand(0.3 SECONDS, 0.5 SECONDS)) + return created diff --git a/code/modules/asset_cache/asset_list.dm b/code/modules/asset_cache/asset_list.dm index 828472ad9573..3c721d923062 100644 --- a/code/modules/asset_cache/asset_list.dm +++ b/code/modules/asset_cache/asset_list.dm @@ -324,6 +324,33 @@ GLOBAL_LIST_EMPTY(asset_datums) /datum/asset/simple/namespaced/proc/get_htmlloader(filename) return url2htmlloader(SSassets.transport.get_asset_url(filename, assets[filename])) +/// A subtype to generate a JSON file from a list +/datum/asset/json + _abstract = /datum/asset/json + /// The filename, will be suffixed with ".json" + var/name + +/datum/asset/json/send(client) + return SSassets.transport.send_assets(client, "[name].json") + +/datum/asset/json/get_url_mappings() + return list( + "[name].json" = SSassets.transport.get_asset_url("[name].json"), + ) + +/datum/asset/json/register() + var/filename = "data/[name].json" + fdel(filename) + text2file(json_encode(generate()), filename) + SSassets.transport.register_asset("[name].json", fcopy_rsc(filename)) + fdel(filename) + +/// Returns the data that will be JSON encoded +/datum/asset/json/proc/generate() + SHOULD_CALL_PARENT(FALSE) + CRASH("generate() not implemented for [type]!") + + /datum/asset/changelog_item _abstract = /datum/asset/changelog_item var/item_filename diff --git a/code/modules/asset_cache/assets/icon_ref_map.dm b/code/modules/asset_cache/assets/icon_ref_map.dm new file mode 100644 index 000000000000..6e2660fc7437 --- /dev/null +++ b/code/modules/asset_cache/assets/icon_ref_map.dm @@ -0,0 +1,27 @@ +/// Maps icon names to ref values +/datum/asset/json/icon_ref_map + name = "icon_ref_map" + +/datum/asset/json/icon_ref_map/generate() + var/list/data = list() //"icons/obj/drinks.dmi" => "[0xc000020]" + + //var/start = "0xc000000" + var/value = 0 + + while(TRUE) + value += 1 + var/ref = "\[0xc[num2text(value,6,16)]\]" + var/mystery_meat = locate(ref) + + if(isicon(mystery_meat)) + if(!isfile(mystery_meat)) // Ignore the runtime icons for now + continue + var/path = get_icon_dmi_path(mystery_meat) //Try to get the icon path + if(path) + data[path] = ref + else if(mystery_meat) + continue; //Some other non-icon resource, ogg/json/whatever + else //Out of resources end this, could also try to end this earlier as soon as runtime generated icons appear but eh + break; + + return data diff --git a/code/modules/autowiki/pages/supply_packs.dm b/code/modules/autowiki/pages/supply_packs.dm new file mode 100644 index 000000000000..a078a3ce75d4 --- /dev/null +++ b/code/modules/autowiki/pages/supply_packs.dm @@ -0,0 +1,38 @@ +/datum/autowiki/supply_packs + generate_multiple = TRUE + page = "Template:Autowiki/Content/SupplyPacks" + + +/datum/autowiki/supply_packs/generate_multiple() + + var/output = list() + + //Gets the subtypes of all supply_packs + for(var/typepath in subtypesof(/datum/supply_packs)) + var/datum/supply_packs/my_pack = GLOB.supply_packs_datums[typepath] + + + var/list/contents = list() + for(var/obj/contents_type as anything in my_pack.contains) + //So long as there is something in the contaienr it will add it to the list + if(!length(my_pack.contains)) + return + contents += contents_type::name + + var/obj/structure/closet/crate/container_typepath = my_pack.containertype + var/container_filename = container_typepath ? SANITIZE_FILENAME(escape_value(format_text("[container_typepath::icon]-[container_typepath::icon_state]"))) : null + if(container_filename && !fexists("data/autowiki_files/[container_filename].png")) + var/obj/structure/closet/crate/generating_crate = new my_pack.containertype + upload_icon(getFlatIcon(generating_crate, no_anim = TRUE), container_filename) + + var/page_name = SANITIZE_FILENAME(replacetext(strip_improper(my_pack.name), " ", "_")) + var/to_add = list(title = "Template:Autowiki/Content/SupplyPack/[page_name]", text = include_template("Autowiki/SupplyPack",list( + "icon" = container_filename, + "name" = my_pack.name, + "cost" = my_pack.cost, + "contents" = contents.Join(", ") + ) + )) + output += list(to_add) + + return output diff --git a/code/modules/buildmode/submodes/variable_edit.dm b/code/modules/buildmode/submodes/variable_edit.dm index 7517012583da..9013934eebf2 100644 --- a/code/modules/buildmode/submodes/variable_edit.dm +++ b/code/modules/buildmode/submodes/variable_edit.dm @@ -27,7 +27,7 @@ var/list/locked = list("vars", "key", "ckey", "client", "icon") selected_key = input(usr,"Enter variable name:" ,"Name", "name") - if(selected_key in locked && !check_rights(R_DEBUG,0)) + if((selected_key in locked) && !check_rights(R_DEBUG, FALSE)) return TRUE var/type = tgui_input_list(usr,"Select variable type:", "Type", list(TYPE_TEXT, TYPE_NUMBER, TYPE_MOB_REFERENCE, TYPE_OBJ_REFERENCE, TYPE_TURF_REFERENCE)) diff --git a/code/modules/client/color_picker.dm b/code/modules/client/color_picker.dm new file mode 100644 index 000000000000..f3eda08af544 --- /dev/null +++ b/code/modules/client/color_picker.dm @@ -0,0 +1,74 @@ +/datum/body_picker/ui_static_data(mob/user) + . = ..() + + .["icon"] = /datum/species::icobase + + .["body_types"] = list() + for(var/key in GLOB.body_type_list) + var/datum/body_type/type = GLOB.body_type_list[key] + .["body_types"] += list( + list("name" = type.name, "icon" = type.icon_name) + ) + + .["skin_colors"] = list() + for(var/key in GLOB.skin_color_list) + var/datum/skin_color/color = GLOB.skin_color_list[key] + .["skin_colors"] += list( + list("name" = color.name, "icon" = color.icon_name, "color" = color.color) + ) + + .["body_sizes"] = list() + for(var/key in GLOB.body_size_list) + var/datum/body_size/size = GLOB.body_size_list[key] + .["body_sizes"] += list( + list("name" = size.name, "icon" = size.icon_name) + ) + +/datum/body_picker/ui_data(mob/user) + . = ..() + + .["body_type"] = GLOB.body_type_list[user.client.prefs.body_type].icon_name + .["skin_color"] = GLOB.skin_color_list[user.client.prefs.skin_color].icon_name + .["body_size"] = GLOB.body_size_list[user.client.prefs.body_size].icon_name + +/datum/body_picker/ui_act(action, list/params, datum/tgui/ui, datum/ui_state/state) + . = ..() + + var/datum/preferences/prefs = ui.user.client.prefs + + switch(action) + if("type") + if(!GLOB.body_type_list[params["name"]]) + return + + prefs.body_type = params["name"] + + if("size") + if(!GLOB.body_size_list[params["name"]]) + return + + prefs.body_size = params["name"] + + if("color") + if(!GLOB.skin_color_list[params["name"]]) + return + + prefs.skin_color = params["name"] + + prefs.ShowChoices(ui.user) + return TRUE + +/datum/body_picker/tgui_interact(mob/user, datum/tgui/ui) + . = ..() + + ui = SStgui.try_update_ui(user, src, ui) + + if(!ui) + ui = new(user, src, "BodyPicker", "Body Picker") + ui.open() + ui.set_autoupdate(FALSE) + + winset(user, ui.window.id, "focus=true") + +/datum/body_picker/ui_state(mob/user) + return GLOB.always_state diff --git a/code/modules/client/preferences.dm b/code/modules/client/preferences.dm index b694e32a80b4..970595a5a045 100644 --- a/code/modules/client/preferences.dm +++ b/code/modules/client/preferences.dm @@ -30,6 +30,8 @@ GLOBAL_LIST_INIT(bgstate_options, list( var/atom/movable/screen/rotate/alt/rotate_left var/atom/movable/screen/rotate/rotate_right + var/static/datum/body_picker/picker = new + //doohickeys for savefiles var/path var/default_slot = 1 //Holder so it doesn't default to slot 1, rather the last one used @@ -101,7 +103,6 @@ GLOBAL_LIST_INIT(bgstate_options, list( var/predator_mask_material = "ebony" var/predator_greave_material = "ebony" var/predator_caster_material = "ebony" - var/predator_cape_type = "None" var/predator_cape_color = "#654321" var/predator_flavor_text = "" //CO-specific preferences @@ -341,10 +342,13 @@ GLOBAL_LIST_INIT(bgstate_options, list( dat += "

Physical Information:" dat += "®

" dat += "Age: [age]
" - dat += "Gender: [gender == MALE ? "Male" : "Female"]
" - dat += "Skin Color: [skin_color]
" - dat += "Body Size: [body_size]
" - dat += "Body Muscularity: [body_type]
" + dat += "Gender: [gender == MALE ? "Male" : "Female"]

" + + dat += "Skin Color: [skin_color]
" + dat += "Body Size: [body_size]
" + dat += "Body Muscularity: [body_type]
" + dat += "Edit Body: Picker

" + dat += "Traits: Character Traits" dat += "
" @@ -541,7 +545,6 @@ GLOBAL_LIST_INIT(bgstate_options, list( dat += "
" dat += "

Clothing Setup:

" - dat += "Cape Type: [capitalize_first_letters(predator_cape_type)]
" dat += "Cape Color: " dat += "" dat += "Color " @@ -1309,10 +1312,10 @@ GLOBAL_LIST_INIT(bgstate_options, list( return predator_translator_type = new_translator_type if("pred_mask_type") - var/new_predator_mask_type = tgui_input_number(user, "Choose your mask type:\n(1-12)", "Mask Selection", 1, 12, 1) + var/new_predator_mask_type = tgui_input_number(user, "Choose your mask type:\n(1-19)", "Mask Selection", 1, 19, 1) if(new_predator_mask_type) predator_mask_type = floor(text2num(new_predator_mask_type)) if("pred_armor_type") - var/new_predator_armor_type = tgui_input_number(user, "Choose your armor type:\n(1-7)", "Armor Selection", 1, 7, 1) + var/new_predator_armor_type = tgui_input_number(user, "Choose your armor type:\n(1-8)", "Armor Selection", 1, 8, 1) if(new_predator_armor_type) predator_armor_type = floor(text2num(new_predator_armor_type)) if("pred_boot_type") var/new_predator_boot_type = tgui_input_number(user, "Choose your greaves type:\n(1-4)", "Greave Selection", 1, 4, 1) @@ -1337,20 +1340,6 @@ GLOBAL_LIST_INIT(bgstate_options, list( if(!new_pred_caster_mat) return predator_caster_material = new_pred_caster_mat - if("pred_cape_type") - var/datum/job/J = GLOB.RoleAuthority.roles_by_name[JOB_PREDATOR] - var/whitelist_status = GLOB.clan_ranks_ordered[J.get_whitelist_status(owner)] - - var/list/options = list("None" = "None") - for(var/cape_name in GLOB.all_yautja_capes) - var/obj/item/clothing/yautja_cape/cape = GLOB.all_yautja_capes[cape_name] - if(whitelist_status >= initial(cape.clan_rank_required) || (initial(cape.councillor_override) && (whitelist_flags & (WHITELIST_YAUTJA_COUNCIL|WHITELIST_YAUTJA_COUNCIL_LEGACY)))) - options += list(capitalize_first_letters(cape_name) = cape_name) - - var/new_cape = tgui_input_list(user, "Choose your cape type:", "Cape Type", options) - if(!new_cape) - return - predator_cape_type = options[new_cape] if("pred_cape_color") var/new_cape_color = input(user, "Choose your cape color:", "Cape Color", predator_cape_color) as color|null if(!new_cape_color) @@ -1585,23 +1574,9 @@ GLOBAL_LIST_INIT(bgstate_options, list( if(new_h_gradient_style) grad_style = new_h_gradient_style - if ("skin_color") - var/new_skin_color = tgui_input_list(user, "Choose your character's skin color:", "Character Preferences", GLOB.skin_color_list) - - if (new_skin_color) - skin_color = new_skin_color - - if ("body_size") - var/new_body_size = tgui_input_list(user, "Choose your character's body size:", "Character Preferences", GLOB.body_size_list) - - if (new_body_size) - body_size = new_body_size - - if ("body_type") - var/new_body_type = tgui_input_list(user, "Choose your character's body type:", "Character Preferences", GLOB.body_type_list) - - if (new_body_type) - body_type = new_body_type + if ("body") + picker.tgui_interact(user) + return if("facial") var/new_facial = input(user, "Choose your character's facial-hair color:", "Character Preference", rgb(r_facial, g_facial, b_facial)) as color|null diff --git a/code/modules/client/preferences_gear.dm b/code/modules/client/preferences_gear.dm index 79fd34b2660c..6f649eb61ddb 100644 --- a/code/modules/client/preferences_gear.dm +++ b/code/modules/client/preferences_gear.dm @@ -81,6 +81,7 @@ GLOBAL_LIST_EMPTY(gear_datums_by_name) /datum/gear/eyewear/bimex_shades display_name = "BiMex personal shades" path = /obj/item/clothing/glasses/sunglasses/big + cost = 5 /datum/gear/eyewear/sunglasses display_name = "Sunglasses" diff --git a/code/modules/client/preferences_savefile.dm b/code/modules/client/preferences_savefile.dm index eb17609ebe63..4b69960c761f 100644 --- a/code/modules/client/preferences_savefile.dm +++ b/code/modules/client/preferences_savefile.dm @@ -272,7 +272,6 @@ S["pred_armor_mat"] >> predator_armor_material S["pred_greave_mat"] >> predator_greave_material S["pred_caster_mat"] >> predator_caster_material - S["pred_cape_type"] >> predator_cape_type S["pred_cape_color"] >> predator_cape_color S["pred_h_style"] >> predator_h_style S["pred_skin_color"] >> predator_skin_color @@ -358,7 +357,6 @@ predator_armor_material = sanitize_inlist(predator_armor_material, PRED_MATERIALS, initial(predator_armor_material)) predator_greave_material = sanitize_inlist(predator_greave_material, PRED_MATERIALS, initial(predator_greave_material)) predator_caster_material = sanitize_inlist(predator_caster_material, PRED_MATERIALS + "retro", initial(predator_caster_material)) - predator_cape_type = sanitize_inlist(predator_cape_type, GLOB.all_yautja_capes + "None", initial(predator_cape_type)) predator_cape_color = sanitize_hexcolor(predator_cape_color, initial(predator_cape_color)) predator_h_style = sanitize_inlist(predator_h_style, GLOB.yautja_hair_styles_list, initial(predator_h_style)) predator_skin_color = sanitize_inlist(predator_skin_color, PRED_SKIN_COLOR, initial(predator_skin_color)) @@ -474,7 +472,6 @@ S["pred_armor_mat"] << predator_armor_material S["pred_greave_mat"] << predator_greave_material S["pred_caster_mat"] << predator_caster_material - S["pred_cape_type"] << predator_cape_type S["pred_cape_color"] << predator_cape_color S["pred_h_style"] << predator_h_style S["pred_skin_color"] << predator_skin_color @@ -648,7 +645,7 @@ if(!organ_data) organ_data = list() - gear = sanitize_list(gear) + gear = sanitize_gear(gear, owner) traits = sanitize_list(traits) read_traits = FALSE diff --git a/code/modules/clothing/glasses/glasses.dm b/code/modules/clothing/glasses/glasses.dm index 44d1e0a8bd0b..56c8bb5a6418 100644 --- a/code/modules/clothing/glasses/glasses.dm +++ b/code/modules/clothing/glasses/glasses.dm @@ -193,6 +193,7 @@ item_state = "eyepatch" flags_armor_protection = 0 flags_equip_slot = SLOT_EYES|SLOT_FACE + flags_obj = OBJ_IS_HELMET_GARB /obj/item/clothing/glasses/monocle name = "monocle" @@ -219,6 +220,7 @@ prescription = TRUE flags_armor_protection = 0 flags_equip_slot = SLOT_EYES|SLOT_FACE + flags_obj = OBJ_IS_HELMET_GARB /obj/item/clothing/glasses/regular/hipster name = "Prescription Glasses" @@ -257,6 +259,7 @@ item_state = "mBCG" prescription = TRUE flags_equip_slot = SLOT_EYES|SLOT_FACE + flags_obj = OBJ_IS_HELMET_GARB /obj/item/clothing/glasses/m42_goggles name = "\improper M42 scout sight" @@ -548,8 +551,8 @@ flags_inv_hide = HIDEEYES eye_protection = EYE_PROTECTION_WELDING has_tint = TRUE - vision_impair = VISION_IMPAIR_MAX - var/vision_impair_on = VISION_IMPAIR_MAX + vision_impair = VISION_IMPAIR_ULTRA + var/vision_impair_on = VISION_IMPAIR_ULTRA var/vision_impair_off = VISION_IMPAIR_NONE /obj/item/clothing/glasses/welding/attack_self() @@ -620,6 +623,7 @@ item_state = "sunglasses" darkness_view = -1 flags_equip_slot = SLOT_EYES|SLOT_FACE + flags_obj = OBJ_IS_HELMET_GARB eye_protection = EYE_PROTECTION_FLAVOR /obj/item/clothing/glasses/sunglasses/blindfold @@ -628,13 +632,14 @@ desc = "Covers the eyes, preventing sight." icon_state = "blindfold" item_state = "blindfold" - //vision_flags = DISABILITY_BLIND // This flag is only supposed to be used if it causes permanent blindness, not temporary because of glasses + vision_impair = VISION_IMPAIR_MAX /obj/item/clothing/glasses/sunglasses/prescription desc = "A mixture of coolness and the inherent nerdiness of a prescription. Somehow manages to conceal both." name = "prescription sunglasses" prescription = TRUE flags_equip_slot = SLOT_EYES|SLOT_FACE + flags_obj = OBJ_IS_HELMET_GARB /obj/item/clothing/glasses/sunglasses/big name = "\improper BiMex personal shades" @@ -644,7 +649,7 @@ eye_protection = EYE_PROTECTION_FLASH clothing_traits = list(TRAIT_BIMEX) flags_equip_slot = SLOT_EYES|SLOT_FACE - + flags_obj = OBJ_IS_HELMET_GARB /obj/item/clothing/glasses/sunglasses/aviator name = "aviator shades" @@ -652,6 +657,7 @@ icon_state = "aviator" item_state = "aviator" flags_equip_slot = SLOT_EYES|SLOT_FACE + flags_obj = OBJ_IS_HELMET_GARB /obj/item/clothing/glasses/sunglasses/sechud name = "Security HUD-Glasses" @@ -659,6 +665,7 @@ icon_state = "sunhud" eye_protection = EYE_PROTECTION_FLASH hud_type = MOB_HUD_SECURITY_ADVANCED + flags_obj = OBJ_IS_HELMET_GARB /obj/item/clothing/glasses/sunglasses/sechud/prescription name = "Prescription Security HUD-Glasses" diff --git a/code/modules/clothing/head/helmet.dm b/code/modules/clothing/head/helmet.dm index c54228368035..cfa3eb5566cf 100644 --- a/code/modules/clothing/head/helmet.dm +++ b/code/modules/clothing/head/helmet.dm @@ -261,6 +261,8 @@ GLOBAL_LIST_INIT(allowed_helmet_items, list( /obj/item/clothing/glasses/sunglasses/sechud = "sechud", /obj/item/clothing/glasses/eyepatch = "eyepatch", /obj/item/clothing/glasses/regular/hipster = "persc-glasses", + /obj/item/clothing/glasses/regular = "persc-glasses", + /obj/item/clothing/glasses/mbcg = "persc-glasses", // WALKMAN AND CASSETTES /obj/item/device/walkman = HELMET_GARB_RELAY_ICON_STATE, diff --git a/code/modules/clothing/head/misc_special.dm b/code/modules/clothing/head/misc_special.dm index edc4a81b364a..598a08ca4f82 100644 --- a/code/modules/clothing/head/misc_special.dm +++ b/code/modules/clothing/head/misc_special.dm @@ -33,7 +33,7 @@ siemens_coefficient = 0.9 w_class = SIZE_MEDIUM eye_protection = EYE_PROTECTION_WELDING - vision_impair = VISION_IMPAIR_MAX + vision_impair = VISION_IMPAIR_ULTRA /obj/item/clothing/head/welding/attack_self(mob/user) ..() @@ -49,7 +49,7 @@ return if(up) - vision_impair = VISION_IMPAIR_MAX + vision_impair = VISION_IMPAIR_ULTRA flags_inventory |= COVEREYES|COVERMOUTH|BLOCKSHARPOBJ flags_inv_hide |= HIDEEARS|HIDEEYES|HIDEFACE icon_state = initial(icon_state) diff --git a/code/modules/clothing/under/ties.dm b/code/modules/clothing/under/ties.dm index b5ce6fdbdda8..f8b4bf55c461 100644 --- a/code/modules/clothing/under/ties.dm +++ b/code/modules/clothing/under/ties.dm @@ -106,56 +106,60 @@ icon_state = "stethoscope" /obj/item/clothing/accessory/stethoscope/attack(mob/living/carbon/human/being, mob/living/user) - if(ishuman(being) && isliving(user)) - if(user.a_intent == INTENT_HELP) - var/body_part = parse_zone(user.zone_selected) - if(body_part) - var/sound = null - if(being.stat == DEAD || (being.status_flags&FAKEDEATH)) - sound = "can't hear anything at all, they must have kicked the bucket" - else - switch(body_part) - if("chest") - if(skillcheck(user, SKILL_MEDICAL, SKILL_MEDICAL_MEDIC)) // only medical personnel can take advantage of it - if(!ishuman(being)) - return // not a human; only humans have the variable internal_organs_by_name // "cast" it a human type since we confirmed it is one - if(isnull(being.internal_organs_by_name)) - return // they have no organs somehow - var/datum/internal_organ/heart/heart = being.internal_organs_by_name["heart"] - if(heart) - switch(heart.organ_status) - if(ORGAN_LITTLE_BRUISED) - sound = "hear small murmurs with each heart beat, it is possible that [being.p_their()] heart is subtly damaged" - if(ORGAN_BRUISED) - sound = "hear deviant heart beating patterns, result of probable heart damage" - if(ORGAN_BROKEN) - sound = "hear irregular and additional heart beating patterns, probably caused by impaired blood pumping, [being.p_their()] heart is certainly failing" - else - sound = "hear normal heart beating patterns, [being.p_their()] heart is surely healthy" - var/datum/internal_organ/lungs/lungs = being.internal_organs_by_name["lungs"] - if(lungs) - if(sound) - sound += ". You also " - switch(lungs.organ_status) - if(ORGAN_LITTLE_BRUISED) - sound += "hear some crackles when [being.p_they()] breath, [being.p_they()] is possibly suffering from a small damage to the lungs" - if(ORGAN_BRUISED) - sound += "hear unusual respiration sounds and noticeable difficulty to breath, possibly signalling ruptured lungs" - if(ORGAN_BROKEN) - sound += "barely hear any respiration sounds and a lot of difficulty to breath, [being.p_their()] lungs are heavily failing" - else - sound += "hear normal respiration sounds aswell, that means [being.p_their()] lungs are healthy, probably" - else - sound = "can't hear. Really, anything at all, how weird" - else - sound = "hear a lot of sounds... it's quite hard to distinguish, really" - if("eyes","mouth") - sound = "can't hear anything. Maybe that isn't the smartest idea" + if(!ishuman(being) || !isliving(user)) + return + + var/body_part = parse_zone(user.zone_selected) + if(!body_part) + return + + var/sound = null + if(being.stat == DEAD || (being.status_flags & FAKEDEATH)) + sound = "can't hear anything at all, they must have kicked the bucket" + user.visible_message("[user] places [src] against [being]'s [body_part] and listens attentively.", "You place [src] against [being.p_their()] [body_part] and... you [sound].") + return + + switch(body_part) + if("chest") + if(skillcheck(user, SKILL_MEDICAL, SKILL_MEDICAL_MEDIC)) // only medical personnel can take advantage of it + if(!ishuman(being)) + return // not a human; only humans have the variable internal_organs_by_name // "cast" it a human type since we confirmed it is one + if(isnull(being.internal_organs_by_name)) + return // they have no organs somehow + var/datum/internal_organ/heart/heart = being.internal_organs_by_name["heart"] + if(heart) + switch(heart.organ_status) + if(ORGAN_LITTLE_BRUISED) + sound = "hear small murmurs with each heart beat, it is possible that [being.p_their()] heart is subtly damaged" + if(ORGAN_BRUISED) + sound = "hear deviant heart beating patterns, result of probable heart damage" + if(ORGAN_BROKEN) + sound = "hear irregular and additional heart beating patterns, probably caused by impaired blood pumping, [being.p_their()] heart is certainly failing" else - sound = "hear a sound here and there, but none of them give you any good information" - user.visible_message("[user] places [src] against [being]'s [body_part] and listens attentively.", "You place [src] against [being.p_their()] [body_part] and... you [sound].") - return - return ..(being,user) + sound = "hear normal heart beating patterns, [being.p_their()] heart is surely healthy" + var/datum/internal_organ/lungs/lungs = being.internal_organs_by_name["lungs"] + if(lungs) + if(sound) + sound += ". You also " + switch(lungs.organ_status) + if(ORGAN_LITTLE_BRUISED) + sound += "hear some crackles when [being.p_they()] breath, [being.p_they()] is possibly suffering from a small damage to the lungs" + if(ORGAN_BRUISED) + sound += "hear unusual respiration sounds and noticeable difficulty to breath, possibly signalling ruptured lungs" + if(ORGAN_BROKEN) + sound += "barely hear any respiration sounds and a lot of difficulty to breath, [being.p_their()] lungs are heavily failing" + else + sound += "hear normal respiration sounds aswell, that means [being.p_their()] lungs are healthy, probably" + else + sound = "can't hear. Really, anything at all, how weird" + else + sound = "hear a lot of sounds... it's quite hard to distinguish, really" + if("eyes","mouth") + sound = "can't hear anything. Maybe that isn't the smartest idea" + else + sound = "hear a sound here and there, but none of them give you any good information" + user.visible_message("[user] places [src] against [being]'s [body_part] and listens attentively.", "You place [src] against [being.p_their()] [body_part] and... you [sound].") + //Medals /obj/item/clothing/accessory/medal @@ -387,11 +391,13 @@ desc = "A fire-resistant shoulder patch, worn by the men and women of the United States Colonial Marines." icon_state = "uscmpatch" jumpsuit_hide_states = (UNIFORM_SLEEVE_CUT|UNIFORM_JACKET_REMOVED) + flags_obj = OBJ_IS_HELMET_GARB /obj/item/clothing/accessory/patch/falcon name = "USCM Falling Falcons patch" desc = "A fire-resistant shoulder patch, worn by the men and women of the Falling Falcons, the 2nd battalion of the 4th brigade of the USCM." icon_state = "fallingfalconspatch" + flags_obj = OBJ_IS_HELMET_GARB /obj/item/clothing/accessory/patch/devils name = "USCM Solar Devils patch" diff --git a/code/modules/cm_aliens/XenoStructures.dm b/code/modules/cm_aliens/XenoStructures.dm index 58a386510e8a..7058334b5f90 100644 --- a/code/modules/cm_aliens/XenoStructures.dm +++ b/code/modules/cm_aliens/XenoStructures.dm @@ -34,6 +34,10 @@ SP.linked_structure = src blocks.Add(SP) + var/area/current_area = get_area(src) + if(current_area.linked_lz) + AddComponent(/datum/component/resin_cleanup) + /obj/effect/alien/resin/Destroy() if(block_range) for(var/obj/effect/build_blocker/SP as anything in blocks) diff --git a/code/modules/cm_aliens/structures/special/egg_morpher.dm b/code/modules/cm_aliens/structures/special/egg_morpher.dm index 9a740133b1cc..e0691b0d4d28 100644 --- a/code/modules/cm_aliens/structures/special/egg_morpher.dm +++ b/code/modules/cm_aliens/structures/special/egg_morpher.dm @@ -3,24 +3,32 @@ //Eggmorpher - Basically a big reusable egg /obj/effect/alien/resin/special/eggmorph name = XENO_STRUCTURE_EGGMORPH - desc = "A disgusting, organic processor that reeks of rotting flesh. Capable of melting even bones into something far more useful." + desc = "A disgusting biomass generator that reeks of rotting flesh. Capable of producing facehuggers on its own." icon_state = "eggmorph" health = 300 - var/last_spawned = 0 - var/spawn_cooldown = 20 SECONDS + appearance_flags = KEEP_TOGETHER + layer = FACEHUGGER_LAYER + + ///How many huggers are stored in the egg morpher currently. var/stored_huggers = 0 - var/huggers_to_grow = 0 - var/huggers_per_corpse = 6 - var/huggers_to_grow_max = 12 + ///Max amount of huggers that can be stored in the egg morpoher. + var/huggers_max_amount = 12 + ///Max amount of huggers that can grow by itself. + var/huggers_to_grow_max = 6 + ///How many huggers are reserved from observers. var/huggers_reserved = 0 - var/mob/captured_mob + ///Datum used for mob detection. var/datum/shape/range_bounds + ///How long it takes to generate one facehugger. + var/spawn_cooldown_length = 120 SECONDS + ///How long it takes to generate one facehugger if queen is on ovi. + var/spawn_cooldown_length_ovi = 60 SECONDS + COOLDOWN_DECLARE(spawn_cooldown) - appearance_flags = KEEP_TOGETHER - layer = FACEHUGGER_LAYER /obj/effect/alien/resin/special/eggmorph/Initialize(mapload, hive_ref) . = ..() + COOLDOWN_START(src, spawn_cooldown, get_egg_cooldown()) range_bounds = SQUARE(x, y, EGGMORPG_RANGE) /obj/effect/alien/resin/special/eggmorph/Destroy() @@ -34,127 +42,76 @@ F = new(loc, linked_hive.hivenumber) step_away(F,src,1) - vis_contents.Cut() - QDEL_NULL(captured_mob) range_bounds = null - . = ..() /obj/effect/alien/resin/special/eggmorph/get_examine_text(mob/user) . = ..() if(isxeno(user) || isobserver(user)) - . += "It has [stored_huggers] facehuggers within, with [huggers_to_grow] more to grow (reserved: [huggers_reserved])." - if(isxeno(user) || isobserver(user)) + . += SPAN_NOTICE("\nIt has [stored_huggers] facehuggers within, with [max(0, huggers_to_grow_max - stored_huggers)] more to grow and a total capacity of [huggers_max_amount] facehuggers (reserved: [huggers_reserved]).") + var/current_hugger_count = linked_hive.get_current_playable_facehugger_count(); - . += "There are currently [SPAN_NOTICE("[current_hugger_count]")] facehuggers in the hive. The hive can support a total of [SPAN_NOTICE("[linked_hive.playable_hugger_limit]")] facehuggers at present." - -/obj/effect/alien/resin/special/eggmorph/attackby(obj/item/I, mob/user) - if(istype(I, /obj/item/grab)) - if(!isxeno(user)) return - var/obj/item/grab/G = I - if(iscarbon(G.grabbed_thing)) - var/mob/living/carbon/M = G.grabbed_thing - if(M.buckled) - to_chat(user, SPAN_XENOWARNING("Unbuckle first!")) - return - if(ishuman(M)) - var/mob/living/carbon/human/H = M - if(H.is_revivable()) - to_chat(user, SPAN_XENOWARNING("This one is not suitable yet!")) - return - if(isxeno(M)) - return - if(M == captured_mob) - to_chat(user, SPAN_XENOWARNING("[src] is already digesting [M]!")) - return - if(huggers_to_grow + stored_huggers >= huggers_to_grow_max) - to_chat(user, SPAN_XENOWARNING("\The [src] is already full! Using this one now would be a waste...")) - return - if(!do_after(user, 10, INTERRUPT_ALL|BEHAVIOR_IMMOBILE, BUSY_ICON_GENERIC)) - return - visible_message(SPAN_DANGER("\The [src] churns as it begins digest \the [M], spitting out foul-smelling fumes!")) - playsound(src, "alien_drool", 25) - if(captured_mob) - //Get rid of what we have there, we're overwriting it - qdel(captured_mob) - captured_mob = M - captured_mob.setDir(SOUTH) - captured_mob.moveToNullspace() - var/matrix/MX = matrix() - captured_mob.apply_transform(MX) - captured_mob.pixel_x = 16 - captured_mob.pixel_y = 16 - vis_contents += captured_mob - user.stop_pulling() // Automatically remove the grab - huggers_to_grow += huggers_per_corpse - update_icon() + . += SPAN_NOTICE("There are currently [current_hugger_count] facehuggers in the hive. The hive can support a total of [linked_hive.playable_hugger_limit] facehuggers at present.") + if(stored_huggers < huggers_to_grow_max) + . += SPAN_NOTICE("It'll grow another facehugger in [COOLDOWN_SECONDSLEFT(src, spawn_cooldown)] seconds.") + if(isxeno(user)) + var/mob/living/carbon/xenomorph/xeno = user + if(xeno.caste_type == XENO_CASTE_CARRIER) + . += SPAN_NOTICE("Using our Retrieve Egg ability, we can easily transfer our eggs into [src].") + +/obj/effect/alien/resin/special/eggmorph/attackby(obj/item/item, mob/user) + if(!isxeno(user)) return - if(istype(I, /obj/item/clothing/mask/facehugger)) - var/obj/item/clothing/mask/facehugger/F = I - if(F.stat != DEAD) - if(stored_huggers >= huggers_to_grow_max) + + if(istype(item, /obj/item/clothing/mask/facehugger)) + var/obj/item/clothing/mask/facehugger/hugger = item + if(hugger.stat != DEAD) + if(stored_huggers >= huggers_max_amount) to_chat(user, SPAN_XENOWARNING("\The [src] is full of children.")) return if(user) - visible_message(SPAN_XENOWARNING("[user] slides [F] back into \the [src]."), \ + visible_message(SPAN_XENOWARNING("[user] slides [hugger] back into \the [src]."), \ SPAN_XENONOTICE("You place the child back into \the [src].")) - user.temp_drop_inv_item(F) + user.temp_drop_inv_item(hugger) else - visible_message(SPAN_XENOWARNING("[F] crawls back into \the [src]!")) - stored_huggers = min(huggers_to_grow_max, stored_huggers + 1) - qdel(F) + visible_message(SPAN_XENOWARNING("[hugger] crawls back into \the [src]!")) + stored_huggers = min(huggers_max_amount, stored_huggers + 1) + qdel(hugger) else to_chat(user, SPAN_XENOWARNING("This child is dead.")) return + //refill egg morpher from an egg - if(istype(I, /obj/item/xeno_egg)) - var/obj/item/xeno_egg/egg = I - if(stored_huggers >= huggers_to_grow_max) + if(istype(item, /obj/item/xeno_egg)) + var/obj/item/xeno_egg/egg = item + if(stored_huggers >= huggers_max_amount) to_chat(user, SPAN_XENOWARNING("\The [src] is full of children.")) return if(user) visible_message(SPAN_XENOWARNING("[user] slides a facehugger out of \the [egg] into \the [src]."), \ SPAN_XENONOTICE("You place the child from an egg into \the [src].")) user.temp_drop_inv_item(egg) - stored_huggers = min(huggers_to_grow_max, stored_huggers + 1) + stored_huggers = min(huggers_max_amount, stored_huggers + 1) playsound(src.loc, "sound/effects/alien_egg_move.ogg", 25) qdel(egg) return - return ..(I, user) + + return ..(item, user) /obj/effect/alien/resin/special/eggmorph/update_icon() ..() appearance_flags |= KEEP_TOGETHER overlays.Cut() underlays.Cut() - if(captured_mob) - var/image/J = new(icon = icon, icon_state = "[icon_state]", layer = captured_mob.layer + 0.1) - overlays += J - var/image/I = new(icon = icon, icon_state = "[icon_state]_overlay", layer = captured_mob.layer + 0.2) - overlays += I underlays += "[icon_state]_underlay" /obj/effect/alien/resin/special/eggmorph/process() check_facehugger_target() - if(!linked_hive || !captured_mob || world.time < (last_spawned + spawn_cooldown)) + if(!linked_hive || !COOLDOWN_FINISHED(src, spawn_cooldown) || stored_huggers == huggers_to_grow_max) return - last_spawned = world.time - if(huggers_to_grow > 0) - huggers_to_grow-- + COOLDOWN_START(src, spawn_cooldown, get_egg_cooldown()) + if(stored_huggers < huggers_to_grow_max) stored_huggers = min(huggers_to_grow_max, stored_huggers + 1) - if(huggers_to_grow <= 0) - visible_message(SPAN_DANGER("\The [src] groans as its contents are reduced to nothing!")) - vis_contents.Cut() - - for(var/atom/movable/A in captured_mob.contents_recursive()) // Get rid of any intel objects so we don't delete them - if(isitem(A)) - var/obj/item/item = A - if(item.is_objective && item.unacidable) - item.forceMove(get_step(loc, pick(GLOB.alldirs))) - item.mouse_opacity = initial(item.mouse_opacity) - - QDEL_NULL(captured_mob) - update_icon() /obj/effect/alien/resin/special/eggmorph/proc/check_facehugger_target() if(!range_bounds) @@ -191,6 +148,10 @@ if(!linked_hive || (M.hivenumber != linked_hive.hivenumber)) return ..(M) if(stored_huggers) + //this way another hugger doesn't immediately spawn after we pick one up + if(stored_huggers == huggers_to_grow_max) + COOLDOWN_START(src, spawn_cooldown, get_egg_cooldown()) + to_chat(M, SPAN_XENONOTICE("You retrieve a child.")) stored_huggers = max(0, stored_huggers - 1) var/obj/item/clothing/mask/facehugger/hugger = new(loc, linked_hive.hivenumber) @@ -202,6 +163,11 @@ . = ..() //Do a view printout as needed just in case the observer doesn't want to join as a Hugger but wants info join_as_facehugger_from_this(user) +/obj/effect/alien/resin/special/eggmorph/proc/get_egg_cooldown() + if(linked_hive?.living_xeno_queen?.ovipositor) + return spawn_cooldown_length_ovi + return spawn_cooldown_length + /obj/effect/alien/resin/special/eggmorph/proc/join_as_facehugger_from_this(mob/dead/observer/user) if(stored_huggers <= huggers_reserved) to_chat(user, SPAN_WARNING("\The [src] doesn't have any facehuggers to inhabit.")) @@ -228,7 +194,7 @@ to_chat(usr, SPAN_WARNING("This belongs to another Hive! Yuck!")) return - morpher.huggers_reserved = tgui_input_number(usr, "How many facehuggers would you like to keep safe from Observers wanting to join as facehuggers?", "How many to reserve?", 0, morpher.huggers_to_grow_max, morpher.huggers_reserved) + morpher.huggers_reserved = tgui_input_number(usr, "How many facehuggers would you like to keep safe from Observers wanting to join as facehuggers?", "How many to reserve?", 0, morpher.huggers_max_amount, morpher.huggers_reserved) to_chat(usr, SPAN_XENONOTICE("You reserved [morpher.huggers_reserved] facehuggers for your sisters.")) diff --git a/code/modules/cm_aliens/weeds.dm b/code/modules/cm_aliens/weeds.dm index dd19b3d992f1..32c0ba3dd809 100644 --- a/code/modules/cm_aliens/weeds.dm +++ b/code/modules/cm_aliens/weeds.dm @@ -86,6 +86,10 @@ if(hivenumber == XENO_HIVE_NORMAL) RegisterSignal(SSdcs, COMSIG_GLOB_GROUNDSIDE_FORSAKEN_HANDLING, PROC_REF(forsaken_handling)) + var/area/area = get_area(src) + if(area && area.linked_lz) + AddComponent(/datum/component/resin_cleanup) + /obj/effect/alien/weeds/proc/set_turf_weeded(datum/source, turf/T) SIGNAL_HANDLER if(weeded_turf) diff --git a/code/modules/cm_marines/dropship_equipment.dm b/code/modules/cm_marines/dropship_equipment.dm index 4d4ac93f5f24..fe0fda34876d 100644 --- a/code/modules/cm_marines/dropship_equipment.dm +++ b/code/modules/cm_marines/dropship_equipment.dm @@ -698,9 +698,9 @@ break msg_admin_niche("[key_name(user)] is direct-firing [SA] onto [selected_target] at ([target_turf.x],[target_turf.y],[target_turf.z]) [ADMIN_JMP(target_turf)]") - if(ammo_travelling_time) + if(ammo_travelling_time && !istype(SA, /obj/structure/ship_ammo/rocket/thermobaric)) var/total_seconds = max(floor(ammo_travelling_time/10),1) - for(var/i = 0 to total_seconds) + for(var/i in 0 to total_seconds) sleep(10) if(!selected_target || !selected_target.loc)//if laser disappeared before we reached the target, ammo_accuracy_range++ //accuracy decreases @@ -710,6 +710,14 @@ var/list/possible_turfs = RANGE_TURFS(ammo_accuracy_range, target_turf) var/turf/impact = pick(possible_turfs) + + if(ammo_travelling_time && istype(SA, /obj/structure/ship_ammo/rocket/thermobaric)) + playsound(impact, ammo_warn_sound, ammo_warn_sound_volume, 1, 15) + var/total_seconds = max(floor(ammo_travelling_time / 10), 1) + for(var/i in 0 to total_seconds) + sleep(1 SECONDS) + new /obj/effect/overlay/temp/blinking_laser (impact) //no decreased accuracy if laser dissapears, it will land where it is telegraphed to land + if(ammo_warn_sound) playsound(impact, ammo_warn_sound, ammo_warn_sound_volume, 1,15) new /obj/effect/overlay/temp/blinking_laser (impact) diff --git a/code/modules/cm_marines/vehicle_part_fabricator.dm b/code/modules/cm_marines/vehicle_part_fabricator.dm index f04f0f1b0dd1..5033eb638f47 100644 --- a/code/modules/cm_marines/vehicle_part_fabricator.dm +++ b/code/modules/cm_marines/vehicle_part_fabricator.dm @@ -171,7 +171,6 @@ var/datum/build_queue_entry/entry = build_queue[index] build_queue.Remove(entry) - add_to_point_store(entry.cost) return TRUE else diff --git a/code/modules/cm_preds/yaut_actions.dm b/code/modules/cm_preds/yaut_actions.dm index 0894ea95adac..8930e133989d 100644 --- a/code/modules/cm_preds/yaut_actions.dm +++ b/code/modules/cm_preds/yaut_actions.dm @@ -15,6 +15,12 @@ ///If the action is currently on or in use var/active = FALSE +/datum/action/predator_action/remove_from(mob/user) + yautja = null + bracers = null + mask = null + . = ..() + /datum/action/predator_action/can_use_action() . = ..() if(!.) @@ -25,7 +31,7 @@ mask = null var/mob/living/carbon/human/mob = owner - if(!isyautja(mob)) + if(!ishuman(mob)) return FALSE if(mob.is_mob_incapacitated()) return FALSE @@ -90,16 +96,6 @@ . = ..() yautja.mark_panel() -/datum/action/predator_action/claim_equipment - name = "Claim Equipment" - action_icon_state = "claim_equipment" - listen_signal = COMSIG_KB_YAUTJA_PRED_BUY - active = PREDATOR_ACTION_ON_CLICK - -/datum/action/predator_action/claim_equipment/action_activate() - . = ..() - yautja.pred_buy() - //Actions that require wearing a mask /datum/action/predator_action/mask require_mask = TRUE @@ -155,13 +151,13 @@ require_bracers = TRUE /datum/action/predator_action/bracer/wristblade - name = "Toggle Wristblades" + name = "Use Bracer Attachments" action_icon_state = "wristblade" - listen_signal = COMSIG_KB_YAUTJA_WRISTBLADES + listen_signal = COMSIG_KB_YAUTJA_BRACER_ATTACHMENT /datum/action/predator_action/bracer/wristblade/action_activate() . = ..() - bracers.wristblades() + bracers.bracer_attachment() /datum/action/predator_action/bracer/chained name = "Yank Weapon" diff --git a/code/modules/cm_preds/yaut_bracers.dm b/code/modules/cm_preds/yaut_bracers.dm index 300c91801167..4150120f0f9d 100644 --- a/code/modules/cm_preds/yaut_bracers.dm +++ b/code/modules/cm_preds/yaut_bracers.dm @@ -46,26 +46,29 @@ var/obj/item/clothing/gloves/yautja/linked_bracer //Bracer linked to this one (thrall or mentor). COOLDOWN_DECLARE(bracer_recharge) /// What minimap icon this bracer should have - var/minimap_icon = "predator" + var/minimap_icon /obj/item/clothing/gloves/yautja/equipped(mob/user, slot) . = ..() if(slot == WEAR_HANDS) START_PROCESSING(SSobj, src) - if(!owner) - owner = user + owner = user + if(isyautja(owner)) + minimap_icon = owner.assigned_equipment_preset?.minimap_icon toggle_lock_internal(user, TRUE) RegisterSignal(user, list(COMSIG_MOB_STAT_SET_ALIVE, COMSIG_MOB_DEATH), PROC_REF(update_minimap_icon)) INVOKE_NEXT_TICK(src, PROC_REF(update_minimap_icon), user) /obj/item/clothing/gloves/yautja/Destroy() STOP_PROCESSING(SSobj, src) + owner = null if(linked_bracer) linked_bracer.linked_bracer = null linked_bracer = null return ..() /obj/item/clothing/gloves/yautja/dropped(mob/user) + owner = null STOP_PROCESSING(SSobj, src) flags_item = initial(flags_item) UnregisterSignal(user, list(COMSIG_MOB_STAT_SET_ALIVE, COMSIG_MOB_DEATH)) @@ -130,9 +133,9 @@ SSminimaps.add_marker(owner, wearer_turf.z, MINIMAP_FLAG_YAUTJA, "bracer_stolen", 'icons/ui_icons/map_blips.dmi') else if(owner?.stat >= DEAD) - SSminimaps.add_marker(owner, wearer_turf.z, MINIMAP_FLAG_YAUTJA, minimap_icon, 'icons/ui_icons/map_blips.dmi', overlay_iconstates = list("undefibbable")) //defib/undefib status doesn't really matter because they're gonna explode in the end regardless + SSminimaps.add_marker(owner, wearer_turf.z, MINIMAP_FLAG_YAUTJA, human_owner.assigned_equipment_preset.minimap_icon,, 'icons/ui_icons/map_blips.dmi', overlay_iconstates = list("undefibbable")) //defib/undefib status doesn't really matter because they're gonna explode in the end regardless else - SSminimaps.add_marker(owner, wearer_turf.z, MINIMAP_FLAG_YAUTJA, minimap_icon, 'icons/ui_icons/map_blips.dmi') + SSminimaps.add_marker(owner, wearer_turf.z, MINIMAP_FLAG_YAUTJA, human_owner.assigned_equipment_preset.minimap_icon, 'icons/ui_icons/map_blips.dmi') /* *This is the main proc for checking AND draining the bracer energy. It must have human passed as an argument. *It can take a negative value in amount to restore energy. @@ -272,13 +275,20 @@ var/caster_deployed = FALSE var/obj/item/weapon/gun/energy/yautja/plasma_caster/caster - var/wristblades_deployed = FALSE - var/obj/item/weapon/wristblades/left_wristblades - var/obj/item/weapon/wristblades/right_wristblades + var/bracer_attachment_deployed = FALSE + var/obj/item/bracer_attachments/left_bracer_attachment + var/obj/item/bracer_attachments/right_bracer_attachment ///A list of all intrinsic bracer actions var/list/bracer_actions = list(/datum/action/predator_action/bracer/wristblade, /datum/action/predator_action/bracer/caster, /datum/action/predator_action/bracer/cloak, /datum/action/predator_action/bracer/thwei, /datum/action/predator_action/bracer/capsule, /datum/action/predator_action/bracer/translator, /datum/action/predator_action/bracer/self_destruct, /datum/action/predator_action/bracer/smartdisc) +/obj/item/clothing/gloves/yautja/hunter/get_examine_text(mob/user) + . = ..() + if(left_bracer_attachment) + . += SPAN_NOTICE("The left bracer attachment is [left_bracer_attachment.attached_weapon].") + if(right_bracer_attachment) + . += SPAN_NOTICE("The right bracer attachment is [right_bracer_attachment.attached_weapon].") + /obj/item/clothing/gloves/yautja/hunter/Initialize(mapload, new_translator_type, new_caster_material, new_owner_rank) . = ..() if(new_owner_rank) @@ -289,8 +299,6 @@ if(new_caster_material) caster_material = new_caster_material caster = new(src, FALSE, caster_material) - left_wristblades = new(src) - right_wristblades = new(src) /obj/item/clothing/gloves/yautja/hunter/emp_act(severity) . = ..() @@ -335,6 +343,8 @@ /obj/item/clothing/gloves/yautja/hunter/Destroy() QDEL_NULL(caster) QDEL_NULL(embedded_id) + QDEL_NULL(left_bracer_attachment) + QDEL_NULL(right_bracer_attachment) return ..() /obj/item/clothing/gloves/yautja/hunter/process() @@ -375,7 +385,7 @@ //we have options from 1 to 7, but we're giving the user a higher probability of being punished if they already rolled this bad switch(option) if(1) - . = wristblades_internal(caller, TRUE) + . = attachment_internal(caller, TRUE) if(2) . = track_gear_internal(caller, TRUE) if(3) @@ -388,6 +398,8 @@ . = call_disc_internal(caller, TRUE) if(7) . = translate_internal(caller, TRUE) + if(8) + . = remove_attachment_internal(caller, TRUE) else . = delimb_user(caller) @@ -407,15 +419,147 @@ playsound(user,'sound/weapons/wristblades_on.ogg', 15, 1) return TRUE -//Should put a cool menu here, like ninjas. -/obj/item/clothing/gloves/yautja/hunter/verb/wristblades() - set name = "Use Wrist Blades" - set desc = "Extend your wrist blades. They cannot be dropped, but can be retracted." +//bracer attachments +/obj/item/bracer_attachments + name = "wristblade bracer attachment" + desc = "Report this if you see this." + icon = 'icons/obj/items/hunter/pred_gear.dmi' + ///Typepath of the weapon attached to the bracer + var/obj/item/attached_weapon_type + ///Reference to the weapon attached to the bracer + var/obj/item/attached_weapon + ///Attachment deployment sound + var/deployment_sound + ///Attachment rectraction sound + var/retract_sound + +/obj/item/bracer_attachments/Initialize(mapload, ...) + . = ..() + if(attached_weapon_type) + attached_weapon = new attached_weapon_type(src) + +/obj/item/bracer_attachments/Destroy() + QDEL_NULL(attached_weapon) + . = ..() + +/obj/item/bracer_attachments/wristblades + name = "wristblade bracer attachment" + desc = "A pair of huge, serrated blades" + icon_state = "wrist" + item_state = "wristblade" + attached_weapon_type = /obj/item/weapon/bracer_attachment/wristblades + deployment_sound = 'sound/weapons/wristblades_on.ogg' + retract_sound = 'sound/weapons/wristblades_off.ogg' + +/obj/item/bracer_attachments/scimitars + name = "scimitar bracer attachment" + desc = "A pair of huge, serrated blades" + icon_state = "scim" + item_state = "scim" + attached_weapon_type = /obj/item/weapon/bracer_attachment/scimitar + deployment_sound = 'sound/weapons/scims_on.ogg' + retract_sound = 'sound/weapons/scims_off.ogg' + +/obj/item/bracer_attachments/scimitars_alt + name = "scimitar bracer attachment" + desc = "A pair of huge, serrated blades" + icon_state = "scim_alt" + item_state = "scim_alt" + attached_weapon_type = /obj/item/weapon/bracer_attachment/scimitar/alt + deployment_sound = 'sound/weapons/scims_alt_on.ogg' + retract_sound = 'sound/weapons/scims_alt_off.ogg' + +/obj/item/clothing/gloves/yautja/hunter/attackby(obj/item/attacking_item, mob/user) + if(!istype(attacking_item, /obj/item/bracer_attachments)) + return ..() + + if(!HAS_TRAIT(user, TRAIT_YAUTJA_TECH)) + to_chat(user, SPAN_WARNING("You do not know how to attach the [attacking_item] to the [src].")) + return + + var/obj/item/bracer_attachments/bracer_attachment = attacking_item + if(!bracer_attachment.attached_weapon_type) + CRASH("[key_name(user)] attempted to attach the [bracer_attachment] to the [src], with no valid attached_weapon.") + + if(left_bracer_attachment && right_bracer_attachment) + to_chat(user, SPAN_WARNING("You already have the maximum amount of bracer attachments on [src].")) + return + + var/attach_to_left = TRUE + if(!left_bracer_attachment && !right_bracer_attachment) + var/selected = tgui_alert(user, "Do you want to attach [bracer_attachment] to the left or right hand?", "[src]", list("Right", "Left"), 15 SECONDS) + if(!selected) + return + + if(selected == "Right") //its right, left because in-game itll show up as left, right + attach_to_left = FALSE + + if(attacking_item.loc != user) + to_chat(user, SPAN_WARNING("You cannot attach [attacking_item] without holding it.")) + return + + var/bracer_attached = FALSE + if(attach_to_left && !left_bracer_attachment) + left_bracer_attachment = bracer_attachment + user.drop_inv_item_to_loc(bracer_attachment, src) + bracer_attached = TRUE + if(!bracer_attached && !right_bracer_attachment) + right_bracer_attachment = bracer_attachment + user.drop_inv_item_to_loc(bracer_attachment, src) + + to_chat(user, SPAN_NOTICE("You attach [bracer_attachment] to [src].")) + playsound(loc, 'sound/weapons/pred_attach.ogg') + return ..() + +/obj/item/clothing/gloves/yautja/hunter/verb/remove_attachment() + set name = "Remove Bracer Attachment" + set desc = "Remove Bracer Attachment From Your Bracer." set category = "Yautja.Weapons" set src in usr - . = wristblades_internal(usr, FALSE) + return remove_attachment_internal(usr, TRUE) + +/obj/item/clothing/gloves/yautja/hunter/proc/remove_attachment_internal(mob/living/carbon/human/user, forced = FALSE) + if(!user.loc || user.is_mob_incapacitated() || !ishuman(user)) + return + + . = check_random_function(user, forced) + if(.) + return + + if(!left_bracer_attachment && !right_bracer_attachment) + to_chat(user, SPAN_WARNING("[src] has no attached bracers!")) + return + + if(bracer_attachment_deployed) + to_chat(user, SPAN_WARNING("Retract your attachments First!")) + return + + if(left_bracer_attachment) + if(!user.put_in_any_hand_if_possible(left_bracer_attachment)) + user.drop_inv_item_on_ground(left_bracer_attachment) + to_chat(user, SPAN_NOTICE("You remove [left_bracer_attachment] from [src].")) + playsound(src, 'sound/machines/click.ogg', 15, 1) + left_bracer_attachment = null -/obj/item/clothing/gloves/yautja/hunter/proc/wristblades_internal(mob/living/carbon/human/caller, forced = FALSE) + if(right_bracer_attachment) + if(!user.put_in_any_hand_if_possible(right_bracer_attachment)) + user.drop_inv_item_on_ground(right_bracer_attachment) + to_chat(user, SPAN_NOTICE("You remove [right_bracer_attachment] from [src].")) + playsound(src, 'sound/machines/click.ogg', 15, 1) + right_bracer_attachment = null + + playsound(src, 'sound/machines/click.ogg', 15, 1) + + return FALSE + +/obj/item/clothing/gloves/yautja/hunter/verb/bracer_attachment() + set name = "Use Bracer Attachment" + set desc = "Extend your bracer attachment. They cannot be dropped, but can be retracted." + set category = "Yautja.Weapons" + set src in usr + return attachment_internal(usr, FALSE) + +/obj/item/clothing/gloves/yautja/hunter/proc/attachment_internal(mob/living/carbon/human/caller, forced = FALSE) if(!caller.loc || caller.is_mob_incapacitated() || !ishuman(caller)) return @@ -423,49 +567,57 @@ if(.) return - if(wristblades_deployed) - if(left_wristblades.loc == caller) - caller.drop_inv_item_to_loc(left_wristblades, src, FALSE, TRUE) - if(right_wristblades.loc == caller) - caller.drop_inv_item_to_loc(right_wristblades, src, FALSE, TRUE) - wristblades_deployed = FALSE - to_chat(caller, SPAN_NOTICE("You retract your [left_wristblades.name].")) - playsound(caller, 'sound/weapons/wristblades_off.ogg', 15, TRUE) + if(bracer_attachment_deployed) + retract_bracer_attachments(caller) else - if(!drain_power(caller, 50)) - return - var/deploying_into_left_hand = caller.hand ? TRUE : FALSE - if(caller.get_active_hand()) - to_chat(caller, SPAN_WARNING("Your hand must be free to activate your wristblade!")) - return - var/obj/limb/hand = caller.get_limb(deploying_into_left_hand ? "l_hand" : "r_hand") - if(!istype(hand) || !hand.is_usable()) - to_chat(caller, SPAN_WARNING("You can't hold that!")) - return - var/is_offhand_full = FALSE - var/obj/limb/off_hand = caller.get_limb(deploying_into_left_hand ? "r_hand" : "l_hand") - if(caller.get_inactive_hand() || (!istype(off_hand) || !off_hand.is_usable())) - is_offhand_full = TRUE - if(deploying_into_left_hand) - caller.put_in_active_hand(left_wristblades) - if(!is_offhand_full) - caller.put_in_inactive_hand(right_wristblades) - else - caller.put_in_active_hand(right_wristblades) - if(!is_offhand_full) - caller.put_in_inactive_hand(left_wristblades) - wristblades_deployed = TRUE - to_chat(caller, SPAN_NOTICE("You activate your [left_wristblades.plural_name].")) - playsound(caller, 'sound/weapons/wristblades_on.ogg', 15, TRUE) + deploy_bracer_attachments(caller) var/datum/action/predator_action/bracer/wristblade/wb_action for(wb_action as anything in caller.actions) if(istypestrict(wb_action, /datum/action/predator_action/bracer/wristblade)) - wb_action.update_button_icon(wristblades_deployed) + wb_action.update_button_icon(bracer_attachment_deployed) break return TRUE +/obj/item/clothing/gloves/yautja/hunter/proc/deploy_bracer_attachments(mob/living/carbon/human/caller) //take the weapons from the attachments in the bracer, and puts them in the callers hand + if(!drain_power(caller, 50)) + return + if(!left_bracer_attachment && !right_bracer_attachment) + to_chat(caller, SPAN_WARNING("[src] has no bracer attachments!")) + return + + if(left_bracer_attachment) + var/obj/limb/left_hand = caller.get_limb("l_hand") + if(!caller.l_hand && left_hand.is_usable()) + if(caller.put_in_l_hand(left_bracer_attachment.attached_weapon)) + to_chat(caller, SPAN_NOTICE("You extend [left_bracer_attachment.attached_weapon].")) + bracer_attachment_deployed = TRUE + playsound(loc,left_bracer_attachment.deployment_sound, 25, TRUE) + + + if(right_bracer_attachment) + var/obj/limb/right_hand = caller.get_limb("r_hand") + if(!caller.r_hand && right_hand.is_usable()) + if(caller.put_in_r_hand(right_bracer_attachment.attached_weapon)) + to_chat(caller, SPAN_NOTICE("You extend [right_bracer_attachment.attached_weapon].")) + bracer_attachment_deployed = TRUE + playsound(loc,right_bracer_attachment.deployment_sound, 25, TRUE) + + +/obj/item/clothing/gloves/yautja/hunter/proc/retract_bracer_attachments(mob/living/carbon/human/caller) //if the attachments weapon is in the callers hands, retract them back into the attachments + if(left_bracer_attachment && left_bracer_attachment.attached_weapon.loc == caller) + caller.drop_inv_item_to_loc(left_bracer_attachment.attached_weapon, left_bracer_attachment, FALSE, TRUE) + to_chat(caller, SPAN_NOTICE("You retract [left_bracer_attachment.attached_weapon].")) + playsound(loc, left_bracer_attachment.retract_sound, 25, TRUE) + + if(right_bracer_attachment && right_bracer_attachment.attached_weapon.loc == caller) + caller.drop_inv_item_to_loc(right_bracer_attachment.attached_weapon, right_bracer_attachment, FALSE, TRUE) + to_chat(caller, SPAN_NOTICE("You retract [right_bracer_attachment.attached_weapon].")) + playsound(loc, right_bracer_attachment.retract_sound, 25, TRUE) + + bracer_attachment_deployed = FALSE + /obj/item/clothing/gloves/yautja/hunter/verb/track_gear() set name = "Track Yautja Gear" set desc = "Find Yauja Gear." @@ -693,7 +845,7 @@ if(!drain_power(caller, 50)) return if(caller.get_active_hand()) - to_chat(caller, SPAN_WARNING("Your hand must be free to activate your wristblade!")) + to_chat(caller, SPAN_WARNING("Your hand must be free to activate your plasma caster!")) return var/obj/limb/hand = caller.get_limb(caller.hand ? "l_hand" : "r_hand") if(!istype(hand) || !hand.is_usable()) @@ -716,14 +868,14 @@ /obj/item/clothing/gloves/yautja/hunter/proc/explode(mob/living/carbon/victim) set waitfor = 0 - if (exploding) + if(exploding) return - notify_ghosts(header = "Yautja self destruct", message = "[victim] is self destructing to protect their honor!", source = victim, action = NOTIFY_ORBIT) + notify_ghosts(header = "Yautja self destruct", message = "[victim.real_name] is self destructing to protect their honor!", source = victim, action = NOTIFY_ORBIT) exploding = 1 var/turf/T = get_turf(src) - if(explosion_type == SD_TYPE_BIG && victim.stat == CONSCIOUS && (is_ground_level(T.z) || MODE_HAS_TOGGLEABLE_FLAG(MODE_SHIPSIDE_SD))) + if(explosion_type == SD_TYPE_BIG && (is_ground_level(T.z) || MODE_HAS_TOGGLEABLE_FLAG(MODE_SHIPSIDE_SD))) playsound(src, 'sound/voice/pred_deathlaugh.ogg', 100, 0, 17, status = 0) playsound(src, 'sound/effects/pred_countdown.ogg', 100, 0, 17, status = 0) diff --git a/code/modules/cm_preds/yaut_items.dm b/code/modules/cm_preds/yaut_items.dm index 0aca94ae8202..06600ca55645 100644 --- a/code/modules/cm_preds/yaut_items.dm +++ b/code/modules/cm_preds/yaut_items.dm @@ -56,12 +56,12 @@ ) unacidable = TRUE item_state_slots = list(WEAR_JACKET = "halfarmor1") - valid_accessory_slots = list(ACCESSORY_SLOT_ARMOR_A, ACCESSORY_SLOT_ARMOR_L, ACCESSORY_SLOT_ARMOR_S, ACCESSORY_SLOT_ARMOR_M) + valid_accessory_slots = list(ACCESSORY_SLOT_ARMOR_A, ACCESSORY_SLOT_ARMOR_L, ACCESSORY_SLOT_ARMOR_S, ACCESSORY_SLOT_ARMOR_M, ACCESSORY_SLOT_TROPHY) var/thrall = FALSE//Used to affect icon generation. fire_intensity_resistance = 10 black_market_value = 100 -/obj/item/clothing/suit/armor/yautja/Initialize(mapload, armor_number = rand(1,7), armor_material = "ebony", legacy = "None") +/obj/item/clothing/suit/armor/yautja/Initialize(mapload, armor_number = rand(1,8), armor_material = "ebony", legacy = "None") . = ..() if(thrall) return @@ -87,7 +87,7 @@ LAZYSET(item_state_slots, WEAR_JACKET, "halfarmor_elder_n") return - if(armor_number > 7) + if(armor_number > 8) armor_number = 1 if(armor_number) //Don't change full armor number icon_state = "halfarmor[armor_number]_[armor_material]" @@ -153,7 +153,6 @@ flags_equip_slot = SLOT_BACK flags_item = ITEM_PREDATOR unacidable = TRUE - var/clan_rank_required = CLAN_RANK_ELDER_INT var/councillor_override = FALSE /obj/item/clothing/yautja_cape/Initialize(mapload, new_color = "#654321") @@ -176,32 +175,26 @@ /obj/item/clothing/yautja_cape/ceremonial name = PRED_YAUTJA_CEREMONIAL_CAPE icon_state = "ceremonialcape" - clan_rank_required = CLAN_RANK_ELDER_INT /obj/item/clothing/yautja_cape/third name = PRED_YAUTJA_THIRD_CAPE icon_state = "thirdcape" - clan_rank_required = CLAN_RANK_ELDER_INT /obj/item/clothing/yautja_cape/half name = PRED_YAUTJA_HALF_CAPE icon_state = "halfcape" - clan_rank_required = CLAN_RANK_BLOODED_INT /obj/item/clothing/yautja_cape/quarter name = PRED_YAUTJA_QUARTER_CAPE icon_state = "quartercape" - clan_rank_required = CLAN_RANK_BLOODED_INT /obj/item/clothing/yautja_cape/poncho name = PRED_YAUTJA_PONCHO icon_state = "councilor_poncho" - clan_rank_required = CLAN_RANK_BLOODED_INT /obj/item/clothing/yautja_cape/damaged name = PRED_YAUTJA_DAMAGED_CAPE icon_state = "damagedcape" - clan_rank_required = CLAN_RANK_ELITE_INT /obj/item/clothing/shoes/yautja name = "ancient alien greaves" @@ -297,6 +290,7 @@ /obj/item/clothing/under/chainshirt/hunter name = "body mesh" desc = "A set of very fine chainlink in a meshwork for comfort and utility." + valid_accessory_slots = list(ACCESSORY_SLOT_TROPHY) armor_melee = CLOTHING_ARMOR_LOW armor_bullet = CLOTHING_ARMOR_MEDIUM @@ -915,10 +909,12 @@ var/obj/item/clothing/gloves/yautja/hunter/bracer = loc if(istype(bracer) && bracer.owner_rank) switch(bracer.owner_rank) + if(CLAN_RANK_ELITE_INT) + new_access = list(ACCESS_YAUTJA_SECURE, ACCESS_YAUTJA_ELITE) if(CLAN_RANK_ELDER_INT, CLAN_RANK_LEADER_INT) - new_access = list(ACCESS_YAUTJA_SECURE, ACCESS_YAUTJA_ELDER) + new_access = list(ACCESS_YAUTJA_SECURE, ACCESS_YAUTJA_ELITE, ACCESS_YAUTJA_ELDER,) if(CLAN_RANK_ADMIN_INT) - new_access = list(ACCESS_YAUTJA_SECURE, ACCESS_YAUTJA_ELDER, ACCESS_YAUTJA_ANCIENT) + new_access = list(ACCESS_YAUTJA_SECURE, ACCESS_YAUTJA_ELITE, ACCESS_YAUTJA_ELDER, ACCESS_YAUTJA_ANCIENT) access = new_access /obj/item/storage/medicomp @@ -1000,8 +996,10 @@ icon = 'icons/obj/items/skeleton.dmi' accessory_icons = list(WEAR_BODY = 'icons/mob/humans/onmob/hunter/pred_gear.dmi') icon_state = null + slot = ACCESSORY_SLOT_TROPHY ///Has it been cleaned by a polishing rag? var/polished = FALSE + /obj/item/clothing/accessory/limb/skeleton/l_arm name = "arm bone" icon_state = "l_arm" diff --git a/code/modules/cm_preds/yaut_mask.dm b/code/modules/cm_preds/yaut_mask.dm index f87c7a48c2e0..a2aeea0a2fdc 100644 --- a/code/modules/cm_preds/yaut_mask.dm +++ b/code/modules/cm_preds/yaut_mask.dm @@ -46,7 +46,7 @@ ///A list of all intrinsic mask actions var/list/mask_actions = list(/datum/action/predator_action/mask/zoom, /datum/action/predator_action/mask/visor) -/obj/item/clothing/mask/gas/yautja/New(location, mask_number = rand(1,12), armor_material = "ebony", legacy = "None") +/obj/item/clothing/mask/gas/yautja/New(location, mask_number = rand(1,17), armor_material = "ebony", legacy = "None") ..() forceMove(location) if(thrall) @@ -71,7 +71,7 @@ LAZYSET(item_state_slots, WEAR_FACE, "pred_mask_elder_n") return - if(mask_number > 12) + if(mask_number > 17) mask_number = 1 icon_state = "pred_mask[mask_number]_[armor_material]" LAZYSET(item_state_slots, WEAR_FACE, "pred_mask[mask_number]_[armor_material]") diff --git a/code/modules/cm_preds/yaut_procs.dm b/code/modules/cm_preds/yaut_procs.dm index 31910fa2adae..3fceba19bb6d 100644 --- a/code/modules/cm_preds/yaut_procs.dm +++ b/code/modules/cm_preds/yaut_procs.dm @@ -227,133 +227,3 @@ requires_power = FALSE base_lighting_alpha = 255 flags_area = AREA_YAUTJA_GROUNDS - -/mob/living/carbon/human/proc/pred_buy() - set category = "Yautja.Misc" - set name = "Claim Equipment" - set desc = "When you're on the Predator ship, claim some gear. You can only do this ONCE." - - if(hunter_data.claimed_equipment) - to_chat(src, SPAN_WARNING("You've already claimed your equipment.")) - return - - if(is_mob_incapacitated() || body_position != STANDING_UP || buckled) - to_chat(src, SPAN_WARNING("You're not able to do that right now.")) - return - - if(!isyautja(src)) - to_chat(src, SPAN_WARNING("How did you get this verb?")) - return - var/area/location = get_area(src) - if(!(location.flags_area & AREA_YAUTJA_GROUNDS)) - to_chat(src, SPAN_WARNING("Not here. Only on the ship.")) - return - - var/obj/item/clothing/gloves/yautja/hunter/bracers = gloves - if(!istype(bracers)) - to_chat(src, SPAN_WARNING("You need to be wearing your bracers to do this.")) - return - - var/sure = alert("An array of powerful weapons are displayed to you. Pick your gear carefully. If you cancel at any point, you will not claim your equipment.", "Sure?", "Begin the Hunt", "No, not now") - if(sure != "Begin the Hunt") - return - - var/list/melee = list(YAUTJA_GEAR_GLAIVE = image(icon = 'icons/obj/items/hunter/pred_gear.dmi', icon_state = "glaive"), YAUTJA_GEAR_WHIP = image(icon = 'icons/obj/items/hunter/pred_gear.dmi', icon_state = "whip"),YAUTJA_GEAR_SWORD = image(icon = 'icons/obj/items/hunter/pred_gear.dmi', icon_state = "clansword"),YAUTJA_GEAR_SCYTHE = image(icon = 'icons/obj/items/hunter/pred_gear.dmi', icon_state = "predscythe"), YAUTJA_GEAR_STICK = image(icon = 'icons/obj/items/hunter/pred_gear.dmi', icon_state = "combistick"), YAUTJA_GEAR_SCIMS = image(icon = 'icons/obj/items/hunter/pred_gear.dmi', icon_state = "scim")) - var/list/other = list(YAUTJA_GEAR_LAUNCHER = image(icon = 'icons/obj/items/hunter/pred_gear.dmi', icon_state = "spikelauncher"), YAUTJA_GEAR_PISTOL = image(icon = 'icons/obj/items/hunter/pred_gear.dmi', icon_state = "plasmapistol"), YAUTJA_GEAR_DISC = image(icon = 'icons/obj/items/hunter/pred_gear.dmi', icon_state = "disc"), YAUTJA_GEAR_FULL_ARMOR = image(icon = 'icons/obj/items/hunter/pred_gear.dmi', icon_state = "fullarmor_ebony"), YAUTJA_GEAR_SHIELD = image(icon = 'icons/obj/items/hunter/pred_gear.dmi', icon_state = "shield"), YAUTJA_GEAR_DRONE = image(icon = 'icons/obj/items/hunter/pred_gear.dmi', icon_state = "falcon_drone")) - var/list/restricted = list(YAUTJA_GEAR_LAUNCHER, YAUTJA_GEAR_PISTOL, YAUTJA_GEAR_FULL_ARMOR, YAUTJA_GEAR_SHIELD, YAUTJA_GEAR_DRONE) //Can only select them once each. - - var/list/secondaries = list() - var/total_secondaries = 2 - - var/use_radials = src.client.prefs?.no_radials_preference ? FALSE : TRUE - var/main_weapon = use_radials ? show_radial_menu(src, src, melee) : tgui_input_list(usr, "Which weapon shall you use on your hunt?:", "Melee Weapon", melee) - - if(main_weapon == YAUTJA_GEAR_SCYTHE) - var/list/scythe_variants = list(YAUTJA_GEAR_SCYTHE = image(icon = 'icons/obj/items/hunter/pred_gear.dmi', icon_state = "predscythe"), YAUTJA_GEAR_SCYTHE_ALT = image(icon = 'icons/obj/items/hunter/pred_gear.dmi', icon_state = "predscythe_alt")) - main_weapon = use_radials ? show_radial_menu(src, src, scythe_variants) : tgui_input_list(usr, "Which variant of the war scythe?:", "Melee Weapon", scythe_variants) - - if(main_weapon == YAUTJA_GEAR_GLAIVE) - var/list/glaive_variants = list(YAUTJA_GEAR_GLAIVE = image(icon = 'icons/obj/items/hunter/pred_gear.dmi', icon_state = "glaive"), YAUTJA_GEAR_GLAIVE_ALT = image(icon = 'icons/obj/items/hunter/pred_gear.dmi', icon_state = "glaive_alt")) - main_weapon = use_radials ? show_radial_menu(src, src, glaive_variants) : tgui_input_list(usr, "Which variant of the war glaive?:", "Melee Weapon", glaive_variants) - - if(main_weapon == YAUTJA_GEAR_SCIMS) - var/list/scim_variants = list(YAUTJA_GEAR_SCIMS = image(icon = 'icons/obj/items/hunter/pred_gear.dmi', icon_state = "scim"), YAUTJA_GEAR_SCIMS_ALT = image(icon = 'icons/obj/items/hunter/pred_gear.dmi', icon_state = "scim_alt")) - main_weapon = use_radials ? show_radial_menu(src, src, scim_variants) : tgui_input_list(usr, "Which variant of the scimitars?:", "Melee Weapon", scim_variants) - - - if(main_weapon == YAUTJA_GEAR_STICK) - var/list/stick_variants = list(YAUTJA_GEAR_STICK = image(icon = 'icons/obj/items/hunter/pred_gear.dmi', icon_state = "combistick"), YAUTJA_GEAR_STICK_ALT = image(icon = 'icons/obj/items/hunter/pred_gear.dmi', icon_state = "war_axe")) - main_weapon = use_radials ? show_radial_menu(src, src, stick_variants) :tgui_input_list(usr, "Which variant of the combistick?:", "Melee Weapon", stick_variants) - - if(!main_weapon) - return - for(var/i = 1 to total_secondaries) - var/secondary = use_radials ? show_radial_menu(src, src, other) : tgui_input_list(usr, "Which secondary gear shall you take?", "Item [i] (of [total_secondaries])", other) - if(!secondary) - return - secondaries += secondary - if(secondary in restricted) - other -= secondary - - bracers = gloves - if(!istype(bracers)) - to_chat(src, SPAN_WARNING("You need to be wearing your bracers to do this.")) - return - - if(hunter_data.claimed_equipment) - to_chat(src, SPAN_WARNING("You've already claimed your equipment.")) - return - - hunter_data.claimed_equipment = TRUE - - switch(main_weapon) - if(YAUTJA_GEAR_GLAIVE) - equip_to_slot_if_possible(new /obj/item/weapon/twohanded/yautja/glaive(src.loc), WEAR_J_STORE, disable_warning = TRUE) - if(YAUTJA_GEAR_GLAIVE_ALT) - equip_to_slot_if_possible(new /obj/item/weapon/twohanded/yautja/glaive/alt(src.loc), WEAR_J_STORE, disable_warning = TRUE) - if(YAUTJA_GEAR_WHIP) - equip_to_slot_if_possible(new /obj/item/weapon/yautja/chain(src.loc), WEAR_J_STORE, disable_warning = TRUE) - if(YAUTJA_GEAR_SWORD) - equip_to_slot_if_possible(new /obj/item/weapon/yautja/sword(src.loc), WEAR_J_STORE, disable_warning = TRUE) - if(YAUTJA_GEAR_SCYTHE) - equip_to_slot_if_possible(new /obj/item/weapon/yautja/scythe(src.loc), WEAR_J_STORE, disable_warning = TRUE) - if(YAUTJA_GEAR_SCYTHE_ALT) - equip_to_slot_if_possible(new /obj/item/weapon/yautja/scythe/alt(src.loc), WEAR_J_STORE, disable_warning = TRUE) - if(YAUTJA_GEAR_STICK) - equip_to_slot_if_possible(new /obj/item/weapon/yautja/chained/combistick(src.loc), WEAR_J_STORE, disable_warning = TRUE) - if(YAUTJA_GEAR_STICK_ALT) - equip_to_slot_if_possible(new /obj/item/weapon/yautja/chained/war_axe(src.loc), WEAR_J_STORE, disable_warning = TRUE) - if(YAUTJA_GEAR_SCIMS) - if(bracers.wristblades_deployed) - bracers.wristblades_internal(usr, TRUE) - qdel(bracers.left_wristblades) - qdel(bracers.right_wristblades) - bracers.left_wristblades = new /obj/item/weapon/wristblades/scimitar(bracers) - bracers.right_wristblades = new /obj/item/weapon/wristblades/scimitar(bracers) - if(YAUTJA_GEAR_SCIMS_ALT) - if(bracers.wristblades_deployed) - bracers.wristblades_internal(usr, TRUE) - qdel(bracers.left_wristblades) - qdel(bracers.right_wristblades) - bracers.left_wristblades = new /obj/item/weapon/wristblades/scimitar/alt(bracers) - bracers.right_wristblades = new /obj/item/weapon/wristblades/scimitar/alt(bracers) - - for(var/choice in secondaries) - switch(choice) - if(YAUTJA_GEAR_LAUNCHER) - equip_to_slot_if_possible(new /obj/item/weapon/gun/launcher/spike(src.loc), WEAR_IN_BELT, disable_warning = TRUE) - if(YAUTJA_GEAR_PISTOL) - equip_to_slot_if_possible(new /obj/item/weapon/gun/energy/yautja/plasmapistol(src.loc), WEAR_IN_BELT, disable_warning = TRUE) - if(YAUTJA_GEAR_DISC) - equip_to_slot_if_possible(new /obj/item/explosive/grenade/spawnergrenade/smartdisc(src.loc), WEAR_IN_BELT, disable_warning = TRUE) - if(YAUTJA_GEAR_FULL_ARMOR) - if(wear_suit) - drop_inv_item_on_ground(wear_suit) - equip_to_slot_if_possible(new /obj/item/clothing/suit/armor/yautja/hunter/full(src.loc, 0, src.client.prefs.predator_armor_material), WEAR_JACKET, disable_warning = TRUE) - if(YAUTJA_GEAR_SHIELD) - equip_to_slot_if_possible(new /obj/item/weapon/shield/riot/yautja(src.loc), WEAR_BACK, disable_warning = TRUE) - if(YAUTJA_GEAR_DRONE) - equip_to_slot_if_possible(new /obj/item/falcon_drone(src.loc), WEAR_R_EAR, disable_warning = TRUE) - - remove_verb(src, /mob/living/carbon/human/proc/pred_buy) - remove_action(src, /datum/action/predator_action/claim_equipment) diff --git a/code/modules/cm_preds/yaut_weapons.dm b/code/modules/cm_preds/yaut_weapons.dm index e08744dbd0c5..c66263ba96f8 100644 --- a/code/modules/cm_preds/yaut_weapons.dm +++ b/code/modules/cm_preds/yaut_weapons.dm @@ -44,10 +44,10 @@ force = MELEE_FORCE_TIER_2 throwforce = MELEE_FORCE_TIER_6 -/obj/item/weapon/wristblades - name = "wrist blades" +/obj/item/weapon/bracer_attachment + name = "bracer attachment" + desc = "How did you get these?." var/plural_name = "wrist blades" - desc = "A pair of huge, serrated blades extending out from metal gauntlets." icon = 'icons/obj/items/hunter/pred_gear.dmi' icon_state = "wrist" @@ -68,18 +68,16 @@ pry_capable = IS_PRY_CAPABLE_FORCE attack_verb = list("sliced", "slashed", "jabbed", "torn", "gored") - var/has_speed_bonus = TRUE + var/speed_bonus_amount -/obj/item/weapon/wristblades/equipped(mob/user, slot) +/obj/item/weapon/bracer_attachment/equipped(mob/user, slot) . = ..() - if(has_speed_bonus && (slot == WEAR_L_HAND || slot == WEAR_R_HAND) && istype(user.get_inactive_hand(), /obj/item/weapon/wristblades)) - attack_speed = initial(attack_speed) - 2 - -/obj/item/weapon/wristblades/dropped(mob/living/carbon/human/M) - . = ..() - attack_speed = initial(attack_speed) + if(!speed_bonus_amount) + return + if(((slot == WEAR_L_HAND) && istype(user.r_hand, /obj/item/weapon/bracer_attachment)) || ((slot == WEAR_R_HAND) && istype(user.l_hand, /obj/item/weapon/bracer_attachment))) + attack_speed = initial(attack_speed) + speed_bonus_amount -/obj/item/weapon/wristblades/afterattack(atom/attacked_target, mob/user, proximity) +/obj/item/weapon/bracer_attachment/afterattack(atom/attacked_target, mob/user, proximity) if(!proximity || !user || user.action_busy) return FALSE @@ -113,32 +111,44 @@ user.visible_message(SPAN_DANGER("[user] forces [door] closed using the [name]!"), SPAN_DANGER("You force [door] closed with your [name].")) door.Close() -/obj/item/weapon/wristblades/attack_self(mob/living/carbon/human/user) +/obj/item/weapon/bracer_attachment/attack_self(mob/living/carbon/human/user) ..() if(istype(user)) var/obj/item/clothing/gloves/yautja/hunter/gloves = user.gloves - gloves.wristblades_internal(user, TRUE) // unlikely that the yaut would have gloves without blades, so if they do, runtime logs here would be handy + gloves.attachment_internal(user, TRUE) // unlikely that the yaut would have gloves without blades, so if they do, runtime logs here would be handy -/obj/item/weapon/wristblades/scimitar + +/obj/item/weapon/bracer_attachment/wristblades + name = "wrist blade" + plural_name = "wrist blades" + desc = "A huge, serrated blade extending from metal gauntlets." + icon_state = "wrist" + item_state = "wristblade" + attack_speed = 0.5 SECONDS + attack_verb = list("sliced", "slashed", "jabbed", "torn", "gored") + force = MELEE_FORCE_TIER_4 + speed_bonus_amount = 0 SECONDS + +/obj/item/weapon/bracer_attachment/scimitar name = "wrist scimitar" plural_name = "wrist scimitars" desc = "A huge, serrated blade extending from metal gauntlets." icon_state = "scim" item_state = "scim" - attack_speed = 5 + attack_speed = 1 SECONDS attack_verb = list("sliced", "slashed", "jabbed", "torn", "gored") force = MELEE_FORCE_TIER_5 - has_speed_bonus = FALSE + speed_bonus_amount = -0.4 SECONDS -/obj/item/weapon/wristblades/scimitar/alt +/obj/item/weapon/bracer_attachment/scimitar/alt name = "wrist scimitar" plural_name = "wrist scimitars" desc = "A huge, serrated blade extending from metal gauntlets." icon_state = "scim_alt" item_state = "scim_alt" - attack_speed = 5 + attack_speed = 1 SECONDS force = MELEE_FORCE_TIER_5 - has_speed_bonus = FALSE + speed_bonus_amount = -0.4 SECONDS /*######################################### ########### One Handed Weapons ############ @@ -196,6 +206,24 @@ attack_speed = 1 SECONDS unacidable = TRUE +/obj/item/weapon/yautja/sword/alt_1 + name = "rending sword" + desc = "An expertly crafted Yautja blade carried by hunters who wish to fight up close. Razor sharp and capable of cutting flesh into ribbons. Commonly carried by aggressive and lethal hunters." + icon_state = "clansword_alt" + item_state = "clansword_alt" + +/obj/item/weapon/yautja/sword/alt_2 + name = "piercing sword" + desc = "An expertly crafted Yautja blade carried by hunters who wish to fight up close. Razor sharp and capable of cutting flesh into ribbons. Commonly carried by aggressive and lethal hunters." + icon_state = "clansword_alt2" + item_state = "clansword_alt2" + +/obj/item/weapon/yautja/sword/alt_3 + name = "severing sword" + desc = "An expertly crafted Yautja blade carried by hunters who wish to fight up close. Razor sharp and capable of cutting flesh into ribbons. Commonly carried by aggressive and lethal hunters." + icon_state = "clansword_alt3" + item_state = "clansword_alt3" + /obj/item/weapon/yautja/sword/attack(mob/target, mob/living/user) . = ..() if((human_adapted || isyautja(user)) && isxeno(target)) @@ -237,7 +265,7 @@ name = "double war scythe" desc = "A huge, incredibly sharp double blade used for hunting dangerous prey. This weapon is commonly carried by Yautja who wish to disable and slice apart their foes." icon_state = "predscythe_alt" - item_state = "scythe_double" + item_state = "scythe_dual" //Combistick /obj/item/weapon/yautja/chained/combistick @@ -531,7 +559,7 @@ var/mob/living/carbon/human/victim = target if(!HAS_TRAIT(user, TRAIT_SUPER_STRONG)) - to_chat(user, SPAN_WARNING("You're not strong enough to rip an entire humanoid apart. Also, that's kind of fucked up.")) //look at this dumbass + to_chat(user, SPAN_WARNING("You're not strong enough to rip an entire humanoid apart. Also, that's kind of fucked up.")) return TRUE if(issamespecies(user, victim)) @@ -539,7 +567,7 @@ return if(isspeciessynth(victim)) - to_chat(user, SPAN_WARNING("You can't flay metal...")) //look at this dumbass + to_chat(user, SPAN_WARNING("You can't flay metal...")) return TRUE if(SEND_SIGNAL(victim, COMSIG_HUMAN_FLAY_ATTEMPT, user, src) & COMPONENT_CANCEL_ATTACK) @@ -781,9 +809,9 @@ /obj/item/weapon/twohanded/yautja/glaive name = "war glaive" - desc = "A huge, powerful blade on a metallic pole. Mysterious writing is carved into the weapon." - icon_state = "glaive" - item_state = "glaive" + desc = "Two huge, powerful blades on a metallic pole. Mysterious writing is carved into the weapon." + icon_state = "glaive_alt" + item_state = "glaive_alt" force = MELEE_FORCE_TIER_3 force_wielded = MELEE_FORCE_TIER_9 throwforce = MELEE_FORCE_TIER_3 @@ -792,6 +820,8 @@ flags_atom = FPRINT|QUICK_DRAWABLE|CONDUCT attack_verb = list("sliced", "slashed", "carved", "diced", "gored") attack_speed = 14 //Default is 7. + var/skull_attached = FALSE + /obj/item/weapon/twohanded/yautja/glaive/attack(mob/living/target, mob/living/carbon/human/user) . = ..() @@ -802,8 +832,40 @@ xenomorph.AddComponent(/datum/component/status_effect/interference, 30, 30) /obj/item/weapon/twohanded/yautja/glaive/alt - icon_state = "glaive_alt" - item_state = "glaive_alt" + name = "cleaving glaive" + desc = "A huge, powerful blade on a metallic pole. Mysterious writing is carved into the weapon." + icon_state = "glaive" + item_state = "glaive" + +/obj/item/weapon/twohanded/yautja/glaive/alt/get_examine_text(mob/user) + . = ..() + if(skull_attached) + . += SPAN_NOTICE("[src] has a human skull mounted on it.") + +/obj/item/weapon/twohanded/yautja/glaive/alt/update_icon() + if(skull_attached) + icon_state = "glaive_skull" + else + icon_state = "glaive" + +///attaching the skull +/obj/item/weapon/twohanded/yautja/glaive/alt/attackby(obj/item/attacking_item, mob/user) + if(!istype(attacking_item, /obj/item/clothing/accessory/limb/skeleton/head)) + return ..() + + var/obj/item/clothing/accessory/limb/skeleton/head/skull = attacking_item + if(skull_attached) + to_chat(user, SPAN_WARNING("You already have a [skull] mounted on [src].")) + return + + if(!HAS_TRAIT(user, TRAIT_YAUTJA_TECH)) + to_chat(user, SPAN_WARNING("Why would you want to do this!?.")) + return + user.visible_message(SPAN_NOTICE("[user] mounts the [skull] with [src]."), SPAN_NOTICE("You mount [skull] to [src].")) + user.drop_inv_item_to_loc(skull, src) + skull_attached = TRUE + update_icon() + return ..() /obj/item/weapon/twohanded/yautja/glaive/damaged name = "ancient war glaive" @@ -1167,7 +1229,7 @@ force = 0 fire_delay = 3 flags_atom = FPRINT|QUICK_DRAWABLE|CONDUCT - flags_item = NOBLUDGEON|DELONDROP|IGNITING_ITEM //Can't bludgeon with this. + flags_item = NOBLUDGEON|IGNITING_ITEM //Can't bludgeon with this. flags_gun_features = GUN_UNUSUAL_DESIGN has_empty_icon = FALSE explo_proof = TRUE @@ -1291,7 +1353,6 @@ if(source) forceMove(source) source.caster_deployed = FALSE - return ..() /obj/item/weapon/gun/energy/yautja/plasma_caster/able_to_fire(mob/user) diff --git a/code/modules/defenses/sentry.dm b/code/modules/defenses/sentry.dm index 6c9c5ad68fea..02bccde9fa37 100644 --- a/code/modules/defenses/sentry.dm +++ b/code/modules/defenses/sentry.dm @@ -313,7 +313,7 @@ new_projectile.damage *= damage_mult new_projectile.accuracy *= accuracy_mult GIVE_BULLET_TRAIT(new_projectile, /datum/element/bullet_trait_iff, faction_group) - new_projectile.fire_at(target, src, owner_mob, new_projectile.ammo.max_range, new_projectile.ammo.shell_speed, null, FALSE) + new_projectile.fire_at(target, owner_mob, src, new_projectile.ammo.max_range, new_projectile.ammo.shell_speed, null, FALSE) muzzle_flash(Get_Angle(get_turf(src), target)) ammo.current_rounds-- track_shot() diff --git a/code/modules/defenses/sentry_flamer.dm b/code/modules/defenses/sentry_flamer.dm index 2c5e9ae62677..fcdd54708609 100644 --- a/code/modules/defenses/sentry_flamer.dm +++ b/code/modules/defenses/sentry_flamer.dm @@ -28,11 +28,11 @@ accuracy_mult = 0.1 fire_delay = 0.5 -/obj/structure/machinery/defenses/sentry/flamer/actual_fire(atom/A) - var/obj/projectile/P = new(create_cause_data(initial(name), owner_mob)) - P.generate_bullet(new ammo.default_ammo) - GIVE_BULLET_TRAIT(P, /datum/element/bullet_trait_iff, faction_group) - P.fire_at(A, src, owner_mob, P.ammo.max_range, P.ammo.shell_speed, null) +/obj/structure/machinery/defenses/sentry/flamer/actual_fire(atom/target) + var/obj/projectile/new_projectile = new(src, create_cause_data(initial(name), owner_mob, src)) + new_projectile.generate_bullet(new ammo.default_ammo) + GIVE_BULLET_TRAIT(new_projectile, /datum/element/bullet_trait_iff, faction_group) + new_projectile.fire_at(target, owner_mob, src, new_projectile.ammo.max_range, new_projectile.ammo.shell_speed, null, FALSE) ammo.current_rounds-- track_shot() if(ammo.current_rounds == 0) diff --git a/code/modules/gear_presets/_select_equipment.dm b/code/modules/gear_presets/_select_equipment.dm index def3fd4ade06..151addb668af 100644 --- a/code/modules/gear_presets/_select_equipment.dm +++ b/code/modules/gear_presets/_select_equipment.dm @@ -23,7 +23,7 @@ var/origin_override var/minimap_icon = "private" - var/minimap_background = MINIMAP_ICON_BACKGROUND_USCM + var/minimap_background = "background" var/always_minimap_visible = TRUE //Uniform data @@ -286,13 +286,7 @@ character_trait.apply_trait(new_human, src) /datum/equipment_preset/proc/get_minimap_icon(mob/living/carbon/human/user) - var/image/background = mutable_appearance('icons/ui_icons/map_blips.dmi', "background") - if(user.assigned_squad) - background.color = user.assigned_squad.minimap_color - else if(minimap_background) - background.color = minimap_background - else - background.color = MINIMAP_ICON_BACKGROUND_CIVILIAN + var/image/background = mutable_appearance('icons/ui_icons/map_blips.dmi', user.assigned_squad?.background_icon ? user.assigned_squad.background_icon : minimap_background) if(islist(minimap_icon)) for(var/icons in minimap_icon) diff --git a/code/modules/gear_presets/clf.dm b/code/modules/gear_presets/clf.dm index e9570bbbab9f..e8d1e0cb746a 100644 --- a/code/modules/gear_presets/clf.dm +++ b/code/modules/gear_presets/clf.dm @@ -6,6 +6,7 @@ paygrades = list(PAY_SHORT_REB = JOB_PLAYTIME_TIER_0) faction = FACTION_CLF origin_override = ORIGIN_CIVILIAN + minimap_background = "background_clf" idtype = /obj/item/card/id/data /datum/equipment_preset/clf/New() @@ -54,6 +55,8 @@ rank = JOB_CLF role_comm_title = "GRL" + minimap_icon = "clf_mil" + skills = /datum/skills/clf /datum/equipment_preset/clf/soldier/load_gear(mob/living/carbon/human/new_human) @@ -159,6 +162,8 @@ rank = JOB_CLF_ENGI role_comm_title = "TECH" + minimap_icon = "clf_engi" + skills = /datum/skills/clf/combat_engineer /datum/equipment_preset/clf/engineer/load_gear(mob/living/carbon/human/new_human) @@ -283,6 +288,7 @@ assignment = JOB_CLF_MEDIC rank = JOB_CLF_MEDIC role_comm_title = "MED" + minimap_icon = "clf_med" paygrades = list(PAY_SHORT_CDOC = JOB_PLAYTIME_TIER_0) skills = /datum/skills/clf/combat_medic @@ -441,6 +447,9 @@ assignment = JOB_CLF_SPECIALIST rank = JOB_CLF_SPECIALIST role_comm_title = "SPC" + + minimap_icon = "clf_spec" + skills = /datum/skills/clf/specialist /datum/equipment_preset/clf/specialist/New() @@ -565,6 +574,9 @@ assignment = JOB_CLF_LEADER rank = JOB_CLF_LEADER role_comm_title = "LDR" + + minimap_icon = "clf_sl" + skills = /datum/skills/clf/leader /datum/equipment_preset/clf/leader/New() @@ -718,6 +730,8 @@ paygrades = list(PAY_SHORT_SYN = JOB_PLAYTIME_TIER_0) role_comm_title = "Syn" + minimap_icon = "clf_synth" + /datum/equipment_preset/clf/synth/New() . = ..() access = get_access(ACCESS_LIST_CLF_ALL) @@ -961,6 +975,9 @@ rank = JOB_CLF_COMMANDER paygrades = list(PAY_SHORT_REBC = JOB_PLAYTIME_TIER_0) role_comm_title = "CMDR" + + minimap_icon = "deputy" + skills = /datum/skills/clf/commander /datum/equipment_preset/clf/commander/New() diff --git a/code/modules/gear_presets/cmb.dm b/code/modules/gear_presets/cmb.dm index c5ae3998a0aa..cd1c4f5f0a80 100644 --- a/code/modules/gear_presets/cmb.dm +++ b/code/modules/gear_presets/cmb.dm @@ -5,6 +5,7 @@ rank = JOB_CMB idtype = /obj/item/card/id/deputy languages = list(LANGUAGE_ENGLISH, LANGUAGE_JAPANESE) + minimap_background = "background_cmb" var/human_versus_human = FALSE var/headset_type = /obj/item/device/radio/headset/distress/CMB @@ -62,6 +63,9 @@ flags = EQUIPMENT_PRESET_EXTRA assignment = "CMB Deputy" rank = JOB_CMB + + minimap_icon = "deputy" + skills = /datum/skills/cmb /datum/equipment_preset/cmb/standard/load_gear(mob/living/carbon/human/new_human) @@ -145,6 +149,8 @@ role_comm_title = "CMB MAR" flags = EQUIPMENT_PRESET_EXTRA + minimap_icon = "xo" + assignment = "CMB Marshal" rank = JOB_CMB_TL skills = /datum/skills/cmb/leader @@ -199,6 +205,8 @@ role_comm_title = "CMB Syn" flags = EQUIPMENT_PRESET_EXTRA + minimap_icon = "cmb_syn" + assignment = "CMB Investigative Synthetic" rank = JOB_CMB_SYN languages = ALL_SYNTH_LANGUAGES @@ -301,6 +309,8 @@ role_comm_title = "ICC Rep." flags = EQUIPMENT_PRESET_EXTRA + minimap_icon = "icc" + assignment = "Interstellar Commerce Commission Corporate Liaison" rank = JOB_CMB_ICC skills = /datum/skills/civilian/survivor @@ -360,6 +370,8 @@ role_comm_title = "OBS" flags = EQUIPMENT_PRESET_EXTRA + minimap_icon = "obs" + assignment = "Interstellar Human Rights Observer" rank = JOB_CMB_OBS skills = /datum/skills/civilian/survivor/doctor @@ -415,6 +427,8 @@ skills = /datum/skills/pfc/crafty faction = FACTION_MARSHAL faction_group = list(FACTION_MARSHAL, FACTION_MARINE) + minimap_icon = "private" + minimap_background = "background_cmb" /datum/equipment_preset/uscm/cmb/New() . = ..() @@ -465,6 +479,7 @@ role_comm_title = "A-TL" minimum_age = 25 skills = /datum/skills/SL + minimap_icon = "leader" /datum/equipment_preset/uscm/cmb/leader/load_gear(mob/living/carbon/human/new_human) new_human.equip_to_slot_or_del(new /obj/item/clothing/under/marine, WEAR_BODY) @@ -506,6 +521,7 @@ paygrades = list(PAY_SHORT_ME4 = JOB_PLAYTIME_TIER_0) role_comm_title = "A-TS" skills = /datum/skills/tl + minimap_icon = "tl" /datum/equipment_preset/uscm/cmb/rto/load_gear(mob/living/carbon/human/new_human) new_human.equip_to_slot_or_del(new /obj/item/clothing/under/marine/rto, WEAR_BODY) @@ -548,6 +564,7 @@ paygrades = list(PAY_SHORT_ME3 = JOB_PLAYTIME_TIER_0) role_comm_title = "A-HM" skills = /datum/skills/combat_medic + minimap_icon = "medic" utility_under = list(/obj/item/clothing/under/marine/medic) @@ -606,6 +623,7 @@ paygrades = list(PAY_SHORT_ME3 = JOB_PLAYTIME_TIER_0) role_comm_title = "A-SG" skills = /datum/skills/smartgunner + minimap_icon = "smartgunner" /datum/equipment_preset/uscm/cmb/smartgunner/load_gear(mob/living/carbon/human/new_human) new_human.equip_to_slot_or_del(new /obj/item/clothing/under/marine, WEAR_BODY) diff --git a/code/modules/gear_presets/colonist.dm b/code/modules/gear_presets/colonist.dm index 59b508f078af..5e42cb9aee5d 100644 --- a/code/modules/gear_presets/colonist.dm +++ b/code/modules/gear_presets/colonist.dm @@ -11,7 +11,6 @@ idtype = /obj/item/card/id/lanyard minimap_icon = "surv" - minimap_background = MINIMAP_ICON_BACKGROUND_CIVILIAN /datum/equipment_preset/colonist/load_gear(mob/living/carbon/human/new_human) new_human.equip_to_slot_or_del(new /obj/item/storage/backpack/satchel(new_human), WEAR_BACK) diff --git a/code/modules/gear_presets/contractor.dm b/code/modules/gear_presets/contractor.dm index c0c2e7a79a03..97e70db0b472 100644 --- a/code/modules/gear_presets/contractor.dm +++ b/code/modules/gear_presets/contractor.dm @@ -87,10 +87,8 @@ new_human.equip_to_slot_or_del(new /obj/item/explosive/grenade/high_explosive/m15, WEAR_IN_BACK) new_human.equip_to_slot_or_del(new /obj/item/explosive/grenade/high_explosive/m15, WEAR_IN_BACK) new_human.equip_to_slot_or_del(new /obj/item/storage/firstaid/regular/response, WEAR_IN_BACK) - new_human.equip_to_slot_or_del(new /obj/item/storage/box/packet/smoke, WEAR_IN_BACK) new_human.equip_to_slot_or_del(new /obj/item/storage/box/MRE,WEAR_IN_BACK) new_human.equip_to_slot_or_del(new /obj/item/tool/crowbar/tactical, WEAR_IN_BACK) - new_human.equip_to_slot_or_del(new /obj/item/storage/box/attachments(new_human), WEAR_IN_BACK) switch(choice) if(1 to 3) // 30% @@ -105,18 +103,23 @@ new_human.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/mar40, WEAR_IN_R_STORE) new_human.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/mar40, WEAR_IN_R_STORE) new_human.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/mar40, WEAR_IN_BACK) + new_human.equip_to_slot_or_del(new /obj/item/storage/box/packet/smoke, WEAR_IN_BACK) + new_human.equip_to_slot_or_del(new /obj/item/storage/box/attachments, WEAR_IN_BACK) if(4 to 5) // 20% new_human.equip_to_slot_or_del(new /obj/item/weapon/gun/rifle/l42a/abr40/tactical, WEAR_J_STORE) new_human.equip_to_slot_or_del(new /obj/item/clothing/accessory/storage/webbing, WEAR_ACCESSORY) - new_human.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/l42a/abr40/holo_target, WEAR_IN_ACCESSORY) - new_human.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/l42a/abr40/holo_target, WEAR_IN_ACCESSORY) - new_human.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/l42a/abr40/holo_target, WEAR_IN_ACCESSORY) + new_human.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/l42a/ap, WEAR_IN_ACCESSORY) + new_human.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/l42a/ap, WEAR_IN_ACCESSORY) + new_human.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/l42a/ap, WEAR_IN_ACCESSORY) new_human.equip_to_slot_or_del(new /obj/item/storage/pouch/magazine/large, WEAR_R_STORE) new_human.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/l42a/ap, WEAR_IN_R_STORE) new_human.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/l42a/ap, WEAR_IN_R_STORE) new_human.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/l42a/extended, WEAR_IN_R_STORE) new_human.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/l42a/extended, WEAR_IN_R_STORE) new_human.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/l42a/extended, WEAR_IN_BACK) + new_human.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/l42a/extended, WEAR_IN_BACK) + new_human.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/l42a/ap, WEAR_IN_BACK) + new_human.equip_to_slot_or_del(new /obj/item/storage/box/attachments, WEAR_IN_BACK) if(6 to 8) // 20% new_human.equip_to_slot_or_del(new /obj/item/weapon/gun/rifle/m41a/tactical, WEAR_J_STORE) new_human.equip_to_slot_or_del(new /obj/item/clothing/accessory/storage/webbing, WEAR_ACCESSORY) @@ -129,7 +132,9 @@ new_human.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/ap, WEAR_IN_R_STORE) new_human.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/ap, WEAR_IN_R_STORE) new_human.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/extended, WEAR_IN_BACK) - if(8 to 9) // 20% + new_human.equip_to_slot_or_del(new /obj/item/storage/box/packet/smoke, WEAR_IN_BACK) + new_human.equip_to_slot_or_del(new /obj/item/storage/box/attachments, WEAR_IN_BACK) + if(9) // 10% new_human.equip_to_slot_or_del(new /obj/item/weapon/gun/shotgun/combat/covert, WEAR_J_STORE) new_human.equip_to_slot_or_del(new /obj/item/clothing/accessory/storage/black_vest, WEAR_ACCESSORY) new_human.equip_to_slot_or_del(new /obj/item/explosive/grenade/high_explosive, WEAR_IN_ACCESSORY) @@ -139,6 +144,8 @@ new_human.equip_to_slot_or_del(new /obj/item/explosive/grenade/high_explosive, WEAR_IN_ACCESSORY) new_human.equip_to_slot_or_del(new /obj/item/storage/pouch/shotgun/large/buckshot, WEAR_R_STORE) new_human.equip_to_slot_or_del(new /obj/item/explosive/plastic/breaching_charge, WEAR_IN_BACK) + new_human.equip_to_slot_or_del(new /obj/item/storage/box/packet/smoke, WEAR_IN_BACK) + new_human.equip_to_slot_or_del(new /obj/item/storage/box/attachments, WEAR_IN_BACK) if(10) // 10% new_human.equip_to_slot_or_del(new /obj/item/weapon/gun/rifle/m41aMK1/tactical, WEAR_J_STORE) new_human.equip_to_slot_or_del(new /obj/item/clothing/accessory/storage/black_vest, WEAR_ACCESSORY) @@ -153,6 +160,8 @@ new_human.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/m41aMK1, WEAR_IN_R_STORE) new_human.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/m41aMK1, WEAR_IN_R_STORE) new_human.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/m41aMK1, WEAR_IN_BACK) + new_human.equip_to_slot_or_del(new /obj/item/storage/box/packet/smoke, WEAR_IN_BACK) + new_human.equip_to_slot_or_del(new /obj/item/storage/box/attachments, WEAR_IN_BACK) //*****************************************************************************************************/ @@ -501,6 +510,8 @@ new_human.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/mar40, WEAR_IN_R_STORE) new_human.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/mar40, WEAR_IN_R_STORE) new_human.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/mar40, WEAR_IN_BACK) + new_human.equip_to_slot_or_del(new /obj/item/storage/box/packet/smoke, WEAR_IN_BACK) + new_human.equip_to_slot_or_del(new /obj/item/storage/box/attachments, WEAR_IN_BACK) if(4 to 5) // 20% new_human.equip_to_slot_or_del(new /obj/item/weapon/gun/rifle/l42a/abr40/tactical, WEAR_J_STORE) new_human.equip_to_slot_or_del(new /obj/item/clothing/accessory/storage/webbing, WEAR_ACCESSORY) @@ -525,7 +536,9 @@ new_human.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/ap, WEAR_IN_R_STORE) new_human.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/ap, WEAR_IN_R_STORE) new_human.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/extended, WEAR_IN_BACK) - if(8 to 9) // 20% + new_human.equip_to_slot_or_del(new /obj/item/storage/box/packet/smoke, WEAR_IN_BACK) + new_human.equip_to_slot_or_del(new /obj/item/storage/box/attachments, WEAR_IN_BACK) + if(9) // 10% new_human.equip_to_slot_or_del(new /obj/item/weapon/gun/shotgun/combat/covert, WEAR_J_STORE) new_human.equip_to_slot_or_del(new /obj/item/clothing/accessory/storage/black_vest, WEAR_ACCESSORY) new_human.equip_to_slot_or_del(new /obj/item/explosive/grenade/high_explosive, WEAR_IN_ACCESSORY) @@ -535,6 +548,8 @@ new_human.equip_to_slot_or_del(new /obj/item/explosive/grenade/high_explosive, WEAR_IN_ACCESSORY) new_human.equip_to_slot_or_del(new /obj/item/storage/pouch/shotgun/large/buckshot, WEAR_R_STORE) new_human.equip_to_slot_or_del(new /obj/item/explosive/plastic/breaching_charge, WEAR_IN_BACK) + new_human.equip_to_slot_or_del(new /obj/item/storage/box/packet/smoke, WEAR_IN_BACK) + new_human.equip_to_slot_or_del(new /obj/item/storage/box/attachments, WEAR_IN_BACK) if(10) // 10% new_human.equip_to_slot_or_del(new /obj/item/weapon/gun/rifle/m41aMK1/tactical, WEAR_J_STORE) new_human.equip_to_slot_or_del(new /obj/item/clothing/accessory/storage/black_vest, WEAR_ACCESSORY) @@ -549,6 +564,8 @@ new_human.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/m41aMK1, WEAR_IN_R_STORE) new_human.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/m41aMK1, WEAR_IN_R_STORE) new_human.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/m41aMK1, WEAR_IN_BACK) + new_human.equip_to_slot_or_del(new /obj/item/storage/box/packet/smoke, WEAR_IN_BACK) + new_human.equip_to_slot_or_del(new /obj/item/storage/box/attachments, WEAR_IN_BACK) //*****************************************************************************************************/ diff --git a/code/modules/gear_presets/fun.dm b/code/modules/gear_presets/fun.dm index f9b6970015c8..40316e57ab3b 100644 --- a/code/modules/gear_presets/fun.dm +++ b/code/modules/gear_presets/fun.dm @@ -85,6 +85,8 @@ paygrades = list("Ser" = JOB_PLAYTIME_TIER_0) role_comm_title = "OHEFA" + minimap_icon = "hefa" + skills = /datum/skills/specialist /datum/equipment_preset/fun/hefa/load_skills(mob/living/carbon/human/new_human) diff --git a/code/modules/gear_presets/other.dm b/code/modules/gear_presets/other.dm index 73f8c5dc4df0..fc2ebe3d0e63 100644 --- a/code/modules/gear_presets/other.dm +++ b/code/modules/gear_presets/other.dm @@ -744,6 +744,9 @@ assignment = "Cultist" rank = "Cultist" + minimap_icon = "cultist" + minimap_background = "background_cultist" + /datum/equipment_preset/other/xeno_cultist/New() . = ..() access = get_access(ACCESS_LIST_COLONIAL_ALL) @@ -805,6 +808,8 @@ assignment = "Cultist Leader" rank = "Cultist Leader" + minimap_icon = "cult_leader" + /datum/equipment_preset/other/xeno_cultist/leader/load_gear(mob/living/carbon/human/new_human) . = ..() new_human.equip_to_slot_or_del(new /obj/item/clothing/glasses/night/cultist(new_human), WEAR_EYES) diff --git a/code/modules/gear_presets/pmc.dm b/code/modules/gear_presets/pmc.dm index e280060cae34..519e9380ce8d 100644 --- a/code/modules/gear_presets/pmc.dm +++ b/code/modules/gear_presets/pmc.dm @@ -7,6 +7,7 @@ faction = FACTION_PMC faction_group = FACTION_LIST_WY languages = list(LANGUAGE_ENGLISH, LANGUAGE_JAPANESE) + minimap_background = "background_pmc" var/human_versus_human = FALSE var/headset_type = /obj/item/device/radio/headset/distress/pmc @@ -331,7 +332,9 @@ list("POUCHES (CHOOSE 2)", 0, null, null, null), assignment = JOB_PMC_MEDIC rank = JOB_PMC_MEDIC + minimap_icon = "pmc_md" paygrades = list(PAY_SHORT_PMC_MS = JOB_PLAYTIME_TIER_0) + role_comm_title = "CM" skills = /datum/skills/pmc/medic headset_type = /obj/item/device/radio/headset/distress/pmc/medic @@ -507,6 +510,7 @@ list("POUCHES (CHOOSE 2)", 0, null, null, null), assignment = JOB_PMC_INVESTIGATOR rank = JOB_PMC_INVESTIGATOR + minimap_icon = "pmc_td" paygrades = list(PAY_SHORT_PMC_MS = JOB_PLAYTIME_TIER_0) skills = /datum/skills/pmc/medic/chem headset_type = /obj/item/device/radio/headset/distress/pmc/medic @@ -689,6 +693,9 @@ list("POUCHES (CHOOSE 2)", 0, null, null, null), rank = JOB_PMC_LEADER paygrades = list(PAY_SHORT_PMC_TL = JOB_PLAYTIME_TIER_0) role_comm_title = "SL" + + minimap_icon = "pmc_ld" + skills = /datum/skills/pmc/SL headset_type = /obj/item/device/radio/headset/distress/pmc/command @@ -988,6 +995,9 @@ list("POUCHES (CHOOSE 2)", 0, null, null, null), rank = JOB_PMC_GUNNER paygrades = list(PAY_SHORT_PMC_SS = JOB_PLAYTIME_TIER_0) role_comm_title = "SG" + + minimap_icon = "pmc_sg" + skills = /datum/skills/pmc/smartgunner /datum/equipment_preset/pmc/pmc_gunner/load_gear(mob/living/carbon/human/new_human) @@ -1489,6 +1499,9 @@ list("POUCHES (CHOOSE 2)", 0, null, null, null), rank = JOB_PMC_DOCTOR paygrades = list(PAY_SHORT_PMC_DOC = JOB_PLAYTIME_TIER_0) role_comm_title = "SGN" + + minimap_icon = "pmc_ld" + skills = /datum/skills/pmc/doctor headset_type = /obj/item/device/radio/headset/distress/pmc/medic @@ -1664,6 +1677,9 @@ list("POUCHES (CHOOSE 2)", 0, null, null, null), rank = JOB_PMC_ENGINEER paygrades = list(PAY_SHORT_PMC_TEC = JOB_PLAYTIME_TIER_0) role_comm_title = "TEC" + + minimap_icon = "engi" + skills = /datum/skills/pmc/engineer headset_type = /obj/item/device/radio/headset/distress/pmc/cct @@ -1814,6 +1830,9 @@ list("POUCHES (CHOOSE 2)", 0, null, null, null), paygrades = list(PAY_SHORT_PMC_DIR = JOB_PLAYTIME_TIER_0) role_comm_title = "DIR" skills = /datum/skills/pmc/director + + minimap_icon = "pmc_sd" + headset_type = /obj/item/device/radio/headset/distress/pmc/command/director /datum/equipment_preset/pmc/director/load_gear(mob/living/carbon/human/new_human) @@ -1850,6 +1869,7 @@ list("POUCHES (CHOOSE 2)", 0, null, null, null), idtype = /obj/item/card/id/pmc assignment = JOB_PMC_SYNTH rank = JOB_PMC_SYNTH + minimap_icon = "pmc_syn" paygrades = list(PAY_SHORT_SYN = JOB_PLAYTIME_TIER_0) role_comm_title = "WY Syn" headset_type = /obj/item/device/radio/headset/distress/pmc/command @@ -1893,10 +1913,9 @@ list("POUCHES (CHOOSE 2)", 0, null, null, null), new_human.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/nailgun, WEAR_IN_JACKET) new_human.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/nailgun, WEAR_IN_JACKET) - new_human.equip_to_slot_or_del(new /obj/item/clothing/head/helmet/marine/veteran/pmc, WEAR_HEAD) + new_human.equip_to_slot_or_del(new /obj/item/clothing/head/helmet/marine/veteran/pmc/leader, WEAR_HEAD) new_human.equip_to_slot_or_del(new headset_type, WEAR_L_EAR) new_human.equip_to_slot_or_del(new /obj/item/clothing/glasses/night/experimental_mesons, WEAR_EYES) - new_human.equip_to_slot_or_del(new /obj/item/clothing/mask/gas/pmc, WEAR_FACE) new_human.equip_to_slot_or_del(new /obj/item/clothing/gloves/marine/veteran/pmc, WEAR_HANDS) new_human.equip_to_slot_or_del(new /obj/item/clothing/shoes/veteran/pmc/knife, WEAR_FEET) @@ -1907,9 +1926,10 @@ list("POUCHES (CHOOSE 2)", 0, null, null, null), new_human.equip_to_slot_or_del(new /obj/item/tool/extinguisher/mini, WEAR_IN_BACK) new_human.equip_to_slot_or_del(new /obj/item/device/defibrillator/upgraded, WEAR_IN_BACK) new_human.equip_to_slot_or_del(new /obj/item/tool/crew_monitor, WEAR_IN_BACK) + new_human.equip_to_slot_or_del(new /obj/item/weapon/gun/smg/nailgun/compact, WEAR_IN_BACK) new_human.equip_to_slot_or_del(new /obj/item/storage/belt/medical/lifesaver/full/dutch, WEAR_WAIST) - new_human.equip_to_slot_or_del(new /obj/item/weapon/gun/smg/nailgun/compact, WEAR_J_STORE) + new_human.equip_to_slot_or_del(new /obj/item/maintenance_jack, WEAR_J_STORE) new_human.equip_to_slot_or_del(new /obj/item/storage/pouch/tools/tactical, WEAR_L_STORE) new_human.equip_to_slot_or_del(new /obj/item/tool/screwdriver/tactical, WEAR_IN_L_STORE) diff --git a/code/modules/gear_presets/royal_marines.dm b/code/modules/gear_presets/royal_marines.dm index f59ade2eb75b..b648e0fb31b8 100644 --- a/code/modules/gear_presets/royal_marines.dm +++ b/code/modules/gear_presets/royal_marines.dm @@ -3,6 +3,7 @@ faction = FACTION_TWE faction_group = list(FACTION_TWE, FACTION_MARINE) languages = list(LANGUAGE_ENGLISH, LANGUAGE_JAPANESE) + minimap_background = "background_twe" /datum/equipment_preset/twe/royal_marine/load_name(mob/living/carbon/human/new_human, randomise) new_human.gender = pick_weight(list(MALE = 80, FEMALE = 20,)) @@ -63,6 +64,9 @@ flags = EQUIPMENT_PRESET_EXTRA assignment = "Royal Marines Rifleman" rank = JOB_TWE_RMC_RIFLEMAN + + minimap_icon = "rmc_rifleman" + skills = /datum/skills/rmc /datum/equipment_preset/twe/royal_marine/standard/load_gear(mob/living/carbon/human/new_human) @@ -118,6 +122,7 @@ name = "TWE Royal Marine Commando (Marksman)" assignment = "Royal Marines Marksman" rank = JOB_TWE_RMC_MARKSMAN + minimap_icon = "rmc_marksman" /datum/equipment_preset/twe/royal_marine/spec/marksman/load_gear(mob/living/carbon/human/new_human) new_human.equip_to_slot_or_del(new headset_type, WEAR_L_EAR) @@ -159,6 +164,7 @@ name = "TWE Royal Marine Commando (Breacher)" assignment = "Royal Marines Breacher" rank = JOB_TWE_RMC_BREACHER + minimap_icon = "rmc_breacher" /datum/equipment_preset/twe/royal_marine/spec/breacher/load_gear(mob/living/carbon/human/new_human) new_human.equip_to_slot_or_del(new headset_type, WEAR_L_EAR) @@ -203,6 +209,9 @@ role_comm_title = "RMC SG" assignment = "Royal Marines Smartgunner" rank = JOB_TWE_RMC_SMARTGUNNER + + minimap_icon = "rmc_sg" + skills = /datum/skills/rmc/smartgun /datum/equipment_preset/twe/royal_marine/spec/machinegun/load_gear(mob/living/carbon/human/new_human) @@ -247,6 +256,9 @@ flags = EQUIPMENT_PRESET_EXTRA assignment = "Royal Marines Team Leader" rank = JOB_TWE_RMC_TEAMLEADER + + minimap_icon = "rmc_teamleader" + skills = /datum/skills/rmc/leader /datum/equipment_preset/twe/royal_marine/team_leader/load_gear(mob/living/carbon/human/new_human) @@ -296,6 +308,9 @@ flags = EQUIPMENT_PRESET_EXTRA assignment = "Royal Marines Team Commander" rank = JOB_TWE_RMC_LIEUTENANT + + minimap_icon = "rmc_lieutenant" + skills = /datum/skills/rmc/leader /datum/equipment_preset/twe/royal_marine/lieuteant/load_gear(mob/living/carbon/human/new_human) diff --git a/code/modules/gear_presets/survivors/fiorina_sciannex/preset_fiorina_sciannex.dm b/code/modules/gear_presets/survivors/fiorina_sciannex/preset_fiorina_sciannex.dm index 873ade0aefc8..1f19848253a1 100644 --- a/code/modules/gear_presets/survivors/fiorina_sciannex/preset_fiorina_sciannex.dm +++ b/code/modules/gear_presets/survivors/fiorina_sciannex/preset_fiorina_sciannex.dm @@ -12,6 +12,7 @@ new_human.equip_to_slot_or_del(new /obj/item/clothing/glasses/science(new_human), WEAR_EYES) new_human.equip_to_slot_or_del(new /obj/item/storage/backpack/satchel/tox(new_human), WEAR_BACK) new_human.equip_to_slot_or_del(new /obj/item/clothing/shoes/laceup(new_human), WEAR_FEET) + new_human.equip_to_slot_or_del(new /obj/item/device/radio/headset/distress/WY(new_human), WEAR_L_EAR) ..() @@ -22,6 +23,7 @@ /datum/equipment_preset/survivor/doctor/fiorina/load_gear(mob/living/carbon/human/new_human) new_human.equip_to_slot_or_del(new /obj/item/clothing/under/rank/medical/lightblue(new_human), WEAR_BODY) new_human.equip_to_slot_or_del(new /obj/item/clothing/head/helmet/marine/veteran/pmc(new_human), WEAR_HEAD) + new_human.equip_to_slot_or_del(new /obj/item/device/radio/headset/distress/WY(new_human), WEAR_L_EAR) ..() /datum/equipment_preset/survivor/security/fiorina @@ -33,6 +35,7 @@ new_human.equip_to_slot_or_del(new /obj/item/clothing/accessory/holobadge(new_human), WEAR_ACCESSORY) new_human.equip_to_slot_or_del(new /obj/item/storage/backpack/satchel/sec(new_human), WEAR_BACK) new_human.equip_to_slot_or_del(new /obj/item/clothing/suit/armor/vest/security(new_human), WEAR_JACKET) + new_human.equip_to_slot_or_del(new /obj/item/device/radio/headset/distress/WY(new_human), WEAR_L_EAR) new_human.equip_to_slot_or_del(new /obj/item/clothing/head/soft/sec/corp(new_human), WEAR_HEAD) new_human.equip_to_slot_or_del(new /obj/item/clothing/gloves/marine/veteran(new_human), WEAR_HANDS) new_human.equip_to_slot_or_del(new /obj/item/clothing/shoes/jackboots(new_human), WEAR_FEET) @@ -41,6 +44,8 @@ /datum/equipment_preset/survivor/colonial_marshal/fiorina name = "Survivor - United Americas Riot Officer" assignment = "United Americas Riot Officer" + minimap_icon = "mp" + minimap_background = "background_ua" /datum/equipment_preset/survivor/colonial_marshal/fiorina/load_gear(mob/living/carbon/human/new_human) new_human.equip_to_slot_or_del(new /obj/item/clothing/under/marine/ua_riot(new_human), WEAR_BODY) @@ -64,3 +69,14 @@ new_human.equip_to_slot_or_del(new /obj/item/clothing/shoes/jackboots(new_human), WEAR_FEET) new_human.equip_to_slot_or_del(new /obj/item/clothing/head/hardhat/orange(new_human), WEAR_HEAD) ..() + +/datum/equipment_preset/survivor/corporate/fiorina + name = "Survivor - Fiorina Corporate Liaison" + assignment = "Fiorina Corporate Liaison" + +/datum/equipment_preset/survivor/corporate/fiorina/load_gear(mob/living/carbon/human/new_human) + new_human.equip_to_slot_or_del(new /obj/item/clothing/under/liaison_suit(new_human), WEAR_BODY) + new_human.equip_to_slot_or_del(new /obj/item/clothing/glasses/regular/hipster(new_human), WEAR_EYES) + new_human.equip_to_slot_or_del(new /obj/item/clothing/suit/armor/vest/security, WEAR_JACKET) + new_human.equip_to_slot_or_del(new /obj/item/clothing/shoes/laceup/brown(new_human), WEAR_FEET) + ..() diff --git a/code/modules/gear_presets/survivors/fiorina_sciannex/riot_in_progress_insert_fiorina_nightmare.dm b/code/modules/gear_presets/survivors/fiorina_sciannex/riot_in_progress_insert_fiorina_nightmare.dm index 27d39348e7d0..42c1ca369076 100644 --- a/code/modules/gear_presets/survivors/fiorina_sciannex/riot_in_progress_insert_fiorina_nightmare.dm +++ b/code/modules/gear_presets/survivors/fiorina_sciannex/riot_in_progress_insert_fiorina_nightmare.dm @@ -6,6 +6,7 @@ faction_group = list(FACTION_MARSHAL, FACTION_MARINE, FACTION_SURVIVOR) languages = list(LANGUAGE_ENGLISH, LANGUAGE_JAPANESE) var/human_versus_human = FALSE + minimap_background = "background_cmb" access = list( ACCESS_LIST_UA, ) @@ -20,6 +21,7 @@ assignment = "CMB Deputy" rank = JOB_CMB skills = /datum/skills/cmb + minimap_icon = "deputy" /datum/equipment_preset/survivor/cmb/standard/load_gear(mob/living/carbon/human/new_human) @@ -97,6 +99,8 @@ rank = JOB_CMB_SYN languages = ALL_SYNTH_LANGUAGES skills = /datum/skills/synthetic/cmb + minimap_icon = "cmb_syn" + minimap_background = "background_cmb" /datum/equipment_preset/synth/survivor/cmb/synth/load_race(mob/living/carbon/human/new_human) new_human.set_species(SYNTH_COLONY) @@ -155,6 +159,8 @@ flags = EQUIPMENT_PRESET_EXTRA assignment = "United Americas Police Officer" skills = /datum/skills/civilian/survivor/marshal + minimap_icon = "mp" + minimap_background = "background_ua" idtype = /obj/item/card/id/silver /datum/equipment_preset/survivor/cmb/ua/load_gear(mob/living/carbon/human/new_human) @@ -235,6 +241,8 @@ assignment = "UA Police Synthetic" languages = ALL_SYNTH_LANGUAGES skills = /datum/skills/colonial_synthetic + minimap_icon = "synth" + minimap_background = "background_ua" idtype = /obj/item/card/id/silver /datum/equipment_preset/synth/survivor/cmb/ua_synth/load_race(mob/living/carbon/human/new_human) diff --git a/code/modules/gear_presets/survivors/kutjevo/preset_kutjevo.dm b/code/modules/gear_presets/survivors/kutjevo/preset_kutjevo.dm index 6db2882ddf82..610f73e0f1ab 100644 --- a/code/modules/gear_presets/survivors/kutjevo/preset_kutjevo.dm +++ b/code/modules/gear_presets/survivors/kutjevo/preset_kutjevo.dm @@ -73,3 +73,17 @@ 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/storage/backpack/satchel(new_human), WEAR_BACK) ..() + +/datum/equipment_preset/survivor/corporate/kutjevo + name = "Survivor - Kutjevo Corporate Liaison" + assignment = "Kutjevo Corporate Liaison" + +/datum/equipment_preset/survivor/corporate/kutjevo/load_gear(mob/living/carbon/human/new_human) + new_human.equip_to_slot_or_del(new /obj/item/clothing/under/liaison_suit/orange(new_human), WEAR_BODY) + new_human.equip_to_slot_or_del(new /obj/item/clothing/glasses/kutjevo(new_human), WEAR_EYES) + new_human.equip_to_slot_or_del(new /obj/item/clothing/mask/gas/kutjevo (new_human), WEAR_FACE) + new_human.equip_to_slot_or_del(new /obj/item/clothing/gloves/black(new_human), WEAR_HANDS) + new_human.equip_to_slot_or_del(new /obj/item/clothing/suit/armor/vest, WEAR_JACKET) + new_human.equip_to_slot_or_del(new /obj/item/clothing/head/helmet/marine/veteran/kutjevo(new_human), WEAR_HEAD) + new_human.equip_to_slot_or_del(new /obj/item/clothing/shoes/marine/corporate(new_human), WEAR_FEET) + ..() diff --git a/code/modules/gear_presets/survivors/lv_522/forcon_survivors.dm b/code/modules/gear_presets/survivors/lv_522/forcon_survivors.dm index c27fa213592f..1a81ddd30cb5 100644 --- a/code/modules/gear_presets/survivors/lv_522/forcon_survivors.dm +++ b/code/modules/gear_presets/survivors/lv_522/forcon_survivors.dm @@ -4,6 +4,7 @@ paygrades = list(PAY_SHORT_ME5 = JOB_PLAYTIME_TIER_0) idtype = /obj/item/card/id/dogtag role_comm_title = "FORECON" + minimap_background = "background_forecon" rank = JOB_SURVIVOR faction_group = list(FACTION_MARINE, FACTION_SURVIVOR) flags = EQUIPMENT_PRESET_START_OF_ROUND @@ -71,10 +72,7 @@ new_human.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/m1911(new_human), WEAR_IN_BELT) new_human.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/m1911(new_human), WEAR_IN_BELT) if(3 , 4) - new_human.equip_to_slot_or_del(new /obj/item/storage/large_holster/m39, WEAR_WAIST) - new_human.equip_to_slot_or_del(new /obj/item/weapon/gun/smg/m39(new_human), WEAR_IN_BELT) - new_human.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/m39/extended(new_human), WEAR_IN_BACK) - new_human.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/m39/extended(new_human), WEAR_IN_BACK) + new_human.equip_to_slot_or_del(new /obj/item/storage/belt/gun/m39/full/extended, WEAR_WAIST) if(5) new_human.equip_to_slot_or_del(new /obj/item/device/motiondetector(new_human),WEAR_WAIST) @@ -110,6 +108,7 @@ name = "Survivor - USCM Reconnaissance Marine" assignment = JOB_FORECON_RIFLEMAN skills = /datum/skills/military/survivor/forecon_standard + minimap_icon = "private" /datum/equipment_preset/survivor/forecon/standard/load_gear(mob/living/carbon/human/new_human) ..() @@ -124,6 +123,7 @@ name = "Survivor - USCM Reconnaissance Support Technician" assignment = JOB_FORECON_SUPPORT skills = /datum/skills/military/survivor/forecon_techician + minimap_icon = "engi" /datum/equipment_preset/survivor/forecon/tech/load_gear(mob/living/carbon/human/new_human) new_human.equip_to_slot_or_del(new /obj/item/storage/backpack/marine/satchel/big(new_human), WEAR_BACK) @@ -146,6 +146,7 @@ name = "Survivor - USCM Reconnaissance Designated Marksman" assignment = JOB_FORECON_MARKSMAN skills = /datum/skills/military/survivor/forecon_marksman + minimap_icon = "spec" /datum/equipment_preset/survivor/forecon/marksman/load_gear(mob/living/carbon/human/new_human) new_human.equip_to_slot_or_del(new /obj/item/weapon/gun/rifle/m4ra_custom(new_human), WEAR_L_HAND) @@ -162,6 +163,7 @@ name = "Survivor - USCM Reconnaissance Smartgunner" assignment = JOB_FORECON_SMARTGUNNER skills = /datum/skills/military/survivor/forecon_smartgunner + minimap_icon = "smartgunner" /datum/equipment_preset/survivor/forecon/smartgunner/load_gear(mob/living/carbon/human/new_human) ..() @@ -180,6 +182,7 @@ name = "Survivor - USCM Reconnaissance Sniper" assignment = JOB_FORECON_SNIPER skills = /datum/skills/military/survivor/forecon_sniper + minimap_icon = "spec" /datum/equipment_preset/survivor/forecon/sniper/load_gear(mob/living/carbon/human/new_human) var/obj/item/clothing/under/marine/reconnaissance/uniform = new() @@ -215,6 +218,7 @@ assignment = JOB_FORECON_SL skills = /datum/skills/military/survivor/forecon_squad_leader paygrades = list(PAY_SHORT_MO1 = JOB_PLAYTIME_TIER_0) + minimap_icon = "leader" dress_under = list(/obj/item/clothing/under/marine/dress/blues/senior) dress_over = list(/obj/item/clothing/suit/storage/jacket/marine/dress/blues/officer) @@ -247,6 +251,8 @@ paygrades = list(PAY_SHORT_MO4 = JOB_PLAYTIME_TIER_0) idtype = /obj/item/card/id/gold role_comm_title = "FORECON CO" + minimap_icon = "co" + minimap_background = "background_command" dress_under = list(/obj/item/clothing/under/marine/dress/blues/senior) dress_over = list(/obj/item/clothing/suit/storage/jacket/marine/dress/blues/officer) diff --git a/code/modules/gear_presets/survivors/lv_624/clfship_insert_lv624.dm b/code/modules/gear_presets/survivors/lv_624/clfship_insert_lv624.dm index 1bfeaaad9c43..d199e19e452b 100644 --- a/code/modules/gear_presets/survivors/lv_624/clfship_insert_lv624.dm +++ b/code/modules/gear_presets/survivors/lv_624/clfship_insert_lv624.dm @@ -7,6 +7,8 @@ languages = list(LANGUAGE_ENGLISH, LANGUAGE_JAPANESE) faction = FACTION_CLF faction_group = list(FACTION_CLF, FACTION_SURVIVOR) + minimap_background = "background_clf" + minimap_icon = "clf_mil" access = list(ACCESS_CIVILIAN_PUBLIC) survivor_variant = HOSTILE_SURVIVOR diff --git a/code/modules/gear_presets/survivors/misc.dm b/code/modules/gear_presets/survivors/misc.dm index 1a24ca5d58b9..fa70c497a05b 100644 --- a/code/modules/gear_presets/survivors/misc.dm +++ b/code/modules/gear_presets/survivors/misc.dm @@ -181,6 +181,8 @@ Everything below isn't used or out of place. skills = /datum/skills/civilian/survivor/goon languages = list(LANGUAGE_ENGLISH, LANGUAGE_JAPANESE) access = list(ACCESS_CIVILIAN_PUBLIC, ACCESS_CIVILIAN_COMMAND, ACCESS_CIVILIAN_BRIG, ACCESS_WY_COLONIAL) + minimap_icon = "goon_standard" + minimap_background = "background_goon" survivor_variant = SECURITY_SURVIVOR @@ -256,6 +258,8 @@ Everything below isn't used or out of place. assignment = "USASF Commander" skills = /datum/skills/commander paygrades = list(PAY_SHORT_NO5 = JOB_PLAYTIME_TIER_0) + minimap_icon = "xo" + minimap_background = "background_shipside" idtype = /obj/item/card/id/gold role_comm_title = "USASF CDR" flags = EQUIPMENT_PRESET_START_OF_ROUND diff --git a/code/modules/gear_presets/survivors/solaris/crashlanding-offices_insert_bigred.dm b/code/modules/gear_presets/survivors/solaris/crashlanding-offices_insert_bigred.dm index a23b405ef019..37a3d3923b19 100644 --- a/code/modules/gear_presets/survivors/solaris/crashlanding-offices_insert_bigred.dm +++ b/code/modules/gear_presets/survivors/solaris/crashlanding-offices_insert_bigred.dm @@ -4,12 +4,15 @@ /datum/equipment_preset/survivor/pmc name = "Survivor - PMC" flags = EQUIPMENT_PRESET_START_OF_ROUND - assignment = "Weyland-Yutani PMC" - faction = FACTION_SURVIVOR - faction_group = list(FACTION_WY, FACTION_SURVIVOR) + assignment = JOB_PMC_STANDARD + rank = JOB_PMC_STANDARD + faction = FACTION_PMC + faction_group = list(FACTION_WY, FACTION_SURVIVOR, FACTION_PMC) paygrades = list(PAY_SHORT_PMC_OP = JOB_PLAYTIME_TIER_0) idtype = /obj/item/card/id/pmc skills = /datum/skills/civilian/survivor/pmc + minimap_icon = "private" + minimap_background = "background_pmc" languages = list(LANGUAGE_ENGLISH, LANGUAGE_JAPANESE) access = list( ACCESS_WY_GENERAL, @@ -45,8 +48,11 @@ /datum/equipment_preset/survivor/pmc/medic name = "Survivor - PMC Medic" assignment = JOB_PMC_MEDIC + rank = JOB_PMC_MEDIC paygrades = list(PAY_SHORT_PMC_MS = JOB_PLAYTIME_TIER_0) + role_comm_title = "CM" skills = /datum/skills/civilian/survivor/pmc/medic + minimap_icon = "pmc_md" /datum/equipment_preset/survivor/pmc/medic/load_gear(mob/living/carbon/human/new_human) new_human.equip_to_slot_or_del(new /obj/item/storage/backpack/lightpack/five_slot, WEAR_BACK) @@ -57,6 +63,7 @@ else new_human.equip_to_slot_or_del(new /obj/item/clothing/glasses/hud/health(new_human), WEAR_EYES) new_human.equip_to_slot_or_del(new /obj/item/device/healthanalyzer, WEAR_R_HAND) + new_human.equip_to_slot_or_del(new /obj/item/device/radio/headset/distress/pmc/medic/hvh, WEAR_L_EAR) ..() // /obj/effect/landmark/survivor_spawner/bigred_crashed_pmc_engineer @@ -64,14 +71,18 @@ /datum/equipment_preset/survivor/pmc/engineer name = "Survivor - PMC Engineer" assignment = JOB_PMC_ENGINEER + rank = JOB_PMC_ENGINEER paygrades = list(PAY_SHORT_PMC_TEC = JOB_PLAYTIME_TIER_0) + role_comm_title = "TEC" skills = /datum/skills/civilian/survivor/pmc/engineer + minimap_icon = "engi" /datum/equipment_preset/survivor/pmc/engineer/load_gear(mob/living/carbon/human/new_human) new_human.equip_to_slot_or_del(new /obj/item/storage/backpack/lightpack/five_slot, WEAR_BACK) new_human.equip_to_slot_or_del(new /obj/item/clothing/glasses/welding/superior, WEAR_EYES) new_human.equip_to_slot_or_del(new /obj/item/stack/sheet/plasteel/med_small_stack(new_human), WEAR_IN_BACK) new_human.equip_to_slot_or_del(new /obj/item/storage/belt/utility/full(new_human), WEAR_R_HAND) + new_human.equip_to_slot_or_del(new /obj/item/device/radio/headset/distress/pmc/cct/hvh, WEAR_L_EAR) ..() @@ -83,8 +94,10 @@ paygrades = list(PAY_SHORT_WYC6 = JOB_PLAYTIME_TIER_0) skills = /datum/skills/civilian/survivor/manager assignment = "Colony Supervisor" + rank = JOB_EXECUTIVE_SUPERVISOR role_comm_title = "Supervisor" idtype = /obj/item/card/id/silver/clearance_badge/manager + faction = FACTION_WY faction_group = list(FACTION_WY, FACTION_SURVIVOR) access = list( ACCESS_WY_GENERAL, @@ -127,8 +140,8 @@ // only used on the spawner of all of those above... /datum/equipment_preset/synth/survivor/pmc name = "Survivor - Synthetic - PMC Support Synth" - faction = FACTION_SURVIVOR - faction_group = list(FACTION_WY, FACTION_SURVIVOR) + faction = FACTION_PMC + faction_group = list(FACTION_WY, FACTION_SURVIVOR, FACTION_PMC) access = list( ACCESS_WY_GENERAL, ACCESS_WY_COLONIAL, @@ -144,14 +157,23 @@ ACCESS_CIVILIAN_MEDBAY, ACCESS_CIVILIAN_COMMAND, ) + skills = /datum/skills/synthetic idtype = /obj/item/card/id/pmc assignment = JOB_PMC_SYNTH rank = JOB_PMC_SYNTH + paygrades = list(PAY_SHORT_SYN = JOB_PLAYTIME_TIER_0) role_comm_title = "WY Syn" + skills = /datum/skills/synthetic + minimap_icon = "pmc_syn" + minimap_background = "background_pmc" /datum/equipment_preset/synth/survivor/pmc/load_race(mob/living/carbon/human/new_human) new_human.set_species(SYNTH_GEN_THREE) +/datum/equipment_preset/synth/survivor/pmc/load_skills(mob/living/carbon/human/new_human) + new_human.set_skills(/datum/skills/synthetic) + new_human.allow_gun_usage = FALSE + /datum/equipment_preset/synth/survivor/pmc/load_gear(mob/living/carbon/human/new_human) new_human.equip_to_slot_or_del(new /obj/item/clothing/under/marine/veteran/pmc, WEAR_BODY) new_human.equip_to_slot_or_del(new /obj/item/clothing/accessory/storage/droppouch, WEAR_ACCESSORY) @@ -160,24 +182,22 @@ new_human.equip_to_slot_or_del(new /obj/item/restraint/handcuffs/zip, WEAR_IN_ACCESSORY) new_human.equip_to_slot_or_del(new /obj/item/clothing/suit/storage/marine/veteran/pmc/light/synth, WEAR_JACKET) new_human.equip_to_slot_or_del(new /obj/item/weapon/telebaton, WEAR_IN_JACKET) - new_human.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/nailgun, WEAR_IN_JACKET) - new_human.equip_to_slot_or_del(new /obj/item/clothing/head/helmet/marine/veteran/pmc, WEAR_HEAD) + new_human.equip_to_slot_or_del(new /obj/item/clothing/head/helmet/marine/veteran/pmc/leader, WEAR_HEAD) new_human.equip_to_slot_or_del(new /obj/item/device/radio/headset/distress/pmc/command/hvh, WEAR_L_EAR) - new_human.equip_to_slot_or_del(new /obj/item/clothing/mask/gas/pmc, WEAR_FACE) + new_human.equip_to_slot_or_del(new /obj/item/clothing/glasses/sunglasses, WEAR_EYES) new_human.equip_to_slot_or_del(new /obj/item/clothing/gloves/marine/veteran/pmc, WEAR_HANDS) new_human.equip_to_slot_or_del(new /obj/item/clothing/shoes/veteran/pmc/knife, WEAR_FEET) - new_human.equip_to_slot_or_del(new /obj/item/storage/backpack/marine/smartpack/white, WEAR_BACK) + new_human.equip_to_slot_or_del(new /obj/item/storage/backpack/marine/smartpack/white/drained, WEAR_BACK) new_human.equip_to_slot_or_del(new /obj/item/roller, WEAR_IN_BACK) new_human.equip_to_slot_or_del(new /obj/item/roller/surgical, WEAR_IN_BACK) new_human.equip_to_slot_or_del(new /obj/item/tool/extinguisher/mini, WEAR_IN_BACK) new_human.equip_to_slot_or_del(new /obj/item/device/defibrillator/upgraded, WEAR_IN_BACK) new_human.equip_to_slot_or_del(new /obj/item/tool/crew_monitor, WEAR_IN_BACK) - new_human.equip_to_slot_or_del(new /obj/item/storage/belt/medical/lifesaver/full/dutch, WEAR_WAIST) - new_human.equip_to_slot_or_del(new /obj/item/weapon/gun/smg/nailgun/compact, WEAR_J_STORE) + new_human.equip_to_slot_or_del(new /obj/item/storage/belt/medical/lifesaver/dutch/partial, WEAR_WAIST) new_human.equip_to_slot_or_del(new /obj/item/storage/pouch/tools/tactical, WEAR_L_STORE) new_human.equip_to_slot_or_del(new /obj/item/tool/screwdriver/tactical, WEAR_IN_L_STORE) diff --git a/code/modules/gear_presets/survivors/solaris/preset_solaris.dm b/code/modules/gear_presets/survivors/solaris/preset_solaris.dm index 65cf3e7f0132..92e92576cd27 100644 --- a/code/modules/gear_presets/survivors/solaris/preset_solaris.dm +++ b/code/modules/gear_presets/survivors/solaris/preset_solaris.dm @@ -68,6 +68,8 @@ /datum/equipment_preset/survivor/security/solaris name = "Survivor - Solaris United Americas Peacekeepers" assignment = "United Americas Peacekeeper" + minimap_icon = "peacekeeper" + minimap_background = "background_ua" /datum/equipment_preset/survivor/security/solaris/load_gear(mob/living/carbon/human/new_human) new_human.equip_to_slot_or_del(new /obj/item/clothing/under/marine/ua_riot(new_human), WEAR_BODY) @@ -82,6 +84,8 @@ name = "Survivor - Solaris United States Colonial Marine Corps Recruiter" assignment = "USCM Recruiter" paygrades = list(PAY_SHORT_ME5 = JOB_PLAYTIME_TIER_0) + minimap_icon = "recruiter" + minimap_background = "background_medical" /datum/equipment_preset/survivor/uscm/solaris/load_gear(mob/living/carbon/human/new_human) new_human.equip_to_slot_or_del(new /obj/item/clothing/under/marine/officer/bridge(new_human), WEAR_BODY) diff --git a/code/modules/gear_presets/survivors/sorokyne_strata/preset_sorokyne_strata.dm b/code/modules/gear_presets/survivors/sorokyne_strata/preset_sorokyne_strata.dm index f285a9635bde..793363557cab 100644 --- a/code/modules/gear_presets/survivors/sorokyne_strata/preset_sorokyne_strata.dm +++ b/code/modules/gear_presets/survivors/sorokyne_strata/preset_sorokyne_strata.dm @@ -1,6 +1,8 @@ /datum/equipment_preset/survivor/engineer/soro name = "Survivor - Sorokyne Strata State Contractor" assignment = "Sorokyne Strata State Contractor" + minimap_icon = "upp_cont" + minimap_background = "background_upp" /datum/equipment_preset/survivor/engineer/soro/load_gear(mob/living/carbon/human/new_human) new_human.equip_to_slot_or_del(new /obj/item/clothing/under/marine/veteran/UPP(new_human), WEAR_BODY) @@ -14,6 +16,8 @@ /datum/equipment_preset/survivor/security/soro name = "Survivor - Sorokyne Strata Security" assignment = "Sorokyne Strata Security" + minimap_icon = "upp_sec" + minimap_background = "background_upp" /datum/equipment_preset/survivor/security/soro/load_gear(mob/living/carbon/human/new_human) new_human.equip_to_slot_or_del(new /obj/item/clothing/under/rank/veteran/soviet_uniform_01(new_human), WEAR_BODY) @@ -28,6 +32,8 @@ /datum/equipment_preset/survivor/doctor/soro name = "Survivor - Sorokyne Strata Doctor" assignment = "Sorokyne Strata Doctor" + minimap_icon = "upp_doc" + minimap_background = "background_upp" /datum/equipment_preset/survivor/doctor/soro/load_gear(mob/living/carbon/human/new_human) new_human.equip_to_slot_or_del(new /obj/item/clothing/under/rank/veteran/soviet_uniform_01(new_human), WEAR_BODY) @@ -38,6 +44,8 @@ /datum/equipment_preset/survivor/scientist/soro name = "Survivor - Sorokyne Strata Researcher" assignment = "Sorokyne Strata Researcher" + minimap_icon = "upp_sci" + minimap_background = "background_upp" /datum/equipment_preset/survivor/scientist/soro/load_gear(mob/living/carbon/human/new_human) new_human.equip_to_slot_or_del(new /obj/item/clothing/under/rank/medical/blue(new_human), WEAR_BODY) diff --git a/code/modules/gear_presets/survivors/survivors.dm b/code/modules/gear_presets/survivors/survivors.dm index bdfd47dd20ca..27e50bf9be41 100644 --- a/code/modules/gear_presets/survivors/survivors.dm +++ b/code/modules/gear_presets/survivors/survivors.dm @@ -14,7 +14,7 @@ access = list(ACCESS_CIVILIAN_PUBLIC) minimap_icon = "surv" - minimap_background = MINIMAP_ICON_BACKGROUND_CIVILIAN + minimap_background = "background_civillian" var/survivor_variant = CIVILIAN_SURVIVOR @@ -263,6 +263,8 @@ Standart Survivors : /datum/equipment_preset/survivor/scientist, assignment = "CMB Deputy" paygrades = list(PAY_SHORT_CMBD = JOB_PLAYTIME_TIER_0) skills = /datum/skills/civilian/survivor/marshal + minimap_icon = "deputy" + minimap_background = "background_cmb" flags = EQUIPMENT_PRESET_START_OF_ROUND idtype = /obj/item/card/id/deputy role_comm_title = "CMB DEP" @@ -375,6 +377,8 @@ Everything bellow is a parent used as a base for one or multiple maps. ) languages = list(LANGUAGE_ENGLISH, LANGUAGE_JAPANESE) survivor_variant = CORPORATE_SURVIVOR + minimap_icon = "cl" + minimap_background = "background_civillian" /datum/equipment_preset/survivor/corporate/load_rank(mob/living/carbon/human/new_human, client/mob_client) if(paygrades.len == 1) @@ -468,6 +472,8 @@ Everything bellow is a parent used as a base for one or multiple maps. skills = /datum/skills/civilian/survivor flags = EQUIPMENT_PRESET_START_OF_ROUND access = list(ACCESS_CIVILIAN_PUBLIC,ACCESS_CIVILIAN_COMMAND) + minimap_icon = "obs" + minimap_background = "background_cmb" /datum/equipment_preset/survivor/interstellar_human_rights_observer/load_gear(mob/living/carbon/human/new_human) new_human.equip_to_slot_or_del(new /obj/item/clothing/under/liaison_suit/brown(new_human), WEAR_BODY) @@ -494,6 +500,8 @@ Everything bellow is a parent used as a base for one or multiple maps. faction_group = FACTION_LIST_SURVIVOR_WY idtype = /obj/item/card/id/silver/cl role_comm_title = "ICC Rep." + minimap_icon = "icc" + minimap_background = "background_cmb" survivor_variant = CORPORATE_SURVIVOR diff --git a/code/modules/gear_presets/survivors/trijent/crashlanding_upp_bar_insert_trijent.dm b/code/modules/gear_presets/survivors/trijent/crashlanding_upp_bar_insert_trijent.dm index 25136c172b6d..d098f242ed82 100644 --- a/code/modules/gear_presets/survivors/trijent/crashlanding_upp_bar_insert_trijent.dm +++ b/code/modules/gear_presets/survivors/trijent/crashlanding_upp_bar_insert_trijent.dm @@ -9,6 +9,8 @@ languages = list(LANGUAGE_RUSSIAN, LANGUAGE_GERMAN, LANGUAGE_CHINESE) faction = FACTION_UPP faction_group = list(FACTION_UPP, FACTION_SURVIVOR) + minimap_icon = "upp_pvt" + minimap_background = "background_upp" role_comm_title = "173/RECON" idtype = /obj/item/card/id/dogtag flags = EQUIPMENT_PRESET_EXTRA @@ -69,6 +71,9 @@ paygrades = list(PAY_SHORT_UE3 = JOB_PLAYTIME_TIER_0) assignment = JOB_UPP_ENGI rank = JOB_UPP_ENGI + + minimap_icon = "upp_sapper" + skills = /datum/skills/military/survivor/upp_sapper /datum/equipment_preset/survivor/upp/sapper/load_gear(mob/living/carbon/human/new_human) @@ -97,6 +102,9 @@ paygrades = list(PAY_SHORT_UE3 = JOB_PLAYTIME_TIER_0) assignment = JOB_UPP_MEDIC rank = JOB_UPP_MEDIC + + minimap_icon = "upp_med" + skills = /datum/skills/military/survivor/upp_medic /datum/equipment_preset/survivor/upp/medic/load_gear(mob/living/carbon/human/new_human) @@ -126,6 +134,7 @@ name = "Survivor - UPP Specialist" assignment = JOB_UPP_SPECIALIST rank = JOB_UPP_SPECIALIST + minimap_icon = "upp_spec" paygrades = list(PAY_SHORT_UE4 = JOB_PLAYTIME_TIER_0) skills = /datum/skills/military/survivor/upp_spec @@ -150,6 +159,9 @@ rank = JOB_UPP_LEADER languages = list(LANGUAGE_RUSSIAN, LANGUAGE_ENGLISH, LANGUAGE_GERMAN, LANGUAGE_CHINESE) role_comm_title = "173/RECON SL" + + minimap_icon = "upp_sl" + skills = /datum/skills/military/survivor/upp_sl /datum/equipment_preset/survivor/upp/squad_leader/load_gear(mob/living/carbon/human/new_human) @@ -176,6 +188,8 @@ paygrades = list(PAY_SHORT_SYN = JOB_PLAYTIME_TIER_0) idtype = /obj/item/card/id/dogtag role_comm_title = "173/RECON Syn" + minimap_background = "background_upp" + minimap_icon = "upp_synth" /datum/equipment_preset/synth/survivor/upp/load_gear(mob/living/carbon/human/new_human) var/obj/item/clothing/under/marine/veteran/UPP/medic/uniform = new() diff --git a/code/modules/gear_presets/synths.dm b/code/modules/gear_presets/synths.dm index e28ef2e81f49..56ceb261dd5c 100644 --- a/code/modules/gear_presets/synths.dm +++ b/code/modules/gear_presets/synths.dm @@ -2,7 +2,6 @@ name = "Synth" uses_special_name = TRUE languages = ALL_SYNTH_LANGUAGES - skills = /datum/skills/synthetic paygrades = list(PAY_SHORT_SYN = JOB_PLAYTIME_TIER_0) minimap_icon = "synth" @@ -12,10 +11,18 @@ access = get_access(ACCESS_LIST_GLOBAL) /datum/equipment_preset/synth/load_race(mob/living/carbon/human/new_human) + var/generation_selection = SYNTH_GEN_THREE if(new_human.client?.prefs?.synthetic_type) - new_human.set_species(new_human.client.prefs.synthetic_type) - return - new_human.set_species(SYNTH_GEN_THREE) + generation_selection = new_human.client.prefs.synthetic_type + switch(generation_selection) + if(SYNTH_GEN_THREE) + new_human.set_species(SYNTH_GEN_THREE) + if(SYNTH_GEN_TWO) + new_human.set_species(SYNTH_COLONY_GEN_TWO) + if(SYNTH_GEN_ONE) + new_human.set_species(SYNTH_COLONY_GEN_ONE) + else + new_human.set_species(SYNTH_GEN_THREE) /datum/equipment_preset/synth/load_name(mob/living/carbon/human/new_human, randomise) var/final_name = "David" @@ -32,6 +39,22 @@ new_human.allow_gun_usage = FALSE +/datum/equipment_preset/synth/load_skills(mob/living/carbon/human/new_human, client/mob_client) + new_human.allow_gun_usage = FALSE + + if(iscolonysynthetic(new_human) && !isworkingjoe(new_human)) + new_human.set_skills(/datum/skills/colonial_synthetic) + return + + if(!mob_client) + new_human.set_skills(/datum/skills/synthetic) + return + + switch(mob_client.prefs.synthetic_type) + if(SYNTH_GEN_ONE, SYNTH_GEN_TWO) + new_human.set_skills(/datum/skills/colonial_synthetic) + else + new_human.set_skills(/datum/skills/synthetic) //*****************************************************************************************************/ /datum/equipment_preset/synth/uscm @@ -43,6 +66,8 @@ rank = "Synthetic" role_comm_title = "Syn" + minimap_icon = "synth" + /datum/equipment_preset/synth/uscm/load_gear(mob/living/carbon/human/new_human) var/back_item = /obj/item/storage/backpack/marine/satchel if (new_human.client && new_human.client.prefs && (new_human.client.prefs.backbag == 1)) @@ -129,13 +154,13 @@ generation_selection = new_human.client.prefs.synthetic_type switch(generation_selection) if(SYNTH_GEN_THREE) - new_human.set_species(SYNTH_COLONY) + new_human.set_species(SYNTH_GEN_THREE) if(SYNTH_GEN_TWO) new_human.set_species(SYNTH_COLONY_GEN_TWO) if(SYNTH_GEN_ONE) new_human.set_species(SYNTH_COLONY_GEN_ONE) else - new_human.set_species(SYNTH_COLONY) + new_human.set_species(SYNTH_GEN_THREE) /datum/equipment_preset/synth/survivor/New() . = ..() @@ -434,6 +459,7 @@ name = "Survivor - Synthetic - CMB Synth" idtype = /obj/item/card/id/deputy role_comm_title = "CMB Syn" + minimap_background = "background_cmb" equipment_to_spawn = list( WEAR_HEAD = /obj/item/clothing/head/CMB, WEAR_L_EAR = /obj/item/device/radio/headset/distress/CMB/limited, @@ -458,6 +484,7 @@ name = "Survivor - Synthetic - Corporate Security Synth" idtype = /obj/item/card/id/silver/cl role_comm_title = "WY Syn" + minimap_background = "background_pmc" equipment_to_spawn = list( WEAR_HEAD = /obj/item/clothing/head/soft/sec/corp, WEAR_L_EAR = /obj/item/device/radio/headset/distress/WY, @@ -482,6 +509,8 @@ name = "Survivor - Synthetic - Corporate Protection Synth" idtype = /obj/item/card/id/pmc role_comm_title = "WY Syn" + minimap_icon = "pmc_syn" + minimap_background = "background_pmc" equipment_to_spawn = list( WEAR_HEAD = /obj/item/clothing/head/helmet/marine/veteran/pmc, WEAR_L_EAR = /obj/item/device/radio/headset/distress/pmc/hvh, @@ -528,6 +557,7 @@ name = "Survivor - Synthetic - Interstellar Commerce Commission Synthetic" idtype = /obj/item/card/id/silver/cl role_comm_title = "ICC Syn" + minimap_background = "background_cmb" equipment_to_spawn = list( WEAR_L_EAR = /obj/item/device/radio/headset/distress/CMB/limited, WEAR_R_EAR = /obj/item/tool/pen/clicky, @@ -573,6 +603,9 @@ faction_group = list(FACTION_MARINE) assignment = JOB_WORKING_JOE rank = JOB_WORKING_JOE + + minimap_icon = "joe" + skills = /datum/skills/working_joe languages = list(LANGUAGE_ENGLISH, LANGUAGE_APOLLO, LANGUAGE_RUSSIAN, LANGUAGE_JAPANESE, LANGUAGE_GERMAN, LANGUAGE_SCANDINAVIAN, LANGUAGE_SPANISH, LANGUAGE_CHINESE) /// Used to set species when loading race @@ -687,6 +720,8 @@ /datum/equipment_preset/synth/survivor/cultist_synth name = "Cultist - Xeno Cultist Synthetic" faction = FACTION_XENOMORPH + minimap_icon = "cult_synth" + minimap_background = "background_cultist" /datum/equipment_preset/synth/survivor/cultist_synth/load_gear(mob/living/carbon/human/new_human) var/back_item = /obj/item/storage/backpack/marine/satchel/medic diff --git a/code/modules/gear_presets/upp.dm b/code/modules/gear_presets/upp.dm index 616515c59ac2..7c630176b309 100644 --- a/code/modules/gear_presets/upp.dm +++ b/code/modules/gear_presets/upp.dm @@ -3,6 +3,7 @@ languages = list(LANGUAGE_RUSSIAN, LANGUAGE_ENGLISH, LANGUAGE_CHINESE) faction = FACTION_UPP idtype = /obj/item/card/id/dogtag + minimap_background = "background_upp" origin_override = ORIGIN_UPP /datum/equipment_preset/upp/New() @@ -68,6 +69,7 @@ assignment = JOB_UPP rank = JOB_UPP role_comm_title = "Sol" + minimap_icon = "upp_pvt" paygrades = list(PAY_SHORT_UE1 = JOB_PLAYTIME_TIER_0, PAY_SHORT_UE2 = JOB_PLAYTIME_TIER_1) /datum/equipment_preset/upp/soldier/load_gear(mob/living/carbon/human/new_human) @@ -235,6 +237,7 @@ assignment = JOB_UPP_MEDIC rank = JOB_UPP_MEDIC role_comm_title = "Med" + minimap_icon = "upp_med" paygrades = list(PAY_SHORT_UE3 = JOB_PLAYTIME_TIER_0) /datum/equipment_preset/upp/medic/load_gear(mob/living/carbon/human/new_human) @@ -406,6 +409,7 @@ assignment = JOB_UPP_ENGI rank = JOB_UPP_ENGI role_comm_title = "Sap" + minimap_icon = "upp_sapper" paygrades = list(PAY_SHORT_UE3 = JOB_PLAYTIME_TIER_0) /datum/equipment_preset/upp/sapper/load_gear(mob/living/carbon/human/new_human) @@ -542,6 +546,7 @@ assignment = JOB_UPP_SPECIALIST rank = JOB_UPP_SPECIALIST role_comm_title = "Spc" + minimap_icon = "upp_spec" paygrades = list(PAY_SHORT_UE5 = JOB_PLAYTIME_TIER_0) /datum/equipment_preset/upp/specialist/load_gear(mob/living/carbon/human/new_human) @@ -671,6 +676,7 @@ assignment = JOB_UPP_SPECIALIST rank = JOB_UPP_SPECIALIST role_comm_title = "Spc" + minimap_icon = "upp_spec" paygrades = list(PAY_SHORT_UE5 = JOB_PLAYTIME_TIER_0) /datum/equipment_preset/upp/machinegunner/load_gear(mob/living/carbon/human/new_human) @@ -798,6 +804,7 @@ assignment = JOB_UPP_LEADER rank = JOB_UPP_LEADER role_comm_title = "SL" + minimap_icon = "upp_sl" paygrades = list(PAY_SHORT_UE6 = JOB_PLAYTIME_TIER_0) /datum/equipment_preset/upp/leader/load_gear(mob/living/carbon/human/new_human) @@ -972,6 +979,7 @@ assignment = JOB_UPP_POLICE rank = JOB_UPP_POLICE role_comm_title = "MP" + minimap_icon = "upp_mp" paygrades = list(PAY_SHORT_UE6 = JOB_PLAYTIME_TIER_0) /datum/equipment_preset/upp/military_police/load_gear(mob/living/carbon/human/new_human) @@ -1120,7 +1128,7 @@ /datum/equipment_preset/upp/doctor - name = "UPP Doctor" + name = "UPP Doktor" flags = EQUIPMENT_PRESET_EXTRA skills = /datum/skills/upp/combat_medic @@ -1271,6 +1279,7 @@ assignment = JOB_UPP_SUPPLY rank = JOB_UPP_SUPPLY role_comm_title = "Log." + minimap_icon = "upp_cargo" paygrades = list(PAY_SHORT_UE3 = JOB_PLAYTIME_TIER_0) /datum/equipment_preset/upp/supply/load_gear(mob/living/carbon/human/new_human) @@ -1347,13 +1356,14 @@ //================// /datum/equipment_preset/upp/officer - name = "UPP Lieutenant" + name = "UPP Mladshiy Leytenant" flags = EQUIPMENT_PRESET_EXTRA skills = /datum/skills/upp/officer assignment = JOB_UPP_LT_OFFICER rank = JOB_UPP_LT_OFFICER role_comm_title = "Lt." + minimap_icon = "upp_lt" paygrades = list(PAY_SHORT_UO1 = JOB_PLAYTIME_TIER_0) /datum/equipment_preset/upp/officer/load_gear(mob/living/carbon/human/new_human) @@ -1509,10 +1519,11 @@ //*****************************************************************************************************/ /datum/equipment_preset/upp/officer/senior - name = "UPP Senior Lieutenant" + name = "UPP Starshiy Leytenant" assignment = JOB_UPP_SRLT_OFFICER rank = JOB_UPP_SRLT_OFFICER role_comm_title = "Sr-Lt." + minimap_icon = "upp_slt" paygrades = list(PAY_SHORT_UO2 = JOB_PLAYTIME_TIER_0) /datum/equipment_preset/upp/officer/senior/load_gear(mob/living/carbon/human/new_human) @@ -1672,6 +1683,7 @@ assignment = JOB_UPP_KPT_OFFICER rank = JOB_UPP_KPT_OFFICER role_comm_title = "May." + minimap_icon = "upp_xo" paygrades = list(PAY_SHORT_UO3 = JOB_PLAYTIME_TIER_0) skills = /datum/skills/upp/kapitan @@ -1828,10 +1840,11 @@ //*****************************************************************************************************/ /datum/equipment_preset/upp/officer/major - name = "UPP Major" + name = "UPP Mayjor" assignment = JOB_UPP_MAY_OFFICER rank = JOB_UPP_MAY_OFFICER role_comm_title = "May." + minimap_icon = "upp_co" paygrades = list(PAY_SHORT_UO4 = JOB_PLAYTIME_TIER_0) skills = /datum/skills/upp/commander @@ -1989,15 +2002,16 @@ //*****************************************************************************************************/ -/datum/equipment_preset/upp/officer/lt_kolonel - name = "UPP Leytenant Kolonel" +/datum/equipment_preset/upp/officer/podpolkovnik + name = "UPP Podpolkovnik" assignment = JOB_UPP_LTKOL_OFFICER rank = JOB_UPP_LTKOL_OFFICER role_comm_title = "Lt. Kol." + minimap_icon = "upp_co" paygrades = list(PAY_SHORT_UO5 = JOB_PLAYTIME_TIER_0) skills = /datum/skills/upp/commander -/datum/equipment_preset/upp/officer/lt_kolonel/load_gear(mob/living/carbon/human/new_human) +/datum/equipment_preset/upp/officer/podpolkovnik/load_gear(mob/living/carbon/human/new_human) //back new_human.equip_to_slot_or_del(new /obj/item/storage/backpack/lightpack/upp, WEAR_BACK) new_human.equip_to_slot_or_del(new /obj/item/tool/extinguisher, WEAR_IN_BACK) @@ -2039,7 +2053,7 @@ if(SSmapping.configs[GROUND_MAP].environment_traits[MAP_COLD]) new_human.equip_to_slot_or_del(new /obj/item/clothing/mask/rebreather/scarf/tacticalmask/green, WEAR_FACE) -/datum/equipment_preset/upp/officer/lt_kolonel/get_antag_clothing_equipment() +/datum/equipment_preset/upp/officer/podpolkovnik/get_antag_clothing_equipment() return list( list("STANDARD EQUIPMENT (TAKE ALL)", 0, null, null, null), list("Boots", 0, /obj/item/clothing/shoes/marine/upp/knife, MARINE_CAN_BUY_SHOES, VENDOR_ITEM_MANDATORY), @@ -2089,7 +2103,7 @@ list("Heat Absorbent Coif", 0, /obj/item/clothing/mask/rebreather/scarf, MARINE_CAN_BUY_MASK, VENDOR_ITEM_REGULAR) ) -/datum/equipment_preset/upp/officer/lt_kolonel/get_antag_gear_equipment() +/datum/equipment_preset/upp/officer/podpolkovnik/get_antag_gear_equipment() return list( list("SQUAD LEADER SET (MANDATORY)", 0, null, null, null), list("Essential SL Set", 0, /obj/effect/essentials_set/leader/upp, MARINE_CAN_BUY_ESSENTIALS, VENDOR_ITEM_MANDATORY), @@ -2150,15 +2164,16 @@ //*****************************************************************************************************/ -/datum/equipment_preset/upp/officer/kolonel - name = "UPP Kolonel" - assignment = JOB_UPP_KOL_OFFICER - rank = JOB_UPP_KOL_OFFICER +/datum/equipment_preset/upp/officer/polkovnik + name = "UPP General Mayjor" + assignment = JOB_UPP_BRIG_GENERAL + rank = JOB_UPP_BRIG_GENERAL role_comm_title = "Kol." - paygrades = list(PAY_SHORT_UO6 = JOB_PLAYTIME_TIER_0) + minimap_icon = "upp_co" + paygrades = list(PAY_SHORT_UO7 = JOB_PLAYTIME_TIER_0) skills = /datum/skills/upp/commander -/datum/equipment_preset/upp/officer/kolonel/load_gear(mob/living/carbon/human/new_human) +/datum/equipment_preset/upp/officer/polkovnik/load_gear(mob/living/carbon/human/new_human) //back new_human.equip_to_slot_or_del(new /obj/item/storage/backpack/lightpack/upp, WEAR_BACK) new_human.equip_to_slot_or_del(new /obj/item/tool/extinguisher, WEAR_IN_BACK) @@ -2200,7 +2215,7 @@ if(SSmapping.configs[GROUND_MAP].environment_traits[MAP_COLD]) new_human.equip_to_slot_or_del(new /obj/item/clothing/mask/rebreather/scarf/tacticalmask/green, WEAR_FACE) -/datum/equipment_preset/upp/officer/kolonel/get_antag_clothing_equipment() +/datum/equipment_preset/upp/officer/polkovnik/get_antag_clothing_equipment() return list( list("STANDARD EQUIPMENT (TAKE ALL)", 0, null, null, null), list("Boots", 0, /obj/item/clothing/shoes/marine/upp/knife, MARINE_CAN_BUY_SHOES, VENDOR_ITEM_MANDATORY), @@ -2250,7 +2265,7 @@ list("Heat Absorbent Coif", 0, /obj/item/clothing/mask/rebreather/scarf, MARINE_CAN_BUY_MASK, VENDOR_ITEM_REGULAR) ) -/datum/equipment_preset/upp/officer/kolonel/get_antag_gear_equipment() +/datum/equipment_preset/upp/officer/polkovnik/get_antag_gear_equipment() return list( list("SQUAD LEADER SET (MANDATORY)", 0, null, null, null), list("Essential SL Set", 0, /obj/effect/essentials_set/leader/upp, MARINE_CAN_BUY_ESSENTIALS, VENDOR_ITEM_MANDATORY), @@ -2316,10 +2331,11 @@ //===============// /datum/equipment_preset/upp/officer/may_gen - name = "UPP Mayjor General" - assignment = JOB_UPP_KOL_OFFICER - rank = JOB_UPP_KOL_OFFICER + name = "UPP General Leytenant" + assignment = JOB_UPP_MAY_GENERAL + rank = JOB_UPP_MAY_GENERAL role_comm_title = "May. Gen." + minimap_icon = "upp_co" paygrades = list(PAY_SHORT_UO7 = JOB_PLAYTIME_TIER_0) skills = /datum/skills/upp/commander @@ -2477,10 +2493,11 @@ //*****************************************************************************************************/ /datum/equipment_preset/upp/officer/ley_gen - name = "UPP Leytenant General" - assignment = JOB_UPP_KOL_OFFICER - rank = JOB_UPP_KOL_OFFICER + name = "UPP General Polkovnik" + assignment = JOB_UPP_LT_GENERAL + rank = JOB_UPP_LT_GENERAL role_comm_title = "Lt. Gen." + minimap_icon = "upp_co" paygrades = list(PAY_SHORT_UO8 = JOB_PLAYTIME_TIER_0) skills = /datum/skills/upp/commander @@ -2638,10 +2655,11 @@ //*****************************************************************************************************/ /datum/equipment_preset/upp/officer/gen - name = "UPP Army General" - assignment = JOB_UPP_KOL_OFFICER - rank = JOB_UPP_KOL_OFFICER + name = "UPP General Armii" + assignment = JOB_UPP_GENERAL + rank = JOB_UPP_GENERAL role_comm_title = "Gen." + minimap_icon = "upp_co" paygrades = list(PAY_SHORT_UO9 = JOB_PLAYTIME_TIER_0) skills = /datum/skills/upp/commander @@ -2848,6 +2866,7 @@ skills = /datum/skills/synthetic assignment = JOB_UPP_SUPPORT_SYNTH rank = JOB_UPP_SUPPORT_SYNTH + minimap_icon = "upp_synth" paygrades = list(PAY_SHORT_SYN = JOB_PLAYTIME_TIER_0) idtype = /obj/item/card/id/dogtag @@ -3124,6 +3143,9 @@ role_comm_title = "JKdo" paygrades = list(PAY_SHORT_UC1 = JOB_PLAYTIME_TIER_0) idtype = /obj/item/card/id/data + + minimap_icon = "upp_com" + languages = list(LANGUAGE_RUSSIAN, LANGUAGE_ENGLISH, LANGUAGE_TSL, LANGUAGE_SPANISH, LANGUAGE_CHINESE) /datum/equipment_preset/upp/commando/New() @@ -3249,6 +3271,7 @@ assignment = JOB_UPP_COMMANDO_MEDIC rank = JOB_UPP_COMMANDO_MEDIC role_comm_title = "2ndKdo" + minimap_icon = "upp_commed" paygrades = list(PAY_SHORT_UC2 = JOB_PLAYTIME_TIER_0) /datum/equipment_preset/upp/commando/medic/load_gear(mob/living/carbon/human/new_human) @@ -3416,6 +3439,7 @@ assignment = JOB_UPP_COMMANDO_LEADER rank = JOB_UPP_COMMANDO_LEADER role_comm_title = "1stKdo" + minimap_icon = "upp_comsl" paygrades = list(PAY_SHORT_UC3 = JOB_PLAYTIME_TIER_0) idtype = /obj/item/card/id/silver @@ -3676,6 +3700,9 @@ rank = JOB_UPP_CREWMAN paygrades = list(PAY_SHORT_UE5 = JOB_PLAYTIME_TIER_0) role_comm_title = "TANK" + + minimap_icon = "upp_vc" + minimum_age = 30 skills = /datum/skills/tank_crew @@ -3795,6 +3822,7 @@ assignment = JOB_UPP_CONSCRIPT rank = JOB_UPP_CONSCRIPT role_comm_title = "Cons" + minimap_icon = "upp_pvt" paygrades = list(PAY_SHORT_UE1 = JOB_PLAYTIME_TIER_0) /datum/equipment_preset/upp/conscript/load_gear(mob/living/carbon/human/new_human) @@ -3903,6 +3931,7 @@ rank = JOB_UPP_COMMISSAR paygrades = list(PAY_SHORT_UO4P = JOB_PLAYTIME_TIER_0) role_comm_title = "Commissar" + minimap_icon = "upp_plt" minimum_age = 30 skills = /datum/skills/upp/commissar diff --git a/code/modules/gear_presets/uscm.dm b/code/modules/gear_presets/uscm.dm index 855ed07f7976..093ff4c28da5 100644 --- a/code/modules/gear_presets/uscm.dm +++ b/code/modules/gear_presets/uscm.dm @@ -163,6 +163,7 @@ skills = /datum/skills/tank_crew minimap_icon = "vc" + minimap_background = "background_intel" /datum/equipment_preset/uscm/tank/load_gear(mob/living/carbon/human/new_human) var/back_item = /obj/item/storage/backpack/marine/satchel @@ -223,6 +224,8 @@ paygrades = list(PAY_SHORT_MO1 = JOB_PLAYTIME_TIER_0) role_comm_title = "IO" skills = /datum/skills/intel + minimap_icon = "io" + minimap_background = "background_intel" utility_under = list(/obj/item/clothing/under/marine/officer/intel) @@ -805,13 +808,13 @@ assignment = "Marine Raider" rank = JOB_MARINE_RAIDER role_comm_title = "Op." - languages = list(LANGUAGE_ENGLISH, LANGUAGE_TSL) + languages = list(LANGUAGE_TSL, LANGUAGE_ENGLISH) skills = /datum/skills/commando/deathsquad auto_squad_name = SQUAD_SOF ert_squad = TRUE paygrades = list(PAY_SHORT_ME6 = JOB_PLAYTIME_TIER_0, PAY_SHORT_ME7 = JOB_PLAYTIME_TIER_3) - minimap_icon = "private" + minimap_icon = "sof_sg" /datum/equipment_preset/uscm/marsoc/load_status(mob/living/carbon/human/new_human) new_human.nutrition = NUTRITION_NORMAL @@ -863,6 +866,7 @@ /datum/equipment_preset/uscm/marsoc/covert name = "Marine Raider (!DEATHSQUAD! Covert)" uses_special_name = TRUE + /datum/equipment_preset/uscm/marsoc/covert/load_name(mob/living/carbon/human/new_human, randomise) new_human.gender = MALE new_human.change_real_name(new_human, "[pick(GLOB.nato_phonetic_alphabet)]") @@ -880,7 +884,7 @@ paygrades = list(PAY_SHORT_MO1 = JOB_PLAYTIME_TIER_0, PAY_SHORT_MO2 = JOB_PLAYTIME_TIER_3) skills = /datum/skills/commando/deathsquad/leader - minimap_icon = "leader" + minimap_icon = "sof_sl" dress_under = list(/obj/item/clothing/under/marine/dress/blues/senior) dress_over = list(/obj/item/clothing/suit/storage/jacket/marine/dress/blues/officer) dress_hat = list(/obj/item/clothing/head/marine/dress_cover/officer) @@ -890,6 +894,7 @@ /datum/equipment_preset/uscm/marsoc/sl/covert name = "Marine Raider Team Leader (!DEATHSQUAD! Covert)" uses_special_name = TRUE + /datum/equipment_preset/uscm/marsoc/sl/covert/load_name(mob/living/carbon/human/new_human, randomise) new_human.gender = MALE new_human.change_real_name(new_human, "[pick(GLOB.nato_phonetic_alphabet)]") @@ -904,6 +909,7 @@ assignment = JOB_MARINE_RAIDER_CMD rank = JOB_MARINE_RAIDER_CMD role_comm_title = "CMD." + minimap_icon = "sof_officer" paygrades = list(PAY_SHORT_MO3 = JOB_PLAYTIME_TIER_0, PAY_SHORT_MO4 = JOB_PLAYTIME_TIER_3) skills = /datum/skills/commando/deathsquad/officer dress_under = list(/obj/item/clothing/under/marine/dress/blues/senior) diff --git a/code/modules/gear_presets/uscm_event.dm b/code/modules/gear_presets/uscm_event.dm index 94f03f0d7e7f..0d457036ce9d 100644 --- a/code/modules/gear_presets/uscm_event.dm +++ b/code/modules/gear_presets/uscm_event.dm @@ -64,8 +64,10 @@ paygrades = list(PAY_SHORT_MO7 = JOB_PLAYTIME_TIER_0) role_comm_title = "GEN" minimum_age = 50 + minimap_icon = "deputy" + minimap_background = "background_command" skills = /datum/skills/general - languages = ALL_HUMAN_LANGUAGES //Know your enemy. + languages = list(LANGUAGE_ENGLISH, LANGUAGE_JAPANESE, LANGUAGE_CHINESE, LANGUAGE_RUSSIAN, LANGUAGE_GERMAN, LANGUAGE_SCANDINAVIAN, LANGUAGE_SPANISH, LANGUAGE_TSL) //Know your enemy. service_under = list(/obj/item/clothing/under/marine/officer/general, /obj/item/clothing/under/marine/officer/bridge) service_over = list(/obj/item/clothing/suit/storage/jacket/marine/dress/general, /obj/item/clothing/suit/storage/jacket/marine/service, /obj/item/clothing/suit/storage/jacket/marine/service/mp) @@ -190,6 +192,7 @@ idtype = /obj/item/card/id/provost skills = /datum/skills/provost + minimap_background = "background_mp" /datum/equipment_preset/uscm_event/provost/New() . = ..() @@ -202,6 +205,7 @@ paygrades = list(PAY_SHORT_ME5 = JOB_PLAYTIME_TIER_0, PAY_SHORT_ME6 = JOB_PLAYTIME_TIER_1, PAY_SHORT_ME7 = JOB_PLAYTIME_TIER_3) role_comm_title = "PvE" flags = EQUIPMENT_PRESET_EXTRA + minimap_icon = "pve" dress_under = list(/obj/item/clothing/under/marine/dress/blues) dress_over = list(/obj/item/clothing/suit/storage/jacket/marine/dress/blues) @@ -247,6 +251,7 @@ paygrades = list(PAY_SHORT_ME8 = JOB_PLAYTIME_TIER_0, PAY_SHORT_ME9 = JOB_PLAYTIME_TIER_3) role_comm_title = "PvTML" flags = EQUIPMENT_PRESET_EXTRA + minimap_icon = "pve_leader" dress_under = list(/obj/item/clothing/under/marine/dress/blues/senior) dress_over = list(/obj/item/clothing/suit/storage/jacket/marine/dress/blues/nco) @@ -292,6 +297,7 @@ paygrades = list(PAY_SHORT_PVI = JOB_PLAYTIME_TIER_0) role_comm_title = "PvI" flags = EQUIPMENT_PRESET_EXTRA + minimap_icon = "pve_inspector" dress_under = list(/obj/item/clothing/under/marine/dress/blues/senior) dress_over = list(/obj/item/clothing/suit/storage/jacket/marine/dress/blues/officer) @@ -332,6 +338,7 @@ paygrades = list(PAY_SHORT_PVCI = JOB_PLAYTIME_TIER_0) role_comm_title = "PvCI" flags = EQUIPMENT_PRESET_EXTRA + minimap_icon = "pve_chief_inspector" dress_under = list(/obj/item/clothing/under/marine/dress/blues/senior) dress_over = list(/obj/item/clothing/suit/storage/jacket/marine/dress/blues/officer) @@ -371,6 +378,7 @@ paygrades = list(PAY_SHORT_ME8E = JOB_PLAYTIME_TIER_0, PAY_SHORT_ME9E = JOB_PLAYTIME_TIER_3) role_comm_title = "PvA" flags = EQUIPMENT_PRESET_EXTRA + minimap_icon = "pve_advisor" /datum/equipment_preset/uscm_event/provost/marshal/deputy name = "Provost Deputy Marshal (MO6)" @@ -382,6 +390,7 @@ paygrades = list(PAY_SHORT_PVDM = JOB_PLAYTIME_TIER_0) role_comm_title = PAY_SHORT_PVDM flags = EQUIPMENT_PRESET_EXTRA + minimap_icon = "deputy" /datum/equipment_preset/uscm_event/provost/marshal name = "Provost Marshal (MO7)" @@ -393,6 +402,7 @@ paygrades = list(PAY_SHORT_PVM = JOB_PLAYTIME_TIER_0) role_comm_title = PAY_SHORT_PVM flags = EQUIPMENT_PRESET_EXTRA + minimap_icon = "deputy" dress_under = list(/obj/item/clothing/under/marine/dress/blues/general) dress_over = list(/obj/item/clothing/suit/storage/jacket/marine/dress/blues/officer) @@ -441,6 +451,9 @@ /*****************************************************************************************************/ +/datum/equipment_preset/uscm_event/uaac + minimap_background = "background_ua" + /datum/equipment_preset/uscm_event/uaac/tis name = "UAAC-TIS" @@ -460,6 +473,7 @@ rank = "UAAC-TIS Intelligence Officer" paygrades = list(PAY_SHORT_NO2 = JOB_PLAYTIME_TIER_0) role_comm_title = "TIS-IO" + minimap_icon = "cmb_syn" flags = EQUIPMENT_PRESET_EXTRA /datum/equipment_preset/uscm_event/uaac/tis/io/load_gear(mob/living/carbon/human/new_human) @@ -487,6 +501,7 @@ rank = "UAAC-TIS Special Agent" paygrades = list(PAY_SHORT_NO5 = JOB_PLAYTIME_TIER_0) role_comm_title = "TIS-SA" + minimap_icon = "tissa" flags = EQUIPMENT_PRESET_EXTRA /datum/equipment_preset/uscm_event/uaac/tis/sa/load_gear(mob/living/carbon/human/new_human) diff --git a/code/modules/gear_presets/uscm_forecon.dm b/code/modules/gear_presets/uscm_forecon.dm index 3c1db85291ea..09ab64c75f18 100644 --- a/code/modules/gear_presets/uscm_forecon.dm +++ b/code/modules/gear_presets/uscm_forecon.dm @@ -73,10 +73,7 @@ new_human.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/m1911(new_human), WEAR_IN_BELT) new_human.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/m1911(new_human), WEAR_IN_BELT) if(3 , 4) - new_human.equip_to_slot_or_del(new /obj/item/storage/belt/gun/m39, WEAR_WAIST) - new_human.equip_to_slot_or_del(new /obj/item/weapon/gun/smg/m39(new_human), WEAR_IN_BELT) - new_human.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/m39/extended(new_human), WEAR_IN_BELT) - new_human.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/m39/extended(new_human), WEAR_IN_BELT) + new_human.equip_to_slot_or_del(new /obj/item/storage/belt/gun/m39/full/extended, WEAR_WAIST) if(5) new_human.equip_to_slot_or_del(new /obj/item/device/motiondetector(new_human),WEAR_WAIST) diff --git a/code/modules/gear_presets/uscm_medical.dm b/code/modules/gear_presets/uscm_medical.dm index 6e727381b6ff..ad72cb3a1178 100644 --- a/code/modules/gear_presets/uscm_medical.dm +++ b/code/modules/gear_presets/uscm_medical.dm @@ -40,8 +40,8 @@ role_comm_title = "CMO" skills = /datum/skills/CMO - minimap_icon = list("medic" = MINIMAP_ICON_COLOR_HEAD) - minimap_background = MINIMAP_ICON_BACKGROUND_CIC + minimap_icon = list("doctor") + minimap_background = "background_command" utility_under = list(/obj/item/clothing/under/rank/chief_medical_officer) utility_hat = list() @@ -70,7 +70,8 @@ role_comm_title = "Doc" skills = /datum/skills/doctor - minimap_icon = list("medic" = MINIMAP_ICON_COLOR_DOCTOR) + minimap_icon = list("doctor") + minimap_background = "background_medical" /datum/equipment_preset/uscm_ship/uscm_medical/doctor/load_gear(mob/living/carbon/human/new_human) var/back_item = /obj/item/storage/backpack/marine/satchel @@ -108,7 +109,8 @@ role_comm_title = "Nurse" skills = /datum/skills/nurse - minimap_icon = list("medic") + minimap_icon = list("nurse") + minimap_background = "background_shipside" dress_under = list(/obj/item/clothing/under/marine/dress/blues/senior) dress_over = list(/obj/item/clothing/suit/storage/jacket/marine/dress/blues/nco) @@ -138,6 +140,7 @@ skills = /datum/skills/researcher minimap_icon = "researcher" + minimap_background = "background_medical" utility_under = list(/obj/item/clothing/under/marine/officer/researcher) utility_hat = list() diff --git a/code/modules/gear_presets/uscm_police.dm b/code/modules/gear_presets/uscm_police.dm index dcb926e804d7..8322b4e808c0 100644 --- a/code/modules/gear_presets/uscm_police.dm +++ b/code/modules/gear_presets/uscm_police.dm @@ -1,6 +1,7 @@ /datum/equipment_preset/uscm_ship/uscm_police name = "USCM (police roles)" faction = FACTION_MARINE + minimap_background = "background_mp" minimum_age = 27 //*****************************************************************************************************/ @@ -150,8 +151,7 @@ role_comm_title = "CMP" skills = /datum/skills/CMP - minimap_icon = list("mp" = MINIMAP_ICON_COLOR_HEAD) - minimap_background = MINIMAP_ICON_BACKGROUND_CIC + minimap_icon = list("cmp") utility_under = list(/obj/item/clothing/under/marine/officer/warrant) utility_hat = list(/obj/item/clothing/head/beret/marine/mp/cmp) @@ -194,6 +194,8 @@ role_comm_title = "RMP" skills = /datum/skills/CMP + minimap_icon = list("rmp") + utility_under = list(/obj/item/clothing/under/marine/officer/warrant) utility_hat = list(/obj/item/clothing/head/beret/marine/mp/cmp) utility_extra = list(/obj/item/clothing/head/cmcap, /obj/item/clothing/head/beret/cm, /obj/item/clothing/head/beret/cm/tan) @@ -236,6 +238,8 @@ name = "USCM Riot Chief MP (RCMP)" flags = EQUIPMENT_PRESET_EXTRA + minimap_icon = list("crmp") + assignment = JOB_RIOT_CHIEF rank = JOB_RIOT_CHIEF paygrades = list(PAY_SHORT_MO1 = JOB_PLAYTIME_TIER_0) diff --git a/code/modules/gear_presets/uscm_ship.dm b/code/modules/gear_presets/uscm_ship.dm index 6832900e752b..9f62ab3c1742 100644 --- a/code/modules/gear_presets/uscm_ship.dm +++ b/code/modules/gear_presets/uscm_ship.dm @@ -51,7 +51,7 @@ skills = /datum/skills/civilian minimap_icon = "cl" - minimap_background = MINIMAP_ICON_BACKGROUND_CIVILIAN + minimap_background = "background_civillian" dress_under = list( /obj/item/clothing/under/liaison_suit/black, @@ -167,8 +167,7 @@ idtype = /obj/item/card/id/silver/cl minimap_icon = "correspondent" - minimap_background = MINIMAP_ICON_BACKGROUND_CIVILIAN - + minimap_background = "background_civillian" dress_under = list() dress_over = list() dress_hat = list() @@ -202,7 +201,7 @@ idtype = /obj/item/card/id/dogtag minimap_icon = "correspondent" - minimap_background = MINIMAP_ICON_BACKGROUND_CIC + minimap_background = "background_civillian" dress_over = list(/obj/item/clothing/suit/storage/jacket/marine/dress/blues/nco) dress_hat = list(/obj/item/clothing/head/marine/dress_cover) @@ -252,8 +251,8 @@ minimum_age = 27 skills = /datum/skills/CE - minimap_icon = list("engi" = MINIMAP_ICON_COLOR_HEAD) - minimap_background = MINIMAP_ICON_BACKGROUND_CIC + minimap_icon = "ce" + minimap_background = "background_command" utility_under = list(/obj/item/clothing/under/marine/officer/ce) @@ -287,7 +286,8 @@ role_comm_title = "MT" skills = /datum/skills/MT - minimap_icon = "engi" + minimap_icon = "mt" + minimap_background = "background_shipside" utility_under = list(/obj/item/clothing/under/marine/officer/engi) dress_under = list(/obj/item/clothing/under/marine/dress/blues) @@ -323,6 +323,7 @@ skills = /datum/skills/OT minimap_icon = "ot" + minimap_background = "background_shipside" utility_under = list(/obj/item/clothing/under/marine/officer/engi) dress_under = list(/obj/item/clothing/under/marine/dress/blues) @@ -367,8 +368,8 @@ minimum_age = 27 skills = /datum/skills/RO - minimap_background = MINIMAP_ICON_BACKGROUND_CIC - minimap_icon = list("ct" = MINIMAP_ICON_COLOR_HEAD) + minimap_icon = "cargo" + minimap_background = "background_command" utility_under = list(/obj/item/clothing/under/rank/qm_suit) dress_over = list(/obj/item/clothing/suit/storage/jacket/marine/dress/blues/nco) @@ -401,7 +402,8 @@ role_comm_title = "CT" skills = /datum/skills/CT - minimap_icon = "ct" + minimap_icon = "cargo" + minimap_background = "background_shipside" utility_under = list(/obj/item/clothing/under/rank/cargotech) dress_under = list(/obj/item/clothing/under/marine/dress/blues) @@ -436,8 +438,9 @@ minimum_age = 30 skills = /datum/skills/commander - minimap_icon = list("cic" = MINIMAP_ICON_COLOR_COMMANDER) - minimap_background = MINIMAP_ICON_BACKGROUND_CIC + minimap_icon = "co" + minimap_background = "background_command" + utility_under = list(/obj/item/clothing/under/marine, /obj/item/clothing/under/marine/officer/command, /obj/item/clothing/under/marine/officer/boiler) utility_hat = list(/obj/item/clothing/head/cmcap,/obj/item/clothing/head/beret/cm/tan) @@ -551,8 +554,8 @@ minimum_age = 35 skills = /datum/skills/XO - minimap_icon = list("cic" = MINIMAP_ICON_COLOR_HEAD) - minimap_background = MINIMAP_ICON_BACKGROUND_CIC + minimap_icon = "xo" + minimap_background = "background_command" dress_extra = list(/obj/item/storage/large_holster/ceremonial_sword/full) @@ -590,8 +593,8 @@ minimum_age = 25 skills = /datum/skills/SO - minimap_icon = list("cic" = MINIMAP_ICON_COLOR_BRONZE) - minimap_background = MINIMAP_ICON_BACKGROUND_CIC + minimap_icon = "so" + minimap_background = "background_command" /datum/equipment_preset/uscm_ship/so/load_gear(mob/living/carbon/human/new_human) var/back_item = /obj/item/storage/backpack/satchel @@ -622,6 +625,7 @@ skills = /datum/skills/SEA minimap_icon = "sea" + minimap_background = "background_command" service_hat = list(/obj/item/clothing/head/cmcap, /obj/item/clothing/head/drillhat) dress_over = list(/obj/item/clothing/suit/storage/jacket/marine/dress/blues/nco) @@ -668,8 +672,8 @@ minimum_age = 27 skills = /datum/skills/auxiliary_officer - minimap_icon = list("cic" = COLOR_SILVER) - minimap_background = MINIMAP_ICON_BACKGROUND_CIC + minimap_icon = "aso" + minimap_background = "background_command" /datum/equipment_preset/uscm_ship/auxiliary_officer/New() . = ..() @@ -703,7 +707,7 @@ 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/device/radio/headset/almayer/mcom/cdrcom(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) @@ -726,7 +730,8 @@ role_comm_title = "GP" skills = /datum/skills/pilot - minimap_icon = "pilot" + minimap_icon = "gp" + minimap_background = "background_command" /datum/equipment_preset/uscm_ship/gp/load_gear(mob/living/carbon/human/new_human) var/back_item = /obj/item/storage/backpack/satchel @@ -777,6 +782,7 @@ skills = /datum/skills/pilot minimap_icon = "pilot" + minimap_background = "background_command" /datum/equipment_preset/uscm_ship/dp/load_gear(mob/living/carbon/human/new_human) var/back_item = /obj/item/storage/backpack/satchel @@ -827,6 +833,7 @@ skills = /datum/skills/crew_chief minimap_icon = "dcc" + minimap_background = "background_shipside" dress_over = list(/obj/item/clothing/suit/storage/jacket/marine/dress/blues/nco) dress_hat = list(/obj/item/clothing/head/marine/dress_cover) @@ -918,6 +925,7 @@ skills = /datum/skills/mess_technician minimap_icon = "mst" + minimap_background = "background_shipside" utility_under = list(/obj/item/clothing/under/marine/chef) dress_under = list(/obj/item/clothing/under/marine/dress/blues) diff --git a/code/modules/gear_presets/whiteout.dm b/code/modules/gear_presets/whiteout.dm index 3d9ef47a0e17..3382f145f04e 100644 --- a/code/modules/gear_presets/whiteout.dm +++ b/code/modules/gear_presets/whiteout.dm @@ -8,6 +8,7 @@ rank = FACTION_WY_DEATHSQUAD languages = list(LANGUAGE_ENGLISH, LANGUAGE_JAPANESE, LANGUAGE_CHINESE, LANGUAGE_RUSSIAN, LANGUAGE_GERMAN, LANGUAGE_SCANDINAVIAN, LANGUAGE_SPANISH, LANGUAGE_YAUTJA, LANGUAGE_XENOMORPH, LANGUAGE_TSL) //Synths after all. skills = /datum/skills/everything //They are Synths, programmed for Everything. + minimap_icon = "whiteout" idtype = /obj/item/card/id/pmc/ds paygrades = list(PAY_SHORT_CDNM = JOB_PLAYTIME_TIER_0) diff --git a/code/modules/gear_presets/wo.dm b/code/modules/gear_presets/wo.dm index 17138b208a58..f77341ed5549 100644 --- a/code/modules/gear_presets/wo.dm +++ b/code/modules/gear_presets/wo.dm @@ -22,7 +22,8 @@ skills = /datum/skills/commander idtype = /obj/item/card/id/gold - minimap_icon = "co" + minimap_icon = "co_wo" + minimap_background = "background_command" utility_under = list(/obj/item/clothing/under/marine,/obj/item/clothing/under/marine/officer/command) utility_hat = list(/obj/item/clothing/head/cmcap,/obj/item/clothing/head/beret/cm/tan) @@ -101,7 +102,8 @@ skills = /datum/skills/XO idtype = /obj/item/card/id/silver - minimap_icon = "xo" + minimap_icon = "xo_wo" + minimap_background = "background_command" dress_extra = list(/obj/item/storage/large_holster/ceremonial_sword/full) @@ -145,7 +147,8 @@ skills = /datum/skills/honor_guard/lead idtype = /obj/item/card/id/silver - minimap_icon = "cmp" + minimap_icon = "hgsl" + minimap_background = "background_mp" /datum/equipment_preset/wo/cmp/load_gear(mob/living/carbon/human/new_human) @@ -181,7 +184,8 @@ skills = /datum/skills/honor_guard/vet idtype = /obj/item/card/id/silver - minimap_icon = "so" + minimap_icon = "vhg" + minimap_background = "background_mp" /datum/equipment_preset/wo/vhg/load_gear(mob/living/carbon/human/new_human) var/back_item = /obj/item/storage/backpack/satchel/sec @@ -223,7 +227,8 @@ skills = /datum/skills/honor_guard/spec idtype = /obj/item/card/id/gold - minimap_icon = "spec" + minimap_icon = "hgspec" + minimap_background = "background_mp" /datum/equipment_preset/wo/hgs/load_gear(mob/living/carbon/human/new_human) var/back_item = /obj/item/storage/backpack/satchel/sec @@ -262,7 +267,8 @@ role_comm_title = "HG" skills = /datum/skills/honor_guard - minimap_icon = "mp" + minimap_icon = "hg" + minimap_background = "background_mp" /datum/equipment_preset/wo/hg/load_gear(mob/living/carbon/human/new_human) var/back_item = /obj/item/storage/backpack/satchel/sec @@ -296,7 +302,8 @@ role_comm_title = "MC" skills = /datum/skills/mortar_crew - minimap_icon = "vc" + minimap_icon = "wo_mcrew" + minimap_background = "background_shipside" /datum/equipment_preset/wo/mortar_crew/load_gear(mob/living/carbon/human/new_human) var/back_item = /obj/item/storage/backpack/marine/satchel @@ -332,7 +339,8 @@ skills = /datum/skills/RO idtype = /obj/item/card/id/silver - minimap_icon = "ro" + minimap_icon = "cargo" + minimap_background = "background_medical" /datum/equipment_preset/wo/quartermaster/load_gear(mob/living/carbon/human/new_human) var/back_item = /obj/item/storage/backpack/marine/satchel/tech @@ -362,6 +370,9 @@ skills = /datum/skills/CE idtype = /obj/item/card/id + minimap_icon = "cargo" + minimap_background = "background_shipside" + /datum/equipment_preset/wo/cargo/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)) @@ -394,7 +405,8 @@ skills = /datum/skills/CMO idtype = /obj/item/card/id/silver - minimap_icon = "cmo" + minimap_icon = "cmo_wo" + minimap_background = "background_medical_WO" /datum/equipment_preset/wo/head_surgeon/load_gear(mob/living/carbon/human/new_human) var/back_item = /obj/item/storage/backpack/marine/satchel/medic @@ -437,7 +449,8 @@ skills = /datum/skills/doctor idtype = /obj/item/card/id - minimap_icon = "doctor" + minimap_icon = "medic" + minimap_background = "background_medical_WO" /datum/equipment_preset/wo/doctor/load_gear(mob/living/carbon/human/new_human) var/back_item = /obj/item/storage/backpack/marine/satchel/medic @@ -477,7 +490,8 @@ skills = /datum/skills/researcher idtype = /obj/item/card/id - minimap_icon = "researcher" + minimap_icon = "chemist_wo" + minimap_background = "background_medical_WO" /datum/equipment_preset/wo/chemist/load_gear(mob/living/carbon/human/new_human) var/back_item = /obj/item/storage/backpack/marine/satchel/medic @@ -518,6 +532,7 @@ idtype = /obj/item/card/id/silver minimap_icon = "ce" + minimap_background = "background_medical" /datum/equipment_preset/wo/bcm/load_gear(mob/living/carbon/human/new_human) var/back_item = /obj/item/storage/backpack/marine/satchel/tech @@ -552,6 +567,7 @@ idtype = /obj/item/card/id minimap_icon = "mt" + minimap_background = "background_shipside" /datum/equipment_preset/wo/bc/load_gear(mob/living/carbon/human/new_human) var/back_item = /obj/item/storage/backpack/marine/satchel/tech @@ -584,8 +600,8 @@ skills = /datum/skills/civilian idtype = /obj/item/card/id/silver/cl - minimap_icon = "surv" - minimap_background = MINIMAP_ICON_BACKGROUND_CIVILIAN + minimap_icon = "correspondent" + minimap_background = "background_civillian" /datum/equipment_preset/wo/reporter/New() . = ..() @@ -613,6 +629,7 @@ /datum/equipment_preset/wo/marine name = "WO Dust Raider" //Stub other Marine equipment stems from flags = EQUIPMENT_PRESET_STUB + minimap_background = "background_intel" //*****************************************************************************************************/ @@ -626,6 +643,7 @@ paygrades = list(PAY_SHORT_ME5 = JOB_PLAYTIME_TIER_0) role_comm_title = "SL" skills = /datum/skills/SL + minimap_icon = "leader" /datum/equipment_preset/wo/marine/sl/load_gear(mob/living/carbon/human/new_human) var/back_item = /obj/item/storage/backpack/marine/satchel @@ -661,6 +679,7 @@ paygrades = list(PAY_SHORT_ME3 = JOB_PLAYTIME_TIER_0) role_comm_title = "Spc" skills = /datum/skills/specialist + minimap_icon = "spec" /datum/equipment_preset/wo/marine/spec/load_gear(mob/living/carbon/human/new_human) var/back_item = /obj/item/storage/backpack/marine/satchel @@ -696,6 +715,7 @@ paygrades = list(PAY_SHORT_ME3 = JOB_PLAYTIME_TIER_0) role_comm_title = "SG" skills = /datum/skills/smartgunner + minimap_icon = "smartgunner" /datum/equipment_preset/wo/marine/sg/load_gear(mob/living/carbon/human/new_human) new_human.equip_to_slot_or_del(new /obj/item/clothing/under/marine(new_human), WEAR_BODY) @@ -720,6 +740,7 @@ paygrades = list(PAY_SHORT_ME3 = JOB_PLAYTIME_TIER_0) role_comm_title = "ComTech" skills = /datum/skills/combat_engineer + minimap_icon = "engi" /datum/equipment_preset/wo/marine/engineer/load_gear(mob/living/carbon/human/new_human) var/back_item = /obj/item/storage/backpack/marine/satchel/tech @@ -754,6 +775,7 @@ paygrades = list(PAY_SHORT_ME3 = JOB_PLAYTIME_TIER_0) role_comm_title = "HM" skills = /datum/skills/combat_medic + minimap_icon = "medic" /datum/equipment_preset/wo/marine/medic/load_gear(mob/living/carbon/human/new_human) var/back_item = /obj/item/storage/backpack/marine/satchel/medic diff --git a/code/modules/gear_presets/wy.dm b/code/modules/gear_presets/wy.dm index 24dc8bae0916..7e4d698e36d0 100644 --- a/code/modules/gear_presets/wy.dm +++ b/code/modules/gear_presets/wy.dm @@ -10,6 +10,9 @@ languages = list(LANGUAGE_ENGLISH, LANGUAGE_JAPANESE) var/headset_type = /obj/item/device/radio/headset/distress/WY + minimap_icon = "cl" + minimap_background = "background_civillian" + dress_under = list( /obj/item/clothing/under/liaison_suit/black, /obj/item/clothing/under/liaison_suit/blue, diff --git a/code/modules/gear_presets/wy_goons.dm b/code/modules/gear_presets/wy_goons.dm index eb91be64c91e..0d5717dfcf73 100644 --- a/code/modules/gear_presets/wy_goons.dm +++ b/code/modules/gear_presets/wy_goons.dm @@ -6,6 +6,7 @@ faction = FACTION_WY faction_group = list(FACTION_WY) languages = list(LANGUAGE_ENGLISH, LANGUAGE_JAPANESE) + minimap_background = "background_goon" /datum/equipment_preset/goon/New() . = ..() @@ -62,6 +63,7 @@ rank = JOB_WY_GOON paygrades = list(PAY_SHORT_CPO = JOB_PLAYTIME_TIER_0) skills = /datum/skills/wy_goon + minimap_icon = "goon_standard" /datum/equipment_preset/goon/standard/load_gear(mob/living/carbon/human/new_human) new_human.equip_to_slot_or_del(new /obj/item/device/radio/headset/distress/WY, WEAR_L_EAR) @@ -95,6 +97,7 @@ rank = JOB_WY_GOON_TECH paygrades = list(PAY_SHORT_CPO = JOB_PLAYTIME_TIER_0) skills = /datum/skills/wy_goon_tech + minimap_icon = "goon_engi" /datum/equipment_preset/goon/engineer/load_gear(mob/living/carbon/human/new_human) new_human.equip_to_slot_or_del(new /obj/item/device/radio/headset/distress/WY, WEAR_L_EAR) @@ -129,6 +132,7 @@ rank = JOB_WY_GOON_LEAD paygrades = list(PAY_SHORT_CSPO = JOB_PLAYTIME_TIER_0) skills = /datum/skills/wy_goon_lead + minimap_icon = "goon_leader" /datum/equipment_preset/goon/lead/New() . = ..() @@ -165,6 +169,7 @@ rank = JOB_WY_GOON_RESEARCHER paygrades = list(PAY_SHORT_CCMO = JOB_PLAYTIME_TIER_0) skills = /datum/skills/researcher + minimap_icon = "goon_sci" dress_under = list( /obj/item/clothing/under/liaison_suit/black, diff --git a/code/modules/gear_presets/yautja.dm b/code/modules/gear_presets/yautja.dm index 9b8e64948c62..6d464d5d3d51 100644 --- a/code/modules/gear_presets/yautja.dm +++ b/code/modules/gear_presets/yautja.dm @@ -8,6 +8,8 @@ uses_special_name = TRUE skills = /datum/skills/yautja/warrior + minimap_icon = "predator" + var/default_cape_type = "None" var/clan_rank @@ -30,48 +32,16 @@ return //No vanity items for Yautja! /datum/equipment_preset/yautja/load_gear(mob/living/carbon/human/new_human, client/mob_client) - var/using_legacy = "None" - var/armor_number = 1 - var/boot_number = 1 - var/mask_number = 1 - var/armor_material = "ebony" - var/greave_material = "ebony" var/caster_material = "ebony" - var/mask_material = "ebony" var/translator_type = "Modern" - var/cape_type = default_cape_type - var/cape_color = "#654321" if(!mob_client) mob_client = new_human.client if(mob_client?.prefs) - using_legacy = mob_client.prefs.predator_use_legacy - armor_number = mob_client.prefs.predator_armor_type - boot_number = mob_client.prefs.predator_boot_type - mask_number = mob_client.prefs.predator_mask_type - armor_material = mob_client.prefs.predator_armor_material - greave_material = mob_client.prefs.predator_greave_material - mask_material = mob_client.prefs.predator_mask_material caster_material = mob_client.prefs.predator_caster_material translator_type = mob_client.prefs.predator_translator_type - cape_type = mob_client.prefs.predator_cape_type - cape_color = mob_client.prefs.predator_cape_color - new_human.equip_to_slot_or_del(new /obj/item/clothing/under/chainshirt/hunter(new_human), WEAR_BODY) new_human.equip_to_slot_or_del(new /obj/item/clothing/gloves/yautja/hunter(new_human, translator_type, caster_material, clan_rank), WEAR_HANDS) - new_human.equip_to_slot_or_del(new /obj/item/device/radio/headset/yautja(new_human), WEAR_L_EAR) - new_human.equip_to_slot_or_del(new /obj/item/device/flashlight/lantern(new_human), WEAR_R_STORE) - new_human.equip_to_slot_or_del(new /obj/item/device/yautja_teleporter(new_human), WEAR_L_STORE) - new_human.equip_to_slot_or_del(new /obj/item/storage/backpack/yautja(new_human), WEAR_WAIST) - new_human.equip_to_slot_or_del(new /obj/item/storage/medicomp/full(new_human), WEAR_IN_BELT) - - new_human.equip_to_slot_or_del(new /obj/item/clothing/shoes/yautja/hunter/knife(new_human, boot_number, greave_material), WEAR_FEET) - new_human.equip_to_slot_or_del(new /obj/item/clothing/suit/armor/yautja/hunter(new_human, armor_number, armor_material, using_legacy), WEAR_JACKET) - new_human.equip_to_slot_or_del(new /obj/item/clothing/mask/gas/yautja/hunter(new_human, mask_number, mask_material, using_legacy), WEAR_FACE) - - var/cape_path = GLOB.all_yautja_capes[cape_type] - if(ispath(cape_path)) - new_human.equip_to_slot_or_del(new cape_path(new_human, cape_color), WEAR_BACK) /datum/equipment_preset/yautja/load_name(mob/living/carbon/human/new_human, randomise) var/final_name = "Le'pro" @@ -93,6 +63,7 @@ // YOUNG BLOOD /datum/equipment_preset/yautja/youngblood name = "Yautja Young" + minimap_icon = "predator_young" flags = EQUIPMENT_PRESET_START_OF_ROUND clan_rank = CLAN_RANK_UNBLOODED_INT @@ -108,13 +79,23 @@ default_cape_type = PRED_YAUTJA_QUARTER_CAPE clan_rank = CLAN_RANK_BLOODED_INT +/datum/equipment_preset/yautja/blooded/load_gear(mob/living/carbon/human/new_human) + new_human.equip_to_slot_or_del(new /obj/item/device/radio/headset/yautja(new_human), WEAR_L_EAR) + return ..() + + // ELITE /datum/equipment_preset/yautja/elite name = "Yautja Elite" + minimap_icon = "predator_elite" flags = EQUIPMENT_PRESET_START_OF_ROUND default_cape_type = PRED_YAUTJA_HALF_CAPE clan_rank = CLAN_RANK_ELITE_INT +/datum/equipment_preset/yautja/elite/load_gear(mob/living/carbon/human/new_human) + new_human.equip_to_slot_or_del(new /obj/item/device/radio/headset/yautja(new_human), WEAR_L_EAR) + return ..() + /datum/equipment_preset/yautja/elite/load_name(mob/living/carbon/human/new_human, randomise) . = ..() var/new_name = "Elite [new_human.real_name]" @@ -123,6 +104,7 @@ // ELDER /datum/equipment_preset/yautja/elder name = "Yautja Elder" + minimap_icon = "predator_elder" flags = EQUIPMENT_PRESET_START_OF_ROUND default_cape_type = PRED_YAUTJA_THIRD_CAPE clan_rank = CLAN_RANK_ELDER_INT @@ -139,6 +121,7 @@ // CLAN LEADER /datum/equipment_preset/yautja/leader name = "Yautja Leader" + minimap_icon = "predator_leader" flags = EQUIPMENT_PRESET_START_OF_ROUND default_cape_type = PRED_YAUTJA_CAPE clan_rank = CLAN_RANK_LEADER_INT @@ -155,6 +138,7 @@ // ANCIENT /datum/equipment_preset/yautja/ancient name = "Yautja Ancient" + minimap_icon = "predator_ancient" flags = EQUIPMENT_PRESET_START_OF_ROUND default_cape_type = PRED_YAUTJA_PONCHO clan_rank = CLAN_RANK_ADMIN_INT diff --git a/code/modules/mapping/mapping_helpers.dm b/code/modules/mapping/mapping_helpers.dm new file mode 100644 index 000000000000..6fa4a47d5bbf --- /dev/null +++ b/code/modules/mapping/mapping_helpers.dm @@ -0,0 +1,162 @@ +/// Generic system for processing events after a certain time on multiple turfs, and +/// announcing them together. +/obj/effect/timed_event + icon = 'icons/landmarks.dmi' + icon_state = "o_red" + + var/static/list/notification_areas = list() + + /// How long to wait until the event should occur + var/time + +/obj/effect/timed_event/Initialize(mapload, ...) + . = ..() + + icon = null + + if(isnull(time)) + log_mapping("[type] (x: [x], y: [y], z: [z]) was created without a time.") + return INITIALIZE_HINT_QDEL + + SSticker.OnRoundstart(CALLBACK(src, PROC_REF(handle_round_start))) + +/obj/effect/timed_event/proc/handle_round_start() + var/actual_time = time MINUTES + + if(!check_valid_type()) + return + + addtimer(generate_callback(), actual_time) + + if(notification_areas[type]?["[actual_time]"]) + LAZYORASSOCLIST(notification_areas[type], "[actual_time]", get_area(src)) + qdel(src) + else + addtimer(CALLBACK(src, PROC_REF(announce_event), actual_time), actual_time) + LAZYORASSOCLIST(notification_areas[type], "[actual_time]", get_area(src)) + +/// Checks that the type this is acting on is valid, to prevent errors when adding the timer +/obj/effect/timed_event/proc/check_valid_type() + return TRUE + +/// To be overridden to generate the callback that should be inserted into the timer +/obj/effect/timed_event/proc/generate_callback() + return + +/// When the timer is completed, what global announcement of the event should occur +/obj/effect/timed_event/proc/announce_event(time_to_grab) + return + +/// Mapping helper placed on turfs to remove the turf after a specified duration. +/obj/effect/timed_event/scrapeaway + icon_state = "o_blue" + +/obj/effect/timed_event/scrapeaway/generate_callback() + return CALLBACK(get_turf(src), TYPE_PROC_REF(/turf, ScrapeAway)) + +/obj/effect/timed_event/scrapeaway/announce_event(time_to_grab) + var/announcement_areas = english_list(notification_areas[type]["[time_to_grab]"]) + + var/marine_announcement_text = SSmapping.configs[GROUND_MAP].environment_traits[ZTRAIT_IN_SPACE] \ + ? "Structural collapse detected in [announcement_areas]. Be advised that new routes may be accessible." \ + : "Geological shifts detected in [announcement_areas]. Be advised that new routes may be accessible." + + marine_announcement(marine_announcement_text, "Priority Announcement") + + var/xeno_announcement_text = SSmapping.configs[GROUND_MAP].environment_traits[ZTRAIT_IN_SPACE] \ + ? "The shattered metal of this place has collapsed, providing new routes in [announcement_areas]." \ + : "The ground of this world trembles, and new routes are accessible in [announcement_areas]." + + xeno_announcement(SPAN_XENOANNOUNCE(xeno_announcement_text), "everything", XENO_GENERAL_ANNOUNCE) + + qdel(src) + +/// Mapping helper placed on turfs that toggles the destructiblity of the turf after a specified duration. +/obj/effect/timed_event/destructible + +/obj/effect/timed_event/destructible/check_valid_type() + if(istype(get_turf(src), /turf/closed/wall)) + return TRUE + + return FALSE + +/obj/effect/timed_event/destructible/generate_callback() + var/turf/closed/wall/wall = get_turf(src) // ensured by check_valid_type() + return VARSET_CALLBACK(wall, hull, FALSE) + +/obj/effect/timed_event/destructible/announce_event(time_to_grab) + var/announcement_areas = english_list(notification_areas[type]["[time_to_grab]"]) + + var/marine_announcement_text = SSmapping.configs[GROUND_MAP].environment_traits[ZTRAIT_IN_SPACE] \ + ? "Structural collapse detected in [announcement_areas], allowing dismantlement. Be advised that new routes may be created." \ + : "Geological shifts detected in [announcement_areas], allowing excavation. Be advised that new routes may be created." + + marine_announcement(marine_announcement_text, "Priority Announcement") + + var/xeno_announcement_text = SSmapping.configs[GROUND_MAP].environment_traits[ZTRAIT_IN_SPACE] \ + ? "The shattered metal of this place has collapsed, and we can create routes through [announcement_areas]." \ + : "The ground of this world trembles, and new routes may be created through [announcement_areas]." + + xeno_announcement(SPAN_XENOANNOUNCE(xeno_announcement_text), "everything", XENO_GENERAL_ANNOUNCE) + + qdel(src) + +GLOBAL_LIST_INIT_TYPED(sentry_spawns, /obj/effect/sentry_landmark, list()) + +/// Allows a mapper to override the location of turrets on specific LZs, in specific placements. If multiple +/// are placed, it picks randomly. +/obj/effect/sentry_landmark + icon = 'icons/landmarks.dmi' + icon_state = "x3" + + var/abstract_type = /obj/effect/sentry_landmark + + /// Which landing zone this landmark should be connected to + var/landing_zone + + /// Which position this sentry should spawn at + var/position + + +/obj/effect/sentry_landmark/Initialize(mapload, ...) + . = ..() + + if(type == abstract_type) + log_mapping("A [type] was created that should not have been! Use a subtype instead.") + return INITIALIZE_HINT_QDEL + + LAZYADDASSOCLIST(GLOB.sentry_spawns[landing_zone], position, get_turf(src)) + + return INITIALIZE_HINT_QDEL + +/obj/effect/sentry_landmark/lz_1 + abstract_type = /obj/effect/sentry_landmark/lz_1 + landing_zone = /obj/docking_port/stationary/marine_dropship/lz1 + +/obj/effect/sentry_landmark/lz_1/top_left + position = SENTRY_TOP_LEFT + +/obj/effect/sentry_landmark/lz_1/top_right + position = SENTRY_TOP_RIGHT + +/obj/effect/sentry_landmark/lz_1/bottom_left + position = SENTRY_BOTTOM_LEFT + +/obj/effect/sentry_landmark/lz_1/bottom_right + position = SENTRY_BOTTOM_RIGHT + +/obj/effect/sentry_landmark/lz_2 + abstract_type = /obj/effect/sentry_landmark/lz_2 + landing_zone = /obj/docking_port/stationary/marine_dropship/lz2 + +/obj/effect/sentry_landmark/lz_2/top_left + position = SENTRY_TOP_LEFT + +/obj/effect/sentry_landmark/lz_2/top_right + position = SENTRY_TOP_RIGHT + +/obj/effect/sentry_landmark/lz_2/bottom_left + position = SENTRY_BOTTOM_LEFT + +/obj/effect/sentry_landmark/lz_2/bottom_right + position = SENTRY_BOTTOM_RIGHT diff --git a/code/modules/mob/dead/observer/orbit.dm b/code/modules/mob/dead/observer/orbit.dm index 871bae54b8fd..28b043d5f796 100644 --- a/code/modules/mob/dead/observer/orbit.dm +++ b/code/modules/mob/dead/observer/orbit.dm @@ -119,6 +119,7 @@ var/datum/caste_datum/caste = xeno.caste serialized["caste"] = caste.caste_type serialized["icon"] = caste.minimap_icon + serialized["background_icon"] = caste.minimap_background serialized["hivenumber"] = xeno.hivenumber serialized["area_name"] = get_area_name(xeno) xenos += list(serialized) @@ -142,9 +143,9 @@ serialized["icon"] = icon ? icon : "private" if(human.assigned_squad) - serialized["background_color"] = human.assigned_squad.equipment_color ? human.assigned_squad.equipment_color : human.assigned_squad.minimap_color + serialized["background_icon"] = human.assigned_squad.background_icon else - serialized["background_color"] = human.assigned_equipment_preset?.minimap_background + serialized["background_icon"] = human.assigned_equipment_preset?.minimap_background if(istype(get_area(human), /area/tdome)) in_thunderdome += list(serialized) diff --git a/code/modules/mob/living/carbon/human/death.dm b/code/modules/mob/living/carbon/human/death.dm index 34582a6612d4..ba24add93aa1 100644 --- a/code/modules/mob/living/carbon/human/death.dm +++ b/code/modules/mob/living/carbon/human/death.dm @@ -1,5 +1,6 @@ /mob/living/carbon/human/gib(datum/cause_data/cause = create_cause_data("gibbing", src)) var/is_a_synth = issynth(src) + ghostize() for(var/obj/limb/E in limbs) if(istype(E, /obj/limb/chest)) continue @@ -131,5 +132,5 @@ else if(death_data?.cause_name == "existing") // Corpses spawn as gibbed true to avoid sfx, even though they aren't actually gibbed... AddComponent(/datum/component/weed_food) - + update_execute_hud() diff --git a/code/modules/mob/living/carbon/human/emote.dm b/code/modules/mob/living/carbon/human/emote.dm index c82aa1f6de31..9319f55a5f0d 100644 --- a/code/modules/mob/living/carbon/human/emote.dm +++ b/code/modules/mob/living/carbon/human/emote.dm @@ -219,6 +219,7 @@ var/pain_message = pick("OW!!", "AGH!!", "ARGH!!", "OUCH!!", "ACK!!", "OUF!") user.langchat_speech(pain_message, group, GLOB.all_languages, skip_language_check = TRUE, animation_style = LANGCHAT_FAST_POP, additional_styles = list("langchat_yell")) + /datum/emote/living/carbon/human/salute key = "salute" key_third_person = "salutes" @@ -382,3 +383,24 @@ return user.show_speech_bubble("scream") + +/datum/emote/living/carbon/human/burstscream + key = "burstscream" + message = "screams in agony!" + emote_type = EMOTE_FORCED_AUDIO|EMOTE_AUDIBLE|EMOTE_VISIBLE + stat_allowed = UNCONSCIOUS + +/datum/emote/living/carbon/human/burstscream/get_sound(mob/living/carbon/human/user) + if(!user.species) + return + if(user.species.burstscreams[user.gender]) + return user.species.burstscreams[user.gender] + if(user.species.burstscreams[NEUTER]) + return user.species.burstscreams[NEUTER] + +/datum/emote/living/carbon/human/burstscream/run_emote(mob/living/user, params, type_override, intentional) + . = ..() + if(!.) + return FALSE + + user.show_speech_bubble("pain") diff --git a/code/modules/mob/living/carbon/human/examine.dm b/code/modules/mob/living/carbon/human/examine.dm index c8820ec3b97d..fb7a12342978 100644 --- a/code/modules/mob/living/carbon/human/examine.dm +++ b/code/modules/mob/living/carbon/human/examine.dm @@ -497,6 +497,12 @@ if(assigned_squad == H.assigned_squad) //same squad msg += "\[Manage Fireteams.\]\n" + if(user.Adjacent(src) && ishuman(user)) + var/mob/living/carbon/human/human_user = user + var/temp_msg = "\[Check Status\]" + if(skillcheck(user, SKILL_MEDICAL, SKILL_MEDICAL_MEDIC) && locate(/obj/item/clothing/accessory/stethoscope) in human_user.w_uniform) + temp_msg += " \[Use Stethoscope\]" + msg += "\nMedical actions: [temp_msg]\n" if(print_flavor_text()) msg += "[print_flavor_text()]\n" diff --git a/code/modules/mob/living/carbon/human/human.dm b/code/modules/mob/living/carbon/human/human.dm index 3739addc44f6..88d7305bc0a3 100644 --- a/code/modules/mob/living/carbon/human/human.dm +++ b/code/modules/mob/living/carbon/human/human.dm @@ -408,6 +408,7 @@ DT.dogtag_taken = TRUE DT.icon_state = "dogtag_taken" var/obj/item/dogtag/D = new(loc) + D.fallen_references = list(DT.registered_ref) D.fallen_names = list(DT.registered_name) D.fallen_assgns = list(DT.assignment) D.fallen_blood_types = list(DT.blood_type) @@ -771,6 +772,21 @@ if(R.fields["last_scan_time"] && R.fields["last_scan_result"]) tgui_interact(usr) break + + if(href_list["check_status"]) + if(!usr.Adjacent(src)) + return + var/mob/living/carbon/human/user = usr + user.check_status(src) + + if(href_list["use_stethoscope"]) + var/mob/living/carbon/human/user = usr + var/obj/item/clothing/accessory/stethoscope/stethoscope = locate() in user.w_uniform + if(!stethoscope || !user.Adjacent(src)) + return + + stethoscope.attack(src, user) + ..() return @@ -989,45 +1005,44 @@ if(prob(30)) // Spam chat less to_chat(src, SPAN_HIGHDANGER("Your movement jostles [W] in your [organ.display_name] painfully.")) -/mob/living/carbon/human/verb/check_status() - set category = "Object" - set name = "Check Status" - set src in view(1) - var/self = (usr == src) - var/msg = "" - - - if(usr.stat > 0 || usr.is_mob_restrained() || !ishuman(usr)) return +/mob/living/carbon/human/proc/check_status(mob/living/carbon/human/target) + if(is_dead() || is_mob_restrained()) + return + ///Final message detailing injuries on the target. + var/msg + ///Is the target the user or somebody else? + var/self = (target == src) + to_chat(usr,SPAN_NOTICE("You [self ? "take a moment to analyze yourself." : "start analyzing [src]."]")) if(self) - var/list/L = get_broken_limbs() - list("chest","head","groin") - if(length(L) > 0) - msg += "Your [english_list(L)] [length(L) > 1 ? "are" : "is"] broken\n" - to_chat(usr,SPAN_NOTICE("You [self ? "take a moment to analyze yourself":"start analyzing [src]"]")) - if(toxloss > 20) - msg += "[self ? "Your" : "Their"] skin is slightly green\n" - if(is_bleeding()) - msg += "[self ? "You" : "They"] have bleeding wounds on [self ? "your" : "their"] body\n" + var/list/broken_limbs = target.get_broken_limbs() - list("chest","head","groin") + if(length(broken_limbs)) + msg += "Your [english_list(broken_limbs)] [length(broken_limbs) > 1 ? "are" : "is"] broken.\n" + if(target.toxloss > 20) + msg += "[self ? "Your" : "Their"] skin is slightly green.\n" + + if(target.is_bleeding()) + msg += "[self ? "You" : "They"] have bleeding wounds on [self ? "your" : "their"] body.\n" if(!self && skillcheck(usr, SKILL_SURGERY, SKILL_SURGERY_NOVICE)) - for(var/datum/effects/bleeding/internal/internal_bleed in effects_list) - msg += "They have bloating and discoloration on their [internal_bleed.limb.display_name]\n" - - if(stat == UNCONSCIOUS) - msg += "They seem to be unconscious\n" - else if(stat == DEAD) - if(src.check_tod() && is_revivable()) - msg += "They're not breathing" - else - if(has_limb("head")) - msg += "Their eyes have gone blank, there are no signs of life" - else - msg += "They are definitely dead" - else - msg += "[self ? "You're":"They're"] alive and breathing" + for(var/datum/effects/bleeding/internal/internal_bleed in target.effects_list) + msg += "They have bloating and discoloration on their [internal_bleed.limb.display_name].\n" + switch(target.stat) + if(DEAD) + if(target.check_tod() && target.is_revivable()) + msg += "They're not breathing." + else + if(has_limb("head")) + msg += "Their eyes have gone blank, there are no signs of life." + else + msg += "They are definitely dead." + if(UNCONSCIOUS) + msg += "They seem to be unconscious.\n" + if(CONSCIOUS) + msg += "[self ? "You're" : "They're"] alive and breathing." - to_chat(usr,SPAN_WARNING(msg)) + to_chat(src, SPAN_WARNING(msg)) /mob/living/carbon/human/verb/view_manifest() @@ -1349,11 +1364,14 @@ if(wear_mask && wear_mask.vision_impair) tint_level += wear_mask.vision_impair - if(tint_level > VISION_IMPAIR_STRONG) - tint_level = VISION_IMPAIR_STRONG + if(tint_level > VISION_IMPAIR_MAX) + tint_level = VISION_IMPAIR_MAX if(tint_level) - overlay_fullscreen("tint", /atom/movable/screen/fullscreen/impaired, tint_level) + if(tint_level == VISION_IMPAIR_MAX) + overlay_fullscreen("tint", /atom/movable/screen/fullscreen/blind) + else + overlay_fullscreen("tint", /atom/movable/screen/fullscreen/impaired, tint_level) return TRUE else clear_fullscreen("tint", 0) @@ -1397,7 +1415,8 @@ if(user.get_limb(cur_hand).status & LIMB_DESTROYED) to_chat(user, SPAN_WARNING("You cannot remove splints without a hand.")) return - for(var/bodypart in list("l_leg","r_leg","l_arm","r_arm","r_hand","l_hand","r_foot","l_foot","chest","head","groin")) + var/is_splint = FALSE + for(var/bodypart in list("l_leg","r_leg","l_arm","r_arm","r_hand","l_hand","r_foot","l_foot","chest","head","groin")) //check for any splints before do_after var/obj/limb/l = target.get_limb(bodypart) if(l && (l.status & LIMB_SPLINTED)) if(user == target) @@ -1407,13 +1426,31 @@ if((bodypart in list("r_arm", "r_hand")) && (cur_hand == "r_hand")) same_arm_side = TRUE continue - to_splint.Add(l) + is_splint = TRUE + break var/msg = "" // Have to use this because there are issues with the to_chat macros and text macros and quotation marks - if(length(to_splint)) + if(is_splint) if(do_after(user, HUMAN_STRIP_DELAY * user.get_skill_duration_multiplier(SKILL_MEDICAL), INTERRUPT_ALL, BUSY_ICON_GENERIC, target, INTERRUPT_MOVED, BUSY_ICON_GENERIC)) var/can_reach_splints = TRUE var/amount_removed = 0 + for(var/bodypart in list("l_leg","r_leg","l_arm","r_arm","r_hand","l_hand","r_foot","l_foot","chest","head","groin")) // make sure the splints still exist before removing + var/obj/limb/target_limb = target.get_limb(bodypart) + if(target_limb && (target_limb.status & LIMB_SPLINTED)) + if(user == target) + if((bodypart in list("l_arm", "l_hand")) && (cur_hand == "l_hand")) + same_arm_side = TRUE + continue + if((bodypart in list("r_arm", "r_hand")) && (cur_hand == "r_hand")) + same_arm_side = TRUE + continue + to_splint += target_limb + if(!length(to_splint)) + if(same_arm_side) + to_chat(user, SPAN_WARNING("You need to use the opposite hand to remove the splints on your arm and hand!")) + else + to_chat(user, SPAN_WARNING("There are no splints to remove.")) + return if(wear_suit && istype(wear_suit,/obj/item/clothing/suit/space)) var/obj/item/clothing/suit/space/suit = target.wear_suit if(LAZYLEN(suit.supporting_limbs)) diff --git a/code/modules/mob/living/carbon/human/human_stripping.dm b/code/modules/mob/living/carbon/human/human_stripping.dm index 210e5f266fe0..9fc916fc4288 100644 --- a/code/modules/mob/living/carbon/human/human_stripping.dm +++ b/code/modules/mob/living/carbon/human/human_stripping.dm @@ -239,6 +239,7 @@ GLOBAL_LIST_INIT(strippable_human_items, create_strippable_list(list( tag.dogtag_taken = TRUE tag.icon_state = "dogtag_taken" var/obj/item/dogtag/newtag = new(sourcemob.loc) + newtag.fallen_references = list(tag.registered_ref) newtag.fallen_names = list(tag.registered_name) newtag.fallen_assgns = list(tag.assignment) newtag.fallen_blood_types = list(tag.blood_type) diff --git a/code/modules/mob/living/carbon/human/say.dm b/code/modules/mob/living/carbon/human/say.dm index 79a178b9c99c..261844474da4 100644 --- a/code/modules/mob/living/carbon/human/say.dm +++ b/code/modules/mob/living/carbon/human/say.dm @@ -119,6 +119,9 @@ if (istype(wear_mask, /obj/item/clothing/mask/muzzle)) return + if (istype(wear_mask, /obj/item/clothing/mask/facehugger)) + return + message = capitalize(trim(message)) message = process_chat_markup(message, list("~", "_")) diff --git a/code/modules/mob/living/carbon/human/species/human.dm b/code/modules/mob/living/carbon/human/species/human.dm index 208f304bc3b4..ef768dca4648 100644 --- a/code/modules/mob/living/carbon/human/species/human.dm +++ b/code/modules/mob/living/carbon/human/species/human.dm @@ -93,6 +93,8 @@ fire_sprite_prefix = "Standing" fire_sprite_sheet = 'icons/mob/humans/onmob/OnFire.dmi' + burstscreams = list(MALE = "male_preburst", FEMALE = "female_preburst") + /datum/species/human/handle_on_fire(humanoidmob) . = ..() INVOKE_ASYNC(humanoidmob, TYPE_PROC_REF(/mob, emote), pick("pain", "scream")) diff --git a/code/modules/mob/living/carbon/human/species/species.dm b/code/modules/mob/living/carbon/human/species/species.dm index 6ca7fa0bd68d..30418f3c8b63 100644 --- a/code/modules/mob/living/carbon/human/species/species.dm +++ b/code/modules/mob/living/carbon/human/species/species.dm @@ -119,6 +119,9 @@ var/has_species_tab_items = FALSE + ///Species specific emote sound lists + var/list/burstscreams = list() + var/fire_sprite_prefix = "Standing" var/fire_sprite_sheet = 'icons/mob/humans/onmob/OnFire.dmi' diff --git a/code/modules/mob/living/carbon/human/species/synthetic.dm b/code/modules/mob/living/carbon/human/species/synthetic.dm index 741d9ba40324..923af75f699a 100644 --- a/code/modules/mob/living/carbon/human/species/synthetic.dm +++ b/code/modules/mob/living/carbon/human/species/synthetic.dm @@ -72,8 +72,9 @@ /datum/species/synthetic/gen_two name = SYNTH_GEN_TWO - uses_skin_color = FALSE //2nd gen uses generic human look - special_body_types = FALSE + uses_skin_color = TRUE + special_body_types = TRUE + /datum/species/synthetic/colonial name = SYNTH_COLONY 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 920f25a80a54..dc5ae3b77547 100644 --- a/code/modules/mob/living/carbon/human/species/yautja/_species.dm +++ b/code/modules/mob/living/carbon/human/species/yautja/_species.dm @@ -35,12 +35,13 @@ bloodsplatter_type = /obj/effect/bloodsplatter/yautjasplatter + burstscreams = list(MALE = "pred_preburst", FEMALE = "pred_preburst") + heat_level_1 = 500 heat_level_2 = 700 heat_level_3 = 1000 inherent_verbs = list( - /mob/living/carbon/human/proc/pred_buy, /mob/living/carbon/human/proc/butcher, /mob/living/carbon/human/proc/mark_for_hunt, /mob/living/carbon/human/proc/remove_from_hunt, @@ -213,7 +214,6 @@ limb.time_to_knit = 600 // 1 minute to self heal bone break, time is in tenths of a second hunter.set_languages(list(LANGUAGE_YAUTJA)) - give_action(hunter, /datum/action/predator_action/claim_equipment) give_action(hunter, /datum/action/yautja_emote_panel) give_action(hunter, /datum/action/predator_action/mark_for_hunt) give_action(hunter, /datum/action/predator_action/mark_panel) diff --git a/code/modules/mob/living/carbon/human/update_icons.dm b/code/modules/mob/living/carbon/human/update_icons.dm index 1cf4403f12c4..91ed3dad21d1 100644 --- a/code/modules/mob/living/carbon/human/update_icons.dm +++ b/code/modules/mob/living/carbon/human/update_icons.dm @@ -732,11 +732,14 @@ Applied by gun suicide and high impact bullet executions, removed by rejuvenate, /mob/living/carbon/human/update_burst() remove_overlay(BURST_LAYER) var/image/standing + var/bursting_icon = "stand" + if(isyautja(src)) + bursting_icon = "yautja_stand" switch(chestburst) if(1) - standing = image("icon" = 'icons/mob/xenos/effects.dmi',"icon_state" = "burst_stand", "layer" = -BURST_LAYER) + standing = image("icon" = 'icons/mob/xenos/effects.dmi',"icon_state" = "burst_[bursting_icon]", "layer" = -BURST_LAYER) if(2) - standing = image("icon" = 'icons/mob/xenos/effects.dmi',"icon_state" = "bursted_stand", "layer" = -BURST_LAYER) + standing = image("icon" = 'icons/mob/xenos/effects.dmi',"icon_state" = "bursted_[bursting_icon]", "layer" = -BURST_LAYER) else return overlays_standing[BURST_LAYER] = standing diff --git a/code/modules/mob/living/carbon/human/whisper.dm b/code/modules/mob/living/carbon/human/whisper.dm index cd4a08aefef7..23951e0c54d0 100644 --- a/code/modules/mob/living/carbon/human/whisper.dm +++ b/code/modules/mob/living/carbon/human/whisper.dm @@ -58,6 +58,9 @@ if (istype(src.wear_mask, /obj/item/clothing/mask/muzzle)) return + if (istype(src.wear_mask, /obj/item/clothing/mask/facehugger)) + return + //TODO: handle_speech_problems if (src.stuttering) message = stutter(message, stuttering) diff --git a/code/modules/mob/living/carbon/xenomorph/Abilities.dm b/code/modules/mob/living/carbon/xenomorph/Abilities.dm index bb2a5ec65aeb..54275489604a 100644 --- a/code/modules/mob/living/carbon/xenomorph/Abilities.dm +++ b/code/modules/mob/living/carbon/xenomorph/Abilities.dm @@ -105,7 +105,6 @@ /datum/action/xeno_action/onclick/screech name = "Screech (250)" action_icon_state = "screech" - ability_name = "screech" macro_path = /datum/action/xeno_action/verb/verb_screech action_type = XENO_ACTION_CLICK xeno_cooldown = 50 SECONDS @@ -168,7 +167,6 @@ /datum/action/xeno_action/activable/gut name = "Gut (200)" action_icon_state = "gut" - ability_name = "gut" macro_path = /datum/action/xeno_action/verb/verb_gut action_type = XENO_ACTION_CLICK xeno_cooldown = 15 MINUTES @@ -282,7 +280,6 @@ /datum/action/xeno_action/activable/queen_give_plasma name = "Give Plasma (400)" action_icon_state = "queen_give_plasma" - ability_name = "give plasma" plasma_cost = 400 macro_path = /datum/action/xeno_action/verb/verb_plasma_xeno action_type = XENO_ACTION_CLICK diff --git a/code/modules/mob/living/carbon/xenomorph/Embryo.dm b/code/modules/mob/living/carbon/xenomorph/Embryo.dm index b328fc13b8c9..4f71d8c43ce1 100644 --- a/code/modules/mob/living/carbon/xenomorph/Embryo.dm +++ b/code/modules/mob/living/carbon/xenomorph/Embryo.dm @@ -307,20 +307,18 @@ if(loc != victim) victim.chestburst = 0 return + if(ishuman(victim) || isyautja(victim)) + victim.emote("burstscream") + sleep(25) //Sound delay victim.update_burst() - sleep(6) //Sprite delay + sleep(10) //Sprite delay if(!victim || !victim.loc) return if(loc != victim) - victim.chestburst = 0 //if a doc removes the larva during the sleep(6), we must remove the 'bursting' overlay on the human + victim.chestburst = 0 //if a doc removes the larva during the sleep(10), we must remove the 'bursting' overlay on the human victim.update_burst() return - if(isyautja(victim)) - victim.emote("roar") - else - victim.emote("scream") - var/burstcount = 0 victim.spawn_gibs() diff --git a/code/modules/mob/living/carbon/xenomorph/Facehuggers.dm b/code/modules/mob/living/carbon/xenomorph/Facehuggers.dm index 9a87f10d74a3..2535917d3d61 100644 --- a/code/modules/mob/living/carbon/xenomorph/Facehuggers.dm +++ b/code/modules/mob/living/carbon/xenomorph/Facehuggers.dm @@ -16,6 +16,7 @@ flags_atom = NO_FLAGS flags_item = NOBLUDGEON throw_range = 1 + vision_impair = VISION_IMPAIR_MAX layer = FACEHUGGER_LAYER black_market_value = 20 @@ -293,7 +294,7 @@ human.disable_lights() human.disable_special_items() if(ishuman_strict(human)) - playsound(loc, human.gender == "male" ? 'sound/misc/facehugged_male.ogg' : 'sound/misc/facehugged_female.ogg' , 25, 0) + playsound(loc, human.gender == "male" ? "male_hugged" : "female_hugged" , 25, 0) else if(isyautja(human)) playsound(loc, 'sound/voice/pred_facehugged.ogg', 65, FALSE) if(!sterile) @@ -408,7 +409,7 @@ qdel(src) return var/obj/effect/alien/resin/special/eggmorph/M = locate() in loc - if(istype(M) && M.stored_huggers < M.huggers_to_grow_max) + if(istype(M) && M.stored_huggers < M.huggers_max_amount) visible_message(SPAN_XENOWARNING("[src] crawls back into [M]!")) M.stored_huggers++ qdel(src) diff --git a/code/modules/mob/living/carbon/xenomorph/Powers.dm b/code/modules/mob/living/carbon/xenomorph/Powers.dm index 87a6db3c0816..da91b76dab86 100644 --- a/code/modules/mob/living/carbon/xenomorph/Powers.dm +++ b/code/modules/mob/living/carbon/xenomorph/Powers.dm @@ -142,6 +142,10 @@ new_resin.add_hiddenprint(src) //so admins know who placed it + var/area/resin_area = get_area(new_resin) + if(resin_area && resin_area.linked_lz) + new_resin.AddComponent(/datum/component/resin_cleanup) + if(istype(new_resin, /turf/closed)) for(var/mob/living/carbon/human/enclosed_human in new_resin.contents) if(enclosed_human.stat == DEAD) diff --git a/code/modules/mob/living/carbon/xenomorph/XenoProcs.dm b/code/modules/mob/living/carbon/xenomorph/XenoProcs.dm index baf69a54e16e..085ec1d5aef5 100644 --- a/code/modules/mob/living/carbon/xenomorph/XenoProcs.dm +++ b/code/modules/mob/living/carbon/xenomorph/XenoProcs.dm @@ -310,7 +310,7 @@ return - visible_message(SPAN_DANGER("[src] [pounceAction.ability_name] onto [M]!"), SPAN_XENODANGER("We [pounceAction.ability_name] onto [M]!"), null, 5) + visible_message(SPAN_DANGER("[src] [pounceAction.action_text] onto [M]!"), SPAN_XENODANGER("We [pounceAction.action_text] onto [M]!"), null, 5) if (pounceAction.knockdown) M.KnockDown(pounceAction.knockdown_duration) diff --git a/code/modules/mob/living/carbon/xenomorph/abilities/ability_macro_framework.dm b/code/modules/mob/living/carbon/xenomorph/abilities/ability_macro_framework.dm index 3c162662d028..9a9f5cb50d0a 100644 --- a/code/modules/mob/living/carbon/xenomorph/abilities/ability_macro_framework.dm +++ b/code/modules/mob/living/carbon/xenomorph/abilities/ability_macro_framework.dm @@ -20,8 +20,8 @@ handle_xeno_macro_actionqueue(xeno, action) else - log_debug("Xeno action [action.ability_name] is misconfigured. Code: XENO_ACTION_MACRO_1") - log_admin("Xeno action [action.ability_name] is misconfigured. Tell the devs. Code: XENO_ACTION_MACRO_1") + log_debug("Xeno action [action.name] is misconfigured. Code: XENO_ACTION_MACRO_1") + log_admin("Xeno action [action.name] is misconfigured. Tell the devs. Code: XENO_ACTION_MACRO_1") /proc/handle_xeno_macro_click(mob/living/carbon/xenomorph/xeno, datum/action/xeno_action/action) diff --git a/code/modules/mob/living/carbon/xenomorph/abilities/boiler/boiler_abilities.dm b/code/modules/mob/living/carbon/xenomorph/abilities/boiler/boiler_abilities.dm index e7f72e7e013e..a44cc478330c 100644 --- a/code/modules/mob/living/carbon/xenomorph/abilities/boiler/boiler_abilities.dm +++ b/code/modules/mob/living/carbon/xenomorph/abilities/boiler/boiler_abilities.dm @@ -7,7 +7,6 @@ /datum/action/xeno_action/activable/acid_lance name = "Acid Lance" - ability_name = "acid lance" action_icon_state = "acid_lance" plasma_cost = 50 macro_path = /datum/action/xeno_action/verb/verb_acid_lance @@ -50,7 +49,6 @@ /datum/action/xeno_action/activable/xeno_spit/bombard name = "Bombard" - ability_name = "Bombard" action_icon_state = "bombard" cooldown_message = "Our belly fills with another gas glob. We are ready to bombard again." sound_to_play = 'sound/effects/blobattack.ogg' @@ -65,7 +63,6 @@ /datum/action/xeno_action/onclick/acid_shroud // acid dump alternative name = "Acid Shroud" - ability_name = "Acid Shroud" action_icon_state = "acid_shroud" action_type = XENO_ACTION_ACTIVATE ability_primacy = XENO_PRIMARY_ACTION_5 @@ -90,7 +87,6 @@ /datum/action/xeno_action/activable/boiler_trap name = "Deploy Trap" - ability_name = "deploy trap" action_icon_state = "resin_pit" plasma_cost = 60 macro_path = /datum/action/xeno_action/verb/verb_boiler_trap @@ -106,7 +102,6 @@ /datum/action/xeno_action/activable/acid_mine name = "Acid Mine" - ability_name = "acid mine" action_icon_state = "acid_mine" plasma_cost = 40 macro_path = /datum/action/xeno_action/verb/verb_acid_mine @@ -121,7 +116,6 @@ /datum/action/xeno_action/activable/acid_shotgun name = "Acid Shotgun" - ability_name = "acid shotgun" action_icon_state = "acid_shotgun" plasma_cost = 60 macro_path = /datum/action/xeno_action/verb/verb_acid_shotgun diff --git a/code/modules/mob/living/carbon/xenomorph/abilities/burrower/burrower_abilities.dm b/code/modules/mob/living/carbon/xenomorph/abilities/burrower/burrower_abilities.dm index 09c6006536b0..ad109583c43c 100644 --- a/code/modules/mob/living/carbon/xenomorph/abilities/burrower/burrower_abilities.dm +++ b/code/modules/mob/living/carbon/xenomorph/abilities/burrower/burrower_abilities.dm @@ -4,7 +4,6 @@ /datum/action/xeno_action/activable/burrow name = "Burrow" action_icon_state = "agility_on" - ability_name = "burrow" macro_path = /datum/action/xeno_action/verb/verb_burrow action_type = XENO_ACTION_CLICK ability_primacy = XENO_PRIMARY_ACTION_3 @@ -25,7 +24,6 @@ /datum/action/xeno_action/onclick/tremor name = "Tremor (100)" action_icon_state = "stomp" - ability_name = "tremor" macro_path = /datum/action/xeno_action/verb/verb_tremor action_type = XENO_ACTION_CLICK ability_primacy = XENO_PRIMARY_ACTION_4 diff --git a/code/modules/mob/living/carbon/xenomorph/abilities/carrier/carrier_abilities.dm b/code/modules/mob/living/carbon/xenomorph/abilities/carrier/carrier_abilities.dm index 566fe0eaead8..ca721a6e22c8 100644 --- a/code/modules/mob/living/carbon/xenomorph/abilities/carrier/carrier_abilities.dm +++ b/code/modules/mob/living/carbon/xenomorph/abilities/carrier/carrier_abilities.dm @@ -1,7 +1,6 @@ /datum/action/xeno_action/activable/throw_hugger name = "Use/Throw Facehugger" action_icon_state = "throw_hugger" - ability_name = "throw facehugger" macro_path = /datum/action/xeno_action/verb/verb_throw_facehugger action_type = XENO_ACTION_CLICK ability_primacy = XENO_PRIMARY_ACTION_3 @@ -15,7 +14,6 @@ /datum/action/xeno_action/activable/retrieve_egg name = "Retrieve Egg" action_icon_state = "retrieve_egg" - ability_name = "retrieve egg" macro_path = /datum/action/xeno_action/verb/verb_retrieve_egg action_type = XENO_ACTION_CLICK ability_primacy = XENO_PRIMARY_ACTION_4 diff --git a/code/modules/mob/living/carbon/xenomorph/abilities/crusher/crusher_abilities.dm b/code/modules/mob/living/carbon/xenomorph/abilities/crusher/crusher_abilities.dm index 4691d70321c3..c0d2dc5dab37 100644 --- a/code/modules/mob/living/carbon/xenomorph/abilities/crusher/crusher_abilities.dm +++ b/code/modules/mob/living/carbon/xenomorph/abilities/crusher/crusher_abilities.dm @@ -1,7 +1,7 @@ /datum/action/xeno_action/activable/pounce/crusher_charge name = "Charge" action_icon_state = "ready_charge" - ability_name = "charge" + action_text = "charge" macro_path = /datum/action/xeno_action/verb/verb_crusher_charge action_type = XENO_ACTION_CLICK ability_primacy = XENO_PRIMARY_ACTION_1 @@ -35,7 +35,6 @@ /datum/action/xeno_action/onclick/crusher_stomp name = "Stomp" action_icon_state = "stomp" - ability_name = "stomp" macro_path = /datum/action/xeno_action/verb/verb_crusher_stomp action_type = XENO_ACTION_CLICK ability_primacy = XENO_PRIMARY_ACTION_2 @@ -63,7 +62,6 @@ /datum/action/xeno_action/onclick/crusher_shield name = "Defensive Shield" action_icon_state = "empower" - ability_name = "defensive shield" macro_path = /datum/action/xeno_action/verb/verb_crusher_charge action_type = XENO_ACTION_CLICK ability_primacy = XENO_PRIMARY_ACTION_3 @@ -74,7 +72,6 @@ /datum/action/xeno_action/activable/fling/charger name = "Headbutt" action_icon_state = "ram" - ability_name = "Headbutt" macro_path = /datum/action/xeno_action/verb/verb_fling action_type = XENO_ACTION_CLICK ability_primacy = XENO_PRIMARY_ACTION_4 @@ -253,7 +250,6 @@ /datum/action/xeno_action/activable/tumble name = "Tumble" - ability_name = "tumble" action_icon_state = "tumble" macro_path = /datum/action/xeno_action/verb/verb_crusher_tumble action_type = XENO_ACTION_CLICK diff --git a/code/modules/mob/living/carbon/xenomorph/abilities/defender/defender_abilities.dm b/code/modules/mob/living/carbon/xenomorph/abilities/defender/defender_abilities.dm index 3d940c502267..1b40dedd4e7d 100644 --- a/code/modules/mob/living/carbon/xenomorph/abilities/defender/defender_abilities.dm +++ b/code/modules/mob/living/carbon/xenomorph/abilities/defender/defender_abilities.dm @@ -1,7 +1,6 @@ /datum/action/xeno_action/onclick/toggle_crest name = "Toggle Crest Defense" action_icon_state = "crest_defense" - ability_name = "toggle crest defense" macro_path = /datum/action/xeno_action/verb/verb_toggle_crest action_type = XENO_ACTION_ACTIVATE xeno_cooldown = 1.5 SECONDS @@ -14,7 +13,6 @@ /datum/action/xeno_action/activable/headbutt name = "Headbutt" action_icon_state = "headbutt" - ability_name = "headbutt" macro_path = /datum/action/xeno_action/verb/verb_headbutt action_type = XENO_ACTION_CLICK ability_primacy = XENO_PRIMARY_ACTION_2 @@ -30,7 +28,6 @@ /datum/action/xeno_action/onclick/tail_sweep name = "Tail Sweep" action_icon_state = "tail_sweep" - ability_name = "tail sweep" macro_path = /datum/action/xeno_action/verb/verb_tail_sweep action_type = XENO_ACTION_ACTIVATE ability_primacy = XENO_PRIMARY_ACTION_3 @@ -40,7 +37,6 @@ /datum/action/xeno_action/activable/fortify name = "Fortify" action_icon_state = "fortify" - ability_name = "fortify" macro_path = /datum/action/xeno_action/verb/verb_fortify action_type = XENO_ACTION_ACTIVATE ability_primacy = XENO_PRIMARY_ACTION_4 @@ -54,13 +50,11 @@ /datum/action/xeno_action/activable/tail_stab/slam name = "Tail Slam" - ability_name = "tail slam" blunt_stab = TRUE /datum/action/xeno_action/onclick/soak name = "Soak" action_icon_state = "soak" - ability_name = "soak" macro_path = /datum/action/xeno_action/verb/verb_soak action_type = XENO_ACTION_ACTIVATE ability_primacy = XENO_PRIMARY_ACTION_3 diff --git a/code/modules/mob/living/carbon/xenomorph/abilities/facehugger/facehugger_abilities.dm b/code/modules/mob/living/carbon/xenomorph/abilities/facehugger/facehugger_abilities.dm index d60d292cba25..d5ce19d4a532 100644 --- a/code/modules/mob/living/carbon/xenomorph/abilities/facehugger/facehugger_abilities.dm +++ b/code/modules/mob/living/carbon/xenomorph/abilities/facehugger/facehugger_abilities.dm @@ -1,7 +1,7 @@ /datum/action/xeno_action/activable/pounce/facehugger name = "Leap" action_icon_state = "pounce" - ability_name = "leap" + action_text = "leap" macro_path = /datum/action/xeno_action/verb/verb_pounce action_type = XENO_ACTION_CLICK ability_primacy = XENO_PRIMARY_ACTION_1 diff --git a/code/modules/mob/living/carbon/xenomorph/abilities/general_abilities.dm b/code/modules/mob/living/carbon/xenomorph/abilities/general_abilities.dm index 5505ec9c83d7..4d65b0303704 100644 --- a/code/modules/mob/living/carbon/xenomorph/abilities/general_abilities.dm +++ b/code/modules/mob/living/carbon/xenomorph/abilities/general_abilities.dm @@ -18,7 +18,6 @@ /datum/action/xeno_action/onclick/plant_weeds name = "Plant Weeds (75)" - ability_name = "Plant Weeds" action_icon_state = "plant_weeds" plasma_cost = 75 macro_path = /datum/action/xeno_action/verb/verb_plant_weeds @@ -84,7 +83,6 @@ /datum/action/xeno_action/activable/secrete_resin name = "Secrete Resin" action_icon_state = "secrete_resin" - ability_name = "secrete resin" var/thick = FALSE var/make_message = TRUE macro_path = /datum/action/xeno_action/verb/verb_secrete_resin @@ -117,7 +115,6 @@ /datum/action/xeno_action/activable/info_marker name = "Mark Resin" action_icon_state = "mark" - ability_name = "mark resin" macro_path = /datum/action/xeno_action/verb/verb_mark_resin action_type = XENO_ACTION_CLICK ability_primacy = XENO_NOT_PRIMARY_ACTION @@ -138,7 +135,6 @@ /datum/action/xeno_action/activable/corrosive_acid name = "Corrosive Acid (100)" action_icon_state = "corrosive_acid" - ability_name = "corrosive acid" var/acid_plasma_cost = 100 var/level = 2 //level of the acid strength var/acid_type = /obj/effect/xenomorph/acid @@ -194,7 +190,7 @@ /datum/action/xeno_action/activable/pounce name = "Pounce" action_icon_state = "pounce" - ability_name = "pounce" + var/action_text = "pounce" macro_path = /datum/action/xeno_action/verb/verb_pounce action_type = XENO_ACTION_CLICK xeno_cooldown = 40 @@ -357,7 +353,7 @@ /datum/action/xeno_action/activable/spray_acid name = "Spray Acid" action_icon_state = "spray_acid" - ability_name = "spray acid" + var/action_text = "spray acid" macro_path = /datum/action/xeno_action/verb/verb_spray_acid action_type = XENO_ACTION_CLICK @@ -378,7 +374,6 @@ /datum/action/xeno_action/activable/transfer_plasma name = "Transfer Plasma" action_icon_state = "transfer_plasma" - ability_name = "transfer plasma" var/plasma_transfer_amount = 50 var/transfer_delay = 20 var/max_range = 2 @@ -433,7 +428,6 @@ /datum/action/xeno_action/activable/place_construction name = "Order Construction (400)" action_icon_state = "morph_resin" - ability_name = "order construction" macro_path = /datum/action/xeno_action/verb/place_construction action_type = XENO_ACTION_CLICK ability_primacy = XENO_PRIMARY_ACTION_5 @@ -444,7 +438,6 @@ /datum/action/xeno_action/activable/xeno_spit name = "Xeno Spit" action_icon_state = "xeno_spit" - ability_name = "xeno spit" macro_path = /datum/action/xeno_action/verb/verb_xeno_spit action_type = XENO_ACTION_CLICK ability_primacy = XENO_PRIMARY_ACTION_1 @@ -461,7 +454,6 @@ /datum/action/xeno_action/activable/bombard name = "Bombard" - ability_name = "bombard" action_icon_state = "bombard" plasma_cost = 75 macro_path = /datum/action/xeno_action/verb/verb_bombard @@ -479,7 +471,6 @@ /datum/action/xeno_action/activable/tail_stab name = "Tail Stab" action_icon_state = "tail_attack" - ability_name = "tail stab" action_type = XENO_ACTION_CLICK charge_time = 1 SECONDS xeno_cooldown = 10 SECONDS @@ -510,7 +501,6 @@ /datum/action/xeno_action/onclick/tacmap name = "View Tactical Map" action_icon_state = "toggle_queen_zoom" - ability_name = "view tacmap" var/mob/living/carbon/xenomorph/queen/tracked_queen var/hivenumber diff --git a/code/modules/mob/living/carbon/xenomorph/abilities/general_powers.dm b/code/modules/mob/living/carbon/xenomorph/abilities/general_powers.dm index eb7ac8bde612..c7a67d300121 100644 --- a/code/modules/mob/living/carbon/xenomorph/abilities/general_powers.dm +++ b/code/modules/mob/living/carbon/xenomorph/abilities/general_powers.dm @@ -241,7 +241,7 @@ switch(X.build_resin(A, thick, make_message, plasma_cost != 0, build_speed_mod)) if(SECRETE_RESIN_INTERRUPT) if(xeno_cooldown) - apply_cooldown_override(xeno_cooldown * 2) + apply_cooldown_override(xeno_cooldown * 3) return FALSE if(SECRETE_RESIN_FAIL) if(xeno_cooldown) @@ -384,14 +384,14 @@ return if(!isturf(X.loc)) - to_chat(X, SPAN_XENOWARNING("We can't [ability_name] from here!")) + to_chat(X, SPAN_XENOWARNING("We can't [action_text] from here!")) return if(!X.check_state()) return if(X.legcuffed) - to_chat(X, SPAN_XENODANGER("We can't [ability_name] with that thing on our leg!")) + to_chat(X, SPAN_XENODANGER("We can't [action_text] with that thing on our leg!")) return if(!check_and_use_plasma_owner()) @@ -418,7 +418,7 @@ pre_windup_effects() if (!do_after(X, windup_duration, INTERRUPT_NO_NEEDHAND, BUSY_ICON_HOSTILE)) - to_chat(X, SPAN_XENODANGER("We cancel our [ability_name]!")) + to_chat(X, SPAN_XENODANGER("We cancel our [action_text]!")) if (!windup_interruptable) REMOVE_TRAIT(X, TRAIT_IMMOBILIZED, TRAIT_SOURCE_ABILITY("Pounce")) X.anchored = FALSE @@ -430,7 +430,7 @@ X.anchored = FALSE post_windup_effects() - X.visible_message(SPAN_XENOWARNING("\The [X] [ability_name][findtext(ability_name, "e", -1) || findtext(ability_name, "p", -1) ? "s" : "es"] at [A]!"), SPAN_XENOWARNING("We [ability_name] at [A]!")) + X.visible_message(SPAN_XENOWARNING("\The [X] [action_text][findtext(action_text, "e", -1) || findtext(action_text, "p", -1) ? "s" : "es"] at [A]!"), SPAN_XENOWARNING("We [action_text] at [A]!")) pre_pounce_effects() @@ -456,7 +456,7 @@ return if(!isturf(X.loc)) - to_chat(X, SPAN_XENOWARNING("We can't [ability_name] from here!")) + to_chat(X, SPAN_XENOWARNING("We can't [action_text] from here!")) return if(!X.check_state() || X.action_busy) @@ -652,19 +652,33 @@ var/datum/construction_template/xenomorph/structure_template = new structure_type() if(!spacecheck(X, T, structure_template)) + // spacecheck already cleans up the template + return FALSE + + if((choice == XENO_STRUCTURE_EGGMORPH) && locate(/obj/structure/flora/grass/tallgrass) in T) + to_chat(X, SPAN_WARNING("The tallgrass is preventing us from building the egg morpher!")) + qdel(structure_template) return FALSE if(!do_after(X, XENO_STRUCTURE_BUILD_TIME, INTERRUPT_NO_NEEDHAND|BEHAVIOR_IMMOBILE, BUSY_ICON_BUILD)) return FALSE if(!spacecheck(X, T, structure_template)) //doublechecking + // spacecheck already cleans up the template + return FALSE + + if(choice == XENO_STRUCTURE_CORE && AR.unoviable_timer) + to_chat(X, SPAN_WARNING("This area does not feel right for you to build this in.")) + qdel(structure_template) return FALSE if((choice == XENO_STRUCTURE_CORE) && isqueen(X) && X.hive.has_structure(XENO_STRUCTURE_CORE)) if(X.hive.hive_location.hardcore || world.time > XENOMORPH_PRE_SETUP_CUTOFF) to_chat(X, SPAN_WARNING("We can't rebuild this structure!")) + qdel(structure_template) return FALSE if(alert(X, "Are we sure that we want to move the hive and destroy the old hive core?", , "Yes", "No") != "Yes") + qdel(structure_template) return FALSE qdel(X.hive.hive_location) else if(!X.hive.can_build_structure(choice)) diff --git a/code/modules/mob/living/carbon/xenomorph/abilities/lurker/lurker_abilities.dm b/code/modules/mob/living/carbon/xenomorph/abilities/lurker/lurker_abilities.dm index 17677c8427af..d4fb390f14f9 100644 --- a/code/modules/mob/living/carbon/xenomorph/abilities/lurker/lurker_abilities.dm +++ b/code/modules/mob/living/carbon/xenomorph/abilities/lurker/lurker_abilities.dm @@ -14,7 +14,6 @@ /datum/action/xeno_action/onclick/lurker_invisibility name = "Turn Invisible" action_icon_state = "lurker_invisibility" - ability_name = "turn invisible" macro_path = /datum/action/xeno_action/verb/verb_lurker_invisibility ability_primacy = XENO_PRIMARY_ACTION_2 action_type = XENO_ACTION_CLICK @@ -29,7 +28,6 @@ /datum/action/xeno_action/onclick/lurker_assassinate name = "Crippling Strike" action_icon_state = "lurker_inject_neuro" - ability_name = "crippling strike" macro_path = /datum/action/xeno_action/verb/verb_crippling_strike ability_primacy = XENO_PRIMARY_ACTION_3 action_type = XENO_ACTION_ACTIVATE @@ -43,7 +41,7 @@ /datum/action/xeno_action/activable/pounce/rush name = "Rush" action_icon_state = "pounce" - ability_name = "rush" + action_text = "rush" macro_path = /datum/action/xeno_action/verb/verb_rush ability_primacy = XENO_PRIMARY_ACTION_1 action_type = XENO_ACTION_CLICK @@ -58,7 +56,6 @@ /datum/action/xeno_action/activable/flurry name = "Flurry" action_icon_state = "rav_spike" - ability_name = "flurry" macro_path = /datum/action/xeno_action/verb/verb_flurry ability_primacy = XENO_PRIMARY_ACTION_2 action_type = XENO_ACTION_CLICK @@ -67,7 +64,6 @@ /datum/action/xeno_action/activable/tail_jab name = "Tail Jab" action_icon_state = "prae_pierce" - ability_name = "tail jab" macro_path = /datum/action/xeno_action/verb/verb_tail_jab ability_primacy = XENO_PRIMARY_ACTION_3 action_type = XENO_ACTION_CLICK @@ -76,7 +72,6 @@ /datum/action/xeno_action/activable/headbite name = "Headbite" action_icon_state = "headbite" - ability_name = "headbite" macro_path = /datum/action/xeno_action/verb/verb_headbite ability_primacy = XENO_PRIMARY_ACTION_4 action_type = XENO_ACTION_CLICK diff --git a/code/modules/mob/living/carbon/xenomorph/abilities/praetorian/praetorian_abilities.dm b/code/modules/mob/living/carbon/xenomorph/abilities/praetorian/praetorian_abilities.dm index 4fe0e9107995..9b84355407ef 100644 --- a/code/modules/mob/living/carbon/xenomorph/abilities/praetorian/praetorian_abilities.dm +++ b/code/modules/mob/living/carbon/xenomorph/abilities/praetorian/praetorian_abilities.dm @@ -6,7 +6,6 @@ /datum/action/xeno_action/activable/pierce name = "Pierce" action_icon_state = "prae_pierce" - ability_name = "pierce" macro_path = /datum/action/xeno_action/verb/verb_pierce action_type = XENO_ACTION_CLICK ability_primacy = XENO_PRIMARY_ACTION_1 @@ -21,7 +20,7 @@ /datum/action/xeno_action/activable/pounce/prae_dash name = "Dash" action_icon_state = "prae_dash" - ability_name = "dash" + action_text = "dash" macro_path = /datum/action/xeno_action/verb/verb_dash action_type = XENO_ACTION_CLICK ability_primacy = XENO_PRIMARY_ACTION_2 @@ -47,7 +46,6 @@ /datum/action/xeno_action/activable/cleave name = "Cleave" action_icon_state = "prae_cleave_action" - ability_name = "cleave" macro_path = /datum/action/xeno_action/verb/verb_cleave ability_primacy = XENO_PRIMARY_ACTION_3 action_type = XENO_ACTION_CLICK @@ -111,7 +109,6 @@ /datum/action/xeno_action/activable/tail_stab/tail_seize //no verbmacrohotkey, its just tail stab. name = "Tail Seize" action_icon_state = "tail_seize" - ability_name = "tail seize" action_type = XENO_ACTION_CLICK charge_time = 0.5 SECONDS xeno_cooldown = 15 SECONDS @@ -120,7 +117,6 @@ /datum/action/xeno_action/activable/prae_abduct name = "Abduct" action_icon_state = "abduct" - ability_name = "abduct" macro_path = /datum/action/xeno_action/verb/verb_prae_abduct ability_primacy = XENO_PRIMARY_ACTION_1 action_type = XENO_ACTION_CLICK @@ -134,7 +130,6 @@ /datum/action/xeno_action/activable/oppressor_punch name = "Dislocate" action_icon_state = "punch" - ability_name = "dislocate" macro_path = /datum/action/xeno_action/verb/verb_oppressor_punch action_type = XENO_ACTION_CLICK ability_primacy = XENO_PRIMARY_ACTION_2 @@ -150,7 +145,7 @@ /*datum/action/xeno_action/onclick/crush name = "Crush" action_icon_state = "prae_crush" - ability_name = "crush" + action_text = "crush" macro_path = /datum/action/xeno_action/verb/verb_crush action_type = XENO_ACTION_ACTIVATE xeno_cooldown = 100 @@ -160,7 +155,6 @@ /datum/action/xeno_action/activable/tail_lash name = "Tail Lash" action_icon_state = "prae_tail_lash" - ability_name = "tail lash" macro_path = /datum/action/xeno_action/verb/verb_crush ability_primacy = XENO_PRIMARY_ACTION_3 action_type = XENO_ACTION_CLICK @@ -176,7 +170,6 @@ /datum/action/xeno_action/activable/prae_impale name = "Impale" action_icon_state = "prae_impale" - ability_name = "impale" macro_path = /datum/action/xeno_action/verb/verb_prae_impale ability_primacy = XENO_PRIMARY_ACTION_1 action_type = XENO_ACTION_CLICK @@ -186,7 +179,6 @@ /datum/action/xeno_action/onclick/prae_dodge name = "Dodge" action_icon_state = "prae_dodge" - ability_name = "dodge" macro_path = /datum/action/xeno_action/verb/verb_prae_dodge ability_primacy = XENO_PRIMARY_ACTION_2 action_type = XENO_ACTION_CLICK @@ -200,7 +192,6 @@ /datum/action/xeno_action/activable/prae_tail_trip name = "Tail Trip" action_icon_state = "prae_tail_trip" - ability_name = "tail trip" macro_path = /datum/action/xeno_action/verb/verb_prae_tail_trip ability_primacy = XENO_PRIMARY_ACTION_3 action_type = XENO_ACTION_CLICK @@ -220,7 +211,7 @@ /datum/action/xeno_action/activable/pounce/base_prae_dash name = "Dash" action_icon_state = "prae_dash" - ability_name = "dash" + action_text = "dash" macro_path = /datum/action/xeno_action/verb/verb_dash action_type = XENO_ACTION_CLICK ability_primacy = XENO_PRIMARY_ACTION_2 @@ -236,7 +227,6 @@ /datum/action/xeno_action/activable/prae_acid_ball name = "Acid Ball" action_icon_state = "prae_acid_ball" - ability_name = "acid ball" macro_path = /datum/action/xeno_action/verb/verb_acid_ball action_type = XENO_ACTION_CLICK ability_primacy = XENO_PRIMARY_ACTION_3 @@ -249,7 +239,6 @@ /datum/action/xeno_action/activable/spray_acid/base_prae_spray_acid name = "Spray Acid" action_icon_state = "spray_acid" - ability_name = "spray acid" macro_path = /datum/action/xeno_action/verb/verb_spray_acid action_type = XENO_ACTION_CLICK ability_primacy = XENO_PRIMARY_ACTION_4 @@ -284,7 +273,6 @@ /datum/action/xeno_action/activable/warden_heal name = "Aid Xenomorph" action_icon_state = "prae_aid" - ability_name = "aid" // todo: macro action_type = XENO_ACTION_CLICK ability_primacy = XENO_PRIMARY_ACTION_3 @@ -349,7 +337,6 @@ /datum/action/xeno_action/activable/prae_retrieve name = "Retrieve" action_icon_state = "retrieve" - ability_name = "retrieve" macro_path = /datum/action/xeno_action/verb/verb_prae_retrieve ability_primacy = XENO_PRIMARY_ACTION_4 action_type = XENO_ACTION_CLICK diff --git a/code/modules/mob/living/carbon/xenomorph/abilities/praetorian/praetorian_powers.dm b/code/modules/mob/living/carbon/xenomorph/abilities/praetorian/praetorian_powers.dm index 3cbf0769514f..c1883008f7a9 100644 --- a/code/modules/mob/living/carbon/xenomorph/abilities/praetorian/praetorian_powers.dm +++ b/code/modules/mob/living/carbon/xenomorph/abilities/praetorian/praetorian_powers.dm @@ -1,19 +1,19 @@ /datum/action/xeno_action/activable/pierce/use_ability(atom/targetted_atom) - var/mob/living/carbon/xenomorph/source_xeno = owner + var/mob/living/carbon/xenomorph/pierce_user = owner if (!action_cooldown_check()) return - if (!source_xeno.check_state()) + if (!pierce_user.check_state()) return - if(!targetted_atom || targetted_atom.layer >= FLY_LAYER || !isturf(source_xeno.loc)) + if(!targetted_atom || targetted_atom.layer >= FLY_LAYER || !isturf(pierce_user.loc)) return if (!check_and_use_plasma_owner()) return //X = xeno user, A = target atom - var/list/turf/target_turfs = get_line(source_xeno, targetted_atom, include_start_atom = FALSE) + var/list/turf/target_turfs = get_line(pierce_user, targetted_atom, include_start_atom = FALSE) var/length_of_line = LAZYLEN(target_turfs) if(length_of_line > 3) target_turfs = target_turfs.Copy(1, 4) @@ -46,20 +46,20 @@ //Check for mobs and add them to our target list for damage if(iscarbon(path_content)) var/mob/living/carbon/mob_to_act = path_content - if(!isxeno_human(mob_to_act) || source_xeno.can_not_harm(mob_to_act)) + if(!isxeno_human(mob_to_act) || pierce_user.can_not_harm(mob_to_act)) continue if(!(mob_to_act in target_mobs)) target_mobs += mob_to_act - source_xeno.visible_message(SPAN_XENODANGER("[source_xeno] slashes its claws through the area in front of it!"), SPAN_XENODANGER("We slash our claws through the area in front of us!")) - source_xeno.animation_attack_on(targetted_atom, 15) + pierce_user.visible_message(SPAN_XENODANGER("[pierce_user] slashes its claws through the area in front of it!"), SPAN_XENODANGER("We slash our claws through the area in front of us!")) + pierce_user.animation_attack_on(targetted_atom, 15) - source_xeno.emote("roar") + pierce_user.emote("roar") // Loop through our mob list, finding any humans there and dealing damage to them for (var/mob/living/carbon/current_mob in target_mobs) - if (!isxeno_human(current_mob) || source_xeno.can_not_harm(current_mob)) + if (!isxeno_human(current_mob) || pierce_user.can_not_harm(current_mob)) continue if (current_mob.stat == DEAD) @@ -70,7 +70,7 @@ playsound(current_mob, 'sound/weapons/alien_tail_attack.ogg', 30, TRUE) if (length(target_mobs) >= shield_regen_threshold) - var/datum/behavior_delegate/praetorian_vanguard/behavior = source_xeno.behavior_delegate + var/datum/behavior_delegate/praetorian_vanguard/behavior = pierce_user.behavior_delegate if (istype(behavior)) behavior.regen_shield() @@ -101,78 +101,78 @@ return /datum/action/xeno_action/activable/pounce/prae_dash/proc/damage_nearby_targets() - var/mob/living/carbon/xenomorph/X = owner + var/mob/living/carbon/xenomorph/dash_user = owner - if (QDELETED(X) || !X.check_state()) + if (QDELETED(dash_user) || !dash_user.check_state()) return activated_once = FALSE - button.icon_state = X.selected_ability == src ? "template_on" : "template" + button.icon_state = dash_user.selected_ability == src ? "template_on" : "template" var/list/target_mobs = list() - var/list/L = orange(1, X) + var/list/L = orange(1, dash_user) for (var/mob/living/carbon/H in L) - if (!isxeno_human(H) || X.can_not_harm(H)) + if (!isxeno_human(H) || dash_user.can_not_harm(H)) continue if (!(H in target_mobs)) target_mobs += H - X.visible_message(SPAN_XENODANGER("[X] slashes its claws through the area around it!"), SPAN_XENODANGER("We slash our claws through the area around us!")) - X.spin_circle() + dash_user.visible_message(SPAN_XENODANGER("[dash_user] slashes its claws through the area around it!"), SPAN_XENODANGER("We slash our claws through the area around us!")) + dash_user.spin_circle() for (var/mob/living/carbon/H in target_mobs) if (H.stat) continue - if (!isxeno_human(H) || X.can_not_harm(H)) + if (!isxeno_human(H) || dash_user.can_not_harm(H)) continue - X.flick_attack_overlay(H, "slash") + dash_user.flick_attack_overlay(H, "slash") H.apply_armoured_damage(get_xeno_damage_slash(H, damage), ARMOR_MELEE, BRUTE) playsound(get_turf(H), "alien_claw_flesh", 30, 1) if (length(target_mobs) >= shield_regen_threshold) - var/datum/behavior_delegate/praetorian_vanguard/behavior = X.behavior_delegate + var/datum/behavior_delegate/praetorian_vanguard/behavior = dash_user.behavior_delegate if (istype(behavior)) behavior.regen_shield() /datum/action/xeno_action/activable/cleave/use_ability(atom/target_atom) - var/mob/living/carbon/xenomorph/vanguard_user = owner + var/mob/living/carbon/xenomorph/cleave_user = owner if (!action_cooldown_check()) return - if (!vanguard_user.check_state()) + if (!cleave_user.check_state()) return if (!check_and_use_plasma_owner()) return - if (!isxeno_human(target_atom) || vanguard_user.can_not_harm(target_atom)) - to_chat(vanguard_user, SPAN_XENODANGER("We must target a hostile!")) + if (!isxeno_human(target_atom) || cleave_user.can_not_harm(target_atom)) + to_chat(cleave_user, SPAN_XENODANGER("We must target a hostile!")) return var/mob/living/carbon/target_carbon = target_atom - if (!vanguard_user.Adjacent(target_carbon)) - to_chat(vanguard_user, SPAN_XENOWARNING("We must be adjacent to our target!")) + if (!cleave_user.Adjacent(target_carbon)) + to_chat(cleave_user, SPAN_XENOWARNING("We must be adjacent to our target!")) return if (target_carbon.stat == DEAD) - to_chat(vanguard_user, SPAN_XENODANGER("[target_carbon] is dead, why would we want to touch it?")) + to_chat(cleave_user, SPAN_XENODANGER("[target_carbon] is dead, why would we want to touch it?")) return // Flick overlay and play sound - vanguard_user.face_atom(target_carbon) - vanguard_user.animation_attack_on(target_atom, 10) + cleave_user.face_atom(target_carbon) + cleave_user.animation_attack_on(target_atom, 10) var/hitsound = pick('sound/weapons/punch1.ogg','sound/weapons/punch2.ogg','sound/weapons/punch3.ogg','sound/weapons/punch4.ogg') playsound(target_carbon,hitsound, 50, 1) if (root_toggle) var/root_duration = buffed ? root_duration_buffed : root_duration_unbuffed - vanguard_user.visible_message(SPAN_XENODANGER("[vanguard_user] slams [target_atom] into the ground!"), SPAN_XENOHIGHDANGER("We slam [target_atom] into the ground!")) + cleave_user.visible_message(SPAN_XENODANGER("[cleave_user] slams [target_atom] into the ground!"), SPAN_XENOHIGHDANGER("We slam [target_atom] into the ground!")) ADD_TRAIT(target_carbon, TRAIT_IMMOBILIZED, TRAIT_SOURCE_ABILITY("Cleave")) if (ishuman(target_carbon)) @@ -180,17 +180,17 @@ Hu.update_xeno_hostile_hud() addtimer(CALLBACK(GLOBAL_PROC, GLOBAL_PROC_REF(unroot_human), target_carbon, TRAIT_SOURCE_ABILITY("Cleave")), get_xeno_stun_duration(target_carbon, root_duration)) - to_chat(target_carbon, SPAN_XENOHIGHDANGER("[vanguard_user] has pinned you to the ground! You cannot move!")) - vanguard_user.flick_attack_overlay(target_carbon, "punch") + to_chat(target_carbon, SPAN_XENOHIGHDANGER("[cleave_user] has pinned you to the ground! You cannot move!")) + cleave_user.flick_attack_overlay(target_carbon, "punch") else var/fling_distance = buffed ? fling_dist_buffed : fling_dist_unbuffed if(target_carbon.mob_size >= MOB_SIZE_BIG) fling_distance *= 0.1 - vanguard_user.visible_message(SPAN_XENODANGER("[vanguard_user] deals [target_atom] a massive blow, sending them flying!"), SPAN_XENOHIGHDANGER("We deal [target_atom] a massive blow, sending them flying!")) - vanguard_user.flick_attack_overlay(target_carbon, "slam") - vanguard_user.throw_carbon(target_atom, null, fling_distance) + cleave_user.visible_message(SPAN_XENODANGER("[cleave_user] deals [target_atom] a massive blow, sending them flying!"), SPAN_XENOHIGHDANGER("We deal [target_atom] a massive blow, sending them flying!")) + cleave_user.flick_attack_overlay(target_carbon, "slam") + cleave_user.throw_carbon(target_atom, null, fling_distance) apply_cooldown() return ..() @@ -232,15 +232,15 @@ return ..() /datum/action/xeno_action/activable/prae_abduct/use_ability(atom/atom) - var/mob/living/carbon/xenomorph/xeno = owner + var/mob/living/carbon/xenomorph/abduct_user = owner - if(!atom || atom.layer >= FLY_LAYER || !isturf(xeno.loc)) + if(!atom || atom.layer >= FLY_LAYER || !isturf(abduct_user.loc)) return - if(!action_cooldown_check() || xeno.action_busy) + if(!action_cooldown_check() || abduct_user.action_busy) return - if(!xeno.check_state()) + if(!abduct_user.check_state()) return if(!check_plasma_owner()) @@ -249,9 +249,9 @@ // Build our turflist var/list/turf/turflist = list() var/list/telegraph_atom_list = list() - var/facing = get_dir(xeno, atom) - var/turf/turf = xeno.loc - var/turf/temp = xeno.loc + var/facing = get_dir(abduct_user, atom) + var/turf/turf = abduct_user.loc + var/turf/temp = abduct_user.loc for(var/distance in 0 to max_distance) temp = get_step(turf, facing) if(facing in GLOB.diagonals) // check if it goes through corners @@ -281,58 +281,58 @@ telegraph_atom_list += new /obj/effect/xenomorph/xeno_telegraph/abduct_hook(turf, windup) if(!length(turflist)) - to_chat(xeno, SPAN_XENOWARNING("We don't have any room to do our abduction!")) + to_chat(abduct_user, SPAN_XENOWARNING("We don't have any room to do our abduction!")) return - xeno.visible_message(SPAN_XENODANGER("\The [xeno]'s segmented tail starts coiling..."), SPAN_XENODANGER("We begin coiling our tail, aiming towards \the [atom]...")) - xeno.emote("roar") + abduct_user.visible_message(SPAN_XENODANGER("\The [abduct_user]'s segmented tail starts coiling..."), SPAN_XENODANGER("We begin coiling our tail, aiming towards \the [atom]...")) + abduct_user.emote("roar") - var/throw_target_turf = get_step(xeno.loc, facing) + var/throw_target_turf = get_step(abduct_user.loc, facing) - ADD_TRAIT(xeno, TRAIT_IMMOBILIZED, TRAIT_SOURCE_ABILITY("Abduct")) - if(!do_after(xeno, windup, INTERRUPT_NO_NEEDHAND, BUSY_ICON_HOSTILE, numticks = 1)) - to_chat(xeno, SPAN_XENOWARNING("You relax your tail.")) + ADD_TRAIT(abduct_user, TRAIT_IMMOBILIZED, TRAIT_SOURCE_ABILITY("Abduct")) + if(!do_after(abduct_user, windup, INTERRUPT_NO_NEEDHAND, BUSY_ICON_HOSTILE, numticks = 1)) + to_chat(abduct_user, SPAN_XENOWARNING("You relax your tail.")) apply_cooldown() for (var/obj/effect/xenomorph/xeno_telegraph/xenotelegraph in telegraph_atom_list) telegraph_atom_list -= xenotelegraph qdel(xenotelegraph) - REMOVE_TRAIT(xeno, TRAIT_IMMOBILIZED, TRAIT_SOURCE_ABILITY("Abduct")) + REMOVE_TRAIT(abduct_user, TRAIT_IMMOBILIZED, TRAIT_SOURCE_ABILITY("Abduct")) return if(!check_and_use_plasma_owner()) return - REMOVE_TRAIT(xeno, TRAIT_IMMOBILIZED, TRAIT_SOURCE_ABILITY("Abduct")) + REMOVE_TRAIT(abduct_user, TRAIT_IMMOBILIZED, TRAIT_SOURCE_ABILITY("Abduct")) - playsound(get_turf(xeno), 'sound/effects/bang.ogg', 25, 0) - xeno.visible_message(SPAN_XENODANGER("\The [xeno] suddenly uncoils its tail, firing it towards [atom]!"), SPAN_XENODANGER("We uncoil our tail, sending it out towards \the [atom]!")) + playsound(get_turf(abduct_user), 'sound/effects/bang.ogg', 25, 0) + abduct_user.visible_message(SPAN_XENODANGER("\The [abduct_user] suddenly uncoils its tail, firing it towards [atom]!"), SPAN_XENODANGER("We uncoil our tail, sending it out towards \the [atom]!")) var/list/targets = list() for (var/turf/target_turf in turflist) for (var/mob/living/carbon/target in target_turf) - if(!isxeno_human(target) || xeno.can_not_harm(target) || target.is_dead() || target.is_mob_incapacitated(TRUE) || target.mob_size >= MOB_SIZE_BIG) + if(!isxeno_human(target) || abduct_user.can_not_harm(target) || target.is_dead() || target.is_mob_incapacitated(TRUE) || target.mob_size >= MOB_SIZE_BIG) continue targets += target if (LAZYLEN(targets) == 1) - xeno.balloon_alert(xeno, "our tail catches and slows one target!", text_color = "#51a16c") + abduct_user.balloon_alert(abduct_user, "our tail catches and slows one target!", text_color = "#51a16c") else if (LAZYLEN(targets) == 2) - xeno.balloon_alert(xeno, "our tail catches and roots two targets!", text_color = "#51a16c") + abduct_user.balloon_alert(abduct_user, "our tail catches and roots two targets!", text_color = "#51a16c") else if (LAZYLEN(targets) >= 3) - xeno.balloon_alert(xeno, "our tail catches and stuns [LAZYLEN(targets)] targets!", text_color = "#51a16c") + abduct_user.balloon_alert(abduct_user, "our tail catches and stuns [LAZYLEN(targets)] targets!", text_color = "#51a16c") apply_cooldown() for (var/mob/living/carbon/target in targets) - xeno.visible_message(SPAN_XENODANGER("\The [xeno]'s hooked tail coils itself around [target]!"), SPAN_XENODANGER("Our hooked tail coils itself around [target]!")) + abduct_user.visible_message(SPAN_XENODANGER("\The [abduct_user]'s hooked tail coils itself around [target]!"), SPAN_XENODANGER("Our hooked tail coils itself around [target]!")) target.apply_effect(0.2, WEAKEN) if (LAZYLEN(targets) == 1) - new /datum/effects/xeno_slow(target, xeno, , ,25) + new /datum/effects/xeno_slow(target, abduct_user, , ,25) target.apply_effect(1, SLOW) else if (LAZYLEN(targets) == 2) ADD_TRAIT(target, TRAIT_IMMOBILIZED, TRAIT_SOURCE_ABILITY("Abduct")) @@ -340,17 +340,17 @@ var/mob/living/carbon/human/target_human = target target_human.update_xeno_hostile_hud() addtimer(CALLBACK(GLOBAL_PROC, GLOBAL_PROC_REF(unroot_human), target, TRAIT_SOURCE_ABILITY("Abduct")), get_xeno_stun_duration(target, 25)) - to_chat(target, SPAN_XENOHIGHDANGER("[xeno] has pinned you to the ground! You cannot move!")) + to_chat(target, SPAN_XENOHIGHDANGER("[abduct_user] has pinned you to the ground! You cannot move!")) target.set_effect(2, DAZE) else if (LAZYLEN(targets) >= 3) target.apply_effect(get_xeno_stun_duration(target, 1.3), WEAKEN) - to_chat(target, SPAN_XENOHIGHDANGER("You are slammed into the other victims of [xeno]!")) + to_chat(target, SPAN_XENOHIGHDANGER("You are slammed into the other victims of [abduct_user]!")) shake_camera(target, 10, 1) - var/obj/effect/beam/tail_beam = xeno.beam(target, "oppressor_tail", 'icons/effects/beam.dmi', 0.5 SECONDS, 8) + var/obj/effect/beam/tail_beam = abduct_user.beam(target, "oppressor_tail", 'icons/effects/beam.dmi', 0.5 SECONDS, 8) var/image/tail_image = image('icons/effects/status_effects.dmi', "hooked") target.overlays += tail_image @@ -429,12 +429,12 @@ return ..() /datum/action/xeno_action/activable/tail_lash/use_ability(atom/A) - var/mob/living/carbon/xenomorph/X = owner + var/mob/living/carbon/xenomorph/lash_user = owner - if (!istype(X) || !X.check_state() || !action_cooldown_check()) + if (!istype(lash_user) || !lash_user.check_state() || !action_cooldown_check()) return - if(!A || A.layer >= FLY_LAYER || !isturf(X.loc)) + if(!A || A.layer >= FLY_LAYER || !isturf(lash_user.loc)) return if (!check_plasma_owner()) @@ -446,8 +446,8 @@ var/list/telegraph_atom_list = list() // Code to get a 2x3 area of turfs - var/turf/root = get_turf(X) - var/facing = Get_Compass_Dir(X, A) + var/turf/root = get_turf(lash_user) + var/facing = Get_Compass_Dir(lash_user, A) var/turf/infront = get_step(root, facing) var/turf/left = get_step(root, turn(facing, 90)) var/turf/right = get_step(root, turn(facing, -90)) @@ -477,11 +477,11 @@ telegraph_atom_list += new /obj/effect/xenomorph/xeno_telegraph/lash(next_turf, windup) if(!length(target_turfs)) - to_chat(X, SPAN_XENOWARNING("We don't have any room to do our tail lash!")) + to_chat(lash_user, SPAN_XENOWARNING("We don't have any room to do our tail lash!")) return - if(!do_after(X, windup, INTERRUPT_NO_NEEDHAND, BUSY_ICON_HOSTILE)) - to_chat(X, SPAN_XENOWARNING("We cancel our tail lash.")) + if(!do_after(lash_user, windup, INTERRUPT_NO_NEEDHAND, BUSY_ICON_HOSTILE)) + to_chat(lash_user, SPAN_XENOWARNING("We cancel our tail lash.")) for(var/obj/effect/xenomorph/xeno_telegraph/XT in telegraph_atom_list) telegraph_atom_list -= XT @@ -493,25 +493,25 @@ apply_cooldown() - X.visible_message(SPAN_XENODANGER("[X] lashes its tail furiously, hitting everything in front of it!"), SPAN_XENODANGER("We lash our tail furiously, hitting everything in front of us!")) - X.spin_circle() - X.emote("tail") + lash_user.visible_message(SPAN_XENODANGER("[lash_user] lashes its tail furiously, hitting everything in front of it!"), SPAN_XENODANGER("We lash our tail furiously, hitting everything in front of us!")) + lash_user.spin_circle() + lash_user.emote("tail") for (var/turf/T in target_turfs) for (var/mob/living/carbon/H in T) if (H.stat == DEAD) continue - if(!isxeno_human(H) || X.can_not_harm(H)) + if(!isxeno_human(H) || lash_user.can_not_harm(H)) continue if(H.mob_size >= MOB_SIZE_BIG) continue - X.throw_carbon(H, facing, fling_dist) + lash_user.throw_carbon(H, facing, fling_dist) H.apply_effect(get_xeno_stun_duration(H, 0.5), WEAKEN) - new /datum/effects/xeno_slow(H, X, ttl = get_xeno_stun_duration(H, 25)) + new /datum/effects/xeno_slow(H, lash_user, ttl = get_xeno_stun_duration(H, 25)) return ..() @@ -584,27 +584,27 @@ return ..() /datum/action/xeno_action/onclick/prae_dodge/use_ability(atom/target) - var/mob/living/carbon/xenomorph/xeno = owner + var/mob/living/carbon/xenomorph/dodge_user = owner if (!action_cooldown_check()) return - if (!istype(xeno) || !xeno.check_state()) + if (!istype(dodge_user) || !dodge_user.check_state()) return if (!check_and_use_plasma_owner()) return - var/datum/behavior_delegate/praetorian_dancer/behavior = xeno.behavior_delegate + var/datum/behavior_delegate/praetorian_dancer/behavior = dodge_user.behavior_delegate if (!istype(behavior)) return behavior.dodge_activated = TRUE button.icon_state = "template_active" - to_chat(xeno, SPAN_XENOHIGHDANGER("We can now dodge through mobs!")) - xeno.speed_modifier -= speed_buff_amount - xeno.add_temp_pass_flags(PASS_MOB_THRU) - xeno.recalculate_speed() + to_chat(dodge_user, SPAN_XENOHIGHDANGER("We can now dodge through mobs!")) + dodge_user.speed_modifier -= speed_buff_amount + dodge_user.add_temp_pass_flags(PASS_MOB_THRU) + dodge_user.recalculate_speed() addtimer(CALLBACK(src, PROC_REF(remove_effects)), duration) @@ -612,22 +612,22 @@ return ..() /datum/action/xeno_action/onclick/prae_dodge/proc/remove_effects() - var/mob/living/carbon/xenomorph/xeno = owner + var/mob/living/carbon/xenomorph/dodge_remove = owner - if (!istype(xeno)) + if (!istype(dodge_remove)) return - var/datum/behavior_delegate/praetorian_dancer/behavior = xeno.behavior_delegate + var/datum/behavior_delegate/praetorian_dancer/behavior = dodge_remove.behavior_delegate if (!istype(behavior)) return if (behavior.dodge_activated) behavior.dodge_activated = FALSE button.icon_state = "template" - xeno.speed_modifier += speed_buff_amount - xeno.remove_temp_pass_flags(PASS_MOB_THRU) - xeno.recalculate_speed() - to_chat(xeno, SPAN_XENOHIGHDANGER("We can no longer dodge through mobs!")) + dodge_remove.speed_modifier += speed_buff_amount + dodge_remove.remove_temp_pass_flags(PASS_MOB_THRU) + dodge_remove.recalculate_speed() + to_chat(dodge_remove, SPAN_XENOHIGHDANGER("We can no longer dodge through mobs!")) /datum/action/xeno_action/activable/prae_tail_trip/use_ability(atom/target_atom) var/mob/living/carbon/xenomorph/dancer_user = owner @@ -722,8 +722,8 @@ return ..() /datum/action/xeno_action/activable/prae_acid_ball/use_ability(atom/A) - var/mob/living/carbon/xenomorph/X = owner - if (!X.check_state() || X.action_busy) + var/mob/living/carbon/xenomorph/acidball_user = owner + if (!acidball_user.check_state() || acidball_user.action_busy) return if (!action_cooldown_check()) @@ -731,55 +731,55 @@ if (!check_and_use_plasma_owner()) return - var/turf/current_turf = get_turf(X) + var/turf/current_turf = get_turf(acidball_user) if (!current_turf) return - if (!do_after(X, activation_delay, INTERRUPT_ALL | BEHAVIOR_IMMOBILE, BUSY_ICON_HOSTILE)) - to_chat(X, SPAN_XENODANGER("We cancel our acid ball.")) + if (!do_after(acidball_user, activation_delay, INTERRUPT_ALL | BEHAVIOR_IMMOBILE, BUSY_ICON_HOSTILE)) + to_chat(acidball_user, SPAN_XENODANGER("We cancel our acid ball.")) return apply_cooldown() - to_chat(X, SPAN_XENOWARNING("We lob a compressed ball of acid into the air!")) + to_chat(acidball_user, SPAN_XENOWARNING("We lob a compressed ball of acid into the air!")) var/obj/item/explosive/grenade/xeno_acid_grenade/grenade = new /obj/item/explosive/grenade/xeno_acid_grenade - grenade.cause_data = create_cause_data(initial(X.caste_type), X) - grenade.forceMove(get_turf(X)) - grenade.throw_atom(A, 5, SPEED_SLOW, X, TRUE) + grenade.cause_data = create_cause_data(initial(acidball_user.caste_type), acidball_user) + grenade.forceMove(get_turf(acidball_user)) + grenade.throw_atom(A, 5, SPEED_SLOW, acidball_user, TRUE) addtimer(CALLBACK(grenade, TYPE_PROC_REF(/obj/item/explosive, prime)), prime_delay) return ..() /datum/action/xeno_action/activable/warden_heal/use_ability(atom/A) - var/mob/living/carbon/xenomorph/X = owner - if (!istype(X)) + var/mob/living/carbon/xenomorph/wardenbuff_user = owner + if (!istype(wardenbuff_user)) return if (!action_cooldown_check()) return - if(!A || A.layer >= FLY_LAYER || !isturf(X.loc) || !X.check_state(TRUE)) + if(!A || A.layer >= FLY_LAYER || !isturf(wardenbuff_user.loc) || !wardenbuff_user.check_state(TRUE)) return - if (!isxeno(A) || !X.can_not_harm(A)) - to_chat(X, SPAN_XENODANGER("We must target one of our sisters!")) + if (!isxeno(A) || !wardenbuff_user.can_not_harm(A)) + to_chat(wardenbuff_user, SPAN_XENODANGER("We must target one of our sisters!")) return - if (A == X) - to_chat(X, SPAN_XENODANGER("We cannot heal ourself!")) + if (A == wardenbuff_user) + to_chat(wardenbuff_user, SPAN_XENODANGER("We cannot heal ourself!")) return - if (A.z != X.z) - to_chat(X, SPAN_XENODANGER("That Sister is too far away!")) + if (A.z != wardenbuff_user.z) + to_chat(wardenbuff_user, SPAN_XENODANGER("That Sister is too far away!")) return var/mob/living/carbon/xenomorph/targetXeno = A if(targetXeno.stat == DEAD) - to_chat(X, SPAN_WARNING("[targetXeno] is already dead!")) + to_chat(wardenbuff_user, SPAN_WARNING("[targetXeno] is already dead!")) return if (!check_plasma_owner()) @@ -789,12 +789,12 @@ if (curr_effect_type == WARDEN_HEAL_SHIELD) if (SEND_SIGNAL(targetXeno, COMSIG_XENO_PRE_HEAL) & COMPONENT_CANCEL_XENO_HEAL) - to_chat(X, SPAN_XENOWARNING("We cannot bolster the defenses of this xeno!")) + to_chat(wardenbuff_user, SPAN_XENOWARNING("We cannot bolster the defenses of this xeno!")) return var/bonus_shield = 0 - var/datum/behavior_delegate/praetorian_warden/behavior = X.behavior_delegate + var/datum/behavior_delegate/praetorian_warden/behavior = wardenbuff_user.behavior_delegate if (!istype(behavior)) return @@ -807,33 +807,33 @@ var/total_shield_amount = shield_amount + bonus_shield - if (X.observed_xeno != null) - to_chat(X, SPAN_XENOHIGHDANGER("We cannot shield [targetXeno] as effectively over distance!")) + if (wardenbuff_user.observed_xeno != null) + to_chat(wardenbuff_user, SPAN_XENOHIGHDANGER("We cannot shield [targetXeno] as effectively over distance!")) total_shield_amount = total_shield_amount/4 targetXeno.visible_message(SPAN_BOLDNOTICE("[targetXeno]'s exoskeleton shimmers for a fraction of a second."))//marines probably should know if a xeno gets healed else //so both visible messages don't appear at the same time - targetXeno.visible_message(SPAN_BOLDNOTICE("[X] points at [targetXeno], and it shudders as its exoskeleton shimmers for a second!")) //this one is a bit less important than healing and rejuvenating - to_chat(X, SPAN_XENODANGER("We bolster the defenses of [targetXeno]!")) //but i imagine it'll be useful for predators, survivors and for battle flavor - to_chat(targetXeno, SPAN_XENOHIGHDANGER("We feel our defenses bolstered by [X]!")) + targetXeno.visible_message(SPAN_BOLDNOTICE("[wardenbuff_user] points at [targetXeno], and it shudders as its exoskeleton shimmers for a second!")) //this one is a bit less important than healing and rejuvenating + to_chat(wardenbuff_user, SPAN_XENODANGER("We bolster the defenses of [targetXeno]!")) //but i imagine it'll be useful for predators, survivors and for battle flavor + to_chat(targetXeno, SPAN_XENOHIGHDANGER("We feel our defenses bolstered by [wardenbuff_user]!")) targetXeno.add_xeno_shield(total_shield_amount, XENO_SHIELD_SOURCE_WARDEN_PRAE, duration = shield_duration, decay_amount_per_second = shield_decay) targetXeno.xeno_jitter(1 SECONDS) targetXeno.flick_heal_overlay(3 SECONDS, "#FFA800") //D9F500 - X.add_xeno_shield(total_shield_amount*0.5, XENO_SHIELD_SOURCE_WARDEN_PRAE, duration = shield_duration, decay_amount_per_second = shield_decay) // X is the prae itself - X.xeno_jitter(1 SECONDS) - X.flick_heal_overlay(3 SECONDS, "#FFA800") //D9F500 + wardenbuff_user.add_xeno_shield(total_shield_amount*0.5, XENO_SHIELD_SOURCE_WARDEN_PRAE, duration = shield_duration, decay_amount_per_second = shield_decay) // X is the prae itself + wardenbuff_user.xeno_jitter(1 SECONDS) + wardenbuff_user.flick_heal_overlay(3 SECONDS, "#FFA800") //D9F500 use_plasma = TRUE else if (curr_effect_type == WARDEN_HEAL_HP) - if (!X.Adjacent(A)) - to_chat(X, SPAN_XENODANGER("We must be within touching distance of [targetXeno]!")) + if (!wardenbuff_user.Adjacent(A)) + to_chat(wardenbuff_user, SPAN_XENODANGER("We must be within touching distance of [targetXeno]!")) return if (SEND_SIGNAL(targetXeno, COMSIG_XENO_PRE_HEAL) & COMPONENT_CANCEL_XENO_HEAL) - to_chat(X, SPAN_XENOWARNING("We cannot heal this xeno!")) + to_chat(wardenbuff_user, SPAN_XENOWARNING("We cannot heal this xeno!")) return var/bonus_heal = 0 - var/datum/behavior_delegate/praetorian_warden/behavior = X.behavior_delegate + var/datum/behavior_delegate/praetorian_warden/behavior = wardenbuff_user.behavior_delegate if (!istype(behavior)) return @@ -844,39 +844,39 @@ if (!behavior.use_internal_hp_ability(bonus_heal)) bonus_heal = 0 - to_chat(X, SPAN_XENOHIGHDANGER("We heal [targetXeno]!")) - to_chat(targetXeno, SPAN_XENOHIGHDANGER("We are healed by [X]!")) + to_chat(wardenbuff_user, SPAN_XENOHIGHDANGER("We heal [targetXeno]!")) + to_chat(targetXeno, SPAN_XENOHIGHDANGER("We are healed by [wardenbuff_user]!")) //Amount to heal in this cast of the ability var/quantity_healed = heal_amount if(istype(targetXeno.strain, /datum/xeno_strain/warden)) - // Half the healing if warden - quantity_healed = quantity_healed / 2 + quantity_healed = quantity_healed / 2 // Half the healing if warden + else quantity_healed = quantity_healed + bonus_heal targetXeno.gain_health(quantity_healed) - targetXeno.visible_message(SPAN_BOLDNOTICE("[X] places its claws on [targetXeno], and its wounds are quickly sealed!")) //marines probably should know if a xeno gets healed - X.gain_health(heal_amount*0.5 + bonus_heal*0.5) - X.flick_heal_overlay(3 SECONDS, "#00B800") + targetXeno.visible_message(SPAN_BOLDNOTICE("[wardenbuff_user] places its claws on [targetXeno], and its wounds are quickly sealed!")) //marines probably should know if a xeno gets healed + wardenbuff_user.gain_health(heal_amount*0.5 + bonus_heal*0.5) + wardenbuff_user.flick_heal_overlay(3 SECONDS, "#00B800") behavior.transferred_healing += quantity_healed use_plasma = TRUE //it's already hard enough to gauge health without hp showing on the mob targetXeno.flick_heal_overlay(3 SECONDS, "#00B800")//so the visible_message and recovery overlay will warn marines and possibly predators that the xenomorph has been healed! else if (curr_effect_type == WARDEN_HEAL_DEBUFFS) - if (X.observed_xeno != null) - to_chat(X, SPAN_XENOHIGHDANGER("We cannot rejuvenate targets through overwatch!")) + if (wardenbuff_user.observed_xeno != null) + to_chat(wardenbuff_user, SPAN_XENOHIGHDANGER("We cannot rejuvenate targets through overwatch!")) return - var/datum/behavior_delegate/praetorian_warden/behavior = X.behavior_delegate + var/datum/behavior_delegate/praetorian_warden/behavior = wardenbuff_user.behavior_delegate if (!istype(behavior)) return if (!behavior.use_internal_hp_ability(debuff_cost)) return - to_chat(X, SPAN_XENOHIGHDANGER("We rejuvenate [targetXeno]!")) - to_chat(targetXeno, SPAN_XENOHIGHDANGER("We are rejuvenated by [X]!")) - targetXeno.visible_message(SPAN_BOLDNOTICE("[X] points at [targetXeno], and it spasms as it recuperates unnaturally quickly!")) //marines probably should know if a xeno gets rejuvenated + to_chat(wardenbuff_user, SPAN_XENOHIGHDANGER("We rejuvenate [targetXeno]!")) + to_chat(targetXeno, SPAN_XENOHIGHDANGER("We are rejuvenated by [wardenbuff_user]!")) + targetXeno.visible_message(SPAN_BOLDNOTICE("[wardenbuff_user] points at [targetXeno], and it spasms as it recuperates unnaturally quickly!")) //marines probably should know if a xeno gets rejuvenated targetXeno.xeno_jitter(1 SECONDS) //it might confuse them as to why the queen got up half a second after being AT rocketed, and give them feedback on the Praetorian rejuvenating targetXeno.flick_heal_overlay(3 SECONDS, "#F5007A") //therefore making the Praetorian a priority target targetXeno.clear_debuffs() @@ -888,49 +888,49 @@ return ..() /datum/action/xeno_action/activable/prae_retrieve/use_ability(atom/A) - var/mob/living/carbon/xenomorph/X = owner - if(!istype(X)) + var/mob/living/carbon/xenomorph/warden = owner + if(!istype(warden)) return - var/datum/behavior_delegate/praetorian_warden/behavior = X.behavior_delegate + var/datum/behavior_delegate/praetorian_warden/behavior = warden.behavior_delegate if(!istype(behavior)) return - if(X.observed_xeno != null) - to_chat(X, SPAN_XENOHIGHDANGER("We cannot retrieve sisters through overwatch!")) + if(warden.observed_xeno != null) + to_chat(warden, SPAN_XENOHIGHDANGER("We cannot retrieve sisters through overwatch!")) return - if(!isxeno(A) || !X.can_not_harm(A)) - to_chat(X, SPAN_XENODANGER("We must target one of our sisters!")) + if(!isxeno(A) || !warden.can_not_harm(A)) + to_chat(warden, SPAN_XENODANGER("We must target one of our sisters!")) return - if(A == X) - to_chat(X, SPAN_XENODANGER("We cannot retrieve ourself!")) + if(A == warden) + to_chat(warden, SPAN_XENODANGER("We cannot retrieve ourself!")) return - if(!(A in view(7, X))) - to_chat(X, SPAN_XENODANGER("That sister is too far away!")) + if(!(A in view(7, warden))) + to_chat(warden, SPAN_XENODANGER("That sister is too far away!")) return var/mob/living/carbon/xenomorph/targetXeno = A if(targetXeno.anchored) - to_chat(X, SPAN_XENODANGER("That sister cannot move!")) + to_chat(warden, SPAN_XENODANGER("That sister cannot move!")) return if(!(targetXeno.resting || targetXeno.stat == UNCONSCIOUS)) if(targetXeno.mob_size > MOB_SIZE_BIG) - to_chat(X, SPAN_WARNING("[targetXeno] is too big to retrieve while standing up!")) + to_chat(warden, SPAN_WARNING("[targetXeno] is too big to retrieve while standing up!")) return if(targetXeno.stat == DEAD) - to_chat(X, SPAN_WARNING("[targetXeno] is already dead!")) + to_chat(warden, SPAN_WARNING("[targetXeno] is already dead!")) return - if(!action_cooldown_check() || X.action_busy) + if(!action_cooldown_check() || warden.action_busy) return - if(!X.check_state()) + if(!warden.check_state()) return if(!check_plasma_owner()) @@ -945,10 +945,10 @@ // Build our turflist var/list/turf/turflist = list() var/list/telegraph_atom_list = list() - var/facing = get_dir(X, A) - var/reversefacing = get_dir(A, X) - var/turf/T = X.loc - var/turf/temp = X.loc + var/facing = get_dir(warden, A) + var/reversefacing = get_dir(A, warden) + var/turf/T = warden.loc + var/turf/temp = warden.loc for(var/x in 0 to max_distance) temp = get_step(T, facing) if(facing in GLOB.diagonals) // check if it goes through corners @@ -966,7 +966,7 @@ blocked = TRUE break if(blocked) - to_chat(X, SPAN_XENOWARNING("We can't reach [targetXeno] with our resin retrieval hook!")) + to_chat(warden, SPAN_XENOWARNING("We can't reach [targetXeno] with our resin retrieval hook!")) return T = temp @@ -979,34 +979,34 @@ telegraph_atom_list += new /obj/effect/xenomorph/xeno_telegraph/green(T, windup) if(!length(turflist)) - to_chat(X, SPAN_XENOWARNING("We don't have any room to do our retrieve!")) + to_chat(warden, SPAN_XENOWARNING("We don't have any room to do our retrieve!")) return - X.visible_message(SPAN_XENODANGER("[X] prepares to fire its resin retrieval hook at [A]!"), SPAN_XENODANGER("We prepare to fire our resin retrieval hook at [A]!")) - X.emote("roar") + warden.visible_message(SPAN_XENODANGER("[warden] prepares to fire its resin retrieval hook at [A]!"), SPAN_XENODANGER("We prepare to fire our resin retrieval hook at [A]!")) + warden.emote("roar") - var/throw_target_turf = get_step(X.loc, facing) - var/turf/behind_turf = get_step(X.loc, reversefacing) + var/throw_target_turf = get_step(warden.loc, facing) + var/turf/behind_turf = get_step(warden.loc, reversefacing) if(!(behind_turf.density)) throw_target_turf = behind_turf - ADD_TRAIT(X, TRAIT_IMMOBILIZED, TRAIT_SOURCE_ABILITY("Praetorian Retrieve")) + ADD_TRAIT(warden, TRAIT_IMMOBILIZED, TRAIT_SOURCE_ABILITY("Praetorian Retrieve")) if(windup) - if(!do_after(X, windup, INTERRUPT_NO_NEEDHAND, BUSY_ICON_HOSTILE, numticks = 1)) - to_chat(X, SPAN_XENOWARNING("We cancel our retrieve.")) + if(!do_after(warden, windup, INTERRUPT_NO_NEEDHAND, BUSY_ICON_HOSTILE, numticks = 1)) + to_chat(warden, SPAN_XENOWARNING("We cancel our retrieve.")) apply_cooldown() for (var/obj/effect/xenomorph/xeno_telegraph/XT in telegraph_atom_list) telegraph_atom_list -= XT qdel(XT) - REMOVE_TRAIT(X, TRAIT_IMMOBILIZED, TRAIT_SOURCE_ABILITY("Praetorian Retrieve")) + REMOVE_TRAIT(warden, TRAIT_IMMOBILIZED, TRAIT_SOURCE_ABILITY("Praetorian Retrieve")) return - REMOVE_TRAIT(X, TRAIT_IMMOBILIZED, TRAIT_SOURCE_ABILITY("Praetorian Retrieve")) + REMOVE_TRAIT(warden, TRAIT_IMMOBILIZED, TRAIT_SOURCE_ABILITY("Praetorian Retrieve")) - playsound(get_turf(X), 'sound/effects/bang.ogg', 25, 0) + playsound(get_turf(warden), 'sound/effects/bang.ogg', 25, 0) var/successful_retrieve = FALSE for(var/turf/target_turf in turflist) @@ -1015,18 +1015,18 @@ break if(!successful_retrieve) - to_chat(X, SPAN_XENOWARNING("We can't reach [targetXeno] with our resin retrieval hook!")) + to_chat(warden, SPAN_XENOWARNING("We can't reach [targetXeno] with our resin retrieval hook!")) return - to_chat(targetXeno, SPAN_XENOBOLDNOTICE("We are pulled toward [X]!")) + to_chat(targetXeno, SPAN_XENOBOLDNOTICE("We are pulled toward [warden]!")) shake_camera(targetXeno, 10, 1) var/throw_dist = get_dist(throw_target_turf, targetXeno)-1 if(throw_target_turf == behind_turf) throw_dist++ - to_chat(X, SPAN_XENOBOLDNOTICE("We fling [targetXeno] over our head with our resin hook, and they land behind us!")) + to_chat(warden, SPAN_XENOBOLDNOTICE("We fling [targetXeno] over our head with our resin hook, and they land behind us!")) else - to_chat(X, SPAN_XENOBOLDNOTICE("We fling [targetXeno] towards us with our resin hook, and they land in front of us!")) + to_chat(warden, SPAN_XENOBOLDNOTICE("We fling [targetXeno] towards us with our resin hook, and they land in front of us!")) targetXeno.throw_atom(throw_target_turf, throw_dist, SPEED_VERY_FAST, pass_flags = PASS_MOB_THRU) apply_cooldown() return ..() diff --git a/code/modules/mob/living/carbon/xenomorph/abilities/predalien/predalien_abilities.dm b/code/modules/mob/living/carbon/xenomorph/abilities/predalien/predalien_abilities.dm index cc89a86d38e0..a3eaf70437ea 100644 --- a/code/modules/mob/living/carbon/xenomorph/abilities/predalien/predalien_abilities.dm +++ b/code/modules/mob/living/carbon/xenomorph/abilities/predalien/predalien_abilities.dm @@ -2,7 +2,6 @@ /datum/action/xeno_action/onclick/feralrush name = "Feral Rush" action_icon_state = "charge_spit" - ability_name = "toughen up" macro_path = /datum/action/xeno_action/verb/verb_feralrush ability_primacy = XENO_PRIMARY_ACTION_1 action_type = XENO_ACTION_ACTIVATE @@ -21,7 +20,6 @@ /datum/action/xeno_action/onclick/predalien_roar name = "Roar" action_icon_state = "screech" - ability_name = "roar" action_type = XENO_ACTION_CLICK ability_primacy = XENO_PRIMARY_ACTION_2 macro_path = /datum/action/xeno_action/verb/verb_predalien_roar @@ -32,7 +30,6 @@ /datum/action/xeno_action/activable/feral_smash name = "Feral Smash" - ability_name = "Feral Smash" action_icon_state = "lunge" action_type = XENO_ACTION_CLICK macro_path = /datum/action/xeno_action/verb/feral_smash @@ -49,7 +46,6 @@ /datum/action/xeno_action/activable/feralfrenzy name = "Feral Frenzy" action_icon_state = "rav_eviscerate" - ability_name = "Feral Frenzy" action_type = XENO_ACTION_CLICK ability_primacy = XENO_PRIMARY_ACTION_4 macro_path = /datum/action/xeno_action/verb/verb_feralfrenzy diff --git a/code/modules/mob/living/carbon/xenomorph/abilities/queen/queen_abilities.dm b/code/modules/mob/living/carbon/xenomorph/abilities/queen/queen_abilities.dm index ebcd29ded29d..467b2bd1e11d 100644 --- a/code/modules/mob/living/carbon/xenomorph/abilities/queen/queen_abilities.dm +++ b/code/modules/mob/living/carbon/xenomorph/abilities/queen/queen_abilities.dm @@ -20,7 +20,6 @@ /datum/action/xeno_action/activable/queen_heal name = "Heal Xenomorph (600)" action_icon_state = "heal_xeno" - ability_name = "xenomorph heal" plasma_cost = 600 macro_path = /datum/action/xeno_action/verb/verb_heal_xeno ability_primacy = XENO_PRIMARY_ACTION_1 @@ -30,7 +29,6 @@ /datum/action/xeno_action/activable/expand_weeds name = "Expand Weeds (50)" action_icon_state = "plant_weeds" - ability_name = "weed expansion" plasma_cost = 50 ability_primacy = XENO_PRIMARY_ACTION_3 action_type = XENO_ACTION_CLICK @@ -48,13 +46,12 @@ /datum/action/xeno_action/activable/secrete_resin/remote/queen name = "Projected Resin (100)" action_icon_state = "secrete_resin" - ability_name = "projected resin" plasma_cost = 100 - xeno_cooldown = 2 SECONDS + xeno_cooldown = 4 SECONDS ability_primacy = XENO_PRIMARY_ACTION_5 care_about_adjacency = FALSE - build_speed_mod = 1 + build_speed_mod = 1.5 var/boosted = FALSE @@ -75,11 +72,12 @@ boosted = TRUE xeno_cooldown = 0 plasma_cost = 0 + build_speed_mod = 1 RegisterSignal(owner, COMSIG_XENO_THICK_RESIN_BYPASS, PROC_REF(override_secrete_thick_resin)) addtimer(CALLBACK(src, PROC_REF(disable_boost)), boost_duration) /datum/action/xeno_action/activable/secrete_resin/remote/queen/proc/disable_boost() - xeno_cooldown = 2 SECONDS + xeno_cooldown = 4 SECONDS plasma_cost = 100 boosted = FALSE UnregisterSignal(owner, COMSIG_XENO_THICK_RESIN_BYPASS) @@ -128,7 +126,6 @@ /datum/action/xeno_action/activable/place_queen_beacon name = "Place Queen Beacon" action_icon_state = "place_queen_beacon" - ability_name = "place queen beacon" plasma_cost = 0 action_type = XENO_ACTION_CLICK @@ -165,7 +162,6 @@ /datum/action/xeno_action/activable/blockade name = "Place Blockade" action_icon_state = "place_blockade" - ability_name = "place blockade" plasma_cost = 300 action_type = XENO_ACTION_CLICK diff --git a/code/modules/mob/living/carbon/xenomorph/abilities/queen/queen_powers.dm b/code/modules/mob/living/carbon/xenomorph/abilities/queen/queen_powers.dm index 6ef111aed66f..237d1b5622b4 100644 --- a/code/modules/mob/living/carbon/xenomorph/abilities/queen/queen_powers.dm +++ b/code/modules/mob/living/carbon/xenomorph/abilities/queen/queen_powers.dm @@ -185,6 +185,11 @@ to_chat(xeno, SPAN_XENOWARNING("These weeds don't belong to your hive! You can't grow an ovipositor here.")) return + var/area/current_area = get_area(xeno) + if(current_area.unoviable_timer) + to_chat(xeno, SPAN_XENOWARNING("This area is not right for you to grow an ovipositor in.")) + return + if(!xeno.check_alien_construction(current_turf)) return diff --git a/code/modules/mob/living/carbon/xenomorph/abilities/ravager/ravager_abilities.dm b/code/modules/mob/living/carbon/xenomorph/abilities/ravager/ravager_abilities.dm index 53ad3b377aec..c676fff61826 100644 --- a/code/modules/mob/living/carbon/xenomorph/abilities/ravager/ravager_abilities.dm +++ b/code/modules/mob/living/carbon/xenomorph/abilities/ravager/ravager_abilities.dm @@ -3,7 +3,7 @@ /datum/action/xeno_action/activable/pounce/charge name = "Charge" action_icon_state = "charge" - ability_name = "charge" + action_text = "charge" macro_path = /datum/action/xeno_action/verb/verb_charge_rav action_type = XENO_ACTION_CLICK ability_primacy = XENO_PRIMARY_ACTION_1 @@ -21,7 +21,6 @@ /datum/action/xeno_action/onclick/empower name = "Empower" action_icon_state = "empower" - ability_name = "empower" macro_path = /datum/action/xeno_action/verb/verb_empower action_type = XENO_ACTION_CLICK ability_primacy = XENO_PRIMARY_ACTION_2 @@ -42,7 +41,6 @@ // Rav "Scissor Cut" /datum/action/xeno_action/activable/scissor_cut name = "Scissor Cut" - ability_name = "scissor cut" action_icon_state = "rav_scissor_cut" macro_path = /datum/action/xeno_action/verb/verb_scissorcut action_type = XENO_ACTION_CLICK @@ -60,7 +58,6 @@ /datum/action/xeno_action/onclick/apprehend name = "Apprehend" action_icon_state = "rav_enrage" - ability_name = "apprehend" macro_path = /datum/action/xeno_action/verb/verb_apprehend action_type = XENO_ACTION_CLICK ability_primacy = XENO_PRIMARY_ACTION_1 @@ -75,7 +72,6 @@ /datum/action/xeno_action/activable/clothesline name = "Clothesline" action_icon_state = "rav_clothesline" - ability_name = "clothesline" macro_path = /datum/action/xeno_action/verb/verb_clothesline action_type = XENO_ACTION_CLICK ability_primacy = XENO_PRIMARY_ACTION_2 @@ -92,7 +88,6 @@ /datum/action/xeno_action/activable/eviscerate name = "Eviscerate" action_icon_state = "rav_eviscerate" - ability_name = "eviscerate" macro_path = /datum/action/xeno_action/verb/verb_eviscerate action_type = XENO_ACTION_ACTIVATE ability_primacy = XENO_PRIMARY_ACTION_3 @@ -113,7 +108,6 @@ /datum/action/xeno_action/onclick/spike_shield name = "Spike Shield (150 shards)" action_icon_state = "rav_shard_shield" - ability_name = "spike shield" macro_path = /datum/action/xeno_action/verb/verb_spike_shield action_type = XENO_ACTION_CLICK ability_primacy = XENO_PRIMARY_ACTION_1 @@ -131,7 +125,6 @@ /datum/action/xeno_action/activable/rav_spikes name = "Fire Spikes (75 shards)" action_icon_state = "rav_spike" - ability_name = "fire spikes" macro_path = /datum/action/xeno_action/verb/verb_fire_spikes action_type = XENO_ACTION_CLICK ability_primacy = XENO_PRIMARY_ACTION_2 @@ -145,7 +138,6 @@ /datum/action/xeno_action/onclick/spike_shed name = "Spike Shed (50 shards)" action_icon_state = "rav_shard_shed" - ability_name = "spike shed" macro_path = /datum/action/xeno_action/verb/verb_shed_spikes action_type = XENO_ACTION_CLICK ability_primacy = XENO_PRIMARY_ACTION_3 diff --git a/code/modules/mob/living/carbon/xenomorph/abilities/runner/runner_abilities.dm b/code/modules/mob/living/carbon/xenomorph/abilities/runner/runner_abilities.dm index 2880dd15eb5a..528dc9767a13 100644 --- a/code/modules/mob/living/carbon/xenomorph/abilities/runner/runner_abilities.dm +++ b/code/modules/mob/living/carbon/xenomorph/abilities/runner/runner_abilities.dm @@ -1,7 +1,6 @@ /datum/action/xeno_action/activable/pounce/runner name = "Pounce" action_icon_state = "pounce" - ability_name = "pounce" macro_path = /datum/action/xeno_action/verb/verb_pounce action_type = XENO_ACTION_CLICK ability_primacy = XENO_PRIMARY_ACTION_1 @@ -24,7 +23,6 @@ /datum/action/xeno_action/activable/runner_skillshot name = "Bone Spur" action_icon_state = "runner_bonespur" - ability_name = "bone spur" macro_path = /datum/action/xeno_action/verb/verb_runner_bonespurs action_type = XENO_ACTION_CLICK ability_primacy = XENO_PRIMARY_ACTION_2 @@ -36,7 +34,6 @@ /datum/action/xeno_action/activable/acider_acid name = "Corrosive Acid" action_icon_state = "corrosive_acid" - ability_name = "acider acid" var/acid_type = /obj/effect/xenomorph/acid/strong macro_path = /datum/action/xeno_action/verb/verb_acider_acid ability_primacy = XENO_PRIMARY_ACTION_1 @@ -46,7 +43,6 @@ /datum/action/xeno_action/activable/acider_for_the_hive name = "For the Hive!" action_icon_state = "screech" - ability_name = "for the hive" macro_path = /datum/action/xeno_action/verb/verb_acider_sacrifice action_type = XENO_ACTION_CLICK ability_primacy = XENO_PRIMARY_ACTION_2 diff --git a/code/modules/mob/living/carbon/xenomorph/abilities/sentinel/sentinel_abilities.dm b/code/modules/mob/living/carbon/xenomorph/abilities/sentinel/sentinel_abilities.dm index fdd1164c1479..00b20e4f64f7 100644 --- a/code/modules/mob/living/carbon/xenomorph/abilities/sentinel/sentinel_abilities.dm +++ b/code/modules/mob/living/carbon/xenomorph/abilities/sentinel/sentinel_abilities.dm @@ -2,29 +2,26 @@ /datum/action/xeno_action/activable/slowing_spit name = "Slowing Spit" action_icon_state = "xeno_spit" - ability_name = "slowing spit" macro_path = /datum/action/xeno_action/verb/verb_slowing_spit action_type = XENO_ACTION_CLICK ability_primacy = XENO_PRIMARY_ACTION_1 - xeno_cooldown = 1.5 SECONDS + xeno_cooldown = 2 SECONDS plasma_cost = 20 // Scatterspit /datum/action/xeno_action/activable/scattered_spit name = "Scattered Spit" action_icon_state = "acid_shotgun" - ability_name = "scattered spit" macro_path = /datum/action/xeno_action/verb/verb_scattered_spit action_type = XENO_ACTION_CLICK ability_primacy = XENO_PRIMARY_ACTION_2 - xeno_cooldown = 8 SECONDS + xeno_cooldown = 6 SECONDS plasma_cost = 30 // Paralyzing slash /datum/action/xeno_action/onclick/paralyzing_slash name = "Paralyzing Slash" action_icon_state = "lurker_inject_neuro" - ability_name = "paralyzing slash" macro_path = /datum/action/xeno_action/verb/verb_paralyzing_slash action_type = XENO_ACTION_CLICK ability_primacy = XENO_PRIMARY_ACTION_3 diff --git a/code/modules/mob/living/carbon/xenomorph/abilities/sentinel/sentinel_powers.dm b/code/modules/mob/living/carbon/xenomorph/abilities/sentinel/sentinel_powers.dm index 1ed8863c231a..82be70d02231 100644 --- a/code/modules/mob/living/carbon/xenomorph/abilities/sentinel/sentinel_powers.dm +++ b/code/modules/mob/living/carbon/xenomorph/abilities/sentinel/sentinel_powers.dm @@ -1,13 +1,13 @@ /datum/action/xeno_action/activable/slowing_spit/use_ability(atom/target) - var/mob/living/carbon/xenomorph/xeno = owner - if(!xeno.check_state()) + var/mob/living/carbon/xenomorph/slowspit_user = owner + if(!slowspit_user.check_state()) return if(!action_cooldown_check()) to_chat(src, SPAN_WARNING("We must wait for our spit glands to refill.")) return - var/turf/current_turf = get_turf(xeno) + var/turf/current_turf = get_turf(slowspit_user) if(!current_turf) return @@ -15,31 +15,31 @@ if (!check_and_use_plasma_owner()) return - xeno.visible_message(SPAN_XENOWARNING("[xeno] spits at [target]!"), \ + slowspit_user.visible_message(SPAN_XENOWARNING("[slowspit_user] spits at [target]!"), \ SPAN_XENOWARNING("You spit at [target]!") ) var/sound_to_play = pick(1, 2) == 1 ? 'sound/voice/alien_spitacid.ogg' : 'sound/voice/alien_spitacid2.ogg' - playsound(xeno.loc, sound_to_play, 25, 1) + playsound(slowspit_user.loc, sound_to_play, 25, 1) - xeno.ammo = GLOB.ammo_list[/datum/ammo/xeno/toxin] - var/obj/projectile/projectile = new /obj/projectile(current_turf, create_cause_data(initial(xeno.caste_type), xeno)) - projectile.generate_bullet(xeno.ammo) - projectile.permutated += xeno - projectile.def_zone = xeno.get_limbzone_target() - projectile.fire_at(target, xeno, xeno, xeno.ammo.max_range, xeno.ammo.shell_speed) + slowspit_user.ammo = GLOB.ammo_list[/datum/ammo/xeno/toxin] + var/obj/projectile/projectile = new /obj/projectile(current_turf, create_cause_data(initial(slowspit_user.caste_type), slowspit_user)) + projectile.generate_bullet(slowspit_user.ammo) + projectile.permutated += slowspit_user + projectile.def_zone = slowspit_user.get_limbzone_target() + projectile.fire_at(target, slowspit_user, slowspit_user, slowspit_user.ammo.max_range, slowspit_user.ammo.shell_speed) apply_cooldown() return ..() /datum/action/xeno_action/activable/scattered_spit/use_ability(atom/target) - var/mob/living/carbon/xenomorph/xeno = owner - if(!xeno.check_state()) + var/mob/living/carbon/xenomorph/scatterspit_user = owner + if(!scatterspit_user.check_state()) return if(!action_cooldown_check()) to_chat(src, SPAN_WARNING("We must wait for your spit glands to refill.")) return - var/turf/current_turf = get_turf(xeno) + var/turf/current_turf = get_turf(scatterspit_user) if(!current_turf) return @@ -47,25 +47,25 @@ if (!check_and_use_plasma_owner()) return - xeno.visible_message(SPAN_XENOWARNING("[xeno] spits at [target]!"), \ + scatterspit_user.visible_message(SPAN_XENOWARNING("[scatterspit_user] spits at [target]!"), \ SPAN_XENOWARNING("You spit at [target]!") ) var/sound_to_play = pick(1, 2) == 1 ? 'sound/voice/alien_spitacid.ogg' : 'sound/voice/alien_spitacid2.ogg' - playsound(xeno.loc, sound_to_play, 25, 1) + playsound(scatterspit_user.loc, sound_to_play, 25, 1) - xeno.ammo = GLOB.ammo_list[/datum/ammo/xeno/toxin/shotgun] - var/obj/projectile/projectile = new /obj/projectile(current_turf, create_cause_data(initial(xeno.caste_type), xeno)) - projectile.generate_bullet(xeno.ammo) - projectile.permutated += xeno - projectile.def_zone = xeno.get_limbzone_target() - projectile.fire_at(target, xeno, xeno, xeno.ammo.max_range, xeno.ammo.shell_speed) + scatterspit_user.ammo = GLOB.ammo_list[/datum/ammo/xeno/toxin/shotgun] + var/obj/projectile/projectile = new /obj/projectile(current_turf, create_cause_data(initial(scatterspit_user.caste_type), scatterspit_user)) + projectile.generate_bullet(scatterspit_user.ammo) + projectile.permutated += scatterspit_user + projectile.def_zone = scatterspit_user.get_limbzone_target() + projectile.fire_at(target, scatterspit_user, scatterspit_user, scatterspit_user.ammo.max_range, scatterspit_user.ammo.shell_speed) apply_cooldown() return ..() /datum/action/xeno_action/onclick/paralyzing_slash/use_ability(atom/target) - var/mob/living/carbon/xenomorph/xeno = owner + var/mob/living/carbon/xenomorph/paraslash_user = owner - if (!istype(xeno)) + if (!istype(paraslash_user)) return if (!action_cooldown_check()) @@ -74,11 +74,11 @@ if (!check_and_use_plasma_owner()) return - var/datum/behavior_delegate/sentinel_base/behavior = xeno.behavior_delegate + var/datum/behavior_delegate/sentinel_base/behavior = paraslash_user.behavior_delegate if (istype(behavior)) behavior.next_slash_buffed = TRUE - to_chat(xeno, SPAN_XENOHIGHDANGER("Our next slash will apply neurotoxin!")) + to_chat(paraslash_user, SPAN_XENOHIGHDANGER("Our next slash will apply neurotoxin!")) button.icon_state = "template_active" addtimer(CALLBACK(src, PROC_REF(unbuff_slash)), buff_duration) @@ -87,15 +87,15 @@ return ..() /datum/action/xeno_action/onclick/paralyzing_slash/proc/unbuff_slash() - var/mob/living/carbon/xenomorph/xeno = owner - if (!istype(xeno)) + var/mob/living/carbon/xenomorph/unbuffslash_user = owner + if (!istype(unbuffslash_user)) return - var/datum/behavior_delegate/sentinel_base/behavior = xeno.behavior_delegate + var/datum/behavior_delegate/sentinel_base/behavior = unbuffslash_user.behavior_delegate if (istype(behavior)) // In case slash has already landed if (!behavior.next_slash_buffed) return behavior.next_slash_buffed = FALSE - to_chat(xeno, SPAN_XENODANGER("We have waited too long, our slash will no longer apply neurotoxin!")) + to_chat(unbuffslash_user, SPAN_XENODANGER("We have waited too long, our slash will no longer apply neurotoxin!")) button.icon_state = "template" diff --git a/code/modules/mob/living/carbon/xenomorph/abilities/spitter/spitter_abilities.dm b/code/modules/mob/living/carbon/xenomorph/abilities/spitter/spitter_abilities.dm index 20febc22c4a4..82ce8c160c0d 100644 --- a/code/modules/mob/living/carbon/xenomorph/abilities/spitter/spitter_abilities.dm +++ b/code/modules/mob/living/carbon/xenomorph/abilities/spitter/spitter_abilities.dm @@ -4,7 +4,6 @@ /datum/action/xeno_action/activable/xeno_spit/spitter name = "Spit Acid" action_icon_state = "xeno_spit" - ability_name = "spit acid" macro_path = /datum/action/xeno_action/verb/verb_xeno_spit action_type = XENO_ACTION_CLICK ability_primacy = XENO_PRIMARY_ACTION_1 @@ -14,7 +13,6 @@ /datum/action/xeno_action/onclick/charge_spit name = "Charge Spit" action_icon_state = "charge_spit" - ability_name = "charge spit" macro_path = /datum/action/xeno_action/verb/verb_charge_spit ability_primacy = XENO_PRIMARY_ACTION_2 action_type = XENO_ACTION_ACTIVATE diff --git a/code/modules/mob/living/carbon/xenomorph/abilities/warrior/warrior_abilities.dm b/code/modules/mob/living/carbon/xenomorph/abilities/warrior/warrior_abilities.dm index 4f40e1914540..2e175bbc2482 100644 --- a/code/modules/mob/living/carbon/xenomorph/abilities/warrior/warrior_abilities.dm +++ b/code/modules/mob/living/carbon/xenomorph/abilities/warrior/warrior_abilities.dm @@ -2,7 +2,6 @@ /datum/action/xeno_action/activable/fling name = "Fling" action_icon_state = "fling" - ability_name = "Fling" macro_path = /datum/action/xeno_action/verb/verb_fling action_type = XENO_ACTION_CLICK ability_primacy = XENO_PRIMARY_ACTION_3 @@ -18,7 +17,6 @@ /datum/action/xeno_action/activable/lunge name = "Lunge" action_icon_state = "lunge" - ability_name = "lunge" macro_path = /datum/action/xeno_action/verb/verb_lunge action_type = XENO_ACTION_CLICK ability_primacy = XENO_PRIMARY_ACTION_2 @@ -32,7 +30,6 @@ /datum/action/xeno_action/activable/warrior_punch name = "Punch" action_icon_state = "punch" - ability_name = "punch" macro_path = /datum/action/xeno_action/verb/verb_punch action_type = XENO_ACTION_CLICK ability_primacy = XENO_PRIMARY_ACTION_1 diff --git a/code/modules/mob/living/carbon/xenomorph/abilities/warrior/warrior_powers.dm b/code/modules/mob/living/carbon/xenomorph/abilities/warrior/warrior_powers.dm index bbb4a584e2a5..e77c26e18ee7 100644 --- a/code/modules/mob/living/carbon/xenomorph/abilities/warrior/warrior_powers.dm +++ b/code/modules/mob/living/carbon/xenomorph/abilities/warrior/warrior_powers.dm @@ -1,23 +1,23 @@ /datum/action/xeno_action/activable/lunge/use_ability(atom/affected_atom) - var/mob/living/carbon/xenomorph/xeno = owner + var/mob/living/carbon/xenomorph/lunge_user = owner if (!action_cooldown_check()) if(twitch_message_cooldown < world.time ) - xeno.visible_message(SPAN_XENOWARNING("[xeno]'s claws twitch."), SPAN_XENOWARNING("Our claws twitch as we try to lunge but lack the strength. Wait a moment to try again.")) + lunge_user.visible_message(SPAN_XENOWARNING("[lunge_user]'s claws twitch."), SPAN_XENOWARNING("Our claws twitch as we try to lunge but lack the strength. Wait a moment to try again.")) twitch_message_cooldown = world.time + 5 SECONDS return //this gives a little feedback on why your lunge didn't hit other than the lunge button going grey. Plus, it might spook marines that almost got lunged if they know why the message appeared, and extra spookiness is always good. if (!affected_atom) return - if (!isturf(xeno.loc)) - to_chat(xeno, SPAN_XENOWARNING("We can't lunge from here!")) + if (!isturf(lunge_user.loc)) + to_chat(lunge_user, SPAN_XENOWARNING("We can't lunge from here!")) return - if (!xeno.check_state() || xeno.agility) + if (!lunge_user.check_state() || lunge_user.agility) return - if(xeno.can_not_harm(affected_atom) || !ismob(affected_atom)) + if(lunge_user.can_not_harm(affected_atom) || !ismob(affected_atom)) apply_cooldown_override(click_miss_cooldown) return @@ -31,32 +31,32 @@ apply_cooldown() ..() - xeno.visible_message(SPAN_XENOWARNING("[xeno] lunges towards [carbon]!"), SPAN_XENOWARNING("We lunge at [carbon]!")) + lunge_user.visible_message(SPAN_XENOWARNING("[lunge_user] lunges towards [carbon]!"), SPAN_XENOWARNING("We lunge at [carbon]!")) - xeno.throw_atom(get_step_towards(affected_atom, xeno), grab_range, SPEED_FAST, xeno) + lunge_user.throw_atom(get_step_towards(affected_atom, lunge_user), grab_range, SPEED_FAST, lunge_user) - if (xeno.Adjacent(carbon)) - xeno.start_pulling(carbon,1) + if (lunge_user.Adjacent(carbon)) + lunge_user.start_pulling(carbon,1) if(ishuman(carbon)) INVOKE_ASYNC(carbon, TYPE_PROC_REF(/mob, emote), "scream") else - xeno.visible_message(SPAN_XENOWARNING("[xeno]'s claws twitch."), SPAN_XENOWARNING("Our claws twitch as we lunge but are unable to grab onto our target. Wait a moment to try again.")) + lunge_user.visible_message(SPAN_XENOWARNING("[lunge_user]'s claws twitch."), SPAN_XENOWARNING("Our claws twitch as we lunge but are unable to grab onto our target. Wait a moment to try again.")) return TRUE /datum/action/xeno_action/activable/fling/use_ability(atom/affected_atom) - var/mob/living/carbon/xenomorph/xeno = owner + var/mob/living/carbon/xenomorph/fling_user = owner if (!action_cooldown_check()) return - if (!isxeno_human(affected_atom) || xeno.can_not_harm(affected_atom)) + if (!isxeno_human(affected_atom) || fling_user.can_not_harm(affected_atom)) return - if (!xeno.check_state() || xeno.agility) + if (!fling_user.check_state() || fling_user.agility) return - if (!xeno.Adjacent(affected_atom)) + if (!fling_user.Adjacent(affected_atom)) return var/mob/living/carbon/carbon = affected_atom @@ -66,17 +66,17 @@ if(HAS_TRAIT(carbon, TRAIT_NESTED)) return - if(carbon == xeno.pulling) - xeno.stop_pulling() + if(carbon == fling_user.pulling) + fling_user.stop_pulling() if(carbon.mob_size >= MOB_SIZE_BIG) - to_chat(xeno, SPAN_XENOWARNING("[carbon] is too big for us to fling!")) + to_chat(fling_user, SPAN_XENOWARNING("[carbon] is too big for us to fling!")) return if (!check_and_use_plasma_owner()) return - xeno.visible_message(SPAN_XENOWARNING("[xeno] effortlessly flings [carbon] to the side!"), SPAN_XENOWARNING("We effortlessly fling [carbon] to the side!")) + fling_user.visible_message(SPAN_XENOWARNING("[fling_user] effortlessly flings [carbon] to the side!"), SPAN_XENOWARNING("We effortlessly fling [carbon] to the side!")) playsound(carbon,'sound/weapons/alien_claw_block.ogg', 75, 1) if(stun_power) carbon.Stun(get_xeno_stun_duration(carbon, stun_power)) @@ -85,39 +85,39 @@ if(slowdown) if(carbon.slowed < slowdown) carbon.apply_effect(slowdown, SLOW) - carbon.last_damage_data = create_cause_data(initial(xeno.caste_type), xeno) + carbon.last_damage_data = create_cause_data(initial(fling_user.caste_type), fling_user) - var/facing = get_dir(xeno, carbon) + var/facing = get_dir(fling_user, carbon) // Hmm today I will kill a marine while looking away from them - xeno.face_atom(carbon) - xeno.animation_attack_on(carbon) - xeno.flick_attack_overlay(carbon, "disarm") - xeno.throw_carbon(carbon, facing, fling_distance, SPEED_VERY_FAST, shake_camera = TRUE, immobilize = TRUE) + fling_user.face_atom(carbon) + fling_user.animation_attack_on(carbon) + fling_user.flick_attack_overlay(carbon, "disarm") + fling_user.throw_carbon(carbon, facing, fling_distance, SPEED_VERY_FAST, shake_camera = TRUE, immobilize = TRUE) apply_cooldown() return ..() /datum/action/xeno_action/activable/warrior_punch/use_ability(atom/affected_atom) - var/mob/living/carbon/xenomorph/xeno = owner + var/mob/living/carbon/xenomorph/punch_user = owner if (!action_cooldown_check()) return - if (!isxeno_human(affected_atom) || xeno.can_not_harm(affected_atom)) + if (!isxeno_human(affected_atom) || punch_user.can_not_harm(affected_atom)) return - if (!xeno.check_state() || xeno.agility) + if (!punch_user.check_state() || punch_user.agility) return - var/distance = get_dist(xeno, affected_atom) + var/distance = get_dist(punch_user, affected_atom) if (distance > 2) return var/mob/living/carbon/carbon = affected_atom - if (!xeno.Adjacent(carbon)) + if (!punch_user.Adjacent(carbon)) return if(carbon.stat == DEAD) @@ -125,7 +125,7 @@ if(HAS_TRAIT(carbon, TRAIT_NESTED)) return - var/obj/limb/target_limb = carbon.get_limb(check_zone(xeno.zone_selected)) + var/obj/limb/target_limb = carbon.get_limb(check_zone(punch_user.zone_selected)) if (ishuman(carbon) && (!target_limb || (target_limb.status & LIMB_DESTROYED))) target_limb = carbon.get_limb("chest") @@ -133,9 +133,9 @@ if (!check_and_use_plasma_owner()) return - carbon.last_damage_data = create_cause_data(initial(xeno.caste_type), xeno) + carbon.last_damage_data = create_cause_data(initial(punch_user.caste_type), punch_user) - xeno.visible_message(SPAN_XENOWARNING("[xeno] hits [carbon] in the [target_limb ? target_limb.display_name : "chest"] with a devastatingly powerful punch!"), \ + punch_user.visible_message(SPAN_XENOWARNING("[punch_user] hits [carbon] in the [target_limb ? target_limb.display_name : "chest"] with a devastatingly powerful punch!"), \ SPAN_XENOWARNING("We hit [carbon] in the [target_limb ? target_limb.display_name : "chest"] with a devastatingly powerful punch!")) var/sound = pick('sound/weapons/punch1.ogg','sound/weapons/punch2.ogg','sound/weapons/punch3.ogg','sound/weapons/punch4.ogg') playsound(carbon, sound, 50, 1) @@ -144,7 +144,7 @@ return ..() /datum/action/xeno_action/activable/warrior_punch/proc/do_base_warrior_punch(mob/living/carbon/carbon, obj/limb/target_limb) - var/mob/living/carbon/xenomorph/xeno = owner + var/mob/living/carbon/xenomorph/warrior = owner var/damage = rand(base_damage, base_damage + damage_variance) if(ishuman(carbon)) @@ -166,8 +166,8 @@ carbon.apply_armoured_damage(get_xeno_damage_slash(carbon, damage), ARMOR_MELEE, BRUTE, target_limb ? target_limb.name : "chest") // Hmm today I will kill a marine while looking away from them - xeno.face_atom(carbon) - xeno.animation_attack_on(carbon) - xeno.flick_attack_overlay(carbon, "punch") + warrior.face_atom(carbon) + warrior.animation_attack_on(carbon) + warrior.flick_attack_overlay(carbon, "punch") shake_camera(carbon, 2, 1) - step_away(carbon, xeno, 2) + step_away(carbon, warrior, 2) diff --git a/code/modules/mob/living/carbon/xenomorph/abilities/xeno_action.dm b/code/modules/mob/living/carbon/xenomorph/abilities/xeno_action.dm index 3371e1298233..e5cc130a92ec 100644 --- a/code/modules/mob/living/carbon/xenomorph/abilities/xeno_action.dm +++ b/code/modules/mob/living/carbon/xenomorph/abilities/xeno_action.dm @@ -1,7 +1,5 @@ /datum/action/xeno_action icon_file = 'icons/mob/hud/actions_xeno.dmi' - var/ability_name // Our name - var/plasma_cost = 0 var/macro_path var/action_type = XENO_ACTION_CLICK // Determines how macros interact with this action. Defines are in xeno.dm in the defines folder. @@ -63,10 +61,10 @@ /datum/action/xeno_action/proc/track_xeno_ability_stats() if(!owner) return - var/mob/living/carbon/xenomorph/X = owner - if (ability_name && GLOB.round_statistics) - GLOB.round_statistics.track_ability_usage(ability_name) - X.track_ability_usage(ability_name, X.caste_type) + var/mob/living/carbon/xenomorph/xeno = owner + if (name && GLOB.round_statistics) + GLOB.round_statistics.track_ability_usage(name) + xeno.track_ability_usage(name, xeno.caste_type) /datum/action/xeno_action/can_use_action() if(!owner) @@ -169,13 +167,13 @@ return // We clicked the same ability in a very short time if(xeno.client && xeno.client.prefs && xeno.client.prefs.toggle_prefs & TOGGLE_ABILITY_DEACTIVATION_OFF) return - to_chat(xeno, "You will no longer use [ability_name] with [xeno.get_ability_mouse_name()].") + to_chat(xeno, "You will no longer use [name] with [xeno.get_ability_mouse_name()].") button.icon_state = "template" xeno.set_selected_ability(null) if(charge_time) stop_charging_ability() else - to_chat(xeno, "You will now use [ability_name] with [xeno.get_ability_mouse_name()].") + to_chat(xeno, "You will now use [name] with [xeno.get_ability_mouse_name()].") if(xeno.selected_ability) xeno.selected_ability.action_deselect() if(xeno.selected_ability.charge_time) diff --git a/code/modules/mob/living/carbon/xenomorph/castes/Carrier.dm b/code/modules/mob/living/carbon/xenomorph/castes/Carrier.dm index d46bfce6bf71..a2a1a29db2c2 100644 --- a/code/modules/mob/living/carbon/xenomorph/castes/Carrier.dm +++ b/code/modules/mob/living/carbon/xenomorph/castes/Carrier.dm @@ -215,7 +215,7 @@ if(huggers_max > 0 && huggers_cur < huggers_max) if(F.stat != DEAD && !F.sterile) huggers_cur++ - to_chat(src, SPAN_NOTICE("We store the facehugger and carry it for safekeeping. Now sheltering: [huggers_cur] / [huggers_max].")) + to_chat(src, SPAN_NOTICE("We take a facehugger and carry it for safekeeping. Now sheltering: [huggers_cur] / [huggers_max].")) update_icons() qdel(F) else @@ -237,9 +237,9 @@ huggers_cur += huggers_to_transfer morpher.stored_huggers -= huggers_to_transfer if(huggers_to_transfer == 1) - to_chat(src, SPAN_NOTICE("We store one facehugger and carry it for safekeeping. Now sheltering: [huggers_cur] / [huggers_max].")) + to_chat(src, SPAN_NOTICE("We take one facehugger and carry it for safekeeping. Now sheltering: [huggers_cur] / [huggers_max].")) else - to_chat(src, SPAN_NOTICE("We store [huggers_to_transfer] facehuggers and carry them for safekeeping. Now sheltering: [huggers_cur] / [huggers_max].")) + to_chat(src, SPAN_NOTICE("We take [huggers_to_transfer] facehuggers and carry them for safekeeping. Now sheltering: [huggers_cur] / [huggers_max].")) update_icons() else to_chat(src, SPAN_WARNING("We can't carry more facehuggers on you.")) @@ -350,11 +350,15 @@ store_egg(E) return + if(istype(T, /obj/effect/alien/resin/special/eggmorph)) + store_eggs_into_egg_morpher(T) + return + var/obj/item/xeno_egg/E = get_active_hand() if(!E) //empty active hand //if no hugger in active hand, we take one from our storage if(eggs_cur <= 0) - to_chat(src, SPAN_WARNING("We don't have any egg to use!")) + to_chat(src, SPAN_WARNING("We don't have any eggs to use!")) return E = new(src, hivenumber) eggs_cur-- @@ -367,6 +371,42 @@ to_chat(src, SPAN_WARNING("We need an empty hand to grab one of our stored eggs!")) return +/mob/living/carbon/xenomorph/carrier/proc/store_eggs_into_egg_morpher(obj/effect/alien/resin/special/eggmorph/morpher) + if(action_busy) + return FALSE + + if(!morpher_safety_checks(morpher)) + return + + visible_message(SPAN_XENOWARNING("[src] starts placing facehuggers into [morpher] from their eggs..."), SPAN_XENONOTICE("We start placing children into [morpher] from our eggs...")) + while(eggs_cur > 0) + if(!morpher_safety_checks(morpher)) + return + + if(!do_after(src, 0.75 SECONDS, INTERRUPT_ALL, BUSY_ICON_GENERIC)) + to_chat(src, SPAN_WARNING("We stop filling [morpher] with our children.")) + return + + playsound(src.loc, "sound/effects/alien_egg_move.ogg", 20, TRUE) + morpher.stored_huggers = min(morpher.huggers_max_amount, morpher.stored_huggers + 1) + eggs_cur-- + to_chat(src, SPAN_XENONOTICE("We slide one of the children out of an egg and place them into [morpher]. Now sheltering: [eggs_cur] / [eggs_max].")) + +/mob/living/carbon/xenomorph/carrier/proc/morpher_safety_checks(obj/effect/alien/resin/special/eggmorph/morpher) + if(morpher.linked_hive && (morpher.linked_hive.hivenumber != hivenumber)) + to_chat(src, SPAN_WARNING("That egg morpher is tainted!")) + return FALSE + + if(morpher.stored_huggers == morpher.huggers_max_amount) + to_chat(src, SPAN_WARNING("[morpher] is full of children!")) + return FALSE + + if(eggs_cur < 1) + to_chat(src, SPAN_WARNING("We don't have any eggs left!")) + return FALSE + + return TRUE + /mob/living/carbon/xenomorph/carrier/attack_ghost(mob/dead/observer/user) . = ..() //Do a view printout as needed just in case the observer doesn't want to join as a Hugger but wants info join_as_facehugger_from_this(user) diff --git a/code/modules/mob/living/carbon/xenomorph/castes/Facehugger.dm b/code/modules/mob/living/carbon/xenomorph/castes/Facehugger.dm index 17ec90a96bda..43c5b78514af 100644 --- a/code/modules/mob/living/carbon/xenomorph/castes/Facehugger.dm +++ b/code/modules/mob/living/carbon/xenomorph/castes/Facehugger.dm @@ -124,7 +124,7 @@ if(morpher.linked_hive.hivenumber != hivenumber) to_chat(src, SPAN_XENOWARNING("This isn't your hive's eggmorpher!")) return - if(morpher.stored_huggers >= morpher.huggers_to_grow_max) + if(morpher.stored_huggers >= morpher.huggers_max_amount) to_chat(src, SPAN_XENOWARNING("\The [morpher] is already full of children.")) return visible_message(SPAN_WARNING("\The [src] climbs back into \the [morpher]."), SPAN_XENONOTICE("You climb into \the [morpher].")) diff --git a/code/modules/mob/living/carbon/xenomorph/castes/Queen.dm b/code/modules/mob/living/carbon/xenomorph/castes/Queen.dm index 58a493903d75..556b221f21ab 100644 --- a/code/modules/mob/living/carbon/xenomorph/castes/Queen.dm +++ b/code/modules/mob/living/carbon/xenomorph/castes/Queen.dm @@ -47,6 +47,8 @@ minimap_icon = "xenoqueen" + minimap_background = "xeno_ruler" + royal_caste = TRUE /proc/update_living_queens() // needed to update when you change a queen to a different hive @@ -818,6 +820,7 @@ /mob/living/carbon/xenomorph/queen/death(cause, gibbed) if(src == hive?.living_xeno_queen) + UnregisterSignal(src, COMSIG_MOVABLE_PRE_MOVE) hive.xeno_queen_timer = world.time + XENO_QUEEN_DEATH_DELAY // Reset the banished ckey list diff --git a/code/modules/mob/living/carbon/xenomorph/castes/Ravager.dm b/code/modules/mob/living/carbon/xenomorph/castes/Ravager.dm index 90614e338071..eefbc74b03b1 100644 --- a/code/modules/mob/living/carbon/xenomorph/castes/Ravager.dm +++ b/code/modules/mob/living/carbon/xenomorph/castes/Ravager.dm @@ -74,7 +74,7 @@ /datum/behavior_delegate/ravager_base var/shield_decay_time = 15 SECONDS // Time in deciseconds before our shield decays var/slash_charge_cdr = 3 SECONDS // Amount to reduce charge cooldown by per slash - var/knockdown_amount = 1.3 + var/knockdown_amount = 1.6 var/fling_distance = 3 var/empower_targets = 0 var/super_empower_threshold = 3 diff --git a/code/modules/mob/living/carbon/xenomorph/castes/Sentinel.dm b/code/modules/mob/living/carbon/xenomorph/castes/Sentinel.dm index 3e7416f39fc5..3693b2174f12 100644 --- a/code/modules/mob/living/carbon/xenomorph/castes/Sentinel.dm +++ b/code/modules/mob/living/carbon/xenomorph/castes/Sentinel.dm @@ -68,7 +68,7 @@ // State var/next_slash_buffed = FALSE -#define NEURO_TOUCH_DELAY 4 SECONDS +#define NEURO_TOUCH_DELAY 3 SECONDS /datum/behavior_delegate/sentinel_base/melee_attack_modify_damage(original_damage, mob/living/carbon/carbon_target) if (!next_slash_buffed) @@ -102,7 +102,16 @@ #undef NEURO_TOUCH_DELAY +/datum/behavior_delegate/sentinel_base/override_intent(mob/living/carbon/target_carbon) + . = ..() + + if(!isxeno_human(target_carbon)) + return + + if(next_slash_buffed) + return INTENT_HARM + /datum/behavior_delegate/sentinel_base/proc/paralyzing_slash(mob/living/carbon/human/human_target) - human_target.KnockDown(2) - human_target.Stun(2) + human_target.KnockDown(2.5) + human_target.Stun(2.5) to_chat(human_target, SPAN_XENOHIGHDANGER("You fall over, paralyzed by the toxin!")) diff --git a/code/modules/mob/living/carbon/xenomorph/castes/caste_datum.dm b/code/modules/mob/living/carbon/xenomorph/castes/caste_datum.dm index feee2edecb67..995f4985487a 100644 --- a/code/modules/mob/living/carbon/xenomorph/castes/caste_datum.dm +++ b/code/modules/mob/living/carbon/xenomorph/castes/caste_datum.dm @@ -132,6 +132,7 @@ var/minimum_evolve_time = 1 MINUTES /// Iconstate for the xeno on the minimap var/minimap_icon = "xeno" + var/minimap_background = "background_xeno" ///The iconstate for leadered xenos on the minimap, added as overlay var/minimap_leadered_overlay = "xenoleader" @@ -175,8 +176,7 @@ return minimum_xeno_playtime - client.get_total_xeno_playtime() /datum/caste_datum/proc/get_minimap_icon() - var/image/background = mutable_appearance('icons/ui_icons/map_blips.dmi', "background") - background.color = MINIMAP_ICON_BACKGROUND_XENO + var/image/background = mutable_appearance('icons/ui_icons/map_blips.dmi', minimap_background) var/iconstate = minimap_icon ? minimap_icon : "unknown" var/mutable_appearance/icon = image('icons/ui_icons/map_blips.dmi', icon_state = iconstate) diff --git a/code/modules/mob/living/carbon/xenomorph/egg_item.dm b/code/modules/mob/living/carbon/xenomorph/egg_item.dm index a9d00519b691..598c4a70c777 100644 --- a/code/modules/mob/living/carbon/xenomorph/egg_item.dm +++ b/code/modules/mob/living/carbon/xenomorph/egg_item.dm @@ -12,6 +12,8 @@ black_market_value = 35 var/hivenumber = XENO_HIVE_NORMAL var/flags_embryo = NO_FLAGS + ///The objects in this list will be skipped when checking for obstrucing objects. + var/static/list/object_whitelist = list(/obj/structure/machinery/light, /obj/structure/machinery/light_construct) /obj/item/xeno_egg/Initialize(mapload, hive) pixel_x = rand(-3,3) @@ -90,7 +92,7 @@ if(!user.hive) to_chat(user, SPAN_XENOWARNING("Your hive cannot procreate.")) return - if(!user.check_alien_construction(T)) + if(!user.check_alien_construction(T, ignore_nest = TRUE)) return if(!user.check_plasma(30)) return @@ -121,6 +123,8 @@ return for(var/obj/object in T.contents) + if(is_type_in_list(object, object_whitelist)) + continue var/obj/effect/alien/egg/xeno_egg = /obj/effect/alien/egg if(object.layer > initial(xeno_egg.layer)) to_chat(user, SPAN_XENOWARNING("[src] cannot be planted below objects that would obscure it.")) @@ -135,7 +139,7 @@ plant_time = 10 if(!do_after(user, plant_time, INTERRUPT_ALL|BEHAVIOR_IMMOBILE, BUSY_ICON_BUILD)) return - if(!user.check_alien_construction(T)) + if(!user.check_alien_construction(T, ignore_nest = TRUE)) return if(!user.check_plasma(30)) return diff --git a/code/modules/mob/living/carbon/xenomorph/strains/castes/carrier/eggsac.dm b/code/modules/mob/living/carbon/xenomorph/strains/castes/carrier/eggsac.dm index 61c03803841b..4c0331541937 100644 --- a/code/modules/mob/living/carbon/xenomorph/strains/castes/carrier/eggsac.dm +++ b/code/modules/mob/living/carbon/xenomorph/strains/castes/carrier/eggsac.dm @@ -91,7 +91,6 @@ /datum/action/xeno_action/active_toggle/generate_egg name = "Generate Eggs (50)" action_icon_state = "lay_egg" - ability_name = "generate egg" action_type = XENO_ACTION_CLICK plasma_cost = 50 plasma_use_per_tick = 15 diff --git a/code/modules/mob/living/carbon/xenomorph/strains/castes/drone/gardener.dm b/code/modules/mob/living/carbon/xenomorph/strains/castes/drone/gardener.dm index d54d268f12d9..da331f0f6568 100644 --- a/code/modules/mob/living/carbon/xenomorph/strains/castes/drone/gardener.dm +++ b/code/modules/mob/living/carbon/xenomorph/strains/castes/drone/gardener.dm @@ -40,7 +40,6 @@ /datum/action/xeno_action/onclick/plant_resin_fruit name = "Plant Resin Fruit (50)" action_icon_state = "gardener_plant" - ability_name = "plant resin fruit" plasma_cost = 50 macro_path = /datum/action/xeno_action/verb/plant_resin_fruit action_type = XENO_ACTION_CLICK @@ -123,7 +122,6 @@ /datum/action/xeno_action/onclick/change_fruit name = "Change Fruit" action_icon_state = "blank" - ability_name = "change fruit" plasma_cost = 0 xeno_cooldown = 0 macro_path = /datum/action/xeno_action/verb/verb_resin_surge @@ -224,7 +222,6 @@ /datum/action/xeno_action/activable/resin_surge name = "Resin Surge (75)" action_icon_state = "gardener_resin_surge" - ability_name = "resin surge" plasma_cost = 75 xeno_cooldown = 10 SECONDS macro_path = /datum/action/xeno_action/verb/verb_resin_surge @@ -338,7 +335,6 @@ /datum/action/xeno_action/onclick/plant_weeds/gardener name = "Plant Hardy Weeds (125)" - ability_name = "Plant Hardy Weeds" action_icon_state = "plant_gardener_weeds" plasma_cost = 125 macro_path = /datum/action/xeno_action/verb/verb_plant_gardening_weeds diff --git a/code/modules/mob/living/carbon/xenomorph/strains/castes/drone/healer.dm b/code/modules/mob/living/carbon/xenomorph/strains/castes/drone/healer.dm index 1914b2c24b2b..20006eaacbca 100644 --- a/code/modules/mob/living/carbon/xenomorph/strains/castes/drone/healer.dm +++ b/code/modules/mob/living/carbon/xenomorph/strains/castes/drone/healer.dm @@ -51,7 +51,6 @@ /datum/action/xeno_action/activable/apply_salve name = "Apply Resin Salve" action_icon_state = "apply_salve" - ability_name = "Apply Resin Salve" var/health_transfer_amount = 100 var/max_range = 1 var/damage_taken_mod = 0.75 @@ -207,7 +206,6 @@ /datum/action/xeno_action/activable/healer_sacrifice name = "Sacrifice" action_icon_state = "screech" - ability_name = "sacrifice" var/max_range = 1 var/transfer_mod = 0.75 // only transfers 75% of current healer's health macro_path = /datum/action/xeno_action/verb/verb_healer_sacrifice diff --git a/code/modules/mob/living/carbon/xenomorph/strains/castes/hivelord/resin_whisperer.dm b/code/modules/mob/living/carbon/xenomorph/strains/castes/hivelord/resin_whisperer.dm index 2d3429df4050..69e9144737fc 100644 --- a/code/modules/mob/living/carbon/xenomorph/strains/castes/hivelord/resin_whisperer.dm +++ b/code/modules/mob/living/carbon/xenomorph/strains/castes/hivelord/resin_whisperer.dm @@ -43,14 +43,13 @@ /datum/action/xeno_action/activable/secrete_resin/remote name = "Coerce Resin (100)" action_icon_state = "secrete_resin" - ability_name = "coerce resin" - xeno_cooldown = 1 SECONDS + xeno_cooldown = 2.5 SECONDS thick = FALSE make_message = FALSE no_cooldown_msg = TRUE - build_speed_mod = 2 // the actual building part takes twice as long + build_speed_mod = 2.5 // the actual building part takes twice as long macro_path = /datum/action/xeno_action/verb/verb_coerce_resin action_type = XENO_ACTION_CLICK @@ -91,8 +90,10 @@ if(care_about_adjacency) if(owner.Adjacent(target_turf)) build_speed_mod = 1 + xeno_cooldown = 1 SECONDS else build_speed_mod = initial(build_speed_mod) + xeno_cooldown = initial(xeno_cooldown) var/mob/living/carbon/xenomorph/hivelord = owner if(!..()) diff --git a/code/modules/mob/living/carbon/xenomorph/strains/castes/ravager/berserker.dm b/code/modules/mob/living/carbon/xenomorph/strains/castes/ravager/berserker.dm index 5b8981157bda..84509d059cdb 100644 --- a/code/modules/mob/living/carbon/xenomorph/strains/castes/ravager/berserker.dm +++ b/code/modules/mob/living/carbon/xenomorph/strains/castes/ravager/berserker.dm @@ -73,7 +73,8 @@ to_chat(bound_xeno, SPAN_XENOHIGHDANGER("We feel a euphoric rush as we reach max rage! We are LOCKED at max Rage!")) // HP vamp - bound_xeno.gain_health((0.05*rage + hp_vamp_ratio)*((bound_xeno.melee_damage_upper - bound_xeno.melee_damage_lower)/2 + bound_xeno.melee_damage_lower)) + if(!bound_xeno.on_fire) + bound_xeno.gain_health((0.05*rage + hp_vamp_ratio)*((bound_xeno.melee_damage_upper - bound_xeno.melee_damage_lower)/2 + bound_xeno.melee_damage_lower)) /datum/behavior_delegate/ravager_berserker/append_to_stat() . = list() diff --git a/code/modules/mob/living/living.dm b/code/modules/mob/living/living.dm index c7454ca940ac..47093ba603d9 100644 --- a/code/modules/mob/living/living.dm +++ b/code/modules/mob/living/living.dm @@ -635,6 +635,7 @@ return . = body_position body_position = new_value + body_position_changed = world.time SEND_SIGNAL(src, COMSIG_LIVING_SET_BODY_POSITION, new_value, .) if(new_value == LYING_DOWN) // From standing to lying down. on_lying_down() diff --git a/code/modules/mob/living/living_defines.dm b/code/modules/mob/living/living_defines.dm index 88bd8e09c386..0d22616e5f84 100644 --- a/code/modules/mob/living/living_defines.dm +++ b/code/modules/mob/living/living_defines.dm @@ -123,6 +123,8 @@ /// Variable to track the body position of a mob, regardgless of the actual angle of rotation (usually matching it, but not necessarily). var/body_position = STANDING_UP + /// For knowing when was the body position changed + var/body_position_changed = 0 /// Number of degrees of rotation of a mob. 0 means no rotation, up-side facing NORTH. 90 means up-side rotated to face EAST, and so on. VAR_PROTECTED/lying_angle = 0 /// Value of lying lying_angle before last change. TODO: Remove the need for this. diff --git a/code/modules/mob/living/living_verbs.dm b/code/modules/mob/living/living_verbs.dm index 777aa66fe29d..62c15d12f7f0 100644 --- a/code/modules/mob/living/living_verbs.dm +++ b/code/modules/mob/living/living_verbs.dm @@ -24,6 +24,10 @@ to_chat(src, SPAN_WARNING("You can't resist in your current state.")) return + if(pulledby && isxeno(pulledby)) + to_chat(src, SPAN_WARNING("You can't resist while a xeno is grabbing you.")) + return + resisting = TRUE next_move = world.time + 20 diff --git a/code/modules/mob/mob.dm b/code/modules/mob/mob.dm index d198f7818eda..712bef37afad 100644 --- a/code/modules/mob/mob.dm +++ b/code/modules/mob/mob.dm @@ -905,7 +905,7 @@ note dizziness decrements automatically in the mob's Life() proc. conga_line += S.buckled while(!end_of_conga) var/atom/movable/A = S.pulling - if(A in conga_line || A.anchored) //No loops, nor moving anchored things. + if((A in conga_line) || A.anchored) //No loops, nor moving anchored things. end_of_conga = TRUE break conga_line += A diff --git a/code/modules/mob/mob_movement.dm b/code/modules/mob/mob_movement.dm index 06e7fe401e16..a675d8bc3e3c 100644 --- a/code/modules/mob/mob_movement.dm +++ b/code/modules/mob/mob_movement.dm @@ -148,6 +148,10 @@ return if(living_mob.body_position == LYING_DOWN && !living_mob.can_crawl) return + if(living_mob.body_position == LYING_DOWN && isxeno(mob.pulledby)) + next_movement = world.time + 20 //Good Idea + to_chat(src, SPAN_NOTICE("You cannot crawl while a xeno is grabbing you.")) + return //Check if you are being grabbed and if so attemps to break it if(mob.pulledby) diff --git a/code/modules/mob/new_player/new_player.dm b/code/modules/mob/new_player/new_player.dm index 954c5d61d784..fdea20b28f47 100644 --- a/code/modules/mob/new_player/new_player.dm +++ b/code/modules/mob/new_player/new_player.dm @@ -283,10 +283,10 @@ SSticker.mode.latejoin_update(player_rank) SSticker.mode.update_gear_scale() - for(var/datum/squad/sq in GLOB.RoleAuthority.squads) - if(sq) - sq.max_engineers = engi_slot_formula(length(GLOB.clients)) - sq.max_medics = medic_slot_formula(length(GLOB.clients)) + for(var/datum/squad/target_squad in GLOB.RoleAuthority.squads) + if(target_squad) + target_squad.roles_cap[JOB_SQUAD_ENGI] = engi_slot_formula(length(GLOB.clients)) + target_squad.roles_cap[JOB_SQUAD_MEDIC] = medic_slot_formula(length(GLOB.clients)) var/latejoin_larva_drop = SSticker.mode.latejoin_larva_drop diff --git a/code/modules/mob/new_player/skin_color.dm b/code/modules/mob/new_player/skin_color.dm index f3158613c38c..166cb22eb302 100644 --- a/code/modules/mob/new_player/skin_color.dm +++ b/code/modules/mob/new_player/skin_color.dm @@ -2,6 +2,14 @@ var/name var/icon_name + var/color + +/datum/skin_color/New() + . = ..() + + var/icon/icon_to_use = icon(/datum/species::icobase, "[icon_name]_torso_[/datum/body_size/thin::icon_name]_[/datum/body_type/twig::icon_name]") + color = icon_to_use.GetPixel(icon_to_use.Width() / 2, icon_to_use.Height() / 2) + /datum/skin_color/cmplayer name = "Extra Pale" icon_name = "cmp1" diff --git a/code/modules/mob/new_player/sprite_accessories/hair.dm b/code/modules/mob/new_player/sprite_accessories/hair.dm index 558884f26ff0..ea9ea092d9ea 100644 --- a/code/modules/mob/new_player/sprite_accessories/hair.dm +++ b/code/modules/mob/new_player/sprite_accessories/hair.dm @@ -760,3 +760,71 @@ name = "Gentle Braid" icon_state = "hair_braid3" gender = FEMALE + +/datum/sprite_accessory/hair/close_cut + name = "Closecut" + icon_state = "hair_close_cut" + gender = MALE + +/datum/sprite_accessory/hair/shortbangs2 + name = "Short Bangs 2" + icon_state = "hair_short_bangs" + +/datum/sprite_accessory/hair/bangs + name = "Long Bangs" + icon_state = "hair_bangs" + +/datum/sprite_accessory/hair/bangsreversed + name = "Long Bangs (Reversed)" + icon_state = "hair_reversed_bangs" + +/datum/sprite_accessory/hair/flowey + name = "Flowey Sides" + icon_state = "hair_flowey_sides" + +/datum/sprite_accessory/hair/twirly + name = "Twirly Hair" + icon_state = "hair_twirly" + +/datum/sprite_accessory/hair/ponytail9 + name = "Ponytail 9" + icon_state = "hair_ponytail_9" + gender = FEMALE + +/datum/sprite_accessory/hair/ponytail10 + name = "Ponytail 10" + icon_state = "hair_top_ponytail" + gender = FEMALE + +/datum/sprite_accessory/hair/firecracker + name = "Firecracker" + icon_state = "hair_firecracker" + +/datum/sprite_accessory/hair/slimtop + name = "Slim Top" + icon_state = "hair_slim_top" + gender = MALE + +/datum/sprite_accessory/hair/bun3 + name = "Double Bun" + icon_state = "hair_space_buns" + +/datum/sprite_accessory/hair/diagonalbangs + name = "Diagonal Bangs" + icon_state = "hair_diagonal_bangs" + gender = FEMALE + +/datum/sprite_accessory/hair/bobcutovereye + name = "Bobcut Overeye" + icon_state = "hair_bobcut_overeye" + gender = FEMALE + +/datum/sprite_accessory/hair/shorthime + name = "Hime Cut Short" + icon_state = "hair_short_hime" + gender = FEMALE + +/datum/sprite_accessory/hair/emofringe + name = "Emo Fringe" + icon_state = "hair_emo_fringe" + gender = FEMALE diff --git a/code/modules/organs/limbs.dm b/code/modules/organs/limbs.dm index 879aeaf89634..d55894903900 100644 --- a/code/modules/organs/limbs.dm +++ b/code/modules/organs/limbs.dm @@ -182,11 +182,14 @@ if(severity == 2) probability = 1 damage = 3 - if(prob(probability)) + if(can_emp_delimb() && prob(probability)) droplimb(0, 0, "EMP") else take_damage(damage, 0, 1, 1, used_weapon = "EMP") +/// If this limb can be dropped as a result of an EMP +/obj/limb/proc/can_emp_delimb() + return TRUE /obj/limb/proc/take_damage_organ_damage(brute, sharp) if(!owner) @@ -277,6 +280,7 @@ var/previous_brute = brute_dam var/previous_burn = burn_dam + var/previous_bonebreak = (status & LIMB_BROKEN) var/is_ff = FALSE if(istype(attack_source) && attack_source.faction == owner.faction) @@ -370,7 +374,7 @@ var/no_perma_damage = owner.status_flags & NO_PERMANENT_DAMAGE var/no_bone_break = owner.chem_effect_flags & CHEM_EFFECT_RESIST_FRACTURE if(previous_brute > 0 && !is_ff && body_part != BODY_FLAG_CHEST && body_part != BODY_FLAG_GROIN && !no_limb_loss && !no_perma_damage && !no_bone_break) - if(CONFIG_GET(flag/limbs_can_break) && brute_dam >= max_damage * CONFIG_GET(number/organ_health_multiplier) && (status & LIMB_BROKEN)) + if(CONFIG_GET(flag/limbs_can_break) && brute_dam >= max_damage * CONFIG_GET(number/organ_health_multiplier) && previous_bonebreak) //delimbable only if broken before this hit var/cut_prob = brute/max_damage * 5 if(prob(cut_prob)) limb_delimb(damage_source) @@ -531,6 +535,9 @@ This function completely restores a damaged organ to perfect condition. if(internal && !can_bleed_internally) internal = FALSE + if(internal && SSticker.mode && MODE_HAS_TOGGLEABLE_FLAG(MODE_NO_INTERNAL_BLEEDING)) + internal = FALSE + if(length(bleeding_effects_list)) if(!internal) @@ -1309,6 +1316,12 @@ treat_grafted var tells it to apply to grafted but unsalved wounds, for burn kit splint_icon_amount = 1 bandage_icon_amount = 2 +/obj/limb/groin/can_emp_delimb() + if(status & (LIMB_ROBOT | LIMB_SYNTHSKIN)) + return FALSE + + return TRUE + /obj/limb/leg name = "leg" display_name = "leg" diff --git a/code/modules/paperwork/paper.dm b/code/modules/paperwork/paper.dm index e1610fb3401a..be7549488618 100644 --- a/code/modules/paperwork/paper.dm +++ b/code/modules/paperwork/paper.dm @@ -913,3 +913,20 @@ . = ..() info = "
" update_icon() + +/obj/item/paper/liaison_brief + name = "Liaison Colony Briefing" + desc = "A brief from the Company about the colony the ship is responding to." + icon_state = "paper_wy_words" + + var/placeholder = "maps/map_briefings/cl_brief_placeholder.html" + +/obj/item/paper/liaison_brief/Initialize(mapload, ...) + . = ..() + if(SSmapping.configs[GROUND_MAP].liaison_briefing) + info = file2text(SSmapping.configs[GROUND_MAP].liaison_briefing) + else + info = file2text(placeholder) + + var/datum/asset/asset = get_asset_datum(/datum/asset/simple/paper) + info = replacetext(info, "%%WYLOGO%%", asset.get_url_mappings()["wylogo.png"]) diff --git a/code/modules/power/smes.dm b/code/modules/power/smes.dm index d05b34e62b2c..babd3b3a0b32 100644 --- a/code/modules/power/smes.dm +++ b/code/modules/power/smes.dm @@ -39,6 +39,7 @@ var/building_terminal = 0 //Suggestions about how to avoid clickspam building several terminals accepted! var/should_be_mapped = 0 // If this is set to 0 it will send out warning on New() power_machine = TRUE + var/explosion_proof = TRUE /obj/structure/machinery/power/smes/Initialize() . = ..() @@ -62,6 +63,12 @@ return INITIALIZE_HINT_ROUNDSTART +/obj/structure/machinery/power/smes/ex_act(severity) + if(explosion_proof) + return + else + .=..() + /obj/structure/machinery/power/smes/LateInitialize() . = ..() diff --git a/code/modules/projectiles/gun.dm b/code/modules/projectiles/gun.dm index 0e2035f48330..e23f5ab9b20e 100644 --- a/code/modules/projectiles/gun.dm +++ b/code/modules/projectiles/gun.dm @@ -893,18 +893,23 @@ User can be passed as null, (a gun reloading itself for instance), so we need to if(!in_chamber) return var/found_handful + var/ammo_type = get_ammo_type_chambered(user) for(var/obj/item/ammo_magazine/handful/H in user.loc) - if(H.default_ammo == in_chamber.ammo.type && H.caliber == caliber && H.current_rounds < H.max_rounds) + if(H.default_ammo == ammo_type && H.caliber == caliber && H.current_rounds < H.max_rounds) found_handful = TRUE H.current_rounds++ H.update_icon() break if(!found_handful) var/obj/item/ammo_magazine/handful/new_handful = new(get_turf(src)) - new_handful.generate_handful(in_chamber.ammo.type, caliber, 8, 1, type) + new_handful.generate_handful(ammo_type, caliber, 8, 1, type) QDEL_NULL(in_chamber) +//Funny fix for smatrgun +/obj/item/weapon/gun/proc/get_ammo_type_chambered(mob/user) + return in_chamber.ammo.type + //Manually cock the gun //This only works on weapons NOT marked with UNUSUAL_DESIGN or INTERNAL_MAG /obj/item/weapon/gun/proc/cock(mob/user) diff --git a/code/modules/projectiles/gun_attachables.dm b/code/modules/projectiles/gun_attachables.dm index 757ccd10394b..2847021c4775 100644 --- a/code/modules/projectiles/gun_attachables.dm +++ b/code/modules/projectiles/gun_attachables.dm @@ -2989,24 +2989,37 @@ Defined in conflicts.dm of the #defines folder. /obj/item/attachable/attached_gun/flamer/handle_pre_break_attachment_description(base_description_text as text) return base_description_text + " It is on [intense_mode ? "intense" : "normal"] mode." -/obj/item/attachable/attached_gun/flamer/reload_attachment(obj/item/ammo_magazine/flamer_tank/FT, mob/user) - if(istype(FT)) - if(current_rounds >= max_rounds) +/obj/item/attachable/attached_gun/flamer/reload_attachment(obj/item/ammo_magazine/flamer_tank/fuel_holder, mob/user) + if(istype(fuel_holder)) + var/amt_to_refill = max_rounds - current_rounds + if(!amt_to_refill) to_chat(user, SPAN_WARNING("[src] is full.")) - else if(FT.current_rounds <= 0) - to_chat(user, SPAN_WARNING("[FT] is empty!")) - else - playsound(user, 'sound/effects/refill.ogg', 25, 1, 3) - to_chat(user, SPAN_NOTICE("You refill [src] with [FT].")) - var/transfered_rounds = min(max_rounds - current_rounds, FT.current_rounds) - current_rounds += transfered_rounds - FT.current_rounds -= transfered_rounds - - var/amount_of_reagents = length(FT.reagents.reagent_list) - var/amount_removed_per_reagent = transfered_rounds / amount_of_reagents - for(var/datum/reagent/R in FT.reagents.reagent_list) - R.volume -= amount_removed_per_reagent - FT.update_icon() + return + + if(!fuel_holder.reagents || length(fuel_holder.reagents.reagent_list) < 1) + to_chat(user, SPAN_WARNING("[fuel_holder] is empty!")) + return + + var/datum/reagent/to_remove = fuel_holder.reagents.reagent_list[1] + + var/flamer_chem = "utnapthal" + if(!istype(to_remove) || flamer_chem != to_remove.id || length(fuel_holder.reagents.reagent_list) > 1) + to_chat(user, SPAN_WARNING("You can't mix fuel mixtures!")) + return + + var/fuel_amt + if(to_remove) + fuel_amt = to_remove.volume < amt_to_refill ? to_remove.volume : amt_to_refill + + if(!fuel_amt) + to_chat(user, SPAN_WARNING("[fuel_holder] is empty!")) + return + + playsound(user, 'sound/effects/refill.ogg', 25, 1, 3) + to_chat(user, SPAN_NOTICE("You refill [src] with [fuel_holder].")) + current_rounds += fuel_amt + fuel_holder.reagents.remove_reagent(to_remove.id, fuel_amt) + fuel_holder.update_icon() else to_chat(user, SPAN_WARNING("[src] can only be refilled with an incinerator tank.")) diff --git a/code/modules/projectiles/guns/rifles.dm b/code/modules/projectiles/guns/rifles.dm index d2e9d6a30a5a..ff7cfbf21c8b 100644 --- a/code/modules/projectiles/guns/rifles.dm +++ b/code/modules/projectiles/guns/rifles.dm @@ -1714,32 +1714,35 @@ /obj/item/attachable/bayonet, /obj/item/attachable/bayonet/upp, /obj/item/attachable/bayonet/co2, - //Rail, - /obj/item/attachable/reddot, - /obj/item/attachable/reflex, - /obj/item/attachable/flashlight, - /obj/item/attachable/magnetic_harness, - /obj/item/attachable/scope, - /obj/item/attachable/scope/mini, - /obj/item/attachable/scope/mini/hunting, //Under, /obj/item/attachable/flashlight/grip, //Stock, - /obj/item/attachable/stock/carbine, /obj/item/attachable/stock/carbine/wood, /obj/item/attachable/stock/carbine/wood/tactical, ) starting_attachment_types = list(/obj/item/attachable/stock/carbine/wood/tactical, /obj/item/attachable/suppressor) - random_spawn_chance = 100 - random_spawn_rail = list( - /obj/item/attachable/reflex, - /obj/item/attachable/magnetic_harness, - /obj/item/attachable/scope, - /obj/item/attachable/scope/mini/hunting, - ) - random_under_chance = 50 + random_under_chance = 100 random_spawn_under = list(/obj/item/attachable/flashlight/grip) +/obj/item/weapon/gun/rifle/l42a/abr40/tactical/handle_starting_attachment() + ..() + var/obj/item/attachable/magnetic_harness/integrated = new(src) + integrated.flags_attach_features &= ~ATTACH_REMOVABLE + integrated.hidden = TRUE + integrated.Attach(src) + update_attachable(integrated.slot) + +/obj/item/weapon/gun/rifle/l42a/abr40/tactical/set_gun_config_values() + ..() + set_fire_delay(FIRE_DELAY_TIER_10) + 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 + damage_mult = BASE_BULLET_DAMAGE_MULT + BULLET_DAMAGE_MULT_TIER_7 + recoil_unwielded = RECOIL_AMOUNT_TIER_4 + damage_falloff_mult = 0 + scatter = SCATTER_AMOUNT_TIER_8 + //=ROYAL MARINES=\\ /obj/item/weapon/gun/rifle/rmc_f90 diff --git a/code/modules/projectiles/guns/shotguns.dm b/code/modules/projectiles/guns/shotguns.dm index 3c125acc7914..f568f2657dc8 100644 --- a/code/modules/projectiles/guns/shotguns.dm +++ b/code/modules/projectiles/guns/shotguns.dm @@ -71,10 +71,10 @@ can cause issues with ammo types getting mixed up during the burst. to_chat(user, SPAN_DANGER("[current_mag.current_rounds][chambered ? "+1" : ""] / [current_mag.max_rounds] ROUNDS REMAINING")) return TRUE -/obj/item/weapon/gun/shotgun/proc/empty_chamber(mob/user) +/obj/item/weapon/gun/shotgun/proc/empty_chamber(mob/user, silent = FALSE, only_chamber = FALSE) if(!current_mag) return - if(current_mag.current_rounds <= 0) + if(only_chamber || current_mag.current_rounds <= 0) if(in_chamber) in_chamber = null var/obj/item/ammo_magazine/handful/new_handful = retrieve_shell(ammo.type) @@ -82,9 +82,10 @@ can cause issues with ammo types getting mixed up during the burst. new_handful.forceMove(get_turf(src)) if(flags_gun_features & GUN_AMMO_COUNTER && user) var/chambered = in_chamber ? TRUE : FALSE //useless, but for consistency - to_chat(user, SPAN_DANGER("[current_mag.current_rounds][chambered ? "+1" : ""] / [current_mag.max_rounds] ROUNDS REMAINING")) + if(!silent) + to_chat(user, SPAN_DANGER("[current_mag.current_rounds][chambered ? "+1" : ""] / [current_mag.max_rounds] ROUNDS REMAINING")) else - if(user) + if(user && !silent) to_chat(user, SPAN_WARNING("[src] is already empty.")) return @@ -1195,14 +1196,31 @@ can cause issues with ammo types getting mixed up during the burst. current_mag = /obj/item/ammo_magazine/internal/shotgun var/obj/item/ammo_magazine/internal/shotgun/primary_tube var/obj/item/ammo_magazine/internal/shotgun/secondary_tube + var/chamber_swap = FALSE /obj/item/weapon/gun/shotgun/pump/dual_tube/Initialize(mapload, spawn_empty) + LAZYADD(actions_types, /datum/action/item_action/dual_tube/toggle_chamber_swap) . = ..() primary_tube = current_mag secondary_tube = new current_mag.type(src, spawn_empty ? TRUE : FALSE) current_mag = secondary_tube replace_tube(current_mag.current_rounds) +/obj/item/weapon/gun/shotgun/pump/dual_tube/get_examine_text(mob/user) + . = ..() + var/has_chamber_swap = locate(/datum/action/item_action/dual_tube/toggle_chamber_swap) in actions + if(has_chamber_swap) + . += SPAN_NOTICE("Use toggle firemode to toggle chamber-swapping.") + +/obj/item/weapon/gun/shotgun/pump/dual_tube/do_toggle_firemode(datum/source, datum/keybinding, new_firemode) + var/datum/action/item_action/dual_tube/toggle_chamber_swap/chamber_swap_ability = locate() in actions + if(chamber_swap_ability) + //do_toggle_firemode is a signal handler. needs async to stop sleep override warnings + INVOKE_ASYNC(chamber_swap_ability, TYPE_PROC_REF(/datum/action/item_action/dual_tube/toggle_chamber_swap, action_activate)) + return + + . = ..() + /obj/item/weapon/gun/shotgun/pump/dual_tube/Destroy() QDEL_NULL(primary_tube) QDEL_NULL(secondary_tube) @@ -1217,10 +1235,32 @@ can cause issues with ammo types getting mixed up during the burst. return if(!current_mag) return + + ///The currently chambered shell in the gun before the tube gets swapped. + var/obj/item/ammo_magazine/chambered_shell + if(chamber_swap && in_chamber) + if(current_mag.current_rounds == current_mag.max_rounds) + to_chat(user, SPAN_WARNING("The current tube is overloaded! [src] spits out the chambered shell!")) + empty_chamber(user, TRUE, TRUE) + else + chambered_shell = retrieve_shell(ammo.type) + in_chamber = null + + if(chambered_shell) + add_to_tube(user, chambered_shell.default_ammo) + current_mag.current_rounds++ + if(current_mag == primary_tube) current_mag = secondary_tube else current_mag = primary_tube + + //Chamber swaps require the gun to be pumped afterwards. We'll force the gun to be pumped as it would be pretty annoying otherwise. + if(!in_chamber && chamber_swap) + ready_shotgun_tube() + if(in_chamber) + pumped = TRUE + to_chat(user, SPAN_NOTICE("[icon2html(src, user)] You switch \the [src]'s active magazine to the [(current_mag == primary_tube) ? "first" : "second"] magazine.")) playsound(src, 'sound/machines/switch.ogg', 15, TRUE) return TRUE @@ -1235,6 +1275,32 @@ can cause issues with ammo types getting mixed up during the burst. if(shotgun == src) swap_tube(usr) +//item action for handling switching chambered shells when swapping tubes. +/datum/action/item_action/dual_tube/toggle_chamber_swap/New(Target, obj/item/holder) + . = ..() + name = "Toggle Chamber Swap" + action_icon_state = "chamber_swap" + button.name = name + button.overlays.Cut() + button.overlays += image('icons/mob/hud/actions.dmi', button, action_icon_state) + +/datum/action/item_action/dual_tube/toggle_chamber_swap/action_activate() + . = ..() + var/obj/item/weapon/gun/shotgun/pump/dual_tube/holder_gun = holder_item + holder_gun.chamber_swap = !holder_gun.chamber_swap + + playsound(owner, 'sound/weapons/handling/gun_burst_toggle.ogg', 15, 1) + + if(holder_gun.chamber_swap) + to_chat(owner, SPAN_NOTICE("[icon2html(holder_gun, owner)] You will start swapping the chambered shell with the other tube. Your current tube must be underloaded or it will forcefully eject the shell out of the chamber.")) + button.icon_state = "template_on" + else + to_chat(owner, SPAN_NOTICE("[icon2html(holder_gun, owner)] You will stop swapping the chambered shell with the other tube.")) + button.icon_state = "template" + + button.overlays.Cut() + button.overlays += image('icons/mob/hud/actions.dmi', button, action_icon_state) + //SHOTGUN FROM ISOLATION /obj/item/weapon/gun/shotgun/pump/dual_tube/cmb @@ -1264,7 +1330,6 @@ can cause issues with ammo types getting mixed up during the burst. /obj/item/weapon/gun/shotgun/pump/dual_tube/cmb/set_gun_attachment_offsets() attachable_offset = list("muzzle_x" = 31, "muzzle_y" = 17,"rail_x" = 8, "rail_y" = 21, "under_x" = 22, "under_y" = 15, "stock_x" = 24, "stock_y" = 10) - /obj/item/weapon/gun/shotgun/pump/dual_tube/cmb/set_gun_config_values() ..() set_fire_delay(1.6 SECONDS) diff --git a/code/modules/projectiles/guns/smartgun.dm b/code/modules/projectiles/guns/smartgun.dm index a47480a6b257..6cf6eeead45b 100644 --- a/code/modules/projectiles/guns/smartgun.dm +++ b/code/modules/projectiles/guns/smartgun.dm @@ -168,6 +168,9 @@ return . = ..() +/obj/item/weapon/gun/smartgun/get_ammo_type_chambered(mob/user) + return ammo_primary + /obj/item/weapon/gun/smartgun/update_icon() . = ..() if(cover_open) diff --git a/code/modules/projectiles/guns/specialist/launcher/grenade_launcher.dm b/code/modules/projectiles/guns/specialist/launcher/grenade_launcher.dm index 9830dc0f15f7..c313d37b626c 100644 --- a/code/modules/projectiles/guns/specialist/launcher/grenade_launcher.dm +++ b/code/modules/projectiles/guns/specialist/launcher/grenade_launcher.dm @@ -363,7 +363,7 @@ update_attachable(S.slot) /obj/item/weapon/gun/launcher/grenade/m81/m79/set_gun_attachment_offsets() - attachable_offset = list("muzzle_x" = 33, "muzzle_y" = 18,"rail_x" = 9, "rail_y" = 22, "under_x" = 19, "under_y" = 14, "stock_x" = 14, "stock_y" = 14) + attachable_offset = list("muzzle_x" = 33, "muzzle_y" = 18, "rail_x" = 11, "rail_y" = 21, "under_x" = 19, "under_y" = 14, "stock_x" = 14, "stock_y" = 14) /obj/item/weapon/gun/launcher/grenade/m81/m79/set_bullet_traits() LAZYADD(traits_to_give, list( diff --git a/code/modules/projectiles/guns/specialist/launcher/rocket_launcher.dm b/code/modules/projectiles/guns/specialist/launcher/rocket_launcher.dm index 8a752d4d9094..79b990476c45 100644 --- a/code/modules/projectiles/guns/specialist/launcher/rocket_launcher.dm +++ b/code/modules/projectiles/guns/specialist/launcher/rocket_launcher.dm @@ -40,7 +40,7 @@ /obj/item/weapon/gun/launcher/rocket/set_gun_attachment_offsets() - attachable_offset = list("muzzle_x" = 33, "muzzle_y" = 18,"rail_x" = 6, "rail_y" = 19, "under_x" = 19, "under_y" = 14, "stock_x" = 19, "stock_y" = 14) + attachable_offset = list("muzzle_x" = 33, "muzzle_y" = 18,"rail_x" = 8, "rail_y" = 21, "under_x" = 19, "under_y" = 14, "stock_x" = 19, "stock_y" = 14) /obj/item/weapon/gun/launcher/rocket/set_gun_config_values() diff --git a/code/modules/projectiles/projectile.dm b/code/modules/projectiles/projectile.dm index cdc23da1a940..d16546f8dbbe 100644 --- a/code/modules/projectiles/projectile.dm +++ b/code/modules/projectiles/projectile.dm @@ -187,7 +187,7 @@ return damage // Target, firer, shot from (i.e. the gun), projectile range, projectile speed, original target (who was aimed at, not where projectile is going towards) -/obj/projectile/proc/fire_at(atom/target, atom/F, atom/S, range = 30, speed = 1, atom/original_override) +/obj/projectile/proc/fire_at(atom/target, atom/F, atom/S, range = 30, speed = 1, atom/original_override, randomize_speed = TRUE) SHOULD_NOT_SLEEP(TRUE) original = original || original_override || target if(!loc) @@ -230,6 +230,7 @@ //If we have the right kind of ammo, we can fire several projectiles at once. if(ammo.bonus_projectiles_amount && ammo.bonus_projectiles_type) + randomize_speed = FALSE ammo.fire_bonus_projectiles(src) bonus_projectile_check = 1 //Mark this projectile as having spawned a set of bonus projectiles. @@ -241,8 +242,11 @@ src.speed = speed // Randomize speed by a small factor to help bullet animations look okay // Otherwise you get a s t r e a m of warping bullets in same positions - src.speed *= (1 + (rand()-0.5) * 0.30) // 15.0% variance either way - src.speed = clamp(src.speed, 0.1, 100) // Safety to avoid loop hazards + if (randomize_speed) + src.speed *= (1 + (rand()-0.5) * 0.30) // 15.0% variance either way + + // Safety to avoid loop hazards + src.speed = clamp(src.speed, 0.1, 100) // Also give it some headstart, flying it now ahead of tick var/delta_time = world.tick_lag * rand() * 0.4 @@ -835,8 +839,10 @@ //mobs use get_projectile_hit_chance instead of get_projectile_hit_boolean /mob/living/proc/get_projectile_hit_chance(obj/projectile/P) - if((body_position == LYING_DOWN || HAS_TRAIT(src, TRAIT_NO_STRAY)) && src != P.original) + if(HAS_TRAIT(src, TRAIT_NO_STRAY) && src != P.original) return FALSE + if(body_position == LYING_DOWN && src != P.original && world.time - body_position_changed > 0.1 SECONDS) + return FALSE // Fixes for buckshot projectiles not hitting stunned targets var/ammo_flags = P.ammo.flags_ammo_behavior | P.projectile_override_flags if(ammo_flags & AMMO_XENO) if((status_flags & XENO_HOST) && HAS_TRAIT(src, TRAIT_NESTED)) diff --git a/code/modules/reagents/chemistry_machinery/chem_dispenser.dm b/code/modules/reagents/chemistry_machinery/chem_dispenser.dm index f0a3faeb75ce..5c885d59e8f7 100644 --- a/code/modules/reagents/chemistry_machinery/chem_dispenser.dm +++ b/code/modules/reagents/chemistry_machinery/chem_dispenser.dm @@ -20,6 +20,7 @@ var/network = "Ground" var/amount = 30 var/accept_beaker_only = TRUE + var/pressurized_only = FALSE var/obj/item/reagent_container/beaker = null var/ui_check = 0 var/static/list/possible_transfer_amounts = list(5,10,20,30,40) @@ -89,6 +90,14 @@ if(!inoperable()) overlays += "+onlight" +/obj/structure/machinery/chem_dispenser/corpsman/update_icon() + if(stat & BROKEN) + icon_state = (beaker ? "mixer1_b" : "mixer0_b") + else if(stat & NOPOWER) + icon_state = (beaker ? "[base_state]1_nopower" : "[base_state]0_nopower") + else + icon_state = (beaker ? "[base_state]1" : "[base_state]0") + /obj/structure/machinery/chem_dispenser/on_stored_atom_del(atom/movable/AM) if(AM == beaker) beaker = null @@ -204,6 +213,10 @@ if(istype(attacking_object, /obj/item/reagent_container/glass) || istype(attacking_object, /obj/item/reagent_container/food)) if(accept_beaker_only && istype(attacking_object,/obj/item/reagent_container/food)) to_chat(user, SPAN_NOTICE("This machine only accepts beakers")) + return + if(pressurized_only && !istype(attacking_object, /obj/item/reagent_container/glass/pressurized_canister)) + to_chat(user, SPAN_NOTICE("This machine only accepts pressurized canisters")) + return if(user.drop_inv_item_to_loc(attacking_object, src)) var/obj/item/old_beaker = beaker beaker = attacking_object @@ -259,6 +272,28 @@ return tgui_interact(user) +/obj/structure/machinery/chem_dispenser/corpsman + name = "pressurized chemical dispenser" + desc = "A more basic chemical dispenser, designed for use with pressurized reagent canisters. A Wey-Yu product." + icon_state = "mixer0" + ui_title = "Chem Dispenser 4000" + req_skill_level = SKILL_MEDICAL_MEDIC + accept_beaker_only = FALSE + pressurized_only = TRUE + dispensable_reagents = list( + "bicaridine", + "kelotane", + "anti_toxin", + "dexalin", + "inaprovaline", + "adrenaline", + "peridaxon", + "tramadol", + "tricordrazine", + ) + + var/base_state = "mixer" + /obj/structure/machinery/chem_dispenser/soda icon_state = "soda_dispenser" name = "soda fountain" diff --git a/code/modules/reagents/chemistry_machinery/chem_master.dm b/code/modules/reagents/chemistry_machinery/chem_master.dm index 2cb91618946c..77f79bee4c58 100644 --- a/code/modules/reagents/chemistry_machinery/chem_master.dm +++ b/code/modules/reagents/chemistry_machinery/chem_master.dm @@ -76,7 +76,7 @@ user.put_in_hands(old_beaker) else to_chat(user, SPAN_NOTICE("You add the beaker to the machine!")) - updateUsrDialog() + SStgui.update_uis(src) update_icon() else if(istype(B, /obj/item/storage/pill_bottle) && pill_maker) @@ -87,7 +87,7 @@ loaded_pill_bottle = B user.drop_inv_item_to_loc(B, src) to_chat(user, SPAN_NOTICE("You add the pill bottle into the dispenser slot!")) - updateUsrDialog() + SStgui.update_uis(src) return /obj/structure/machinery/chem_master/proc/transfer_chemicals(obj/dest, obj/source, amount, reagent_id) @@ -98,240 +98,292 @@ else if(dest.reagents) source.reagents.trans_id_to(dest, reagent_id, amount) -/obj/structure/machinery/chem_master/Topic(href, href_list) +/obj/structure/machinery/chem_master/tgui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) + if(!ui) + ui = new(user, src, "ChemMaster", name) + ui.open() + +/obj/structure/machinery/chem_master/ui_data(mob/user) . = ..() - if(.) - return + + .["is_connected"] = !!connected + .["mode"] = mode + .["pillsprite"] = pillsprite + .["bottlesprite"] = bottlesprite + + .["pill_bottle"] = null + if(loaded_pill_bottle) + var/datum/component/label/label = loaded_pill_bottle.GetComponent(/datum/component/label) + .["pill_bottle"] = list( + "size" = length(loaded_pill_bottle.contents), + "max_size" = loaded_pill_bottle.max_storage_space, + "label" = label ? label.label_name : null, + "icon_state" = loaded_pill_bottle.icon_state + ) + + .["beaker"] = null + if(beaker) + .["beaker"] = list( + "reagents_volume" = beaker.reagents.total_volume + ) + + for(var/datum/reagent/contained_reagent in beaker.reagents.reagent_list) + LAZYADD(.["beaker"]["reagents"], list(list( + "name" = contained_reagent.name, + "volume" = contained_reagent.volume, + "id" = contained_reagent.id, + ))) + + .["buffer"] = null + if(reagents.total_volume) + .["buffer"] = list() + for(var/datum/reagent/contained_reagent in reagents.reagent_list) + .["buffer"] += list(list( + "name" = contained_reagent.name, + "volume" = contained_reagent.volume, + "id" = contained_reagent.id + )) + + .["internal_reagent_name"] = reagents.get_master_reagent_name() + +/obj/structure/machinery/chem_master/ui_static_data(mob/user) + . = ..() + + .["pill_or_bottle_icon"] = "['icons/obj/items/chemistry.dmi']" + .["pill_icon_choices"] = PILL_ICON_CHOICES + .["bottle_icon_choices"] = BOTTLE_ICON_CHOICES + + .["color_pill"] = list( + "icon" = "[/obj/item/storage/pill_bottle::icon]", + "colors" = /obj/item/storage/pill_bottle::possible_colors, + "base" = /obj/item/storage/pill_bottle::base_icon + ) + + .["is_pillmaker"] = pill_maker + .["is_condiment"] = condi + .["is_vialmaker"] = vial_maker + +/obj/structure/machinery/chem_master/ui_act(action, list/params, datum/tgui/ui, datum/ui_state/state) + . = ..() + if(inoperable()) return - if(!ishuman(usr)) - return - var/mob/living/carbon/human/user = usr - if(user.stat || user.is_mob_restrained()) - return - if(!in_range(src, user)) - return - add_fingerprint(user) - user.set_interaction(src) + var/mob/user = ui.user + if(!Adjacent(user) || !ishuman(user) || user.stat || user.is_mob_restrained()) + return - if(href_list["ejectp"]) - if(!loaded_pill_bottle) - return + switch(action) + if("eject_pill") + if(!loaded_pill_bottle) + return - if(!Adjacent(usr) || !usr.put_in_hands(loaded_pill_bottle)) - loaded_pill_bottle.forceMove(loc) + if(!user.put_in_hands(loaded_pill_bottle)) + loaded_pill_bottle.forceMove(loc) - loaded_pill_bottle = null + loaded_pill_bottle = null - // Adding a name to the currently stored pill bottle - if(href_list["addlabelp"]) + return TRUE - // Checking for state changes - if(!loaded_pill_bottle) - return + if("label_pill") + if(!loaded_pill_bottle) + return - if(!Adjacent(usr)) - return + var/label = copytext(reject_bad_text(params["text"]), 1, MAX_NAME_LEN) + if(!label) + return - var/label = copytext(reject_bad_text(input(user,"Label text?", "Set label", "")), 1, MAX_NAME_LEN) - if(label) loaded_pill_bottle.AddComponent(/datum/component/label, label) if(length(label) < 3) loaded_pill_bottle.maptext_label = label loaded_pill_bottle.update_icon() - else if(href_list["setcolor"]) - // Checking for state changes - if(!loaded_pill_bottle) - return - if(!Adjacent(usr)) - return + return TRUE - loaded_pill_bottle.choose_color() + if("color_pill") + if(!loaded_pill_bottle) + return - else if(href_list["close"]) - close_browser(user, "chemmaster") - user.unset_interaction() - return + var/picked_color = params["color"] + if(picked_color && (picked_color in loaded_pill_bottle.possible_colors)) + loaded_pill_bottle.icon_state = loaded_pill_bottle.base_icon + loaded_pill_bottle.possible_colors[picked_color] + return - if(beaker) - if(href_list["add"]) - if(href_list["amount"]) - var/id = href_list["add"] - var/amount = text2num(href_list["amount"]) - transfer_chemicals(src, beaker, amount, id) - - else if(href_list["addcustom"]) - var/id = href_list["addcustom"] - useramount = tgui_input_number(usr, "Select the amount to transfer.", "Transfer amount", useramount) - transfer_chemicals(src, beaker, useramount, id) - - else if(href_list["addall"]) - for(var/datum/reagent/R in beaker.reagents.reagent_list) - var/amount = beaker.volume - transfer_chemicals(src, beaker, amount, R.id) - - else if(href_list["remove"]) - if(href_list["amount"]) - var/id = href_list["remove"] - var/amount = text2num(href_list["amount"]) - if(mode) - transfer_chemicals(beaker, src, amount, id) - else - transfer_chemicals(null, src, amount, id) + loaded_pill_bottle.choose_color(user) + + if("add") + var/amount = params["amount"] + var/id = params["id"] + if(!isnum(amount) || !id) + return + + transfer_chemicals(src, beaker, amount, id) + return TRUE + + if("add_all") + for(var/datum/reagent/beaker_reagent in beaker.reagents.reagent_list) + transfer_chemicals(src, beaker, beaker.volume, beaker_reagent.id) + return TRUE + + if("remove") + var/amount = params["amount"] + var/id = params["id"] + if(!isnum(amount) || !id) + return - else if(href_list["removecustom"]) - var/id = href_list["removecustom"] - useramount = tgui_input_number(usr, "Select the amount to transfer.", "Transfer amount", useramount) if(mode) - transfer_chemicals(beaker, src, useramount, id) - else - transfer_chemicals(null, src, useramount, id) + transfer_chemicals(beaker, src, amount, id) + return TRUE - else if(href_list["removeall"]) - for(var/datum/reagent/R in src.reagents.reagent_list) - var/amount = src.reagents.total_volume + transfer_chemicals(null, src, amount, id) + return TRUE + + if("remove_all") + for(var/datum/reagent/contained_reagent in reagents.reagent_list) + var/amount = reagents.total_volume if(mode) - transfer_chemicals(beaker, src, amount, R.id) + transfer_chemicals(beaker, src, amount, contained_reagent.id) else - transfer_chemicals(null, src, amount, R.id) + transfer_chemicals(null, src, amount, contained_reagent.id) + + return TRUE - else if(href_list["toggle"]) + if("toggle") mode = !mode + return TRUE - else if(href_list["main"]) - attack_hand(user) - return - else if(href_list["eject"]) + if("eject") if(!beaker) return - if(!Adjacent(usr) || !usr.put_in_hands(beaker)) + if(!user.put_in_hands(beaker)) beaker.forceMove(loc) beaker = null reagents.clear_reagents() update_icon() + return TRUE - else if (href_list["createpill"] || href_list["createpill_multiple"]) - var/count = 1 + if("create_pill") + if(!pill_maker) + return - if(reagents.total_volume/count < 1) //Sanity checking. + var/param_num = params["number"] + if(!isnum(param_num)) return - if(href_list["createpill_multiple"]) - count = clamp(tgui_input_number(user, "Select the number of pills to make. (max: [max_pill_count])", "Pills to make", pillamount, max_pill_count, 1), 0, max_pill_count) - if(!count) - return + var/to_create = floor(clamp(param_num, 1, max_pill_count)) - if(reagents.total_volume/count < 1) //Sanity checking. + if(reagents.total_volume / to_create < 1) return - for(var/datum/reagent/R in reagents.reagent_list) - if(R.flags & REAGENT_NOT_INGESTIBLE) - to_chat(user, SPAN_WARNING("[R.name] must be administered intravenously and cannot be made into a pill.")) + var/list/reagents_in_pill = list() + for(var/datum/reagent/contained_reagent in reagents.reagent_list) + if(contained_reagent.flags & REAGENT_NOT_INGESTIBLE) + to_chat(user, SPAN_WARNING("[contained_reagent.name] must be administered intravenously, and cannot be made into a pill.")) return - var/amount_per_pill = reagents.total_volume/count - if(amount_per_pill > 60) amount_per_pill = 60 + reagents_in_pill += contained_reagent.name + + var/amount_per_pill = clamp(reagents.total_volume / to_create, 0, 60) + + msg_admin_niche("[key_name(user)] created one or more pills (total pills to synthesize: [to_create]) (REAGENTS: [english_list(reagents_in_pill)]) in [get_area(user)] ([user.loc.x],[user.loc.y],[user.loc.z]).", user.loc.x, user.loc.y, user.loc.z) + for(var/iterator in 1 to to_create) + var/obj/item/reagent_container/pill/creating_pill = new(loc) + creating_pill.pill_desc = "A custom pill." + creating_pill.icon_state = "pill[pillsprite]" + + reagents.trans_to(creating_pill, amount_per_pill) + if(loaded_pill_bottle && length(loaded_pill_bottle.contents) < loaded_pill_bottle.max_storage_space) + loaded_pill_bottle.handle_item_insertion(creating_pill, TRUE) + + return TRUE + + if("create_glass") + if(condi) + var/obj/item/reagent_container/food/condiment/new_condiment = new() + reagents.trans_to(new_condiment, 50) + + if(!user.put_in_hands(new_condiment)) + new_condiment.forceMove(loc) + + return TRUE - if(reagents.total_volume/count < 1) //Sanity checking. + var/name = reject_bad_text(params["label"] || reagents.get_master_reagent_name()) + if(!name) return - var/was_logged = FALSE - - while (count--) - var/obj/item/reagent_container/pill/P = new/obj/item/reagent_container/pill(loc) - P.pill_desc = "A custom pill." - P.icon_state = "pill"+pillsprite - reagents.trans_to(P,amount_per_pill) - if(loaded_pill_bottle) - if(length(loaded_pill_bottle.contents) < loaded_pill_bottle.max_storage_space) - loaded_pill_bottle.handle_item_insertion(P, TRUE) - updateUsrDialog() - - if(!was_logged) - var/list/reagents_in_pill = list() - for(var/datum/reagent/R in P.reagents.reagent_list) - reagents_in_pill += R.name - var/contained = english_list(reagents_in_pill) - msg_admin_niche("[key_name(usr)] created one or more pills (total pills to synthesize: [count+1]) (REAGENTS: [contained]) in [get_area(user)] ([user.loc.x],[user.loc.y],[user.loc.z]).", user.loc.x, user.loc.y, user.loc.z) - was_logged = TRUE - - else if(href_list["createglass"]) - if(!condi) - var/name = reject_bad_text(input(user,"Label:","Enter label!", reagents.get_master_reagent_name()) as text|null) - if(!name) - return - var/obj/item/reagent_container/glass/P - if(href_list["createbottle"]) - P = new/obj/item/reagent_container/glass/bottle() - P.name = "[name] bottle" - P.icon_state = "bottle-"+bottlesprite - reagents.trans_to(P, 60) - else if(href_list["createvial"]) - P = new/obj/item/reagent_container/glass/beaker/vial() - P.name = "[name] vial" - reagents.trans_to(P, 30) - - P.update_icon() - - if(href_list["store"]) - connected.add_local_item(P) - else if(!Adjacent(usr) || !usr.put_in_hands(P)) - P.forceMove(loc) - - else - var/obj/item/reagent_container/food/condiment/P = new/obj/item/reagent_container/food/condiment() - reagents.trans_to(P, 50) - - if(!Adjacent(usr) || !usr.put_in_hands(P)) - P.forceMove(loc) - else if(href_list["change_pill"]) - var/dat = "" - for(var/i = 1 to PILL_ICON_CHOICES) - dat += "" - dat += "
" - show_browser(user, dat, "Change Pill Type", "chem_master") - return - else if(href_list["change_bottle"]) - var/dat = "" - for(var/i = 1 to BOTTLE_ICON_CHOICES) - dat += "" - dat += "
" - show_browser(user, dat, "Change Bottle Type", "chem_master") - return - else if(href_list["pill_sprite"]) - pillsprite = href_list["pill_sprite"] - else if(href_list["bottle_sprite"]) - bottlesprite = href_list["bottle_sprite"] + var/obj/item/reagent_container/glass/new_container + switch(params["type"]) + if("glass") + new_container = new /obj/item/reagent_container/glass/bottle() + new_container.name = "[name] Bottle" + new_container.icon_state = "bottle-[bottlesprite]" + reagents.trans_to(new_container, 60) + if("vial") + if(!vial_maker) + return + + new_container = new /obj/item/reagent_container/glass/beaker/vial() + new_container.name = "[name] Vial" + reagents.trans_to(new_container, 30) + + if(!new_container) + return - if(href_list["transferp"]) - if(!loaded_pill_bottle) - return + new_container.update_icon() - if(QDELETED(connected)) - to_chat(user, SPAN_WARNING("Connect a smartfridge first.")) - return + if(params["store"] && connected) + connected.add_local_item(new_container) + return TRUE - if(src.z != connected.z || get_dist(src, connected) > tether_range) - to_chat(user, SPAN_WARNING("Smartfridge is out of range. Connection severed.")) - cleanup() - attack_hand(user) - return + if(!user.put_in_hands(new_container)) + new_container.forceMove(loc) + + return TRUE + + if("change_pill") + var/pill = params["picked"] + if(!isnum(pill) || pill > PILL_ICON_CHOICES) + return + + pillsprite = pill + return TRUE + + if("change_bottle") + var/bottle = params["picked"] + if(!isnum(bottle) || bottle > BOTTLE_ICON_CHOICES) + return + + bottlesprite = bottle + return TRUE - connected.add_local_item(loaded_pill_bottle) - loaded_pill_bottle = null - // Connecting a smartfridge - if(href_list["connect"]) - connect_smartfridge() + if("transfer_pill") + if(!loaded_pill_bottle) + return + + if(QDELETED(connected)) + to_chat(user, SPAN_WARNING("Connect a smartfridge first.")) + return + + if(src.z != connected.z || get_dist(src, connected) > tether_range) + to_chat(user, SPAN_WARNING("Smartfridge is out of range. Connection severed.")) + cleanup() + attack_hand(user) + return + + connected.add_local_item(loaded_pill_bottle) + loaded_pill_bottle = null + return TRUE + + if("connect") + connect_smartfridge() + return TRUE - //src.updateUsrDialog() - attack_hand(user) /obj/structure/machinery/chem_master/attack_hand(mob/living/user) if(stat & BROKEN) @@ -339,82 +391,9 @@ if(req_skill && !skillcheck(user, req_skill, req_skill_level)) to_chat(user, SPAN_WARNING("You don't have the training to use this.")) return + + tgui_interact(usr) user.set_interaction(src) - if(!(user.client in has_sprites)) - spawn() - has_sprites += user.client - for(var/i = 1 to PILL_ICON_CHOICES) - user << browse_rsc(icon('icons/obj/items/chemistry.dmi', "pill" + num2text(i)), "pill[i].png") - for(var/i = 1 to BOTTLE_ICON_CHOICES) - user << browse_rsc(icon('icons/obj/items/chemistry.dmi', "bottle-" + num2text(i)), "bottle-[i].png") - var/dat = "" - if(!beaker) - dat = "Please insert beaker.
" - if(pill_maker) - if(loaded_pill_bottle) - dat += "Eject Pill Bottle \[[length(loaded_pill_bottle.contents)]/[loaded_pill_bottle.max_storage_space]\]

" - else - dat += "No pill bottle inserted.

" - dat += "Close" - else - dat += "Eject beaker and Clear Buffer

" - if(pill_maker) - if(loaded_pill_bottle) - dat += "Eject [loaded_pill_bottle] \[[length(loaded_pill_bottle.contents)]/[loaded_pill_bottle.max_storage_space]\]
" - dat += "Add label to [loaded_pill_bottle] \[[length(loaded_pill_bottle.contents)]/[loaded_pill_bottle.max_storage_space]\]
" - dat += "Set color to [loaded_pill_bottle] \[[length(loaded_pill_bottle.contents)]/[loaded_pill_bottle.max_storage_space]\]

" - dat += "Transfer [loaded_pill_bottle] \[[length(loaded_pill_bottle.contents)]/[loaded_pill_bottle.max_storage_space]\] to the smartfridge

" - else - dat += "No pill bottle inserted.

" - if(!connected && pill_maker) - dat += "Connect Smartfridge

" - if(!beaker.reagents.total_volume) - dat += "Beaker is empty." - else - dat += "Add to buffer:
" - for(var/datum/reagent/G in beaker.reagents.reagent_list) - dat += "[G.name] , [G.volume] Units - " - dat += "1 " - dat += "5 " - dat += "10 " - dat += "30 " - dat += "60 " - dat += "All " - dat += "Custom
" - dat += "All reagents
" - - dat += "
Transfer to [(!mode ? "disposal" : "beaker")]:
" - if(reagents.total_volume) - for(var/datum/reagent/N in reagents.reagent_list) - dat += "[N.name] , [N.volume] Units - " - dat += "1 " - dat += "5 " - dat += "10 " - dat += "30 " - dat += "60 " - dat += "All " - dat += "Custom
" - dat += "All reagents
" - else - dat += "Empty
" - if(!condi) - if(pill_maker) - dat += "

Create pill (60 units max)
" - dat += "Create multiple pills
" - dat += "Create bottle (60 units max)" - if(connected) - dat += "
Store bottle in smartfridge (60 units max)" - if(vial_maker) - dat += "

Create vial (30 units max)" - if(connected) - dat += "
Store vial in smartfridge (30 units max)" - else - dat += "Create bottle (50 units max)" - if(!condi) - show_browser(user, "[name] menu:

[dat]", name, "chem_master", "size=460x520") - else - show_browser(user, "Condimaster menu:

[dat]", name, "chem_master") - return /obj/structure/machinery/chem_master/proc/cleanup() SIGNAL_HANDLER diff --git a/code/modules/reagents/chemistry_reagents/medical.dm b/code/modules/reagents/chemistry_reagents/medical.dm index ce6c03aee171..a30fcfe28f98 100644 --- a/code/modules/reagents/chemistry_reagents/medical.dm +++ b/code/modules/reagents/chemistry_reagents/medical.dm @@ -174,6 +174,8 @@ PROPERTY_ANTIHALLUCINOGENIC = 2, PROPERTY_FOCUSING = 6, PROPERTY_CURING = 4, + PROPERTY_OCULOPEUTIC = 2, + PROPERTY_NEUROPEUTIC = 2, ) flags = REAGENT_TYPE_MEDICAL diff --git a/code/modules/shuttle/computers/dropship_computer.dm b/code/modules/shuttle/computers/dropship_computer.dm index eb56ab328052..53755e628763 100644 --- a/code/modules/shuttle/computers/dropship_computer.dm +++ b/code/modules/shuttle/computers/dropship_computer.dm @@ -29,6 +29,14 @@ var/linked_lz var/can_change_shuttle = FALSE + var/faction = FACTION_MARINE + + /// If this computer should respect the faction variable of destination LZ + var/use_factions = TRUE + +/obj/structure/machinery/computer/shuttle/dropship/flight/upp + req_one_access = list(ACCESS_UPP_FLIGHT) + faction = FACTION_UPP /obj/structure/machinery/computer/shuttle/dropship/flight/Initialize(mapload, ...) . = ..() @@ -41,6 +49,8 @@ /obj/structure/machinery/computer/shuttle/dropship/flight/proc/get_landing_zones() . = list() for(var/obj/docking_port/stationary/marine_dropship/dock in SSshuttle.stationary) + if(use_factions && dock.faction != faction) + continue if(istype(dock, /obj/docking_port/stationary/marine_dropship/crash_site)) continue . += list(dock) diff --git a/code/modules/shuttle/shuttles/dropship.dm b/code/modules/shuttle/shuttles/dropship.dm index 857968b56904..273e225dcab1 100644 --- a/code/modules/shuttle/shuttles/dropship.dm +++ b/code/modules/shuttle/shuttles/dropship.dm @@ -115,7 +115,7 @@ for(var/area/checked_area in shuttle_areas) for(var/mob/living/carbon/xenomorph/checked_xeno in checked_area) - if(checked_xeno.stat == DEAD || (FACTION_MARINE in checked_xeno?.iff_tag.faction_groups)) + if(checked_xeno.stat == DEAD || (FACTION_MARINE in checked_xeno.iff_tag?.faction_groups)) continue var/name = "Unidentified Lifesigns" var/input = "Unidentified lifesigns detected onboard. Recommendation: lockdown of exterior access ports, including ducting and ventilation." @@ -209,6 +209,7 @@ var/auto_open = FALSE var/landing_lights_on = FALSE var/xeno_announce = FALSE + var/faction = FACTION_MARINE /obj/docking_port/stationary/marine_dropship/Initialize(mapload) . = ..() @@ -331,6 +332,9 @@ SEND_GLOBAL_SIGNAL(COMSIG_GLOB_GROUNDSIDE_FORSAKEN_HANDLING) SEND_GLOBAL_SIGNAL(COMSIG_GLOB_HIJACK_LANDED) +/obj/docking_port/stationary/marine_dropship/upp + faction = FACTION_UPP + /datum/map_template/shuttle/alamo name = "Alamo" shuttle_id = DROPSHIP_ALAMO @@ -342,3 +346,5 @@ /datum/map_template/shuttle/saipan name = "Saipan" shuttle_id = DROPSHIP_SAIPAN + + diff --git a/code/modules/shuttles/marine_ferry.dm b/code/modules/shuttles/marine_ferry.dm index 7b610d23141b..917edaa8a678 100644 --- a/code/modules/shuttles/marine_ferry.dm +++ b/code/modules/shuttles/marine_ferry.dm @@ -219,7 +219,7 @@ if(!queen_locked) for(var/turf/T in turfs_src) var/mob/living/carbon/xenomorph/xeno = locate(/mob/living/carbon/xenomorph) in T - if((xeno && xeno.stat != DEAD) && !(FACTION_MARINE in xeno?.iff_tag.faction_groups)) + if((xeno && xeno.stat != DEAD) && !(FACTION_MARINE in xeno.iff_tag?.faction_groups)) var/name = "Unidentified Lifesigns" var/input = "Unidentified lifesigns detected onboard. Recommendation: lockdown of exterior access ports, including ducting and ventilation." shipwide_ai_announcement(input, name, 'sound/AI/unidentified_lifesigns.ogg', ares_logging = ARES_LOG_SECURITY) diff --git a/code/modules/surgery/surgery_procedure.dm b/code/modules/surgery/surgery_procedure.dm index 1ec72ae77673..ceaedebc65f8 100644 --- a/code/modules/surgery/surgery_procedure.dm +++ b/code/modules/surgery/surgery_procedure.dm @@ -94,6 +94,13 @@ if(lying_required && target.body_position != LYING_DOWN) to_chat(user, SPAN_WARNING("[user == target ? "You need" : "[target] needs"] to be lying down for this operation!")) return FALSE + + for(var/mob/living/potential_blocker in get_turf(target)) + if(potential_blocker == user || potential_blocker == target) + continue + to_chat(user, SPAN_WARNING("You can't operate when you don't have enough space! Remove everybody else.")) + return FALSE + if(user == target) if(!self_operable) to_chat(user, SPAN_WARNING("You can't perform this operation on yourself!")) diff --git a/code/modules/tgui/tgui.dm b/code/modules/tgui/tgui.dm index 96c96a45a75c..c30c0b1d984f 100644 --- a/code/modules/tgui/tgui.dm +++ b/code/modules/tgui/tgui.dm @@ -107,6 +107,8 @@ /datum/asset/simple/namespaced/fontawesome)) flush_queue |= window.send_asset(get_asset_datum( /datum/asset/simple/namespaced/tgfont)) + flush_queue |= window.send_asset(get_asset_datum( + /datum/asset/json/icon_ref_map)) for(var/datum/asset/asset in src_object.ui_assets(user)) flush_queue |= window.send_asset(asset) if (flush_queue) diff --git a/code/modules/tgui_panel/telemetry.dm b/code/modules/tgui_panel/telemetry.dm index bd49596aa19a..951a82736b58 100644 --- a/code/modules/tgui_panel/telemetry.dm +++ b/code/modules/tgui_panel/telemetry.dm @@ -65,16 +65,9 @@ if (!ckey) return -/* - var/list/all_known_alts = GLOB.known_alts.load_known_alts() - var/list/our_known_alts = list() - - for (var/known_alt in all_known_alts) - if (known_alt[1] == ckey) - our_known_alts += known_alt[2] - else if (known_alt[2] == ckey) - our_known_alts += known_alt[1] -*/ + var/list/known_alts = list() + for(var/datum/view_record/known_alt/alts in DB_VIEW(/datum/view_record/known_alt, DB_COMP("player_ckey", DB_EQUALS, ckey))) + known_alts += alts.ckey var/list/found @@ -98,10 +91,11 @@ "address" = row["address"], "computer_id" = row["computer_id"], )) + */ - if (row["ckey"] in our_known_alts) + if (row["ckey"] in known_alts) continue - */ + if (world.IsBanned(row["ckey"], row["address"], row["computer_id"], real_bans_only = TRUE, is_telemetry = TRUE)) found = row diff --git a/code/modules/unit_tests/create_and_destroy.dm b/code/modules/unit_tests/create_and_destroy.dm index 7c829ad13e42..65dd310bdf21 100644 --- a/code/modules/unit_tests/create_and_destroy.dm +++ b/code/modules/unit_tests/create_and_destroy.dm @@ -33,6 +33,7 @@ GLOBAL_VAR_INIT(running_create_and_destroy, FALSE) ignore += typesof(/obj/effect/vehicle_spawner) // Always ought to have an associated escape menu. Any references it could possibly hold would need one regardless. ignore += subtypesof(/atom/movable/screen/escape_menu) + ignore += typesof(/obj/effect/timed_event) var/list/cached_contents = spawn_at.contents.Copy() var/original_turf_type = spawn_at.type diff --git a/code/modules/vehicles/hardpoints/armor/snowplow.dm b/code/modules/vehicles/hardpoints/armor/snowplow.dm index e7823854cff3..2d00c81b3f8a 100644 --- a/code/modules/vehicles/hardpoints/armor/snowplow.dm +++ b/code/modules/vehicles/hardpoints/armor/snowplow.dm @@ -1,6 +1,6 @@ /obj/item/hardpoint/armor/snowplow name = "\improper Snowplow" - desc = "Clears a path in the snow for friendlies" + desc = "Clears a path in the snow for friendlies. It doesn't seem to have much use beyond that." icon_state = "snowplow" disp_icon = "tank" diff --git a/code/modules/vehicles/hardpoints/hardpoint_ammo/autocannon_ammo.dm b/code/modules/vehicles/hardpoints/hardpoint_ammo/autocannon_ammo.dm index e3cb6bc466f6..28fc4872cf26 100644 --- a/code/modules/vehicles/hardpoints/hardpoint_ammo/autocannon_ammo.dm +++ b/code/modules/vehicles/hardpoints/hardpoint_ammo/autocannon_ammo.dm @@ -1,6 +1,6 @@ /obj/item/ammo_magazine/hardpoint/ace_autocannon - name = "Tank Autocannon Magazine" - desc = "A primary armament autocannon magazine" + name = "AC3-E Autocannon Magazine" + desc = "A 40 round magazine holding 20mm shells for the AC3-E autocannon." caliber = "20mm" icon_state = "ace_autocannon" w_class = SIZE_LARGE diff --git a/code/modules/vehicles/hardpoints/hardpoint_ammo/cupola_ammo.dm b/code/modules/vehicles/hardpoints/hardpoint_ammo/cupola_ammo.dm index 7eecc7d04511..0f06db75ce02 100644 --- a/code/modules/vehicles/hardpoints/hardpoint_ammo/cupola_ammo.dm +++ b/code/modules/vehicles/hardpoints/hardpoint_ammo/cupola_ammo.dm @@ -1,6 +1,6 @@ /obj/item/ammo_magazine/hardpoint/m56_cupola name = "M56 Cupola Magazine" - desc = "A secondary armament MG magazine" + desc = "A box of 500, 10x28mm caseless tungsten rounds for the M56D heavy machine gun system." caliber = "10x28mm" //Correlates to smartguns icon = 'icons/obj/items/weapons/guns/ammo_by_faction/uscm.dmi' icon_state = "cupola_1" diff --git a/code/modules/vehicles/hardpoints/hardpoint_ammo/gl_ammo.dm b/code/modules/vehicles/hardpoints/hardpoint_ammo/gl_ammo.dm index bce002de1e36..fbdced5a657e 100644 --- a/code/modules/vehicles/hardpoints/hardpoint_ammo/gl_ammo.dm +++ b/code/modules/vehicles/hardpoints/hardpoint_ammo/gl_ammo.dm @@ -1,6 +1,6 @@ /obj/item/ammo_magazine/hardpoint/tank_glauncher name = "M92T Grenade Launcher Magazine" - desc = "A secondary armament grenade magazine." + desc = "A magazine loaded with M40 grenades. Used to reload the magazine fed M92T Grenade launcher." caliber = "grenade" icon_state = "glauncher_2" w_class = SIZE_LARGE diff --git a/code/modules/vehicles/hardpoints/hardpoint_ammo/minigun_ammo.dm b/code/modules/vehicles/hardpoints/hardpoint_ammo/minigun_ammo.dm index b3f31d824ebf..1b49cd04b155 100644 --- a/code/modules/vehicles/hardpoints/hardpoint_ammo/minigun_ammo.dm +++ b/code/modules/vehicles/hardpoints/hardpoint_ammo/minigun_ammo.dm @@ -1,9 +1,9 @@ /obj/item/ammo_magazine/hardpoint/ltaaap_minigun name = "LTAA-AP Minigun Magazine" - icon = 'icons/obj/items/weapons/guns/ammo_by_faction/event.dmi' - desc = "A primary armament minigun magazine." + icon = 'icons/obj/items/weapons/guns/ammo_by_faction/uscm.dmi' + desc = "A magazine of 7.62x51mm AP ammo for a heavy minigun. Filled to the brim with highly precise armor-penetrating rounds." caliber = "7.62x51mm" //Correlates to miniguns - icon_state = "painless" + icon_state = "ltaa" w_class = SIZE_LARGE //Primary weapon ammo should probably all be the same w_class default_ammo = /datum/ammo/bullet/tank/minigun max_rounds = 500 diff --git a/code/modules/vehicles/hardpoints/hardpoint_ammo/primary_flamer_ammo.dm b/code/modules/vehicles/hardpoints/hardpoint_ammo/primary_flamer_ammo.dm index a164b38383b8..d70edf1e29dd 100644 --- a/code/modules/vehicles/hardpoints/hardpoint_ammo/primary_flamer_ammo.dm +++ b/code/modules/vehicles/hardpoints/hardpoint_ammo/primary_flamer_ammo.dm @@ -1,6 +1,6 @@ /obj/item/ammo_magazine/hardpoint/primary_flamer name = "DRG-N Offensive Flamer Unit Fuel Tank" - desc = "A primary armament flamethrower magazine." + desc = "Fuel tanks for the DRG-N Offensive Flamer. It contains a high-combustion napalm, capabale of burning through nearly anything." caliber = "High-Combustion Napalm" //correlates to flamer mags icon_state = "drgn_flametank" w_class = SIZE_LARGE diff --git a/code/modules/vehicles/hardpoints/hardpoint_ammo/secondary_flamer_ammo.dm b/code/modules/vehicles/hardpoints/hardpoint_ammo/secondary_flamer_ammo.dm index 8b40e209a147..ef75285a0cb9 100644 --- a/code/modules/vehicles/hardpoints/hardpoint_ammo/secondary_flamer_ammo.dm +++ b/code/modules/vehicles/hardpoints/hardpoint_ammo/secondary_flamer_ammo.dm @@ -1,6 +1,6 @@ /obj/item/ammo_magazine/hardpoint/secondary_flamer name = "LZR-N Flamer Unit Fuel Tank" - desc = "A secondary armament flamethrower magazine." + desc = "A napalm tank fitted to be accepted by the LZR-N Flamer." caliber = "UT-Napthal Fuel" //correlates to flamer mags icon_state = "flametank_large" w_class = SIZE_LARGE diff --git a/code/modules/vehicles/hardpoints/primary/autocannon.dm b/code/modules/vehicles/hardpoints/primary/autocannon.dm index 3e12f52be097..8148e5357dd8 100644 --- a/code/modules/vehicles/hardpoints/primary/autocannon.dm +++ b/code/modules/vehicles/hardpoints/primary/autocannon.dm @@ -1,6 +1,6 @@ /obj/item/hardpoint/primary/autocannon name = "\improper AC3-E Autocannon" - desc = "A primary autocannon for tanks that shoots explosive flak rounds" + desc = "A primary autocannon for tanks that shoots explosive flak rounds." icon_state = "ace_autocannon" disp_icon = "tank" diff --git a/code/modules/vehicles/hardpoints/primary/minigun.dm b/code/modules/vehicles/hardpoints/primary/minigun.dm index be44b86e2435..3ffe84d109b2 100644 --- a/code/modules/vehicles/hardpoints/primary/minigun.dm +++ b/code/modules/vehicles/hardpoints/primary/minigun.dm @@ -1,6 +1,6 @@ /obj/item/hardpoint/primary/minigun name = "\improper LTAA-AP Minigun" - desc = "A primary weapon for tanks that spews bullets" + desc = "A primary LTAA Minigun utelizing AP ammo for tanks. Its six barrels are heavy and take a bit to fully spin up." icon_state = "ltaaap_minigun" disp_icon = "tank" @@ -26,7 +26,7 @@ "8" = list(-77, 0) ) - scatter = 18 + scatter = 18 //base scatter, modified by stake_delay_mult gun_firemode = GUN_FIREMODE_AUTOMATIC gun_firemode_list = list( GUN_FIREMODE_AUTOMATIC, diff --git a/code/modules/vehicles/hardpoints/secondary/cupola.dm b/code/modules/vehicles/hardpoints/secondary/cupola.dm index 70b9f9a4889f..29e591f4cbc3 100644 --- a/code/modules/vehicles/hardpoints/secondary/cupola.dm +++ b/code/modules/vehicles/hardpoints/secondary/cupola.dm @@ -1,6 +1,6 @@ /obj/item/hardpoint/secondary/m56cupola name = "\improper M56 Cupola" - desc = "A secondary weapon for tanks that shoots bullets" + desc = "A secondary weapon for tanks. It's a M56D that was adjusted to be permanently fixed to its mount. You swear you can still see some weld tacks." icon_state = "m56_cupola" disp_icon = "tank" diff --git a/code/modules/vehicles/hardpoints/secondary/grenade_launcher.dm b/code/modules/vehicles/hardpoints/secondary/grenade_launcher.dm index 060f1f7ae9ef..ee06e7405e07 100644 --- a/code/modules/vehicles/hardpoints/secondary/grenade_launcher.dm +++ b/code/modules/vehicles/hardpoints/secondary/grenade_launcher.dm @@ -1,6 +1,6 @@ /obj/item/hardpoint/secondary/grenade_launcher name = "\improper M92T Grenade Launcher" - desc = "A secondary weapon for tanks that shoots grenades." + desc = "A magazine fed secondary grenade launcher for tanks that shoots M40 grenades." icon_state = "glauncher" disp_icon = "tank" diff --git a/code/modules/vehicles/hardpoints/secondary/tow.dm b/code/modules/vehicles/hardpoints/secondary/tow.dm index 7b0e0ea90a27..c15f8aa1ef63 100644 --- a/code/modules/vehicles/hardpoints/secondary/tow.dm +++ b/code/modules/vehicles/hardpoints/secondary/tow.dm @@ -1,6 +1,6 @@ /obj/item/hardpoint/secondary/towlauncher name = "\improper TOW Launcher" - desc = "A secondary weapon for tanks that shoots rockets" + desc = "A secondary weapon for tanks that shoots rockets. It loads multiple rockets at once." icon_state = "tow_launcher" disp_icon = "tank" diff --git a/code/modules/vehicles/hardpoints/wheels/treads.dm b/code/modules/vehicles/hardpoints/wheels/treads.dm index 31dccab7bdb8..e4bb68552b47 100644 --- a/code/modules/vehicles/hardpoints/wheels/treads.dm +++ b/code/modules/vehicles/hardpoints/wheels/treads.dm @@ -1,6 +1,6 @@ /obj/item/hardpoint/locomotion/treads name = "\improper Treads" - desc = "Integral to the movement of the vehicle." + desc = "Integral to the movement of the vehicle. Steel reinforced rubber tracks, they allow the tank to move faster but in turn need repairs more often." icon_state = "treads" disp_icon = "tank" @@ -18,7 +18,7 @@ /obj/item/hardpoint/locomotion/treads/robust name = "\improper Reinforced Treads" - desc = "These treads are made of a tougher material and are more durable. However, the extra weight slows the tank down." + desc = "These treads are made of solid steel plates and are more durable. However, the extra weight slows the tank down." health = 500 acid_resistant = TRUE diff --git a/code/modules/vehicles/multitile/multitile.dm b/code/modules/vehicles/multitile/multitile.dm index bcd48c3633be..398983035837 100644 --- a/code/modules/vehicles/multitile/multitile.dm +++ b/code/modules/vehicles/multitile/multitile.dm @@ -384,6 +384,9 @@ //vehicle is dead, no more lights if(health <= 0 && lighting_holder.light_range) lighting_holder.set_light_on(FALSE) + else + if(!lighting_holder.light) + lighting_holder.set_light_on(TRUE) update_icon() /* diff --git a/code/modules/vehicles/multitile/multitile_interaction.dm b/code/modules/vehicles/multitile/multitile_interaction.dm index 84b1d4de0efc..d7ecdf7ba543 100644 --- a/code/modules/vehicles/multitile/multitile_interaction.dm +++ b/code/modules/vehicles/multitile/multitile_interaction.dm @@ -196,6 +196,8 @@ return health = min(health + max_hp/100 * (5 / amount_fixed_adjustment), max_hp) + if(!lighting_holder.light) + lighting_holder.set_light_on(TRUE) if(WT) WT.remove_fuel(1, user) diff --git a/colonialmarines.dme b/colonialmarines.dme index 443b79857d0a..e8d8c2d73d3d 100644 --- a/colonialmarines.dme +++ b/colonialmarines.dme @@ -131,6 +131,7 @@ #include "code\__DEFINES\dcs\signals\signals_datum.dm" #include "code\__DEFINES\dcs\signals\signals_global.dm" #include "code\__DEFINES\dcs\signals\signals_subsystem.dm" +#include "code\__DEFINES\dcs\signals\atom\signals_area.dm" #include "code\__DEFINES\dcs\signals\atom\signals_atom.dm" #include "code\__DEFINES\dcs\signals\atom\signals_cell.dm" #include "code\__DEFINES\dcs\signals\atom\signals_item.dm" @@ -349,6 +350,7 @@ #include "code\datums\fluff_emails.dm" #include "code\datums\global_variables.dm" #include "code\datums\http.dm" +#include "code\datums\internet_media.dm" #include "code\datums\lazy_template.dm" #include "code\datums\map_config.dm" #include "code\datums\matrix_editor.dm" @@ -417,6 +419,7 @@ #include "code\datums\components\orbiter.dm" #include "code\datums\components\overlay_lighting.dm" #include "code\datums\components\rename.dm" +#include "code\datums\components\resin_cleanup.dm" #include "code\datums\components\speed_modifier.dm" #include "code\datums\components\status_effect_component.dm" #include "code\datums\components\temporary_mute.dm" @@ -1001,6 +1004,7 @@ #include "code\game\machinery\vending\vendor_types\antag\antag_gear.dm" #include "code\game\machinery\vending\vendor_types\antag\antag_guns_snowflake.dm" #include "code\game\machinery\vending\vendor_types\antag\antag_guns_sorted.dm" +#include "code\game\machinery\vending\vendor_types\antag\antag_predator.dm" #include "code\game\machinery\vending\vendor_types\crew\combat_correspondent.dm" #include "code\game\machinery\vending\vendor_types\crew\commanding_officer.dm" #include "code\game\machinery\vending\vendor_types\crew\corporate_liaison.dm" @@ -1035,6 +1039,7 @@ #include "code\game\objects\effects\afterimage.dm" #include "code\game\objects\effects\aliens.dm" #include "code\game\objects\effects\bloodsplatter.dm" +#include "code\game\objects\effects\client_image_holder.dm" #include "code\game\objects\effects\effect.dm" #include "code\game\objects\effects\elevator.dm" #include "code\game\objects\effects\glowshroom.dm" @@ -1500,6 +1505,7 @@ #include "code\modules\admin\view_variables\view_variables.dm" #include "code\modules\almayer\machinery.dm" #include "code\modules\almayer\shakeship.dm" +#include "code\modules\almayer\ship_memorial.dm" #include "code\modules\almayer\weaponhits.dm" #include "code\modules\animations\animation_library.dm" #include "code\modules\assembly\assembly.dm" @@ -1517,6 +1523,7 @@ #include "code\modules\asset_cache\asset_list.dm" #include "code\modules\asset_cache\asset_list_items.dm" #include "code\modules\asset_cache\assets\fontawesome.dm" +#include "code\modules\asset_cache\assets\icon_ref_map.dm" #include "code\modules\asset_cache\assets\medals.dm" #include "code\modules\asset_cache\assets\tgfont.dm" #include "code\modules\asset_cache\assets\tgui.dm" @@ -1526,6 +1533,7 @@ #include "code\modules\autowiki\autowiki.dm" #include "code\modules\autowiki\pages\_page.dm" #include "code\modules\autowiki\pages\guns.dm" +#include "code\modules\autowiki\pages\supply_packs.dm" #include "code\modules\autowiki\pages\xeno_stats.dm" #include "code\modules\buildmode\bm-mode.dm" #include "code\modules\buildmode\buildmode.dm" @@ -1553,6 +1561,7 @@ #include "code\modules\clans\ship.dm" #include "code\modules\client\client_defines.dm" #include "code\modules\client\client_procs.dm" +#include "code\modules\client\color_picker.dm" #include "code\modules\client\country_flags.dm" #include "code\modules\client\player_details.dm" #include "code\modules\client\preferences.dm" @@ -1859,6 +1868,7 @@ #include "code\modules\logging\log_category.dm" #include "code\modules\logging\log_holder.dm" #include "code\modules\mapping\map_template.dm" +#include "code\modules\mapping\mapping_helpers.dm" #include "code\modules\mapping\merge_conflicts.dm" #include "code\modules\mapping\preloader.dm" #include "code\modules\mapping\reader.dm" diff --git a/config/example/config.txt b/config/example/config.txt index 07dfe6f1b839..604f0d4f6559 100644 --- a/config/example/config.txt +++ b/config/example/config.txt @@ -236,6 +236,11 @@ AUTOOOCMUTE ## The default value assumes youtube-dl is in your system PATH # INVOKE_YOUTUBEDL youtube-dl +## cobalt.tools is an alternative player used by Play Internet Sound, if +## both INVOKE_YOUTUBEDL and COBALT_BASE_API are specified. If only +## COBALT_BASE_API is specified, it will exclusively cobalt.tools. +# COBALT_BASE_API https://api.cobalt.tools/ + ## Default gamemode to auto-switch back to after a round has concluded GAMEMODE_DEFAULT Extended diff --git a/html/changelogs/AutoChangeLog-pr-7297.yml b/html/changelogs/AutoChangeLog-pr-7297.yml deleted file mode 100644 index e53b4345bf7b..000000000000 --- a/html/changelogs/AutoChangeLog-pr-7297.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "Detective-Google" -delete-after: True -changes: - - qol: "the HM vendor's recommendations have been tweaked to be easier to understand." \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-7300.yml b/html/changelogs/AutoChangeLog-pr-7300.yml deleted file mode 100644 index 8c8243e438e5..000000000000 --- a/html/changelogs/AutoChangeLog-pr-7300.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "Tyranicranger4" -delete-after: True -changes: - - qol: "Increased the ChemMaster reagent buffer from 300 to 500" \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-7319.yml b/html/changelogs/AutoChangeLog-pr-7319.yml deleted file mode 100644 index d0edc4559af1..000000000000 --- a/html/changelogs/AutoChangeLog-pr-7319.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "ihatethisengine" -delete-after: True -changes: - - rscadd: "Military CC now can take broadcasting camera from CC vendor." \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-7327.yml b/html/changelogs/AutoChangeLog-pr-7327.yml deleted file mode 100644 index 1a0ed13946b8..000000000000 --- a/html/changelogs/AutoChangeLog-pr-7327.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "Willzadl" -delete-after: True -changes: - - spellcheck: "fixed typos in the names of the SEATech vendor and the chef's apron" \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-7332.yml b/html/changelogs/AutoChangeLog-pr-7332.yml deleted file mode 100644 index 0bb84befe00d..000000000000 --- a/html/changelogs/AutoChangeLog-pr-7332.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "zzzmike" -delete-after: True -changes: - - qol: "xenos get the same bomb decryption timer notification that preds get" \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-7337.yml b/html/changelogs/AutoChangeLog-pr-7337.yml deleted file mode 100644 index 4689d47ca1a5..000000000000 --- a/html/changelogs/AutoChangeLog-pr-7337.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "harryob" -delete-after: True -changes: - - bugfix: "the unbuckled message is now slightly more accurate" \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-7338.yml b/html/changelogs/AutoChangeLog-pr-7338.yml deleted file mode 100644 index 2d1c4700e5d4..000000000000 --- a/html/changelogs/AutoChangeLog-pr-7338.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "realforest2001" -delete-after: True -changes: - - admin: "Moderators now have access to remote control as intended." \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-7354.yml b/html/changelogs/AutoChangeLog-pr-7354.yml deleted file mode 100644 index 5848d4470150..000000000000 --- a/html/changelogs/AutoChangeLog-pr-7354.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "efzapa" -delete-after: True -changes: - - bugfix: "Chinook Dock now works." \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-7498.yml b/html/changelogs/AutoChangeLog-pr-7498.yml new file mode 100644 index 000000000000..4a77657379ac --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-7498.yml @@ -0,0 +1,5 @@ +author: "Joe Lampost" +delete-after: True +changes: + - code_imp: "Makes using LOOC use your real name instead of unknown" + - code_imp: "Sding preds now have their name shown instead of unknown" \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-7500.yml b/html/changelogs/AutoChangeLog-pr-7500.yml new file mode 100644 index 000000000000..2074f2e0d4fc --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-7500.yml @@ -0,0 +1,4 @@ +author: "TheDonkified" +delete-after: True +changes: + - code_imp: "Xeno ability names in chat and stats page changed to match the names for xeno ability buttons" \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-7504.yml b/html/changelogs/AutoChangeLog-pr-7504.yml new file mode 100644 index 000000000000..6da769f327b7 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-7504.yml @@ -0,0 +1,4 @@ +author: "Nomoresolvalou" +delete-after: True +changes: + - rscadd: "Hunters can now put their bone trophies on their armor to have it show up there instead of on their mesh." \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-7506.yml b/html/changelogs/AutoChangeLog-pr-7506.yml new file mode 100644 index 000000000000..5517a4020098 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-7506.yml @@ -0,0 +1,4 @@ +author: "VileBeggar" +delete-after: True +changes: + - bugfix: "Memorial ghosts will now face the user instead of facing south." \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-7507.yml b/html/changelogs/AutoChangeLog-pr-7507.yml new file mode 100644 index 000000000000..6a531d703552 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-7507.yml @@ -0,0 +1,6 @@ +author: "Drathek" +delete-after: True +changes: + - balance: "Fix XvX landmarks being used for roundstart oviable locations" + - balance: "Roundstart oviable locations are expanded on Kurjevo, Shivas, Trijent Dam, Chances's Claim, and Fiorina" + - bugfix: "XvX now makes all areas oviable" \ No newline at end of file diff --git a/html/changelogs/archive/2024-10.yml b/html/changelogs/archive/2024-10.yml index e68a977a0a91..c159768eaf68 100644 --- a/html/changelogs/archive/2024-10.yml +++ b/html/changelogs/archive/2024-10.yml @@ -191,3 +191,259 @@ - balance: Blood vendors restock blood bags when connected via medlink (requires 20 mins from round start) - maptweak: Added more medlinks to the Almayer +2024-10-23: + Detective-Google: + - qol: the HM vendor's recommendations have been tweaked to be easier to understand. + Tyranicranger4: + - qol: Increased the ChemMaster reagent buffer from 300 to 500 + Willzadl: + - spellcheck: fixed typos in the names of the SEATech vendor and the chef's apron + efzapa: + - bugfix: Chinook Dock now works. + harryob: + - bugfix: the unbuckled message is now slightly more accurate + ihatethisengine: + - rscadd: Military CC now can take broadcasting camera from CC vendor. + realforest2001: + - admin: Moderators now have access to remote control as intended. + zzzmike: + - qol: xenos get the same bomb decryption timer notification that preds get +2024-10-25: + BOBAMA: + - bugfix: Fixes splint removal dupe bug +2024-10-27: + Ansekishoku: + - rscadd: Added 4 new hairs to the game. + BeagleGaming1: + - rscadd: Added keybindings to let humans pixel shift objects they are holding + BlackCrystalic: + - bugfix: No more multiple surgeries on same operation table for 2x and more patients + at same time + - bugfix: Now ejecting chambered bullet from smartgun drop /datum/ammo/bullet/smartgun + type bullet only + - code_imp: squads now have lists for roles limit and taken number, not hardcoded + role list in vars, plus one letter vars change + - bugfix: Underbarel flamer no more can drain fuel from empty tanks + - qol: Discord Certify only visible if you don't have linked discord acc + Blundir: + - rscadd: adds unique APOLLO pda to CE vendor + - imageadd: resprite of majority of attachments + - bugfix: fixes double bun hairstyle overriding normal bun hairstyle + Byte-Boxer: + - rscadd: Added 12 new hairstyles for marines! + CapCamIII: + - balance: The contractor ABR40 now fires slightly faster and does a bit more damage, + also having an integrated magharn. + - rscadd: Shuffles around contractor ABR40 loadout, sacrificing the smoke grenades + and holotargeting rounds for a bit more normal ammo. + Comxy: + - bugfix: Fixes wall damage multipliers from reflecting to mobs. + Drdodo: + - code_imp: Added the Engineer Kit pouch to the CE vendor + - code_imp: Added the M277 pattern construction rig to the CE vendor + - code_imp: Added the Small Tool Webbing to the CE vendor + - code_imp: Added the M276 G8-A General Utility Pouch to the CE vendor + - code_imp: Added a toolbelt section with the new changes to the vendor + GoldenDarkness55: + - rscadd: Added a warning to thermobaric missile direct fire. + Ibessas: + - bugfix: Prevent tackle noises from Queen corpses + Katskan: + - rscadd: Pen light added to synthetic points vendor + - rscdel: Removed stethoscope from the clothing vendor, left the one in the points + vendor + Killfish: + - qol: Paralyzing Slash now makes you slash regardless of intent for the duration + of the buff. + Nomoresolvalou, Thwomper: + - rscadd: Added 1 new hunter armor and 5 new hunter masks + - imageadd: Added sprites for the new cosmetics, made by Thwomper + Red-byte3D: + - code_imp: Praetorian one letter vars begone + - code_imp: fix warrior single letter wars + Rem1, Mistfrag: + - spellcheck: Converts UPP Ranks to follow USSR ranks without the silly looking + Latinization. + Sargeantmuffinman: + - qol: Added auto wiki for requisitions. + So-mii: + - balance: Removes flash protection from BiMex shades + Stakeyng: + - qol: more items count as helmet accessories (Multiple glasses, walkman/cassettes/cassette + pouch, playing cards, uniform patches, candle) + TheManWithNoHands: + - balance: rebalances hornet shells, increasing the spread cone to 25, inceasing + the projectile count to 15, lowers projectile dmg to 8. + - balance: Inceases Star shell fuel time from 30-60 seconds to 4.5- 5.5 minutes. + Increases starshell applyd fire stacks from 1 to 2 + - code_imp: changed the icon path of LTAA mags to be not literally the painless + mag + - imageadd: changed LTAA-AP minigun, 20m Autocanon, DRG-N flamer, LTAA-AP mag, DRG-N + mag, to use green tank camo + VileBeggar: + - rscadd: Dual-tube shotguns (like the HG-37) can now rechamber their currently + loaded shell with the other tube. This allows you to instantly switch from, + e.g. a tube filled with buck to one filled with slugs, and fire the slug immediately + just by switching shotgun tubes. + - rscadd: You can now take the time to remember your fallen friends at the memorial. + Don't be alone when trying to remember. It hurts to remember. + Zenith00000: + - imageadd: replaced some old icons from floors.dmi + cuberound: + - rscadd: flag for HvH to turn all internal bleeding into normal one + - balance: splints act as and look like nanosplints in faction clash + deathrobotpunch: + - balance: more items have been added to the arcade machine prize pool. + detectivegoogle: + - rscadd: the CL now gets a briefing about the lore of the active map, assuming + one has been written. + efzapa: + - balance: Escape Pods can no longer be burrowed into or tunneled. + harryob: + - bugfix: fixes being able to use hotkeys for humans when you're a dead human + kiVts: + - bugfix: Dropships notify about hostile xeno flying on them again. + thevandie: + - rscadd: Fiorina Corporate Liaison + - rscadd: Kutjevo Corporate Liaison + - rscadd: WY Headsets to WY roles on Fiorina +2024-10-28: + Blundir: + - rscadd: returned bimex description and flash protection, but price of it inscread + from 2 to 5 pref points + - rscadd: minimap icons for all factions, roles, etc + - code_imp: tweaked how icons are assembled, added support for custom icon background + on equipment preset + - imageadd: added a lot of new minimap icons + Killfish: + - balance: Added Stim and Medical Chem draining effects to Sentinel's Slowing Spit. + LordJike: + - rscadd: ASO now starts with a senior command headset (and thus access to the MP + radio channel.) and can also get a new one from their locker. + Red-byte3D: + - code_imp: Sentinel proper vars + SpypigDev: + - rscadd: Pressurized Chemical Dispenser + Tyranicranger4: + - balance: The surgical case can now hold Surgical Line, Synthetic-Graft, and Fix-O-Vein + (for real this time) + Venuska1117: + - code_imp: Removed code for some boudlers, removed code makes boulders meltable + and destructable by large explosions. + cuberound: + - bugfix: vehicle light turns back on after the vehicle is fixed + deathrobotpunch: + - balance: buffed the stun subtype of rubber bullets to have hit accuracy tier 4 + private-tristan: + - balance: The Lever action rifles R4T and XM88 now begin falloff at 7 tiles instead + of 0. +2024-10-29: + Ansekishoku: + - bugfix: Buckshot additional projectiles no more miss the target when they get + stunned by the main projectile. + - bugfix: Fixed autolathes printing blowtorches with fuel. + - spellcheck: Added description to blowtorches. + Ansekishokuu: + - qol: Squad engineer vendors now have welding visor. + - qol: Organized the corpsman vendor so that the perixadon revival mix is near the + tricordrazine revival mix. + BeagleGaming1: + - bugfix: fixed a bug with the pixel shift keybindings + Blundir: + - rscadd: you can no longer see or talk with a hugger on your face + - bugfix: welding protection now adds correct amount of vision impairment + - bugfix: blindfold now actually blinds + - bugfix: fixed larva bursting on mob image not working + - soundadd: new hugging sounds to humans + - soundadd: bursting screams to humans and yautja + - imageadd: added yautja bursting and afterburst gore icons + Joe Lampost, Beaglegaming, Sleepynecrons: + - rscadd: Adds two new vendors for preds + - rscadd: Re-sprites all but one of the pred weapons + - balance: Gives thwei brain and eye healing properties. + - bugfix: fixes the on mobs for retro caster + - rscdel: Removes being able to choose what accessory you spawn with (adds it to + the vendor) + - rscdel: Removes the conscious check for big SD laugh so SDing a dead pred triggers + the laugh + - rscdel: Removes all of the code related to claim gear + - refactor: refactored wrist blade code (now bracer attachments) + - soundadd: adds 3 pairs of deployment and retracting sounds for each current bracer + attachment + - soundadd: adds a sound for attaching attachments to the bracer + - maptweak: Re maps the predator blooded area to be more open + - maptweak: Removes the lightsabre from the pred ship + - rscadd: adds two new pred masks + Katskan: + - balance: enable generation selection to affect species and skillset for synthetics + - balance: removed generation 3 leadership skills + - balance: increased generation 1/2 engineering and construction skills + - bugfix: fixed the Solaris PMC nightmare spawn being incorrect skillset + MistChristmas, Private-Tristan: + - balance: You can no longer crawl while being grabbed by a xenomorph. + TheManWithNoHands: + - rscadd: 'Added vendor description to: AC3-E autocanon, LTAA-AP Minigun, DRG-N + Flamer, LTB canon, LZR-N Flamer, TOW launcher, M56cupola, and M92T Grenade Launcher.' + - rscadd: 'Expanded the description of: LTAA-AP Minigun, TOW launcher, M56cupola, + M92T Grenade Launcher and the magazins of the AC3-E autocanon, LTAA-AP Minigun, + DRG-N Flamer, LZR-N Flamer, and M92T Grenade Launcher. As well as for the snowplow + hardpoint and heavy and ligth treads.' + Unknownity: + - bugfix: Fixes missing paygrades,ranks and comms titles to PMC Survivors and PMC + Medic. Fixes certain PMC Survivors having incorrect headsets. + - balance: PMC Synthvivor skillset has been buffed to be consistent with the regular + PMC Synth. PMC Synthvivor's loadout has been nerfed. Dutch Lifesaver belt (used + by PMCs and DDs) has been buffed with improved splints and kits. + - rscadd: PMC Synthetics were granted a higher budget and they gained a Maintenance + Jack in their loadout. + VileBeggar: + - balance: Egg morphers now generate facehuggers on their own, up to 6 in total + every 2 minutes. Bodies can no longer be fed to egg morphers. Eggs can now get + planted beneath light fixtures and nested mobs. Egg morphers can no longer be + built in tallgrass. + - qol: Carriers can now automatically fill egg morphers with their own egg supply + by using the Retrieve Egg ability on them. + - balance: shotgun slugs have had their accurate range increased to 8, and their + accuracy tripled. any targets shot within 8 tiles will always be hit. incendiary + have had a milder accuracy increase. + blackcrystall: + - bugfix: fix of squad marines not getting squads + cuberound: + - balance: containers are destructible with bullets and xeno slashing + - rscadd: faction shuttle computers functionality + - bugfix: SMES units made explosion proof + ihatethisengine: + - balance: limbs are now only be delimb-able if they were fractured BEFORE the hit +2024-10-30: + BeagleGaming1: + - bugfix: Fixes chat showing "You fire the plasma caster" when firing an energy + weapon after equipping the plasma caster + - bugfix: Bracer attachments get properly deleted on bracer destruction + - bugfix: One bracer attachment cannot be attached to both bracer attachment slots + Blundir: + - rscadd: new minimap icons for numerous things + - bugfix: fixed squads having incorrect colors on minimap + Joe lampost: + - bugfix: Changes what armor is spawned from the pred vendor + Nanu, HarryOb, Spartanbobby: + - rscadd: Added a feature that will delete weeds in the surrounding area of the + Marines selected landing zone, and keep them subject to be unweedable for the + next eight minutes. + - balance: Maps currently affected by this change/test - Big Red, LV-624, Kutjevo, + New Varadero, Sorokyne Strata, Prison Station Science Annex, Shiva's Snowball. + - maptweak: Slight area tweaks and changes to allow more subjective control over + areas. + - maptweak: Big Red, South West Cave now has timed blockers to hinder a SW hive + and Marines alike from going a straight line to attack each other. These blockers + dissappear in a "cavein" at fourty minutes, Roughly on average twenty minutes + after marines land. + - balance: Queens can only ovi and build the hivecore on "their" side of the map + at roundstart, this protection drops off 25min from roundstart. + harryob: + - bugfix: stops a crisis in the part fabricator point economy by preventing infinite + money generation through cancelling items in the queue + joookschad: + - qol: Toy mechs will now fit into storage. +2024-10-31: + SpartanBobby: + - maptweak: Rearranges Almayer Upper Medical to accommodate a Psychiatric Care Unit diff --git a/html/changelogs/archive/2024-11.yml b/html/changelogs/archive/2024-11.yml new file mode 100644 index 000000000000..5abda76e2da4 --- /dev/null +++ b/html/changelogs/archive/2024-11.yml @@ -0,0 +1,144 @@ +2024-11-01: + Ansekishoku: + - bugfix: Headsets no longer accept multiple encryption keys of the same kind. + BeagleGaming1: + - bugfix: Bracers properly update owner when unequipped or worn + - rscadd: When gibbed, the ghost will stay as the character instead of turning into + a brain + Blundir: + - rscadd: dead marines now have minimap revival icons animated, different icons + depending on how much time is left + - bugfix: fixed working joe not being able to use ai lockdown/nerve gas + GoldenDarkness55: + - balance: OT M40 grenade casing volume from 90 to 120, power 175 to 180, falloff + 75 to 80, shards 32 to 40, fire intensity 20 to 25, metal cost from 3750 to + 4250 which is 12% of a single metal sheet + - balance: OT M15 grenade casing power 215 to 220, falloff 90 to 120, shards 32 + to 80, fire radius from 5 to 6, fire intensity 20 to 30 and fire duration 24 + to 32 + - balance: OT claymore casing power 105 to 100, falloff 60 to 80, shards 32 to 40, + fire radius 5 to 4, fire intensity 12 to 20 + - balance: OT C4 casing damage multiplier against walls from 1.5 to 2, power 260 + to 280, falloff 90 to 120, shards 64 to 100, fire radius 6 to 4, fire intensity + 26 to 50, duration 30 to 20 + - balance: OT rocket casing power 240 to 220, falloff 90 to 160, shards 64 to 80, + fire radius 6 to 4, fire intensity 40 to 45 + - balance: OT mortar casing falloff 90 to 130, shards 128 to 200, fire intensity + 40 to 45 + - balance: Custom rocket accuracy raised from tier 2 to 5 and range lowered from + 8 to 7 + Red-byte3D: + - balance: base ravager empowered charge stun is increased from 1.3 to 1.6 + Steelpoint: + - maptweak: The north-east and south-east areas of Shivas Snowball start of pre-weeded, + in addition to a few resin doors and walls near the main entrances to hive locations. + ghostsheet: + - balance: Beserker Ravs no longer heals while on fire. + harryob: + - rscadd: the chem master ui is now tgui, and faster. hopefully better + - server: server hosts can now configure a cobalt.tools api to provide media playing + with "COBALT_BASE_API" and "COBALT_API_KEY" + realforest2001: + - bugfix: No store cryo pods now work as intended. +2024-11-02: + Drathek: + - ui: The ghost observer tacmap will now scroll both horizontally and vertically + as needed to display a large map. + - ui: The TGUI panels for tacmaps and drawings have been polished to utilize more + minimap space fully. + - refactor: Refactored minimap generation code to calculate min and max faster, + to more aggressively trim minimaps, and to support larger minimaps (was 480px + now 512px). + - bugfix: Fixes an issue where predator tacmap would take over the ghost tacmap + preventing it from opening for observers + - bugfix: Fix hive core placement restriction + Red-byte3D: + - balance: sg effective range nerfed to 5 + - balance: sg falloff increased + Sporticusmge: + - balance: Night Vision Optic now works 2 times longer, and recharge 2 times longer. + Squad Leader NVO prices changed, from 20 to 25. + Zenith00000: + - bugfix: fixed some un-needed code and added missing tiles + deathrobotpunch: + - balance: The Tactical compact nail gun is now available in the Chief Engineers + vendor. + private-tristan: + - balance: Forecon M39 spawn now has its spawn ammo in belt, instead of in satchel. +2024-11-03: + Ansekishoku: + - bugfix: Smartpack abilities no longer function if the user is dead. + GoldenDarkness55: + - balance: Cooldown multiplier for interrupting remote building raised from 2 to + 3 + - balance: Queen remote building modifier raised from 1 to 1.5 (slower, around 2.3-2.5s), + cooldown raised from 2s to 4s + - balance: Resin Whisperer remote building modifier raised from 2 to 2.5 (slower, + around 2.5s), cooldown raised from 1s to 2.5s + - balance: Sentinel neuro spit cooldown raised 1.5 to 2s, superslow 2.5 to 4s + - balance: Sentinel scatter spit scatter lowered 60 to 45, cooldown lowered 8s to + 6s + - balance: Sentinel paralyzing slash stuns after 3 seconds instead of 4 and lasts + 2.5 seconds from 2. +2024-11-04: + Drathek: + - bugfix: Fixes additional projectiles being fired from humans that placed a shotgun + sentry instead of the sentry. + - bugfix: Fixes cause_data for flamer sentries so now kills they make are explained + in the message and attributed to the kill counter for the sentry. + - bugfix: Fix reloading under barrel flamers with any reagent from a flamer tank + - ui: Fixed the ping relay buttons not displaying anything when clicked on the first + time. Now Button.Confirm.confirmContent will only replace children if it is + truthy. + - balance: Buffed SG armor penetration ammo damage falloff from 5 to 3. + VileBeggar: + - qol: You can now use the 'check status' verb and any stethoscope you might have + attached to your uniform directly by examining an adjacent human. + harryob: + - rscadd: a new tgui with better previews for the different skin colors / body types + / body sizes + - admin: you can add "known alts" to players, now + vero5123: + - bugfix: Special characters are now properly sanitized and removed in bug reports. +2024-11-05: + Drathek: + - code_imp: Enabled 3 more OD pragmas for linting and fixed some ambiguous usage + of In + Killfish: + - balance: Improved consistency of Scatter Spits accuracy. Now one of your projectiles + is guaranteed to to go in the direction you're aiming at, instead of potentially + going everywhere except where you're aiming and missing everything. + Nanu, HarryOb: + - code_imp: Adds some code so if you're above the pointcap on your loadout, items + will be removed to put you at the point cap limit. + Sargeantmuffinman: + - rscadd: Added more lore emails to the computers +2024-11-06: + BOBAMA: + - balance: You can now go on Ovi and build Hive Cores anywhere in the Atmospheric + Processor on Chance's Claim + - bugfix: bugged Shivas areas + - maptweak: Removed Sorokyne "hallway areas" + - balance: Areas on Sorokyne that were only CASable because of the "hallway areas" + can now just be CASd + Blundir: + - rscadd: XO spawning is now announced just like SEA/CO + detectivegoogle Drathek: + - balance: Morphers generate huggers twice as fast if queen is on ovi + efzapa: + - rscadd: All USCM Flag Officers now understand and can use Tactical Sign Language. + - qol: Tactical Sign Language is now the default language for all MARSOC spawned. + harryob: + - bugfix: you can transfer riflemen between squads again + - bugfix: sebb grenades can no longer degroin synths through EMPs, which was unintended + thevandie: + - imageadd: added a new sprite for the liaison's wall divider behind his desk + - mapadd: added a WY mre to the liaison's liquor cabinet (cardboard box full of + donk pockets) + - mapadd: added a tv to the liaison's desk, in place of the containment cell console + - mapadd: added a new button to the liaison's desk to replace the wall divider button. + it controls the back office shutters + - maptweak: moved the liaison's shutters button and console to the back office + - maptweak: moved some stuff around in the liquor cabinet to accommodate the MRE + being placed into it + - maptweak: moved some stuff around on the liaison's desk to make it look cleaner diff --git a/icons/mob/hud/actions.dmi b/icons/mob/hud/actions.dmi index 3c3e6dd9de3d..1abf889b82c8 100644 Binary files a/icons/mob/hud/actions.dmi and b/icons/mob/hud/actions.dmi differ diff --git a/icons/mob/hud/marine_hud.dmi b/icons/mob/hud/marine_hud.dmi index 8aff95b8b33d..d1ad4eedb312 100644 Binary files a/icons/mob/hud/marine_hud.dmi and b/icons/mob/hud/marine_hud.dmi differ diff --git a/icons/mob/humans/human_hair.dmi b/icons/mob/humans/human_hair.dmi index 1a91c7f0e43a..a5a900f51abb 100644 Binary files a/icons/mob/humans/human_hair.dmi and b/icons/mob/humans/human_hair.dmi differ diff --git a/icons/mob/humans/onmob/hunter/items_lefthand.dmi b/icons/mob/humans/onmob/hunter/items_lefthand.dmi index de2931c5666f..2b8c6bb0800e 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 6098a06810ff..f02be7a2eb0c 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/hunter/pred_gear.dmi b/icons/mob/humans/onmob/hunter/pred_gear.dmi index f4e01f8335ad..ba9142124228 100644 Binary files a/icons/mob/humans/onmob/hunter/pred_gear.dmi and b/icons/mob/humans/onmob/hunter/pred_gear.dmi differ diff --git a/icons/mob/xenos/effects.dmi b/icons/mob/xenos/effects.dmi index 132c5f78b0d7..dfdcbf95d54b 100644 Binary files a/icons/mob/xenos/effects.dmi and b/icons/mob/xenos/effects.dmi differ diff --git a/icons/obj/items/hunter/pred_gear.dmi b/icons/obj/items/hunter/pred_gear.dmi index fc9288641764..f04f5dab91d2 100644 Binary files a/icons/obj/items/hunter/pred_gear.dmi and b/icons/obj/items/hunter/pred_gear.dmi differ diff --git a/icons/obj/items/hunter/pred_vendor.dmi b/icons/obj/items/hunter/pred_vendor.dmi new file mode 100644 index 000000000000..b5fcda7afb3f Binary files /dev/null and b/icons/obj/items/hunter/pred_vendor.dmi differ diff --git a/icons/obj/items/synth/wj_pda.dmi b/icons/obj/items/synth/wj_pda.dmi index 6bd7205e9a94..a6a397ad9d3c 100644 Binary files a/icons/obj/items/synth/wj_pda.dmi and b/icons/obj/items/synth/wj_pda.dmi differ diff --git a/icons/obj/items/weapons/guns/ammo_by_faction/uscm.dmi b/icons/obj/items/weapons/guns/ammo_by_faction/uscm.dmi index 8b3b5e0f1c80..b4ac1830ee66 100644 Binary files a/icons/obj/items/weapons/guns/ammo_by_faction/uscm.dmi and b/icons/obj/items/weapons/guns/ammo_by_faction/uscm.dmi differ diff --git a/icons/obj/items/weapons/guns/attachments.dmi b/icons/obj/items/weapons/guns/attachments.dmi index e627f7559a78..eb36689805d8 100644 Binary files a/icons/obj/items/weapons/guns/attachments.dmi and b/icons/obj/items/weapons/guns/attachments.dmi differ diff --git a/icons/obj/items/weapons/guns/attachments/barrel.dmi b/icons/obj/items/weapons/guns/attachments/barrel.dmi index 2400465e4bf4..cedbd065072a 100644 Binary files a/icons/obj/items/weapons/guns/attachments/barrel.dmi and b/icons/obj/items/weapons/guns/attachments/barrel.dmi differ diff --git a/icons/obj/items/weapons/guns/attachments/rail.dmi b/icons/obj/items/weapons/guns/attachments/rail.dmi index f53187160e92..33e92832d5ad 100644 Binary files a/icons/obj/items/weapons/guns/attachments/rail.dmi and b/icons/obj/items/weapons/guns/attachments/rail.dmi differ diff --git a/icons/obj/items/weapons/guns/attachments/under.dmi b/icons/obj/items/weapons/guns/attachments/under.dmi index 1138e0044c34..8814a4e94ee7 100644 Binary files a/icons/obj/items/weapons/guns/attachments/under.dmi and b/icons/obj/items/weapons/guns/attachments/under.dmi differ diff --git a/icons/obj/structures/doors/blastdoors_shutters.dmi b/icons/obj/structures/doors/blastdoors_shutters.dmi index 1fe1df44b23a..b52322c01ed7 100644 Binary files a/icons/obj/structures/doors/blastdoors_shutters.dmi and b/icons/obj/structures/doors/blastdoors_shutters.dmi differ diff --git a/icons/obj/vehicles/hardpoints/tank.dmi b/icons/obj/vehicles/hardpoints/tank.dmi index 0bb8987316f8..c9af30849eb8 100644 Binary files a/icons/obj/vehicles/hardpoints/tank.dmi and b/icons/obj/vehicles/hardpoints/tank.dmi differ diff --git a/icons/obj/vehicles/tank.dmi b/icons/obj/vehicles/tank.dmi index ec8135c2dde6..1991bc9caa70 100644 Binary files a/icons/obj/vehicles/tank.dmi and b/icons/obj/vehicles/tank.dmi differ diff --git a/icons/turf/almayer.dmi b/icons/turf/almayer.dmi index 07f771ec78c7..a028f7e5c89d 100644 Binary files a/icons/turf/almayer.dmi and b/icons/turf/almayer.dmi differ diff --git a/icons/turf/floors/floors.dmi b/icons/turf/floors/floors.dmi index 7b68cbb2b6b2..b06fdf9e5210 100644 Binary files a/icons/turf/floors/floors.dmi and b/icons/turf/floors/floors.dmi differ diff --git a/icons/ui_icons/map_blips.dmi b/icons/ui_icons/map_blips.dmi index 41449556044c..a2ed506adc13 100644 Binary files a/icons/ui_icons/map_blips.dmi and b/icons/ui_icons/map_blips.dmi differ diff --git a/icons/ui_icons/minimap.dmi b/icons/ui_icons/minimap.dmi index 7eeb5680b90f..08dbb8de4512 100644 Binary files a/icons/ui_icons/minimap.dmi and b/icons/ui_icons/minimap.dmi differ diff --git a/maps/desert_dam.json b/maps/desert_dam.json index b40e9887d15b..be12691c0dd5 100644 --- a/maps/desert_dam.json +++ b/maps/desert_dam.json @@ -27,6 +27,7 @@ ], "map_item_type": "/obj/item/map/desert_dam", "announce_text": "We've lost contact with Weyland-Yutani's extra-solar colony, \"Trijent Dam\", on the planet \"Raijin.\" The ###SHIPNAME### has been dispatched to assist.", + "liaison_briefing": "maps/map_briefings/cl_brief_trijent.html", "monkey_types": [ "stok" ], diff --git a/maps/fiorina_sciannex.json b/maps/fiorina_sciannex.json index 61212c433be0..1bd845d33d90 100644 --- a/maps/fiorina_sciannex.json +++ b/maps/fiorina_sciannex.json @@ -13,6 +13,7 @@ "/datum/equipment_preset/survivor/prisoner", "/datum/equipment_preset/survivor/gangleader", "/datum/equipment_preset/survivor/engineer/fiorina", + "/datum/equipment_preset/survivor/corporate/fiorina", "/datum/equipment_preset/survivor/clf", "/datum/equipment_preset/survivor/civilian" ], diff --git a/maps/kutjevo.json b/maps/kutjevo.json index 83a0ff90c575..cb61f5f29834 100644 --- a/maps/kutjevo.json +++ b/maps/kutjevo.json @@ -11,6 +11,7 @@ "/datum/equipment_preset/survivor/colonial_marshal/kutjevo", "/datum/equipment_preset/survivor/trucker/kutjevo", "/datum/equipment_preset/survivor/security/kutjevo", + "/datum/equipment_preset/survivor/corporate/kutjevo", "/datum/equipment_preset/survivor/clf", "/datum/equipment_preset/survivor/civilian" ], @@ -23,6 +24,7 @@ ], "map_item_type": "/obj/item/map/kutjevo_map", "announce_text": "An automated distress signal has been received from Weyland-Yutani colony Kutjevo Refinery, known for botanical research, export, and raw materials processing and refinement. The ###SHIPNAME### has been dispatched to investigate.", + "liaison_briefing": "maps/map_briefings/cl_brief_kutjevo.html", "monkey_types": [ "neaera", "stok" diff --git a/maps/map_briefings/cl_brief_kutjevo.html b/maps/map_briefings/cl_brief_kutjevo.html new file mode 100644 index 000000000000..366e1b819da7 --- /dev/null +++ b/maps/map_briefings/cl_brief_kutjevo.html @@ -0,0 +1,61 @@ +
+
Weyland-Yutani Corporation
"Building Better + Worlds"
+
+
Special Services Division
Liaison Colony Briefing
+
+
The ship AI aboard your stationed ship has informed us that a distress +signal has been picked up from the colony on LV-686, and that a mission is being +prepared to investigate the disturbance.

As such, the special +services division has prepared a briefing on the nature of the colony, and known +potential threats to it's operation.

Classified materials are +excluded from this briefing and should be requested separately, and as such, the +contents of this document may be shared or withheld at your discretion, unless +otherwise specified.
+
+
Planet: LV-686
Facility: Kutjevo Refinery
Operator: Weyland-Yutani
+
+
History and Purpose
+
+
Discovered in 2089, the planet Dykuma I, also known as LV-686, was +originally marked by geological survey as a potentially terraformable desert +planet, was later found to be abundantly rich in underground aquifers of +exceptionally high purity, and as such an independent core colony began +colonization efforts in the 2160s.

Shortly after the colonization +efforts began, a hostile takeover by the Canadian Space Affairs Ministry in 2162 +brought the colony under new ownership, soon sold to the Weyland-Yutani +Corporation, where in 2165 it began operations as a bottling plant under the +Weyland Spring brand.

As the demand for spring water and the +size of the colony's operations both have grown, the deposits of drinking water +at the original site for the colony have dried up, and as such the sprawl has +continued to expand outwards, ever in search of more desposits to tap.

With +an estimated 2500 colonists, the refinery has become a bustling town, and the +number one provider of drinkable water in the Neroid Sector and surrounding +space, as well as a significant supplier for the +Weyland Spring brand.

Company Priorities
+
+
The number one priority is that any operation on the site of Weyland +Spring Bottling Center No.8 does not employ chemical weapons or otherwise risk +contaminating the ground water supply and the aquifers below. The use of lead +and depleted uranium bullets should be avoided.

In addition to this, +the colony's water treatment plant contains large stockpiles of chemicals that +may be hazardous in unapproved amounts, and damage to the tanks storing these +chemicals must be mitigated.

Potential Threats
+
+
The Kutjevo facility contains only a token Colonial Marshals Bureau, +staffing roughly 2-6 members, and is primarily staffed by corporate security. +While the security garrison is relatively undersized for a colony of this size, +division analysts believe corporate espionage is unlikely due to a variety of +factors. After reviewing the data, the analysts believe these are the most +likely causes for the automated distress beacon, from most to least likely:

* +Geological Activity; e.g. earthquakes or land-shift due to the drained aquifers +beneath the site.
* Maintenance failure of the colony's communications +equipment.
* Failure to send the weekly "All-Clear" signal to prevent +automated distress being dispatched.
* Sabotage by the "Colonial +Liberation Front"
* A solar flare from the Dykuma star causing electrical +failures.
diff --git a/maps/map_briefings/cl_brief_placeholder.html b/maps/map_briefings/cl_brief_placeholder.html new file mode 100644 index 000000000000..1c9884b2c63c --- /dev/null +++ b/maps/map_briefings/cl_brief_placeholder.html @@ -0,0 +1,12 @@ +
+
Weyland-Yutani Corporation
"Building Better + Worlds"
+
+
Special Services Division
Liaison Colony Briefing
+
+
The ship AI aboard your stationed ship has informed us that a distress +signal has been picked up from a nearby colony, however at this time the records +for the facility there are classified or unavailable. We apologize for the +inconvenience. diff --git a/maps/map_briefings/cl_brief_trijent.html b/maps/map_briefings/cl_brief_trijent.html new file mode 100644 index 000000000000..83d6b49fe723 --- /dev/null +++ b/maps/map_briefings/cl_brief_trijent.html @@ -0,0 +1,73 @@ +
+
Weyland-Yutani Corporation
"Building Better + Worlds"
+
+
Special Services Division
Liaison Colony Briefing
+
+
The ship AI aboard your stationed ship has informed us that a distress +signal has been picked up from the colony on Raijin, and that a mission is being +prepared to investigate the disturbance.

As such, the special +services division has prepared a briefing on the nature of the colony, and known +potential threats to it's operation.

Classified materials are +excluded from this briefing and should be requested separately, and as such, the +contents of this document may be shared or withheld at your discretion, unless +otherwise specified.
+
+
Planet: Raijin, Formerly LV-670
Facility: Oxley's Butte
Operator: Trijent Corporation (Company Subsidiary)

+
+
History and Purpose
+
+
The colony of Oxley's Butte, often colloquially referred to as "Trijent +Dam" was settled after the discovery of vast reserves of Lithium-6 below the +surface of what was at the time known as LV-670. In 2129, Geological survey +teams landed on the planet and began to discern the ideal location to place a +mining settlement, eventually settling on a river fork on the planet's northern +hemisphere, roughly 4 kilometers above one of the particularly rich deposits.

To +power the mining operations, the Cebrini group was contracted to construct and +operate a large hydroelectric dam, utilizing the river's high throughput, with +three turbines working to produce an estimated 15,000Mw/H of electricity. Work +began in 2132, as the first colonists were brought in, with the hydroelectric +facility and electrical infrastructure being completed in late 2150, +colonization began as workers of other specialities were shipped in to fill the +needs of the rapidly growing colony. At present, the colony hosts a mix of +corporate personnel from both Trijent Corp. and the Cebrini Group, as well as a +number of third-party personnel staffing various positions.

The +colony on Raijin has provided lithium to buyers across the galaxy for about 20 +years now, in addition to hosting an archeological worksite due to +mundane discoveries in the periphery of the mining campsites.

Company Priorities
+
+
Lithium-6 is one of the principle components of Tritium, needed to fuel +the fusion reactors powering a galaxy worth of human expansion. As such, +Raijin's immeasurably rich deposits of the mineral have led the Trijent +Corporation, and by extension, the Company, to a domineering position in the +market for fusion reactor fuel. Due to the nature of the ore reserves, damage to +the mining site itself is of limited concern, however, the hydroelectric dam +powering the colony is a highly valuable asset and it is paramount that it is +returned to operation as soon as possible if damaged, and that further damage +from intervention is minimized.

Of secondary priority, the +northeastern edge of the colony hosts an archeological site and attached +research lab. The research notes from the lab should be recovered and delivered +to the Company as soon as possible, and care should be taken not to disturb or +destroy the dig sites, and the artifacts buried within.

Potential Threats
+
+
Due to the economic relavence of the colony, both Neroid Sector Policing +Authority and Corporate security staffing are present in various capacities. As +such, the majority of known threats to the colony's operation have been dealt +with swiftly and without incident. Despite this, company analysts believe the +most likely cause for the distress signal are as follows; From most to least +likely.
* Carelessness in sending the weekly required "All Clear" signal, +preventing the automated distress beacon.
* Failure in maintenance of the +colony's communication equipment.
* Sabotage of equipment by the "Colonial +Liberation Front".
* Viral or Bacterial outbreak.
* Disruption by the +Union Of Progressive Peoples as they establish a competing colony elsewhere on +the planet.
* Corporate Espionage to disrupt the Trijent Corporation as a +leader in fusion reactor fuel.
diff --git a/maps/map_files/BigRed/BigRed.dmm b/maps/map_files/BigRed/BigRed.dmm index bf30b8b73fd2..182dea6fd236 100644 --- a/maps/map_files/BigRed/BigRed.dmm +++ b/maps/map_files/BigRed/BigRed.dmm @@ -1465,7 +1465,7 @@ /area/bigredv2/caves/lambda/xenobiology) "agm" = ( /turf/closed/wall/solaris/rock, -/area/bigredv2/caves_north) +/area/bigredv2/outside/marshal_office) "agn" = ( /obj/structure/pipes/standard/simple/hidden/green{ dir = 5 @@ -15081,6 +15081,7 @@ "buk" = ( /obj/structure/flora/grass/desert/lightgrass_4, /obj/structure/flora/grass/desert/lightgrass_11, +/obj/effect/sentry_landmark/lz_2/top_right, /turf/open/mars_cave/mars_dirt_4, /area/bigredv2/outside/space_port_lz2) "bun" = ( @@ -15173,6 +15174,7 @@ /obj/structure/bed/chair/office/light{ dir = 1 }, +/obj/structure/machinery/power/apc/power/west, /turf/open/floor, /area/bigredv2/outside/lz2_south_cas) "bvH" = ( @@ -17459,6 +17461,9 @@ /obj/effect/landmark/structure_spawner/setup/distress/xeno_door, /turf/open/mars_cave/mars_cave_2, /area/bigredv2/caves_se) +"bLE" = ( +/turf/open/floor/darkyellow2/east, +/area/bigredv2/outside/engineering/reactor) "bLG" = ( /obj/effect/decal/cleanable/blood/gibs/xeno, /obj/effect/decal/cleanable/blood/xeno, @@ -17843,6 +17848,10 @@ /obj/effect/landmark/structure_spawner/setup/distress/xeno_door, /turf/open/mars_cave/mars_cave_18, /area/bigredv2/caves_lambda) +"chw" = ( +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/dark, +/area/bigredv2/outside/engineering/reactor) "chx" = ( /obj/structure/surface/table, /obj/item/trash/kepler{ @@ -17877,6 +17886,10 @@ }, /turf/open/mars_cave/mars_dirt_4, /area/bigredv2/caves/mining) +"cjS" = ( +/obj/effect/sentry_landmark/lz_1/top_right, +/turf/open/floor/asteroidfloor/north, +/area/bigredv2/outside/space_port) "ckr" = ( /obj/item/device/defibrillator{ pixel_x = -9; @@ -18405,7 +18418,7 @@ dir = 1 }, /turf/open/floor/dark, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "cNH" = ( /obj/structure/pipes/standard/simple/hidden/green, /turf/open/floor/delivery, @@ -18910,7 +18923,7 @@ dir = 8 }, /turf/open/gm/river, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "dsU" = ( /obj/item/trash/cheesie, /obj/item/trash/pistachios, @@ -18957,7 +18970,7 @@ dir = 1 }, /turf/open/gm/river, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "duG" = ( /obj/structure/surface/table, /obj/structure/machinery/light{ @@ -19029,6 +19042,10 @@ "dyv" = ( /turf/open/mars, /area/bigredv2/caves/eta/xenobiology) +"dyA" = ( +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/darkyellow2, +/area/bigredv2/outside/engineering/reactor) "dyH" = ( /obj/structure/machinery/computer/area_atmos{ dir = 1 @@ -19104,7 +19121,7 @@ pixel_y = 9 }, /turf/open/floor/darkyellow2/north, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "dCb" = ( /obj/effect/landmark/corpsespawner/security/marshal, /obj/effect/decal/cleanable/blood/oil, @@ -19300,6 +19317,9 @@ /obj/effect/landmark/structure_spawner/setup/distress/xeno_nest, /turf/open/mars_cave/mars_cave_5, /area/bigredv2/caves_lambda) +"dLd" = ( +/turf/open/floor/darkyellow2/southwest, +/area/bigredv2/outside/engineering/reactor) "dLJ" = ( /obj/structure/platform/kutjevo/rock, /obj/item/trash/used_stasis_bag{ @@ -19771,6 +19791,10 @@ }, /turf/open/floor/whitegreen/east, /area/bigredv2/outside/medical) +"ehN" = ( +/obj/effect/sentry_landmark/lz_2/top_left, +/turf/open/mars, +/area/bigredv2/outside/space_port_lz2) "eiK" = ( /obj/structure/flora/grass/desert/lightgrass_9, /turf/open/mars, @@ -20066,6 +20090,10 @@ "exc" = ( /turf/open/floor/asteroidwarning/east, /area/bigred/ground/garage_workshop) +"eyR" = ( +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/darkyellow2/west, +/area/bigredv2/outside/engineering/reactor) "ezz" = ( /obj/effect/decal/cleanable/dirt, /obj/item/trash/hotdog{ @@ -20207,7 +20235,7 @@ /obj/structure/machinery/power/port_gen/pacman, /obj/effect/decal/cleanable/dirt, /turf/open/floor/darkyellow2/west, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "eJf" = ( /obj/structure/flora/grass/desert/lightgrass_2, /turf/open/mars, @@ -21030,7 +21058,7 @@ name = "\improper Engine Reactor" }, /turf/open/floor/delivery, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "fEE" = ( /turf/open/mars_cave/mars_cave_15, /area/bigredv2/outside/ne) @@ -21167,7 +21195,7 @@ /area/bigredv2/outside/s) "fOc" = ( /turf/open/mars_cave/mars_cave_3, -/area/bigredv2/caves_virology) +/area/bigredv2/outside/lz1_telecomm_cas) "fOf" = ( /obj/item/trash/eat{ pixel_x = 2; @@ -21324,7 +21352,7 @@ name = "\improper Engine Reactor" }, /turf/open/floor/delivery, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "fVt" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/surface/table, @@ -21590,7 +21618,7 @@ "giB" = ( /obj/structure/blocker/forcefield/multitile_vehicles, /turf/open/mars_cave, -/area/bigredv2/caves_sw) +/area/bigredv2/outside/lz2_south_cas) "giC" = ( /obj/effect/decal/cleanable/blood, /obj/effect/decal/cleanable/blood/gibs/body, @@ -21818,7 +21846,7 @@ "guu" = ( /obj/structure/machinery/light, /turf/open/floor/dark, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "guM" = ( /turf/open/mars_cave/mars_dirt_4, /area/bigredv2/caves_research) @@ -22023,7 +22051,7 @@ "gFR" = ( /obj/structure/machinery/power/port_gen/pacman, /turf/open/floor/darkyellow2/east, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "gGf" = ( /obj/effect/decal/cleanable/blood/drip, /turf/open/asphalt/cement_sunbleached/cement_sunbleached12, @@ -22094,10 +22122,6 @@ }, /turf/open/mars_cave/mars_dirt_4, /area/bigredv2/outside/nw) -"gJw" = ( -/obj/structure/blocker/forcefield/multitile_vehicles, -/turf/open/mars_cave, -/area/bigredv2/caves_virology) "gJB" = ( /obj/effect/decal/cleanable/blood{ layer = 3 @@ -22173,7 +22197,7 @@ "gML" = ( /obj/structure/machinery/power/turbine, /turf/open/floor/darkyellow2/east, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "gNv" = ( /obj/structure/machinery/light{ dir = 1 @@ -22220,7 +22244,7 @@ name = "\improper Engine Reactor" }, /turf/open/floor/delivery, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "gPE" = ( /obj/effect/decal/cleanable/dirt, /obj/item/device/flashlight/lantern, @@ -22299,7 +22323,7 @@ pixel_y = 9 }, /turf/open/floor/darkyellow2/northwest, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "gVl" = ( /obj/effect/decal/warning_stripes{ icon_state = "NE-out"; @@ -22401,6 +22425,10 @@ "haV" = ( /turf/open/asphalt/cement_sunbleached, /area/bigredv2/outside/e) +"hbg" = ( +/obj/effect/sentry_landmark/lz_2/bottom_left, +/turf/open/mars, +/area/bigredv2/outside/space_port_lz2) "hby" = ( /turf/open/asphalt/cement_sunbleached/cement_sunbleached3, /area/bigredv2/outside/nw) @@ -22571,6 +22599,10 @@ }, /turf/open/floor, /area/bigredv2/outside/general_offices) +"hkR" = ( +/obj/structure/window/framed/solaris, +/turf/open/floor/plating, +/area/bigredv2/outside/engineering/reactor) "hkS" = ( /obj/structure/platform/kutjevo/rock, /obj/structure/platform/kutjevo/rock{ @@ -23041,6 +23073,10 @@ /obj/effect/landmark/corpsespawner/ua_riot, /turf/open/mars_cave, /area/bigredv2/caves/mining) +"hLq" = ( +/obj/effect/sentry_landmark/lz_1/bottom_left, +/turf/open/floor/asteroidfloor/north, +/area/bigredv2/outside/space_port) "hLS" = ( /obj/structure/sign/poster/safety, /turf/closed/wall/wood, @@ -23179,7 +23215,7 @@ dir = 5 }, /turf/open/gm/river, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "hYI" = ( /obj/effect/landmark/xeno_hive_spawn, /obj/effect/landmark/ert_spawns/groundside_xeno, @@ -23226,7 +23262,7 @@ "iaC" = ( /obj/structure/platform, /turf/open/gm/river, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "iaD" = ( /obj/item/shard, /obj/structure/window_frame/solaris, @@ -23438,7 +23474,7 @@ /obj/effect/decal/cleanable/dirt, /obj/structure/window/framed/solaris, /turf/open/floor/plating, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "iih" = ( /obj/effect/decal/cleanable/blood, /turf/open/floor/floor4, @@ -23791,7 +23827,7 @@ dir = 8 }, /turf/open/gm/river, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "iAL" = ( /turf/open/asphalt/cement_sunbleached/cement_sunbleached4, /area/bigredv2/outside/space_port_lz2) @@ -23877,7 +23913,7 @@ /obj/effect/decal/cleanable/dirt, /obj/item/bananapeel, /turf/open/floor/darkyellow2/east, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "iFr" = ( /obj/effect/decal/cleanable/generic, /turf/open/asphalt/cement_sunbleached/cement_sunbleached3, @@ -23961,7 +23997,7 @@ /area/bigredv2/outside/telecomm/warehouse) "iNR" = ( /turf/open/gm/river, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "iOR" = ( /obj/effect/landmark/crap_item, /turf/open/floor/asteroidfloor/north, @@ -24019,7 +24055,7 @@ }, /obj/structure/barricade/handrail, /turf/open/floor/plating/plating_catwalk, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "iTD" = ( /obj/structure/pipes/standard/simple/hidden/green, /obj/effect/decal/cleanable/dirt, @@ -24100,6 +24136,10 @@ }, /turf/open/floor, /area/bigredv2/outside/hydroponics) +"iWP" = ( +/obj/effect/sentry_landmark/lz_2/bottom_right, +/turf/open/mars_cave/mars_dirt_4, +/area/bigredv2/outside/space_port_lz2) "iXo" = ( /obj/structure/bed, /obj/item/bedsheet/medical, @@ -24494,13 +24534,13 @@ "jxA" = ( /obj/structure/barricade/handrail, /turf/open/floor/plating/plating_catwalk, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "jxS" = ( /obj/structure/machinery/light{ dir = 4 }, /turf/open/floor/darkyellow2/west, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "jxV" = ( /obj/effect/decal/cleanable/dirt, /turf/open/floor/asteroidwarning/northeast, @@ -24540,8 +24580,7 @@ /turf/open/floor/wood, /area/bigredv2/outside/admin_building) "jAo" = ( -/obj/effect/landmark/structure_spawner/xvx_hive/xeno_wall, -/obj/effect/landmark/structure_spawner/setup/distress/xeno_wall, +/obj/effect/landmark/structure_spawner/setup/distress/xeno_weed_node, /turf/open/mars_cave/mars_cave_5, /area/bigredv2/caves_sw) "jAJ" = ( @@ -24581,6 +24620,12 @@ /obj/structure/blocker/forcefield/multitile_vehicles, /turf/open/floor/asteroidfloor/north, /area/bigredv2/outside/eta) +"jBC" = ( +/obj/effect/timed_event/scrapeaway{ + time = 40 + }, +/turf/closed/wall/solaris/rock, +/area/bigredv2/outside/lz2_west_cas) "jCg" = ( /obj/effect/spawner/random/attachment, /obj/structure/machinery/light{ @@ -24660,6 +24705,9 @@ /obj/item/storage/box/gloves, /turf/open/floor/whitegreen/east, /area/bigredv2/outside/medical) +"jFG" = ( +/turf/open/floor/darkyellowcorners2/east, +/area/bigredv2/outside/engineering/reactor) "jGd" = ( /obj/effect/landmark/structure_spawner/setup/distress/xeno_weed_node, /turf/open/mars_cave/mars_cave_2, @@ -25070,7 +25118,7 @@ dir = 8 }, /turf/open/floor/darkyellow2/west, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "jXP" = ( /obj/item/stack/cable_coil/cut, /turf/open/mars_cave/mars_cave_16, @@ -25243,6 +25291,10 @@ }, /turf/open/asphalt/cement_sunbleached/cement_sunbleached3, /area/bigredv2/outside/nw) +"keO" = ( +/obj/effect/sentry_landmark/lz_1/bottom_right, +/turf/open/floor/plating, +/area/bigredv2/outside/space_port) "kfg" = ( /obj/structure/barricade/wooden{ desc = "This barricade is heavily reinforced. Nothing short of blasting it open seems like it'll do the trick, that or melting the breams supporting it..."; @@ -25403,7 +25455,7 @@ pixel_y = 9 }, /turf/open/floor/plating/plating_catwalk, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "kkF" = ( /obj/structure/machinery/camera/autoname, /obj/structure/bed, @@ -26565,7 +26617,7 @@ name = "Reactor Turbine" }, /turf/open/floor/delivery, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "lCR" = ( /obj/structure/surface/table, /obj/item/reagent_container/food/drinks/flask/vacuumflask{ @@ -26785,6 +26837,10 @@ /obj/effect/decal/strata_decals/grime/grime3, /turf/open/asphalt/cement_sunbleached/cement_sunbleached3, /area/bigredv2/outside/nw) +"lOV" = ( +/obj/effect/sentry_landmark/lz_1/bottom_right, +/turf/open/floor/asteroidfloor/north, +/area/bigredv2/outside/space_port) "lOY" = ( /obj/effect/landmark/nightmare{ insert_tag = "etatunnel_open" @@ -27120,6 +27176,9 @@ /obj/effect/landmark/item_pool_spawner/survivor_ammo/buckshot, /turf/open/floor/wood, /area/bigredv2/outside/bar) +"mge" = ( +/turf/open/floor/darkyellow2/north, +/area/bigredv2/outside/engineering/reactor) "mgr" = ( /obj/structure/barricade/wooden{ desc = "This barricade is heavily reinforced. Nothing short of blasting it open seems like it'll do the trick, that or melting the breams supporting it..."; @@ -27277,7 +27336,12 @@ "mqh" = ( /obj/structure/window/framed/solaris, /turf/open/floor/panelscorched, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) +"mqu" = ( +/obj/item/tool/extinguisher, +/obj/structure/machinery/power/apc/power/west, +/turf/open/floor/darkyellow2/west, +/area/bigredv2/outside/engineering/reactor) "mqK" = ( /turf/open/asphalt/cement_sunbleached/cement_sunbleached14, /area/bigredv2/outside/space_port_lz2) @@ -27292,6 +27356,10 @@ /obj/effect/landmark/structure_spawner/setup/distress/xeno_weed_node, /turf/open/mars_cave/mars_cave_3, /area/bigredv2/caves/mining) +"mrc" = ( +/obj/effect/sentry_landmark/lz_2/bottom_right, +/turf/open/asphalt/cement_sunbleached/cement_sunbleached2, +/area/bigredv2/outside/space_port_lz2) "mrF" = ( /obj/structure/flora/grass/desert/lightgrass_9, /turf/open/mars, @@ -28355,7 +28423,7 @@ dir = 9 }, /turf/open/gm/river, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "nuq" = ( /obj/structure/pipes/standard/simple/hidden/green{ dir = 4 @@ -28377,7 +28445,7 @@ /obj/effect/decal/cleanable/dirt, /obj/structure/barricade/handrail, /turf/open/floor/darkyellow2, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "nuQ" = ( /obj/structure/surface/table/woodentable, /obj/effect/landmark/objective_landmark/close, @@ -28410,6 +28478,13 @@ }, /turf/open/mars_cave/mars_cave_3, /area/bigredv2/caves/mining) +"nxl" = ( +/obj/effect/sentry_landmark/lz_2/top_right, +/turf/open/floor/asteroidwarning, +/area/bigredv2/outside/space_port_lz2) +"nxG" = ( +/turf/open/floor/darkyellow2/west, +/area/bigredv2/outside/engineering/reactor) "nyZ" = ( /obj/item/tool/minihoe{ pixel_x = -4; @@ -28451,6 +28526,10 @@ }, /turf/open/mars, /area/bigredv2/outside/nw) +"nAJ" = ( +/obj/effect/sentry_landmark/lz_2/bottom_left, +/turf/open/mars_cave/mars_dirt_4, +/area/bigredv2/outside/space_port_lz2) "nBb" = ( /obj/item/ammo_magazine/pistol/b92fs, /obj/item/weapon/gun/pistol/b92fs{ @@ -28580,6 +28659,12 @@ /obj/structure/blocker/forcefield/multitile_vehicles, /turf/open/mars_cave/mars_cave_17, /area/bigredv2/outside/filtration_cave_cas) +"nGN" = ( +/obj/effect/timed_event/scrapeaway{ + time = 40 + }, +/turf/closed/wall/solaris/rock, +/area/bigredv2/caves_sw) "nHQ" = ( /obj/effect/landmark/structure_spawner/setup/distress/xeno_weed_node, /obj/structure/machinery/door/poddoor/almayer/closed{ @@ -29061,7 +29146,7 @@ dir = 4 }, /turf/open/gm/river, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "okh" = ( /obj/structure/cable{ icon_state = "4-8" @@ -29339,7 +29424,7 @@ "ouh" = ( /obj/item/tool/extinguisher, /turf/open/floor/darkyellow2/west, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "ouo" = ( /turf/open/floor/whitegreencorner/north, /area/bigredv2/outside/medical) @@ -29507,6 +29592,10 @@ /obj/item/shard, /turf/open/floor/dark, /area/bigredv2/outside/general_offices) +"oCA" = ( +/obj/effect/sentry_landmark/lz_2/top_left, +/turf/open/floor/asteroidwarning/north, +/area/bigredv2/outside/space_port_lz2) "oCK" = ( /turf/open/asphalt/cement_sunbleached/cement_sunbleached4, /area/bigredv2/outside/e) @@ -29569,6 +29658,9 @@ /obj/effect/decal/cleanable/blood/drip, /turf/open/floor/dark, /area/bigredv2/outside/general_offices) +"oHc" = ( +/turf/open/floor/darkyellow2/southeast, +/area/bigredv2/outside/engineering/reactor) "oHu" = ( /obj/effect/decal/cleanable/dirt, /obj/item/stack/sheet/metal{ @@ -29629,7 +29721,7 @@ dir = 6 }, /turf/open/gm/river, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "oJd" = ( /obj/structure/prop/invuln/minecart_tracks{ desc = "A heavy duty power cable for high voltage applications"; @@ -29896,7 +29988,7 @@ /obj/effect/decal/cleanable/dirt, /obj/structure/barricade/handrail, /turf/open/floor/darkyellow2/southwest, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "oWC" = ( /obj/structure/prop/invuln/minecart_tracks{ desc = "A heavy duty power cable for high voltage applications"; @@ -30196,7 +30288,7 @@ dir = 8 }, /turf/open/gm/river, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "pok" = ( /obj/structure/blocker/forcefield/multitile_vehicles, /obj/effect/decal/cleanable/blood, @@ -30680,7 +30772,7 @@ dir = 1 }, /turf/open/floor/darkyellow2/west, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "pOt" = ( /obj/structure/machinery/optable, /turf/open/floor/whiteblue/east, @@ -30781,6 +30873,10 @@ /obj/effect/landmark/structure_spawner/xvx_hive/xeno_core, /turf/open/mars_cave/mars_cave_2, /area/bigredv2/caves_se) +"pTY" = ( +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/darkyellow2/north, +/area/bigredv2/outside/engineering/reactor) "pUi" = ( /obj/item/weapon/broken_bottle, /turf/open/floor/plating, @@ -30792,6 +30888,9 @@ }, /turf/open/floor/whitebluefull/northeast, /area/bigredv2/outside/medical) +"pVi" = ( +/turf/open/floor/darkyellowcorners2/north, +/area/bigredv2/outside/engineering/reactor) "pVp" = ( /obj/structure/prop/invuln/minecart_tracks{ dir = 1 @@ -30804,7 +30903,7 @@ dir = 1 }, /turf/open/floor/darkyellow2/west, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "pVP" = ( /obj/effect/decal/cleanable/dirt, /turf/open/floor/asteroidfloor/north, @@ -30823,7 +30922,7 @@ pixel_y = 9 }, /turf/open/floor/plating/plating_catwalk, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "pXm" = ( /obj/structure/pipes/standard/simple/hidden/green{ dir = 4 @@ -30865,6 +30964,10 @@ /obj/item/weapon/gun/rifle/m41a/training, /turf/open/mars_cave/mars_cave_17, /area/bigredv2/caves/mining) +"pXM" = ( +/obj/effect/sentry_landmark/lz_1/top_right, +/turf/open/floor/plating, +/area/bigredv2/outside/space_port) "pXY" = ( /obj/structure/pipes/standard/simple/hidden/green{ dir = 4 @@ -31301,6 +31404,10 @@ /obj/effect/decal/cleanable/blood, /turf/open/floor/wood, /area/bigredv2/outside/bar) +"qtZ" = ( +/obj/effect/sentry_landmark/lz_1/top_left, +/turf/open/floor/asteroidfloor/north, +/area/bigredv2/outside/space_port) "qus" = ( /obj/structure/pipes/standard/simple/hidden/green, /turf/open/floor/delivery, @@ -31505,10 +31612,6 @@ }, /turf/open/floor/asteroidwarning/west, /area/bigredv2/outside/n) -"qEs" = ( -/obj/effect/landmark/structure_spawner/setup/distress/xeno_weed_node, -/turf/open/mars_cave/mars_cave_2, -/area/bigredv2/outside/lz2_south_cas) "qEz" = ( /obj/structure/flora/grass/desert/lightgrass_3, /turf/open/mars, @@ -31572,6 +31675,10 @@ /obj/structure/surface/table/reinforced/prison, /turf/open/floor/plating/platingdmg3/west, /area/bigredv2/caves/mining) +"qGD" = ( +/obj/effect/sentry_landmark/lz_2/bottom_left, +/turf/open/mars/mars_dirt_10, +/area/bigredv2/outside/space_port_lz2) "qGT" = ( /obj/item/stack/sheet/metal{ pixel_x = 4; @@ -32555,6 +32662,10 @@ /obj/effect/landmark/corpsespawner/colonist, /turf/open/floor/wood, /area/bigredv2/outside/dorms) +"rGz" = ( +/obj/structure/machinery/light/double, +/turf/open/mars_cave/mars_cave_5, +/area/bigredv2/caves_sw) "rGD" = ( /obj/structure/machinery/power/apc/no_power/north, /turf/open/floor/red/north, @@ -32908,7 +33019,7 @@ dir = 4 }, /turf/open/gm/river, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "rUU" = ( /obj/effect/decal/cleanable/dirt, /obj/item/trash/cigbutt{ @@ -33086,7 +33197,7 @@ "saX" = ( /obj/structure/machinery/power/turbine, /turf/open/floor/darkyellow2/west, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "sbc" = ( /obj/structure/surface/table, /obj/effect/landmark/item_pool_spawner/survivor_ammo/buckshot, @@ -33387,7 +33498,7 @@ dir = 4 }, /turf/open/floor/darkyellow2/east, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "snT" = ( /obj/item/stack/rods{ pixel_y = 13; @@ -33630,6 +33741,9 @@ }, /turf/open/mars_cave/mars_cave_16, /area/bigredv2/caves/mining) +"syJ" = ( +/turf/open/mars_cave/mars_cave_23, +/area/bigredv2/outside/lz2_south_cas) "syK" = ( /obj/structure/pipes/vents/pump{ dir = 1 @@ -33665,7 +33779,7 @@ "sAG" = ( /obj/effect/landmark/hunter_primary, /turf/open/mars_cave/mars_cave_2, -/area/bigredv2/caves_sw) +/area/bigredv2/outside/lz2_south_cas) "sAS" = ( /obj/item/toy/prize/fireripley{ pixel_y = 19 @@ -33744,7 +33858,7 @@ "sDO" = ( /obj/structure/machinery/power/port_gen/pacman, /turf/open/floor/darkyellow2/west, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "sDZ" = ( /obj/effect/decal/cleanable/dirt, /obj/item/clothing/head/welding, @@ -33901,7 +34015,7 @@ "sNP" = ( /obj/structure/window/framed/solaris, /turf/open/floor/plating/panelscorched, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "sNQ" = ( /turf/open/mars_cave/mars_cave_11, /area/bigredv2/caves_lambda) @@ -34132,7 +34246,7 @@ "tcP" = ( /obj/effect/decal/cleanable/dirt/greenglow, /turf/closed/wall/solaris/reinforced, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "tcV" = ( /obj/effect/decal/cleanable/generic, /turf/open/asphalt/cement_sunbleached/cement_sunbleached1, @@ -34546,7 +34660,7 @@ dir = 1 }, /turf/open/floor/darkyellow2/east, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "twt" = ( /obj/structure/pipes/standard/simple/hidden/green{ dir = 6 @@ -35261,7 +35375,7 @@ /obj/effect/decal/cleanable/dirt, /obj/structure/window/framed/solaris, /turf/open/floor/plating/panelscorched, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "ueM" = ( /obj/item/device/radio/intercom{ freerange = 1; @@ -35309,6 +35423,10 @@ /obj/effect/decal/cleanable/dirt, /turf/open/asphalt/cement_sunbleached/cement_sunbleached9, /area/bigredv2/outside/space_port_lz2) +"ugT" = ( +/obj/effect/sentry_landmark/lz_2/bottom_right, +/turf/open/asphalt/cement_sunbleached, +/area/bigredv2/outside/space_port_lz2) "ugW" = ( /obj/structure/machinery/light/small, /turf/open/floor/plating/platingdmg3/west, @@ -35588,6 +35706,10 @@ "uyk" = ( /turf/open/mars_cave/mars_cave_7, /area/bigredv2/outside/lz2_west_cas) +"uyS" = ( +/obj/effect/sentry_landmark/lz_2/top_right, +/turf/open/asphalt/cement_sunbleached, +/area/bigredv2/outside/w) "uzb" = ( /obj/structure/pipes/standard/simple/hidden/green, /obj/effect/decal/cleanable/blood, @@ -35806,7 +35928,7 @@ dir = 8 }, /turf/open/floor/darkyellow2/east, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "uJu" = ( /obj/item/robot_parts/robot_component/diagnosis_unit{ pixel_y = 15 @@ -36050,6 +36172,9 @@ }, /turf/open/floor/white, /area/bigredv2/outside/medical) +"uZy" = ( +/turf/closed/wall/solaris/reinforced, +/area/bigredv2/outside/engineering/reactor) "uZG" = ( /obj/effect/decal/cleanable/dirt, /obj/item/trash/cigbutt{ @@ -36124,7 +36249,7 @@ icon_state = "S" }, /turf/open/mars_cave/mars_cave_5, -/area/bigredv2/outside/lz2_south_cas) +/area/bigredv2/caves_sw) "vcy" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/landmark/item_pool_spawner/survivor_ammo/buckshot{ @@ -36422,7 +36547,7 @@ /obj/effect/decal/cleanable/dirt, /obj/structure/barricade/handrail, /turf/open/floor/darkyellow2/southeast, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "vpu" = ( /obj/item/weapon/twohanded/folded_metal_chair, /turf/open/mars_cave/mars_cave_3, @@ -36885,7 +37010,7 @@ "vNm" = ( /obj/structure/blocker/forcefield/multitile_vehicles, /turf/open/mars_cave/mars_cave_5, -/area/bigredv2/caves_virology) +/area/bigredv2/outside/lz1_telecomm_cas) "vND" = ( /obj/structure/flora/grass/desert/lightgrass_10, /turf/open/mars, @@ -37069,6 +37194,10 @@ "vXJ" = ( /turf/open/mars_cave/mars_dirt_4, /area/bigredv2/caves_lambda) +"vYf" = ( +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/darkyellow2/east, +/area/bigredv2/outside/engineering/reactor) "vYp" = ( /obj/structure/blocker/forcefield/multitile_vehicles, /obj/effect/decal/cleanable/blood, @@ -37270,6 +37399,10 @@ /obj/effect/landmark/objective_landmark/close, /turf/open/floor/dark, /area/bigredv2/outside/filtration_plant) +"whG" = ( +/obj/effect/landmark/crap_item, +/turf/open/mars_cave, +/area/bigredv2/outside/lz2_west_cas) "whL" = ( /obj/structure/barricade/deployable, /turf/open/floor/asteroidwarning/west, @@ -37391,7 +37524,7 @@ "wpn" = ( /obj/structure/closet/radiation, /turf/open/floor/delivery, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "wpv" = ( /obj/structure/pipes/vents/pump{ dir = 8 @@ -37559,7 +37692,7 @@ "wwT" = ( /obj/effect/decal/cleanable/dirt, /turf/closed/wall/solaris/reinforced, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "wxo" = ( /obj/effect/decal/cleanable/dirt, /turf/open/floor/asteroidwarning, @@ -37596,12 +37729,6 @@ /obj/item/ammo_casing/bullet, /turf/open/floor, /area/bigredv2/outside/marshal_office) -"wBi" = ( -/obj/effect/decal/warning_stripes{ - icon_state = "S" - }, -/turf/open/mars_cave/mars_cave_2, -/area/bigredv2/outside/lz2_south_cas) "wBq" = ( /obj/structure/fence, /turf/open/mars_cave/mars_cave_2, @@ -37938,6 +38065,9 @@ /obj/item/device/flashlight, /turf/open/mars_cave/mars_cave_2, /area/bigredv2/caves/mining) +"wRP" = ( +/turf/open/floor/dark, +/area/bigredv2/outside/engineering/reactor) "wSj" = ( /obj/structure/sign/safety/life_support, /obj/structure/sign/safety/maint{ @@ -37983,7 +38113,7 @@ dir = 10 }, /turf/open/gm/river, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "wVQ" = ( /turf/open/mars_cave/mars_cave_17, /area/bigredv2/caves/mining) @@ -38938,6 +39068,9 @@ /obj/structure/prop/dam/crane, /turf/open/mars_cave/mars_cave_13, /area/bigredv2/caves/mining) +"xSu" = ( +/turf/open/floor/darkyellow2, +/area/bigredv2/outside/engineering/reactor) "xTk" = ( /obj/limb/arm/l_arm, /obj/effect/decal/cleanable/blood/drip, @@ -39036,7 +39169,7 @@ pixel_y = 9 }, /turf/open/floor/darkyellow2/northeast, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "xXP" = ( /obj/structure/prop/invuln/minecart_tracks/bumper, /turf/open/mars_cave/mars_cave_2, @@ -39270,7 +39403,7 @@ dir = 8 }, /turf/open/gm/river, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "ykb" = ( /obj/structure/pipes/standard/simple/hidden/green{ dir = 4 @@ -39290,7 +39423,7 @@ /area/bigredv2/outside/s) "ykR" = ( /turf/closed/wall/mineral/uranium, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "ykW" = ( /obj/effect/decal/cleanable/blood/drip{ pixel_x = -3; @@ -40055,10 +40188,10 @@ aao aao aao aao -jCY -fLj -fLj -fmn +fxK +csE +csE +sQw aao aao aao @@ -40273,10 +40406,10 @@ aao aao fxK xmy -rDP -rDP -rDP -fmn +xmy +xmy +xmy +sQw aao aao aao @@ -40490,10 +40623,10 @@ aao fxK xmy xmy -rDP -iwG -rDP -rDP +xmy +lrH +xmy +xmy fmn aao aao @@ -40707,10 +40840,10 @@ aao rCA xmy xmy -rDP -rDP -rDP -rDP +xmy +xmy +xmy +xmy rDP rDP rDP @@ -40924,10 +41057,10 @@ fxK xmy xmy xmy -rDP -rDP -rDP -oAf +xmy +xmy +xmy +sGi rDP rDP rDP @@ -41141,10 +41274,10 @@ rCA xmy xmy xmy -rDP -rDP -rDP -oAf +xmy +xmy +xmy +sGi rDP rDP rDP @@ -41358,10 +41491,10 @@ rCA xmy xmy xmy -rDP -rDP -rDP -oAf +xmy +xmy +xmy +sGi rDP rDP rDP @@ -41575,10 +41708,10 @@ xmy xmy hcb xmy -rDP -rDP -rDP -oAf +xmy +xmy +xmy +sGi rDP rDP rDP @@ -41792,10 +41925,10 @@ xmy xmy xmy xmy -rDP -rDP -rDP -oAf +xmy +xmy +xmy +sGi aao aao aao @@ -42009,10 +42142,10 @@ xmy xmy xmy xmy -rDP -rDP -rDP -oAf +xmy +xmy +xmy +sGi aao aao aao @@ -42075,10 +42208,10 @@ cYJ vMj vMj cYJ -cYJ -wog -wog -wog +jBC +nGN +nGN +nGN wog wog wog @@ -42227,10 +42360,10 @@ xmy gda gda fOc -rDP -rDP -iwG -fmn +xmy +xmy +lrH +sQw aao aao aao @@ -42288,15 +42421,15 @@ cYJ cYJ ski eEy -ski -cYJ -cYJ +whG cYJ ovB +cYJ +jBC +nGN +nGN +wog wog -icQ -gYt -gYt wog sLy gYt @@ -42443,10 +42576,10 @@ gda eci aao aao -fwa -gJw -gJw -vNh +rCA +pQM +pQM +eOd vNm aao aao @@ -42508,12 +42641,12 @@ cYJ cYJ uyk cYJ -cYJ -cYJ -wog +jBC +jBC +nGN wog jAo -gYt +wog wog wog wog @@ -42660,7 +42793,7 @@ aao aao aao aao -mZC +eci aao wvk aGo @@ -42725,9 +42858,9 @@ cYJ cYJ uyk cYJ -tDv -wog -wog +jBC +nGN +nGN wog wog wog @@ -42825,7 +42958,7 @@ aaf aaf aar aaf -aaf +qtZ aaf aaf aaf @@ -42941,11 +43074,11 @@ aao aao aao bQb -ski -ski +jBC +jBC +nGN +nGN wog -gYt -gYt wog wog wog @@ -43160,9 +43293,9 @@ aao aao aao aao -kvp -gYt -gYt +nGN +wog +wog wog sLy wog @@ -43255,7 +43388,7 @@ aaf aaf aaf aaf -aaf +qtZ aaf aaf aaf @@ -43490,7 +43623,7 @@ acJ aaf aaf aaf -aaf +hLq aaf aaf aaf @@ -43686,7 +43819,7 @@ aao aao aae aag -aaf +qtZ aaf aaf aaf @@ -43710,7 +43843,7 @@ aaf aaf aaf aaf -aaf +hLq aaf aaf aae @@ -44226,7 +44359,7 @@ cVY cVY cVY cVY -cVY +ehN cVY ayf ayf @@ -44362,7 +44495,7 @@ aah aei aaf aaf -aaf +hLq acJ aae aao @@ -44439,7 +44572,7 @@ nbu cVY cVY cVY -cVY +ehN hpg mMf cVY @@ -44673,12 +44806,12 @@ tVp fFO cVY cVY -uSC +qGD tVp fFO cVY cVY -cVY +hbg ayf ayf aao @@ -45087,7 +45220,7 @@ cVY cVY hpg tVp -bgX +oCA eWd eWd eWd @@ -45764,7 +45897,7 @@ bie bsc eWd dAX -tVp +nAJ tVp ayf aao @@ -46315,7 +46448,7 @@ aah aej aaf aaf -aaf +lOV acJ aae aao @@ -46507,7 +46640,7 @@ aao aao aae aaf -aaf +cjS aap aav aaG @@ -47180,7 +47313,7 @@ jmQ lrf mSz dbO -aah +keO rIx iuI hyO @@ -47611,7 +47744,7 @@ dbO skZ skZ dbO -aah +keO aah aah aah @@ -47684,7 +47817,7 @@ aSB mQY jzO jzO -jzO +uyS vDS woe tVp @@ -47812,7 +47945,7 @@ aae aae wHg aah -aah +pXM aaU abc aah @@ -48034,7 +48167,7 @@ aah aah aah aah -aah +pXM abD aah aah @@ -48562,7 +48695,7 @@ tVp bgX sbm eWd -dAX +nxl kOv qNH mDt @@ -48578,13 +48711,13 @@ qcQ tVp tVp tVp -qet +mrc mVp mqK tVp qcQ tVp -tVp +iWP tVp aao aao @@ -48608,11 +48741,11 @@ aao aao aao aao -fus -kgx -qEs -hEE -wBi +kvp +wog +sLy +icQ +jMm uxx fOM kcx @@ -48825,10 +48958,10 @@ aao aao aao aao -fus -kgx -kgx -kgx +kvp +wog +wog +wog vct bvV rUn @@ -49044,9 +49177,9 @@ aao aao fus kgx -kgx -kgx -fvu +wog +wog +rGz uHQ tBf qjA @@ -49263,7 +49396,7 @@ lQN kgx kgx kgx -dVA +feS uHQ uHQ uHQ @@ -49449,7 +49582,7 @@ eKY tCn mic mic -tCn +ugT tCn tCn tCn @@ -52070,18 +52203,18 @@ euF euF aao aao -buz -ibZ -ibZ -ibZ -wog -trk -wog -wog -wog -trk -trk -trk +sSU +vCU +vCU +vCU +kgx +nEl +kgx +kgx +kgx +nEl +nEl +nEl wog wog aao @@ -52287,17 +52420,17 @@ aao aao aao aao -wog -wog -wog -wog -jXX +kgx +kgx +kgx +kgx +tsK aao aao aao aao aao -dxV +euF dxV qgY wog @@ -52502,12 +52635,12 @@ aao aao aao aao -wog -oQI -wog -wog -wog -wog +kgx +syJ +kgx +kgx +kgx +kgx aao bRC aao @@ -52715,16 +52848,16 @@ bpx aao aao aao -wog -wog -wog -wog +kgx +kgx +kgx +kgx sAG -wog -oQI -wog -wog -wog +kgx +syJ +kgx +kgx +kgx aao aao aao @@ -52932,15 +53065,15 @@ bpx aao aao aao -wog -wog -wog -wog -wog -wog -wog -icQ -wog +kgx +kgx +kgx +kgx +kgx +kgx +kgx +hEE +kgx aao aao aao @@ -53360,23 +53493,23 @@ ayZ axX axX axX -axX -axX -axX -axX -axX -axX -axX -axX +uZy +uZy +uZy +uZy +uZy +uZy +uZy +uZy wwT -axX -axX -axX -axX -axX -axX -axX -axX +uZy +uZy +uZy +uZy +uZy +uZy +uZy +uZy aao aao aao @@ -53577,23 +53710,23 @@ kVT ayZ bsP ayZ -ouh -lck +mqu +eyR jXJ -btr +nxG sDO pOg saX pVv saX eIN -lck -btr -ayZ -btr -kVT -axX -axX +eyR +nxG +hkR +nxG +dLd +uZy +uZy aao aao wog @@ -53794,23 +53927,23 @@ tTI nIi bte nIi -btu -gwg -gwg -gwg -tTI -btu -gwg -gwg -tTI -btu -btu -ndw +bLE +vYf +vYf +vYf +chw +bLE +vYf +vYf +chw +bLE +bLE +jFG fUp -nVq -sCt +wRP +xSu wpn -axX +uZy aao wog wog @@ -54018,16 +54151,16 @@ mqh fEv iig iig -ayZ +hkR fEv ueL ueL -ayZ -axX +hkR +uZy fEv -ayZ -axX -axX +hkR +uZy +uZy aao wog wog @@ -54240,10 +54373,10 @@ kka pog iAI wVB -ayZ -ndw -sCt -axX +hkR +jFG +xSu +uZy aao aao wog @@ -54457,10 +54590,10 @@ kka duA ykR iaC -ayZ -hhK -sCt -axX +hkR +mge +xSu +uZy aao wog qgY @@ -54674,10 +54807,10 @@ kka duA iNR iaC -ayZ -hhK -sCt -axX +hkR +mge +xSu +uZy aao wog wog @@ -54891,10 +55024,10 @@ kka duA ykR iaC -ayZ -hhK -sCt -axX +hkR +mge +xSu +uZy uVn wog wog @@ -55108,10 +55241,10 @@ kka duA iNR iaC -ayZ -hhK -sCt -axX +hkR +mge +xSu +uZy dQw wog qgY @@ -55326,8 +55459,8 @@ duA ykR iaC ueL -nzN -sCt +pTY +xSu tcP dQw wog @@ -55535,16 +55668,16 @@ duA iNR iaC gUD -btr +nxG jxS -btr +nxG oWp duA iNR iaC ueL -nzN -cKu +pTY +dyA tcP rvS wog @@ -55753,16 +55886,16 @@ ykR iaC dBU guu -axX +uZy cNb nuz duA ykR iaC -ayZ -hhK -cKu -axX +hkR +mge +dyA +uZy rvS wog wog @@ -55969,17 +56102,17 @@ duA iNR iaC xXq -btu +bLE uJj -gwg +vYf voG duA iNR iaC -ayZ -hhK -sCt -axX +hkR +mge +xSu +uZy rvS wog wog @@ -56193,10 +56326,10 @@ jxA duA ykR iaC -ayZ -nzN -sCt -axX +hkR +pTY +xSu +uZy rvS wog jXX @@ -56410,10 +56543,10 @@ kka duA iNR iaC -ayZ -nzN -sCt -axX +hkR +pTY +xSu +uZy aao aao aao @@ -56628,9 +56761,9 @@ duA ykR iaC iig -nzN -sCt -axX +pTY +xSu +uZy aao aao aao @@ -56844,10 +56977,10 @@ kka duA iNR iaC -ayZ -hhK -sCt -axX +hkR +mge +xSu +uZy aao aao aao @@ -57061,10 +57194,10 @@ kka duA ykR iaC -ayZ -hhK -sCt -axX +hkR +mge +xSu +uZy aao aao aao @@ -57278,10 +57411,10 @@ kka nug rUN oIK -ayZ -slC -sCt -axX +hkR +pVi +xSu +uZy aao aao aao @@ -57483,23 +57616,23 @@ wFL axX axX axX -ayZ -ayZ -ayZ -ayZ +hkR +hkR +hkR +hkR fEv -ayZ +hkR sNP ueL gPh sNP -ayZ -ayZ -axX +hkR +hkR +uZy fEv -ayZ -axX -axX +hkR +uZy +uZy aao aao aao @@ -57700,23 +57833,23 @@ tTI nIi gZc nIi -btr -lck -lck -lck -tTI -lck -lck +nxG +eyR +eyR +eyR +chw +eyR +eyR ouh -tTI -btr -btr -slC +chw +nxG +nxG +pVi fUp -nVq -sCt +wRP +xSu wpn -axX +uZy aao aao aao @@ -57917,23 +58050,23 @@ pMi ayZ bsP ayZ -btu +bLE iFa snv -btu +bLE gFR tvH gML tvH gML gFR -btu -btu -ayZ -btu -gdx -axX -axX +bLE +bLE +hkR +bLE +oHc +uZy +uZy aao aao aao @@ -58134,22 +58267,22 @@ sDZ axX axX axX -axX -axX -axX -axX -axX -axX -axX -axX -axX -axX -axX -axX -axX -axX -axX -axX +uZy +uZy +uZy +uZy +uZy +uZy +uZy +uZy +uZy +uZy +uZy +uZy +uZy +uZy +uZy +uZy aao aao aao diff --git a/maps/map_files/BigRed/sprinkles/15.reactor_meltdown.dmm b/maps/map_files/BigRed/sprinkles/15.reactor_meltdown.dmm index 897f76d0f656..c5dc410ba02e 100644 --- a/maps/map_files/BigRed/sprinkles/15.reactor_meltdown.dmm +++ b/maps/map_files/BigRed/sprinkles/15.reactor_meltdown.dmm @@ -576,14 +576,14 @@ /area/bigredv2/outside/lz2_south_cas) "cP" = ( /turf/open/floor/plating, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "cR" = ( /obj/effect/decal/cleanable/dirt, /turf/open/floor/plating, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "cS" = ( /turf/open/gm/river, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "cT" = ( /turf/open/mars/mars_dirt_13, /area/bigredv2/outside/lz2_south_cas) @@ -602,12 +602,12 @@ /area/bigredv2/outside/lz2_south_cas) "da" = ( /turf/closed/wall/mineral/uranium, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "db" = ( /obj/effect/decal/cleanable/dirt, /obj/item/tool/extinguisher, /turf/open/floor/plating, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "dc" = ( /turf/open/mars_cave/mars_dirt_7, /area/bigredv2/outside/lz2_south_cas) @@ -621,7 +621,7 @@ "df" = ( /obj/structure/machinery/power/port_gen/pacman, /turf/open/floor/plating, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "di" = ( /obj/structure/machinery/light{ dir = 8 @@ -632,7 +632,7 @@ "dj" = ( /obj/effect/decal/cleanable/dirt/greenglow, /turf/open/gm/river, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "dk" = ( /obj/structure/girder, /turf/open/floor/plating, @@ -648,19 +648,19 @@ dir = 1 }, /turf/open/floor/plating, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "dp" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/machinery/light_construct{ dir = 8 }, /turf/open/floor/plating, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "dq" = ( /obj/item/bananapeel, /obj/effect/decal/cleanable/dirt/greenglow, /turf/open/floor/plating, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "dr" = ( /obj/structure/machinery/door/poddoor/almayer{ id = "rad_door"; @@ -674,21 +674,21 @@ "dv" = ( /obj/structure/machinery/power/turbine, /turf/open/floor/plating, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "dx" = ( /obj/effect/decal/cleanable/dirt/greenglow, /turf/open/floor/plating/panelscorched, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "dy" = ( /obj/structure/machinery/power/reactor/colony{ name = "Reactor Turbine" }, /turf/open/floor/plating, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "dz" = ( /obj/structure/machinery/light_construct, /turf/open/floor/plating, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "dA" = ( /turf/open/mars_cave/mars_dirt_4, /area/bigredv2/outside/s) @@ -706,7 +706,7 @@ /obj/structure/machinery/power/port_gen/pacman, /obj/effect/decal/cleanable/dirt, /turf/open/floor/plating, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "dJ" = ( /obj/effect/landmark/hunter_primary, /turf/open/mars_cave/mars_cave_2, @@ -717,7 +717,7 @@ }, /obj/effect/decal/cleanable/dirt, /turf/open/floor/plating, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "dO" = ( /turf/open/mars_cave/mars_cave_6, /area/bigredv2/outside/lz2_south_cas) @@ -726,17 +726,17 @@ /area/bigredv2/outside/lz2_south_cas) "dS" = ( /turf/open/mars_cave/mars_cave_7, -/area/bigredv2/outside/lz2_south_cas) +/area/bigredv2/caves_sw) "dT" = ( /turf/closed/wall/solaris/rock, /area/bigredv2/caves) "dU" = ( /obj/structure/blocker/forcefield/multitile_vehicles, /turf/open/mars_cave/mars_cave_10, -/area/bigredv2/outside/lz2_south_cas) +/area/bigredv2/caves_sw) "dV" = ( /turf/open/mars_cave/mars_cave_5, -/area/bigredv2/outside/lz2_south_cas) +/area/bigredv2/caves_sw) "dW" = ( /turf/open/mars_cave/mars_cave_23, /area/bigredv2/outside/lz2_south_cas) @@ -747,47 +747,47 @@ "dY" = ( /obj/effect/decal/cleanable/dirt/greenglow, /turf/open/floor/wall_thermite, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "dZ" = ( /obj/effect/decal/cleanable/dirt/greenglow, /turf/open/floor/plating, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "eb" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt/greenglow, /turf/open/floor/plating/panelscorched, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "ec" = ( /obj/structure/catwalk/bigred, /turf/open/gm/river/desert/shallow/covered, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "ee" = ( /obj/effect/decal/cleanable/molten_item, /turf/open/floor/plating, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "ef" = ( /obj/structure/machinery/light_construct{ dir = 4 }, /turf/open/gm/river, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "eh" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt/greenglow, /turf/open/floor/plating, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "ei" = ( /obj/structure/machinery/compressor{ dir = 1 }, /turf/open/floor/plating/panelscorched, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "ej" = ( /obj/structure/machinery/light_construct{ dir = 4 }, /turf/open/floor/plating/panelscorched, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "ek" = ( /obj/structure/machinery/camera/autoname{ dir = 4 @@ -796,42 +796,42 @@ dir = 8 }, /turf/open/floor/plating, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "el" = ( /obj/structure/machinery/light_construct{ dir = 8 }, /turf/open/gm/river, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "em" = ( /obj/structure/machinery/light_construct{ dir = 1 }, /turf/open/floor/plating, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "en" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/girder, /turf/open/floor/plating, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "eo" = ( /obj/effect/decal/cleanable/dirt/greenglow, /obj/structure/blocker/forcefield/multitile_vehicles, /turf/open/mars_cave/mars_cave_7, -/area/bigredv2/outside/lz2_south_cas) +/area/bigredv2/caves_sw) "ep" = ( /obj/item/tool/extinguisher, /turf/open/floor/plating, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "eq" = ( /obj/effect/decal/cleanable/molten_item, /turf/open/floor/plating/panelscorched, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "er" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/molten_item, /turf/open/floor/plating, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "et" = ( /obj/structure/bed/chair/office/light, /turf/open/floor/plating/panelscorched, @@ -839,7 +839,7 @@ "ev" = ( /obj/structure/machinery/light_construct, /turf/open/floor/plating/panelscorched, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "ew" = ( /turf/open/floor/plating/panelscorched, /area/bigredv2/outside/engineering) @@ -847,14 +847,14 @@ /obj/effect/decal/cleanable/molten_item, /obj/effect/decal/cleanable/dirt/greenglow, /turf/open/floor/wall_thermite, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "ey" = ( /obj/structure/machinery/light_construct{ dir = 4 }, /obj/effect/decal/cleanable/ash, /turf/open/floor/plating, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "ez" = ( /obj/effect/decal/cleanable/dirt, /turf/open/floor/plating/panelscorched, @@ -864,7 +864,7 @@ dir = 1 }, /turf/open/floor/plating/panelscorched, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "eB" = ( /obj/effect/decal/cleanable/dirt/greenglow, /obj/structure/blocker/forcefield/multitile_vehicles, @@ -893,11 +893,11 @@ /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt/greenglow, /turf/open/floor/wall_thermite, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "eH" = ( /obj/effect/decal/cleanable/molten_item, /turf/open/floor/panelscorched, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "eI" = ( /obj/effect/decal/cleanable/ash, /turf/open/floor/darkyellow2/west, @@ -905,28 +905,28 @@ "eJ" = ( /obj/effect/decal/cleanable/molten_item, /turf/open/floor/wall_thermite, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "eK" = ( /obj/effect/decal/cleanable/molten_item, /obj/effect/decal/cleanable/dirt/greenglow, /turf/open/gm/river, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "eL" = ( /obj/effect/decal/cleanable/dirt, /turf/open/floor/wall_thermite, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "eM" = ( /obj/effect/decal/cleanable/dirt/greenglow, /obj/effect/decal/cleanable/molten_item, /turf/open/gm/river, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "eN" = ( /obj/effect/decal/cleanable/dirt/greenglow, /turf/open/mars_cave/mars_cave_5, -/area/bigredv2/outside/lz2_south_cas) +/area/bigredv2/caves_sw) "eO" = ( /turf/closed/wall/mineral/uranium/leaking, -/area/bigredv2/outside/engineering) +/area/bigredv2/outside/engineering/reactor) "fI" = ( /obj/effect/decal/cleanable/dirt, /turf/open/floor/dark, @@ -969,6 +969,14 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/darkyellow2/west, /area/bigredv2/outside/engineering) +"pK" = ( +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plating/panelscorched, +/area/bigredv2/outside/engineering/reactor) +"sy" = ( +/obj/structure/girder, +/turf/open/floor/plating, +/area/bigredv2/outside/engineering/reactor) "sU" = ( /obj/structure/blocker/forcefield/multitile_vehicles, /turf/open/mars_cave/mars_dirt_6, @@ -986,6 +994,10 @@ }, /turf/open/floor/plating/panelscorched, /area/bigredv2/outside/telecomm/engi) +"wu" = ( +/obj/structure/machinery/power/apc/power/west, +/turf/open/floor/plating, +/area/bigredv2/outside/engineering/reactor) "xl" = ( /obj/structure/pipes/standard/simple/hidden/green, /turf/open/floor/darkyellowcorners2/west, @@ -1000,6 +1012,9 @@ }, /turf/open/floor/plating/panelscorched, /area/bigredv2/outside/telecomm/engi) +"Af" = ( +/turf/closed/wall/solaris/reinforced, +/area/bigredv2/outside/engineering/reactor) "Ah" = ( /obj/structure/blocker/forcefield/multitile_vehicles, /turf/open/mars, @@ -1022,14 +1037,24 @@ "Dq" = ( /turf/open/floor/darkyellow2/east, /area/bigredv2/outside/engineering) +"EG" = ( +/obj/structure/girder/reinforced, +/turf/open/floor/plating, +/area/bigredv2/outside/engineering/reactor) "ET" = ( /obj/structure/pipes/standard/simple/hidden/green, /turf/open/floor/darkyellow2/west, /area/bigredv2/outside/engineering) +"FO" = ( +/turf/open/mars_cave/mars_cave_2, +/area/bigredv2/caves_sw) +"GC" = ( +/turf/open/floor/plating/panelscorched, +/area/bigredv2/outside/engineering/reactor) "IE" = ( /obj/structure/blocker/forcefield/multitile_vehicles, /turf/open/mars_cave/mars_cave_7, -/area/bigredv2/outside/lz2_south_cas) +/area/bigredv2/caves_sw) "KJ" = ( /obj/structure/window_frame/solaris/reinforced, /turf/open/floor/plating, @@ -1079,6 +1104,9 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/darkyellow2/east, /area/bigredv2/outside/engineering) +"YX" = ( +/turf/open/mars_cave/mars_cave_23, +/area/bigredv2/caves_sw) (1,1,1) = {" au @@ -1141,7 +1169,7 @@ dW dR dR dR -dR +FO dT "} (3,1,1) = {" @@ -1172,9 +1200,9 @@ dR dR dO dR -dR -dR -dR +FO +FO +FO "} (4,1,1) = {" au @@ -1204,9 +1232,9 @@ kN kN kN dn -dR -dR -dR +FO +FO +FO "} (5,1,1) = {" au @@ -1221,24 +1249,24 @@ aF aq aq aq -dX -dX -aq -aq -dk -aq -aq +EG +EG +Af +Af +sy +Af +Af ex eG -dk -dk -aq -aq +sy +sy +Af +Af dT dT dS -dW -dR +YX +FO "} (6,1,1) = {" au @@ -1256,7 +1284,7 @@ aq cP cR dp -cP +wu df do dv @@ -1265,12 +1293,12 @@ dZ dG dK dv -aq -aq +Af +Af dT dS dV -dR +FO "} (7,1,1) = {" au @@ -1286,23 +1314,23 @@ cn cB cn cP -ez -ez +pK +pK cR cR cP eh eh eh -ew -ew -ew -aq -aq +GC +GC +GC +Af +Af dT dT dS -dR +FO "} (8,1,1) = {" au @@ -1321,20 +1349,20 @@ db cR cR eH -ew +GC cR eh eh -ew -ez -ez +GC +pK +pK cP -aq -aq -aq +Af +Af +Af dT dS -dR +FO "} (9,1,1) = {" au @@ -1362,11 +1390,11 @@ cS cS cS cP -aq -aq +Af +Af dT dS -dR +FO "} (10,1,1) = {" bC @@ -1394,11 +1422,11 @@ cS da cS dz -aq -aq +Af +Af dT dS -dR +FO "} (11,1,1) = {" au @@ -1426,11 +1454,11 @@ dj dj dj cP -aq -aq +Af +Af dT dS -dR +FO "} (12,1,1) = {" au @@ -1459,10 +1487,10 @@ eO dj dZ dZ -aq +Af dT dS -dR +FO "} (13,1,1) = {" au @@ -1491,10 +1519,10 @@ dj dj eh dZ -aq +Af dU dV -dR +FO "} (14,1,1) = {" au @@ -1515,7 +1543,7 @@ da cS ec ev -aq +Af em ec cS @@ -1526,7 +1554,7 @@ eb dY eo eN -dR +FO "} (15,1,1) = {" au @@ -1546,19 +1574,19 @@ cS cS cS cP -ew +GC ek eq -ez +pK cS cS cS -ez +pK cR eL eo -dR -dR +FO +FO "} (16,1,1) = {" ak @@ -1577,20 +1605,20 @@ oE cS da cS -ew +GC ee dy -ez +pK er cS da cS -ew +GC ee en IE -dR -dR +FO +FO "} (17,1,1) = {" au @@ -1609,20 +1637,20 @@ oE cS cS cS -ew -ew +GC +GC ey -ez -ez +pK +pK cS cS cS cP cP -aq +Af IE -dR -dR +FO +FO "} (18,1,1) = {" au @@ -1643,7 +1671,7 @@ da cS ec dz -aq +Af eA ec cS @@ -1651,10 +1679,10 @@ da dj cP cR -dk +sy IE -dR -dR +FO +FO "} (19,1,1) = {" au @@ -1682,8 +1710,8 @@ dj dj dj dZ -ez -dX +pK +EG dT dT dT @@ -1713,9 +1741,9 @@ ec dj eO dj -ez -ez -aq +pK +pK +Af dT dT dT @@ -1746,8 +1774,8 @@ cS dj dj cP -aq -aq +Af +Af dT dT dT @@ -1809,9 +1837,9 @@ ec cS cS cS -ew -dX -aq +GC +EG +Af dT dT dT @@ -1835,15 +1863,15 @@ dZ dZ dZ dZ -ew -ez -ez -ew +GC +pK +pK +GC cP cP ee -dX -aq +EG +Af dT dT dT @@ -1869,12 +1897,12 @@ cR eh eb ep -ez +pK cP cP cP -dk -aq +sy +Af dT dT dT @@ -1900,12 +1928,12 @@ dZ df ei dv -ew +GC cP df do dv -aq +Af dT dT dT @@ -1926,18 +1954,18 @@ aq aq dX dY -aq -aq -dk +Af +Af +sy eJ eJ eJ -aq -dk -dX -dk -aq -aq +Af +sy +EG +sy +Af +Af dT dT dT diff --git a/maps/map_files/DesertDam/Desert_Dam.dmm b/maps/map_files/DesertDam/Desert_Dam.dmm index 14404540f73d..27df07c96d49 100644 --- a/maps/map_files/DesertDam/Desert_Dam.dmm +++ b/maps/map_files/DesertDam/Desert_Dam.dmm @@ -36148,6 +36148,7 @@ icon_state = "E" }, /obj/effect/decal/cleanable/dirt, +/obj/effect/sentry_landmark/lz_2/bottom_right, /turf/open/asphalt, /area/desert_dam/exterior/landing_pad_two) "cXD" = ( @@ -44152,6 +44153,11 @@ /obj/effect/decal/cleanable/dirt, /turf/open/asphalt/cement_sunbleached/cement_sunbleached18, /area/desert_dam/exterior/valley/valley_civilian) +"dWU" = ( +/obj/effect/decal/cleanable/dirt, +/obj/effect/sentry_landmark/lz_2/bottom_right, +/turf/open/asphalt, +/area/desert_dam/exterior/landing_pad_two) "dWV" = ( /obj/structure/desertdam/decals/road_edge{ icon_state = "road_edge_decal4" @@ -47178,6 +47184,16 @@ /obj/structure/prop/dam/boulder/boulder1, /turf/open/desert/dirt, /area/desert_dam/exterior/valley/bar_valley_dam) +"kcc" = ( +/obj/structure/desertdam/decals/road_edge{ + icon_state = "road_edge_decal2" + }, +/obj/effect/decal/sand_overlay/sand1{ + dir = 8 + }, +/obj/effect/sentry_landmark/lz_2/top_right, +/turf/open/asphalt, +/area/desert_dam/exterior/valley/valley_cargo) "kcH" = ( /turf/closed/wall/r_wall/bunker, /area/desert_dam/exterior/telecomm/lz2_containers) @@ -47747,7 +47763,8 @@ /obj/item/clothing/mask/yautja_flavor{ anchored = 1; icon_state = "pred_mask12_ebony"; - unacidable = 0 + unacidable = 0; + pixel_y = 9 }, /turf/open/floor/strata/grey_multi_tiles, /area/desert_dam/interior/caves/temple) @@ -47964,6 +47981,10 @@ }, /turf/open/desert/dirt, /area/desert_dam/exterior/landing_pad_two) +"niQ" = ( +/obj/effect/sentry_landmark/lz_2/bottom_right, +/turf/open/asphalt/cement_sunbleached/cement_sunbleached1, +/area/desert_dam/exterior/landing_pad_two) "nji" = ( /obj/effect/decal/cleanable/dirt, /turf/open/floor/prison/cell_stripe/east, @@ -48498,6 +48519,10 @@ }, /turf/open/asphalt, /area/desert_dam/exterior/valley/valley_hydro) +"pAn" = ( +/obj/effect/sentry_landmark/lz_2/top_left, +/turf/open/desert/dirt, +/area/desert_dam/exterior/valley/valley_cargo) "pAE" = ( /obj/structure/blocker/forcefield/multitile_vehicles, /turf/open/asphalt/cement_sunbleached/cement_sunbleached12, @@ -49084,6 +49109,10 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/sandstone/runed, /area/desert_dam/interior/caves/temple) +"rSC" = ( +/obj/effect/sentry_landmark/lz_2/top_right, +/turf/open/desert/dirt, +/area/desert_dam/exterior/valley/valley_cargo) "rTP" = ( /obj/effect/decal/warning_stripes{ icon_state = "E" @@ -49533,6 +49562,10 @@ }, /turf/open/asphalt, /area/desert_dam/exterior/valley/valley_hydro) +"trD" = ( +/obj/effect/sentry_landmark/lz_2/top_right, +/turf/open/asphalt, +/area/desert_dam/exterior/valley/valley_cargo) "trP" = ( /obj/structure/prop/dam/boulder/boulder1, /turf/open/desert/dirt, @@ -49634,6 +49667,10 @@ /obj/effect/decal/remains/human, /turf/open/desert/rock, /area/desert_dam/interior/caves/temple) +"tIJ" = ( +/obj/effect/sentry_landmark/lz_2/top_left, +/turf/open/asphalt, +/area/desert_dam/exterior/valley/valley_cargo) "tKQ" = ( /turf/open/desert/dirt/rock1, /area/desert_dam/exterior/valley/valley_crashsite) @@ -49766,6 +49803,10 @@ "ulg" = ( /turf/open/desert/dirt/desert_transition_edge1/north, /area/desert_dam/exterior/telecomm/lz2_storage) +"uli" = ( +/obj/effect/sentry_landmark/lz_2/bottom_left, +/turf/open/asphalt, +/area/desert_dam/exterior/landing_pad_two) "ulm" = ( /obj/structure/machinery/disposal, /obj/structure/disposalpipe/trunk{ @@ -50280,6 +50321,13 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/prison/floor_marked/southwest, /area/desert_dam/building/cafeteria/loading) +"wkI" = ( +/obj/structure/desertdam/decals/road_edge{ + icon_state = "road_edge_decal2" + }, +/obj/effect/sentry_landmark/lz_2/bottom_left, +/turf/open/asphalt, +/area/desert_dam/exterior/landing_pad_two) "wnE" = ( /obj/structure/closet/crate/hydroponics/prespawned, /obj/effect/landmark/objective_landmark/close, @@ -50751,6 +50799,11 @@ /obj/structure/flora/grass/desert/lightgrass_5, /turf/open/desert/dirt, /area/desert_dam/exterior/valley/bar_valley_dam) +"xMh" = ( +/obj/structure/desertdam/decals/road_edge, +/obj/effect/sentry_landmark/lz_2/bottom_left, +/turf/open/asphalt, +/area/desert_dam/exterior/landing_pad_two) "xMr" = ( /obj/effect/blocker/toxic_water/Group_2, /obj/structure/barricade/wooden{ @@ -56265,9 +56318,9 @@ crx dlM crx crx -crx +tIJ dFo -doE +rSC doE cDb cGS @@ -57433,11 +57486,11 @@ crx crx crx dlM -crx +tIJ crx crx dFo -doE +pAn doE alh cMC @@ -57669,7 +57722,7 @@ cMJ cUk crx crx -crx +trD dFo doE doE @@ -57685,7 +57738,7 @@ cDX cDX cDX cDX -cDX +niQ cDX cDX cDX @@ -57928,7 +57981,7 @@ djl djl djl djl -djl +xMh djl djl djl @@ -58385,7 +58438,7 @@ vGu dws bhp mfH -bhp +dWU bhp mfH bhp @@ -58400,7 +58453,7 @@ vGu dws dws vGu -dws +uli dws dws tlh @@ -58605,7 +58658,7 @@ doE cAV cuJ cuJ -cuJ +kcc cuJ cuJ cuJ @@ -58628,7 +58681,7 @@ djk djk djk djk -djk +wkI djk djk eCk diff --git a/maps/map_files/DesertDam/sprinkles/10.damtemple_intact.dmm b/maps/map_files/DesertDam/sprinkles/10.damtemple_intact.dmm index 4ebaf4fbb798..30adc1a7f997 100644 --- a/maps/map_files/DesertDam/sprinkles/10.damtemple_intact.dmm +++ b/maps/map_files/DesertDam/sprinkles/10.damtemple_intact.dmm @@ -105,7 +105,7 @@ desc = "A clan mask of uncertain origin, whoever wore it must have been cruel and sadistic."; icon_state = "pred_mask_elder_tr"; name = "ancient clan mask"; - pixel_y = 20 + pixel_y = 30 }, /turf/open/floor/corsat/squareswood/north, /area/desert_dam/interior/caves/temple) @@ -216,7 +216,8 @@ /obj/item/clothing/mask/yautja_flavor{ anchored = 1; icon_state = "pred_mask12_ebony"; - unacidable = 0 + unacidable = 0; + pixel_y = 10 }, /turf/open/floor/strata/grey_multi_tiles, /area/desert_dam/interior/caves/temple) diff --git a/maps/map_files/FOP_v3_Sciannex/Fiorina_SciAnnex.dmm b/maps/map_files/FOP_v3_Sciannex/Fiorina_SciAnnex.dmm index 2042a78f845d..3f5ae8bcbc41 100644 --- a/maps/map_files/FOP_v3_Sciannex/Fiorina_SciAnnex.dmm +++ b/maps/map_files/FOP_v3_Sciannex/Fiorina_SciAnnex.dmm @@ -47,7 +47,7 @@ icon = 'icons/obj/structures/doors/2x1prepdoor.dmi' }, /turf/open/floor/plating/prison, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "ace" = ( /obj/effect/landmark{ icon_state = "hive_spawn"; @@ -151,7 +151,7 @@ /obj/structure/surface/table/reinforced/prison, /obj/effect/spawner/random/pills/lowchance, /turf/open/floor/prison/yellowfull, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "agh" = ( /obj/structure/surface/table/reinforced/prison, /obj/structure/machinery/computer/cameras{ @@ -232,7 +232,7 @@ icon_state = "abed" }, /turf/open/floor/prison/whitepurple/west, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/east) "aje" = ( /obj/structure/stairs/perspective{ dir = 4; @@ -281,7 +281,7 @@ "akM" = ( /obj/structure/surface/table/reinforced/prison, /turf/open/floor/prison/darkpurplefull2, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "akW" = ( /obj/structure/bed/chair/janicart, /turf/open/floor/prison, @@ -328,7 +328,7 @@ /area/fiorina/tumor/civres) "amn" = ( /turf/open/floor/prison/whitepurple/east, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "amF" = ( /turf/closed/wall/r_wall/prison, /area/fiorina/tumor/aux_engi) @@ -337,7 +337,7 @@ dir = 4 }, /turf/open/floor/prison/whitepurple/west, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "ane" = ( /obj/item/weapon/unathiknife{ name = "ceremonial knife" @@ -350,7 +350,7 @@ /obj/item/restraint/handcuffs, /obj/effect/landmark/objective_landmark/close, /turf/open/floor/prison/darkredfull2, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "anm" = ( /obj/structure/surface/table/reinforced/prison, /obj/structure/machinery/computer{ @@ -438,7 +438,7 @@ pixel_y = 11 }, /turf/open/floor/prison/darkpurplefull2, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "ape" = ( /obj/structure/bed/chair{ dir = 4; @@ -449,6 +449,16 @@ "apf" = ( /turf/open/floor/plating/prison, /area/fiorina/station/civres_blue) +"apg" = ( +/turf/open/floor/prison/whitepurple, +/area/fiorina/station/research_cells/east) +"apm" = ( +/obj/structure/machinery/light/double/blue{ + dir = 1; + pixel_y = 21 + }, +/turf/open/floor/prison/whitepurple/north, +/area/fiorina/station/research_cells/east) "apu" = ( /turf/open/floor/prison/blue, /area/fiorina/station/power_ring) @@ -480,13 +490,13 @@ "arl" = ( /obj/effect/landmark/objective_landmark/close, /turf/open/floor/plating/prison, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "arn" = ( /obj/effect/landmark/nightmare{ insert_tag = "researchprestine" }, /turf/closed/wall/prison, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "art" = ( /obj/structure/platform{ dir = 8 @@ -517,7 +527,7 @@ pixel_y = 21 }, /turf/open/floor/prison/yellow/northeast, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "ask" = ( /obj/structure/machinery/light/double/blue{ dir = 8; @@ -549,6 +559,10 @@ /obj/structure/machinery/light/double/blue, /turf/open/floor/prison, /area/fiorina/station/transit_hub) +"asF" = ( +/obj/structure/extinguisher_cabinet, +/turf/closed/wall/prison, +/area/fiorina/station/research_cells/east) "asI" = ( /obj/item/toy/deck, /turf/open/floor/prison/whitegreenfull/southwest, @@ -591,7 +605,7 @@ "atY" = ( /obj/structure/bedsheetbin, /turf/open/floor/prison/yellow/west, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "auj" = ( /obj/item/frame/rack, /turf/open/floor/prison/floor_plate, @@ -613,14 +627,14 @@ /obj/structure/closet/wardrobe/orange, /obj/item/clothing/under/color/orange, /turf/open/floor/prison/yellowfull, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "avc" = ( /obj/structure/stairs/perspective{ dir = 5; icon_state = "p_stair_full" }, /turf/open/floor/plating/plating_catwalk/prison, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "avJ" = ( /obj/item/reagent_container/food/drinks/cans/waterbottle, /turf/open/floor/prison, @@ -644,7 +658,7 @@ pixel_y = 19 }, /turf/open/floor/prison/whitepurple/north, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "axb" = ( /obj/item/clothing/suit/storage/marine/specialist, /turf/open/floor/plating/prison, @@ -663,6 +677,9 @@ }, /turf/open/floor/plating/prison, /area/fiorina/station/power_ring) +"axz" = ( +/turf/closed/wall/r_wall/prison, +/area/fiorina/station/lowsec/east) "axA" = ( /obj/structure/prop/almayer/computers/mission_planning_system{ density = 0; @@ -693,7 +710,7 @@ "ayG" = ( /obj/structure/machinery/power/apc/power/north, /turf/open/floor/prison/yellow/northwest, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "ayH" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/paper_bin{ @@ -706,7 +723,7 @@ /obj/item/explosive/grenade/incendiary/molotov, /obj/effect/landmark/objective_landmark/close, /turf/open/floor/prison/floor_plate, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "ayX" = ( /obj/structure/machinery/door/airlock/almayer/maint/colony/autoname{ dir = 1; @@ -807,6 +824,9 @@ /obj/effect/landmark/yautja_teleport, /turf/open/floor/prison, /area/fiorina/station/park) +"aCw" = ( +/turf/open/floor/prison, +/area/fiorina/station/disco/east_disco) "aCC" = ( /obj/item/tool/soap{ pixel_x = 2; @@ -992,7 +1012,7 @@ pixel_y = 13 }, /turf/open/floor/prison/floor_plate, -/area/fiorina/station/power_ring) +/area/fiorina/station/power_ring/reactor) "aLC" = ( /obj/structure/sink{ dir = 8; @@ -1000,7 +1020,7 @@ }, /obj/effect/spawner/random/pills/lowchance, /turf/open/floor/prison/whitepurple/southwest, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/east) "aLT" = ( /obj/item/trash/uscm_mre, /turf/open/floor/plating/prison, @@ -1011,7 +1031,7 @@ layer = 2.7 }, /turf/open/floor/prison/darkpurplefull2, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "aMg" = ( /turf/closed/wall/r_wall/prison, /area/fiorina/tumor/ice_lab) @@ -1070,6 +1090,10 @@ }, /turf/open/floor/prison/floor_plate, /area/fiorina/station/power_ring) +"aNY" = ( +/obj/structure/machinery/door/airlock/prison_hatch/autoname, +/turf/open/floor/plating/prison, +/area/fiorina/station/research_cells/east) "aOc" = ( /turf/closed/shuttle/ert{ icon_state = "rightengine_3"; @@ -1206,7 +1230,7 @@ /area/fiorina/station/medbay) "aSz" = ( /turf/closed/wall/r_wall/prison, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "aSA" = ( /obj/structure/bed/sofa/vert/grey/top, /turf/open/floor/prison, @@ -1252,7 +1276,7 @@ pixel_y = 13 }, /turf/open/floor/plating/prison, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "aTO" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/toy/deck/uno, @@ -1326,7 +1350,7 @@ /area/fiorina/lz/near_lzII) "aXC" = ( /turf/open/floor/prison/damaged2/southwest, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "aXO" = ( /turf/open/floor/prison/damaged2, /area/fiorina/station/central_ring) @@ -1352,10 +1376,16 @@ dir = 4 }, /turf/open/floor/prison/kitchen, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) +"aYR" = ( +/turf/open/floor/prison/whitepurple/west, +/area/fiorina/station/research_cells/east) "aZi" = ( /turf/open/floor/prison/cell_stripe/east, /area/fiorina/tumor/servers) +"aZA" = ( +/turf/open/floor/prison/blue, +/area/fiorina/station/power_ring/reactor) "aZD" = ( /obj/structure/platform{ dir = 8 @@ -1396,7 +1426,7 @@ "baM" = ( /obj/effect/spawner/random/gun/smg, /turf/open/floor/prison/darkpurplefull2, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "bbn" = ( /obj/item/device/motiondetector, /turf/open/floor/prison/floor_plate, @@ -1419,7 +1449,7 @@ pixel_y = 23 }, /turf/open/floor/prison/yellow/north, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "bbU" = ( /obj/structure/sign/safety/fire_haz, /turf/open/floor/prison/floor_plate, @@ -1546,7 +1576,7 @@ req_access = null }, /turf/open/floor/plating/prison, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "bgy" = ( /obj/item/trash/pistachios, /turf/open/floor/plating/prison, @@ -1573,7 +1603,10 @@ pixel_y = 13 }, /turf/open/floor/plating/prison, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) +"bhC" = ( +/turf/open/floor/prison/yellow/southwest, +/area/fiorina/station/lowsec/east) "bhW" = ( /turf/open/floor/prison/greencorner/east, /area/fiorina/tumor/civres) @@ -1610,7 +1643,7 @@ "bjZ" = ( /obj/item/weapon/twohanded/spear, /turf/open/floor/prison/darkpurplefull2, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/east) "bkg" = ( /obj/structure/bed/chair, /turf/open/floor/prison, @@ -1624,7 +1657,7 @@ icon_state = "casing_7_1" }, /turf/open/floor/prison/floor_plate, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "bkU" = ( /obj/effect/decal/cleanable/blood/drip, /turf/open/floor/prison, @@ -1638,7 +1671,11 @@ "blf" = ( /obj/structure/machinery/power/reactor/colony, /turf/open/floor/prison/bluecorner/north, -/area/fiorina/station/power_ring) +/area/fiorina/station/power_ring/reactor) +"blt" = ( +/obj/structure/machinery/light/double/blue, +/turf/open/floor/prison/yellow, +/area/fiorina/station/lowsec/showers_laundry) "blA" = ( /obj/item/shard{ icon_state = "medium"; @@ -1652,7 +1689,7 @@ icon = 'icons/obj/structures/doors/2x1prepdoor.dmi' }, /turf/open/floor/plating/prison, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "bma" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/newspaper, @@ -1756,7 +1793,7 @@ pixel_y = 8 }, /turf/open/floor/prison/whitepurple/northwest, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "bqC" = ( /obj/structure/platform{ dir = 8 @@ -1822,7 +1859,7 @@ name = "ice shard" }, /turf/open/organic/grass/astroturf, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/basketball) "bso" = ( /turf/closed/shuttle/ert{ icon_state = "stan_l_w" @@ -1834,13 +1871,16 @@ dir = 4 }, /turf/open/floor/prison/whitepurple/southwest, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "bsR" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/ashtray/plastic, /obj/item/trash/cigbutt, /turf/open/floor/prison/whitegreenfull/southwest, /area/fiorina/station/medbay) +"btJ" = ( +/turf/open/floor/prison/yellow/north, +/area/fiorina/station/lowsec/showers_laundry) "buz" = ( /obj/item/stack/rods, /turf/open/floor/plating/prison, @@ -1907,7 +1947,7 @@ "bwk" = ( /obj/item/tool/wrench, /turf/open/floor/prison/whitepurple/north, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "bww" = ( /obj/item/trash/candy, /turf/open/floor/prison/floor_plate/southwest, @@ -1940,7 +1980,7 @@ "bxv" = ( /obj/effect/decal/cleanable/blood/oil, /turf/open/floor/prison/bluecorner/east, -/area/fiorina/station/power_ring) +/area/fiorina/station/power_ring/reactor) "bxy" = ( /turf/open/floor/prison/darkyellow2/northeast, /area/fiorina/lz/near_lzI) @@ -2071,7 +2111,7 @@ "bAM" = ( /obj/item/paper/prison_station/inmate_handbook, /turf/open/floor/prison/floor_plate, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "bBr" = ( /obj/structure/barricade/metal/wired{ dir = 1 @@ -2148,7 +2188,7 @@ "bEm" = ( /obj/effect/landmark/wo_supplies/storage/belts/knifebelt, /turf/open/floor/prison, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "bEA" = ( /obj/structure/barricade/wooden{ dir = 4; @@ -2274,12 +2314,12 @@ }, /obj/effect/landmark/objective_landmark/medium, /turf/open/floor/prison/yellow/southwest, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "bIR" = ( /obj/structure/closet/secure_closet/security, /obj/effect/landmark/objective_landmark/close, /turf/open/floor/prison/darkredfull2, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "bIZ" = ( /turf/closed/shuttle/elevator{ dir = 6 @@ -2296,7 +2336,7 @@ "bJn" = ( /obj/item/stack/cable_coil/pink, /turf/open/floor/plating/prison, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "bJp" = ( /obj/structure/flora/grass/tallgrass/jungle/corner{ dir = 9 @@ -2368,7 +2408,7 @@ /obj/structure/surface/rack, /obj/item/restraint/handcuffs/zip, /turf/open/floor/prison/darkredfull2, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "bMI" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/folder/black_random, @@ -2407,7 +2447,7 @@ "bOx" = ( /obj/structure/machinery/light/double/blue, /turf/open/floor/prison/whitepurple, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "bOK" = ( /obj/item/reagent_container/food/snacks/donkpocket, /turf/open/floor/corsat/squares, @@ -2525,7 +2565,7 @@ name = "\improper Fiorina Purple Block Canteen Vendor" }, /turf/open/floor/plating/prison, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "bRo" = ( /obj/structure/sink{ pixel_y = 23 @@ -2606,13 +2646,13 @@ "bTr" = ( /obj/effect/landmark/objective_landmark/medium, /turf/open/floor/prison/whitepurple/northwest, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "bTC" = ( /obj/structure/machinery/power/terminal{ dir = 8 }, /turf/open/floor/prison/bluecorner/east, -/area/fiorina/station/power_ring) +/area/fiorina/station/power_ring/reactor) "bTI" = ( /obj/structure/machinery/door/poddoor/almayer/locked{ explo_proof = 1; @@ -2642,6 +2682,12 @@ /obj/structure/closet/boxinggloves, /turf/open/floor/prison, /area/fiorina/station/central_ring) +"bVO" = ( +/obj/structure/bed{ + icon_state = "abed" + }, +/turf/open/floor/prison/whitepurple/east, +/area/fiorina/station/research_cells/east) "bVZ" = ( /turf/closed/shuttle/ert{ icon_state = "leftengine_1"; @@ -2673,7 +2719,7 @@ "bXz" = ( /obj/item/stack/sheet/wood, /turf/open/floor/prison/whitepurple/west, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "bXA" = ( /obj/item/tool/screwdriver, /turf/open/floor/prison, @@ -2701,7 +2747,7 @@ }, /obj/item/device/flashlight/lamp, /turf/open/floor/prison/darkredfull2, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "bZY" = ( /obj/structure/machinery/light/double/blue, /turf/open/floor/plating/prison, @@ -2709,7 +2755,11 @@ "car" = ( /obj/structure/machinery/portable_atmospherics/canister/nitrogen, /turf/open/floor/prison/yellow/west, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) +"cas" = ( +/obj/structure/machinery/light/double/blue, +/turf/open/floor/prison/yellowfull, +/area/fiorina/station/lowsec/showers_laundry) "caA" = ( /obj/effect/spawner/random/toolbox, /turf/open/floor/prison/floor_plate, @@ -2719,7 +2769,7 @@ /area/fiorina/station/transit_hub) "caF" = ( /turf/open/floor/wood, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "caX" = ( /obj/structure/inflatable/popped/door, /obj/item/ammo_casing{ @@ -2763,7 +2813,7 @@ "cbY" = ( /obj/item/newspaper, /turf/open/floor/prison/whitepurplecorner, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "ccH" = ( /obj/structure/machinery/newscaster, /turf/closed/wall/prison, @@ -2839,7 +2889,7 @@ dir = 1 }, /turf/open/floor/prison/floor_plate/southwest, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "cfG" = ( /obj/structure/machinery/landinglight/ds1/delayone{ dir = 1 @@ -2849,7 +2899,7 @@ "cfU" = ( /obj/item/prop/helmetgarb/gunoil, /turf/open/floor/prison/darkpurplefull2, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "cgx" = ( /obj/structure/bed/chair, /turf/open/floor/prison/sterile_white/southwest, @@ -2958,7 +3008,7 @@ "ckS" = ( /obj/item/stack/sheet/metal, /turf/open/floor/prison/yellowfull, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "ckZ" = ( /obj/structure/platform, /turf/open/floor/prison, @@ -2985,7 +3035,7 @@ "clA" = ( /obj/item/weapon/baton/cattleprod, /turf/open/floor/prison/whitepurple/southwest, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/east) "clN" = ( /obj/structure/prop/invuln/minecart_tracks{ dir = 1 @@ -3027,7 +3077,7 @@ "coj" = ( /obj/item/stool, /turf/open/floor/plating/prison, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "cpv" = ( /obj/structure/platform{ dir = 8 @@ -3062,7 +3112,7 @@ "cqW" = ( /obj/item/stool, /turf/open/floor/prison/damaged2, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "cqX" = ( /obj/item/stool, /turf/open/floor/prison/floor_plate, @@ -3128,7 +3178,7 @@ }, /obj/effect/spawner/random/goggles/lowchance, /turf/open/floor/prison/whitepurple/southeast, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "ctW" = ( /obj/structure/bed{ icon_state = "abed" @@ -3153,7 +3203,7 @@ }, /obj/item/frame/rack, /turf/open/floor/prison/floor_plate/southwest, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "cvc" = ( /obj/structure/barricade/metal/wired{ dir = 4 @@ -3334,7 +3384,7 @@ /area/fiorina/station/medbay) "cCe" = ( /turf/open/floor/prison/whitepurplecorner, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "cCh" = ( /obj/item/ammo_casing{ dir = 6; @@ -3405,7 +3455,7 @@ /obj/structure/surface/table/reinforced/prison, /obj/item/ammo_magazine/shotgun/buckshot, /turf/open/floor/prison/darkpurplefull2, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "cEw" = ( /turf/closed/wall/r_wall/prison_unmeltable, /area/fiorina/station/transit_hub) @@ -3488,7 +3538,7 @@ "cHC" = ( /obj/item/trash/popcorn, /turf/open/floor/prison/yellow/north, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "cHF" = ( /obj/structure/surface/table/reinforced/prison, /obj/structure/machinery/door/window/eastright, @@ -3502,13 +3552,16 @@ /obj/structure/closet/secure_closet/engineering_welding, /turf/open/floor/prison/darkbrownfull2, /area/fiorina/tumor/aux_engi) +"cIa" = ( +/turf/closed/wall/prison, +/area/fiorina/station/research_cells/east) "cIt" = ( /obj/structure/machinery/light/double/blue{ dir = 1; pixel_y = 21 }, /turf/open/floor/prison/darkpurplefull2, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/east) "cIJ" = ( /obj/structure/machinery/light/double/blue{ dir = 1; @@ -3516,7 +3569,7 @@ }, /obj/structure/inflatable, /turf/open/floor/prison/whitepurple/north, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "cIQ" = ( /obj/structure/bed/chair{ dir = 4 @@ -3570,7 +3623,7 @@ /area/fiorina/tumor/aux_engi) "cKa" = ( /turf/closed/wall/prison, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "cKb" = ( /obj/structure/machinery/light/double/blue{ dir = 1; @@ -3593,7 +3646,7 @@ /obj/effect/decal/cleanable/blood/gibs/up, /obj/effect/landmark/objective_landmark/close, /turf/open/floor/prison, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "cKJ" = ( /obj/structure/closet/secure_closet/guncabinet{ req_access = null @@ -3662,7 +3715,7 @@ dir = 8 }, /turf/open/floor/prison/kitchen, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "cNe" = ( /obj/structure/bed/chair{ dir = 8 @@ -3682,7 +3735,7 @@ /area/fiorina/station/park) "cOF" = ( /turf/open/floor/prison/darkredfull2, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "cOL" = ( /turf/open/floor/prison/darkyellow2/southwest, /area/fiorina/station/telecomm/lz1_cargo) @@ -3763,7 +3816,7 @@ opacity = 0 }, /turf/open/floor/plating/prison, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "cRI" = ( /obj/structure/closet{ density = 0; @@ -3771,7 +3824,7 @@ }, /obj/item/stool, /turf/open/floor/prison/yellowfull, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "cRK" = ( /obj/structure/window, /turf/open/floor/prison/darkpurplefull2, @@ -3779,7 +3832,7 @@ "cRM" = ( /obj/effect/landmark/survivor_spawner, /turf/open/floor/prison/floor_plate/southwest, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "cRZ" = ( /obj/structure/machinery/landinglight/ds2/delaythree{ dir = 4 @@ -3852,7 +3905,7 @@ "cVV" = ( /obj/structure/extinguisher_cabinet, /turf/closed/wall/r_wall/prison, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "cXp" = ( /obj/item/stack/sheet/metal/medium_stack, /turf/open/floor/prison/floor_plate, @@ -3880,14 +3933,14 @@ pixel_y = 4 }, /turf/open/floor/prison/darkpurplefull2, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "cYj" = ( /obj/structure/machinery/light/double/blue{ dir = 1; pixel_y = 21 }, /turf/open/floor/prison/floor_plate/southwest, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "cYI" = ( /turf/open/floor/prison/green/northeast, /area/fiorina/tumor/aux_engi) @@ -3913,7 +3966,7 @@ dir = 8 }, /turf/open/organic/grass/astroturf, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/basketball) "cYV" = ( /obj/structure/stairs/perspective{ dir = 8; @@ -3922,6 +3975,16 @@ /obj/structure/platform/stair_cut, /turf/open/floor/plating/prison, /area/fiorina/tumor/servers) +"cYY" = ( +/obj/structure/flora/pottedplant{ + icon_state = "pottedplant_22" + }, +/obj/structure/machinery/light/double/blue{ + dir = 1; + pixel_y = 21 + }, +/turf/open/floor/prison, +/area/fiorina/station/disco/east_disco) "cZe" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/phone, @@ -4003,7 +4066,7 @@ "dbh" = ( /obj/structure/machinery/vending/sovietsoda, /turf/open/floor/prison/darkpurplefull2, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "dbi" = ( /obj/item/storage/toolbox/electrical, /turf/open/floor/prison, @@ -4026,7 +4089,7 @@ "dbI" = ( /obj/structure/inflatable/popped/door, /turf/open/floor/prison/floor_marked/west, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "dbW" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/storage/box/donkpockets{ @@ -4039,7 +4102,7 @@ "dcv" = ( /obj/structure/largecrate/random, /turf/open/floor/prison, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/east) "dcy" = ( /obj/structure/bed/chair{ dir = 8 @@ -4063,7 +4126,7 @@ pixel_y = 7 }, /turf/open/floor/prison/yellowfull, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "ddv" = ( /obj/structure/closet/secure_closet/engineering_welding, /obj/structure/machinery/light/double/blue{ @@ -4117,6 +4180,9 @@ }, /turf/closed/wall/prison, /area/fiorina/tumor/servers) +"deg" = ( +/turf/open/floor/prison/whitepurplecorner/west, +/area/fiorina/station/research_cells/east) "deB" = ( /obj/structure/flora/grass/tallgrass/jungle/corner{ dir = 8 @@ -4163,7 +4229,7 @@ pixel_y = -1 }, /turf/open/floor/prison/yellow/southwest, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "dhi" = ( /obj/structure/platform_decoration/kutjevo, /turf/open/space/basic, @@ -4185,11 +4251,11 @@ "diF" = ( /obj/item/stack/sheet/cardboard, /turf/open/floor/prison/yellow/north, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "diJ" = ( /obj/item/stool, /turf/open/floor/prison/yellowfull, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "diL" = ( /obj/structure/stairs/perspective{ dir = 8; @@ -4213,11 +4279,11 @@ dir = 4 }, /turf/open/organic/grass/astroturf, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/basketball) "djF" = ( /obj/structure/machinery/portable_atmospherics/powered/scrubber, /turf/open/floor/prison/whitepurple, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "dkb" = ( /obj/item/device/flashlight/lamp/tripod, /turf/open/floor/plating/prison, @@ -4254,7 +4320,7 @@ "dlj" = ( /obj/structure/machinery/portable_atmospherics/powered/pump, /turf/open/floor/prison/whitepurple, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "dlr" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/device/radio{ @@ -4310,6 +4376,10 @@ "dnX" = ( /turf/open/floor/prison/darkyellow2/west, /area/fiorina/lz/near_lzI) +"doc" = ( +/obj/item/stool, +/turf/open/floor/prison/darkpurplefull2, +/area/fiorina/station/research_cells/east) "doe" = ( /obj/item/tool/kitchen/utensil/pspoon, /turf/open/space/basic, @@ -4337,7 +4407,7 @@ dir = 1 }, /turf/open/floor/plating/prison, -/area/fiorina/station/power_ring) +/area/fiorina/station/power_ring/reactor) "doY" = ( /obj/item/paper/crumpled/bloody, /turf/open/floor/prison/chapel_carpet/doubleside/north, @@ -4402,7 +4472,7 @@ "drk" = ( /obj/effect/landmark/objective_landmark/far, /turf/open/floor/prison/floor_plate, -/area/fiorina/station/power_ring) +/area/fiorina/station/power_ring/reactor) "drt" = ( /obj/structure/machinery/vending/hydroseeds, /turf/open/floor/prison/blue_plate/north, @@ -4410,7 +4480,7 @@ "drZ" = ( /obj/item/clothing/mask/cigarette, /turf/open/floor/prison/whitepurple/northwest, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "dsS" = ( /obj/structure/barricade/handrail/type_b{ dir = 4; @@ -4430,7 +4500,7 @@ /obj/structure/surface/table/reinforced/prison, /obj/item/ammo_magazine/shotgun/buckshot, /turf/open/floor/plating/prison, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "dtk" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/reagent_container/food/drinks/golden_cup, @@ -4462,7 +4532,10 @@ "duF" = ( /obj/structure/window/framed/prison/reinforced, /turf/open/floor/plating/prison, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) +"duL" = ( +/turf/open/floor/prison/yellow/southeast, +/area/fiorina/station/lowsec/east) "duM" = ( /obj/structure/machinery/photocopier, /turf/open/floor/wood, @@ -4471,7 +4544,7 @@ /obj/structure/surface/table/reinforced/prison, /obj/item/clipboard, /turf/open/floor/prison/floor_plate, -/area/fiorina/station/power_ring) +/area/fiorina/station/power_ring/reactor) "duW" = ( /obj/effect/decal/cleanable/blood/oil, /turf/open/floor/prison, @@ -4587,14 +4660,14 @@ /area/fiorina/station/flight_deck) "dzB" = ( /turf/open/floor/prison/kitchen, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "dzE" = ( /obj/structure/machinery/shower{ dir = 1; pixel_y = -1 }, /turf/open/floor/prison/kitchen, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "dAd" = ( /obj/structure/stairs/perspective{ icon_state = "p_stair_ew_full_cap" @@ -4765,7 +4838,7 @@ pixel_y = -1 }, /turf/open/floor/prison/darkpurplefull2, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "dFK" = ( /obj/structure/surface/rack, /obj/item/ammo_box/magazine/nailgun, @@ -4821,12 +4894,15 @@ "dIo" = ( /turf/closed/wall/prison, /area/fiorina/tumor/civres) +"dIp" = ( +/turf/open/floor/prison/blue/east, +/area/fiorina/station/power_ring/reactor) "dIx" = ( /obj/structure/platform{ dir = 4 }, /turf/open/floor/prison/yellow/northeast, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "dJd" = ( /obj/effect/decal/cleanable/blood/gibs, /obj/item/ammo_magazine/rifle/mar40, @@ -4843,13 +4919,13 @@ pixel_y = 10 }, /turf/open/floor/prison/whitepurple/north, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "dJt" = ( /obj/structure/machinery/light/double/blue{ pixel_y = -1 }, /turf/open/floor/prison/yellow, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "dKo" = ( /obj/effect/spawner/random/gun/shotgun, /turf/open/floor/carpet, @@ -4973,13 +5049,13 @@ "dQe" = ( /obj/item/tool/surgery/scalpel, /turf/open/floor/prison, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "dQV" = ( /obj/structure/platform_decoration{ dir = 4 }, /turf/open/floor/prison, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "dQW" = ( /obj/item/ammo_casing{ dir = 8; @@ -5070,13 +5146,13 @@ pixel_x = 12 }, /turf/open/floor/prison/whitepurple/southeast, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "dVu" = ( /obj/structure/machinery/light/double/blue{ pixel_y = -1 }, /turf/open/floor/prison/yellow/southwest, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "dVx" = ( /obj/structure/stairs/perspective{ dir = 4; @@ -5087,12 +5163,12 @@ "dVA" = ( /obj/item/stool, /turf/open/floor/prison/darkpurplefull2, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "dVC" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/clipboard, /turf/open/floor/prison/darkpurplefull2, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/east) "dVD" = ( /obj/structure/inflatable/popped/door, /turf/open/floor/prison/whitegreen, @@ -5151,7 +5227,7 @@ "dXS" = ( /obj/structure/bed/chair/office/light, /turf/open/floor/prison/darkredfull2, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "dXT" = ( /obj/structure/platform_decoration, /obj/effect/spawner/random/toolbox, @@ -5206,6 +5282,10 @@ "dZK" = ( /turf/open/floor/prison/bluecorner/east, /area/fiorina/station/chapel) +"dZM" = ( +/obj/structure/window/framed/prison/cell, +/turf/open/floor/plating/prison, +/area/fiorina/station/research_cells/east) "dZQ" = ( /obj/effect/decal/cleanable/blood, /turf/open/floor/prison/darkyellow2/east, @@ -5221,7 +5301,7 @@ dir = 8 }, /turf/open/floor/prison/kitchen, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "eca" = ( /obj/structure/platform{ dir = 1 @@ -5234,7 +5314,7 @@ "ecd" = ( /obj/structure/machinery/door/airlock/prison_hatch/autoname, /turf/open/floor/plating/prison, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "ecu" = ( /obj/item/stack/sheet/metal/medium_stack, /turf/open/floor/plating/prison, @@ -5406,7 +5486,7 @@ "eio" = ( /obj/item/device/flashlight/lamp/tripod, /turf/open/floor/prison, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "eip" = ( /obj/structure/stairs/perspective{ dir = 4; @@ -5415,11 +5495,17 @@ /obj/structure/platform, /turf/open/floor/plating/prison, /area/fiorina/station/security) +"eja" = ( +/obj/item/ammo_casing{ + icon_state = "casing_6_1" + }, +/turf/open/floor/prison/floor_plate, +/area/fiorina/station/lowsec/east) "ejf" = ( /obj/structure/closet/bodybag, /obj/effect/decal/cleanable/blood/gibs/down, /turf/open/floor/prison, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "ejq" = ( /obj/structure/machinery/space_heater, /turf/open/floor/plating/plating_catwalk/prison, @@ -5453,7 +5539,7 @@ pixel_y = 2 }, /turf/open/floor/prison/darkpurplefull2, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "ekb" = ( /turf/open/floor/prison/floor_plate, /area/fiorina/station/telecomm/lz1_tram) @@ -5489,11 +5575,15 @@ /obj/structure/bed/roller, /obj/effect/decal/cleanable/blood/gibs/body, /turf/open/floor/prison, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "ele" = ( /obj/item/device/flashlight/lamp/tripod, /turf/open/floor/prison/floor_plate, /area/fiorina/station/central_ring) +"elm" = ( +/obj/structure/window/framed/prison/cell, +/turf/open/floor/plating/prison, +/area/fiorina/station/lowsec/east) "elO" = ( /turf/open/floor/prison/yellow/southwest, /area/fiorina/station/lowsec) @@ -5514,6 +5604,9 @@ }, /turf/open/space, /area/fiorina/oob) +"emE" = ( +/turf/open/floor/prison/bluecorner/west, +/area/fiorina/station/power_ring/reactor) "end" = ( /obj/structure/window/framed/prison/cell, /turf/open/floor/plating/prison, @@ -5542,10 +5635,10 @@ desc = "A huge chunk of metal used to seperate rooms."; name = "metal wall" }, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "eow" = ( /turf/open/floor/prison/whitepurple/west, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "eoW" = ( /obj/structure/largecrate/random/case, /turf/open/floor/plating/prison, @@ -5658,7 +5751,7 @@ dir = 8 }, /turf/open/floor/prison/kitchen, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "esw" = ( /turf/open/floor/prison/cell_stripe/west, /area/fiorina/station/medbay) @@ -5684,7 +5777,7 @@ dir = 4 }, /turf/open/floor/prison/yellow/southwest, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "etL" = ( /obj/item/tool/weldingtool, /turf/open/floor/plating/prison, @@ -5703,7 +5796,7 @@ dir = 8 }, /turf/open/floor/prison/yellow/east, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "euz" = ( /obj/structure/bed/chair{ dir = 4 @@ -5875,7 +5968,7 @@ "ezd" = ( /obj/structure/largecrate/random/case/double, /turf/open/floor/prison/whitepurple/northwest, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "eze" = ( /obj/structure/platform/kutjevo/smooth{ dir = 8 @@ -5969,7 +6062,7 @@ pixel_y = 10 }, /turf/open/floor/prison/floor_plate, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "eEx" = ( /obj/item/circuitboard/machine/rdserver, /turf/open/floor/prison/darkpurplefull2, @@ -5982,7 +6075,7 @@ pixel_y = 22 }, /turf/open/floor/prison/floor_plate, -/area/fiorina/station/power_ring) +/area/fiorina/station/power_ring/reactor) "eED" = ( /obj/structure/surface/table/woodentable/fancy, /obj/item/paper_bin{ @@ -6065,7 +6158,7 @@ dir = 8 }, /turf/open/floor/prison, -/area/fiorina/station/power_ring) +/area/fiorina/station/power_ring/reactor) "eGO" = ( /obj/item/storage/toolbox/electrical, /obj/structure/surface/rack, @@ -6157,7 +6250,7 @@ "eJy" = ( /obj/structure/inflatable/popped/door, /turf/open/floor/prison/yellow/southeast, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "eJK" = ( /obj/effect/landmark/objective_landmark/science, /turf/open/floor/prison/floor_plate, @@ -6183,7 +6276,7 @@ icon_state = "pottedplant_22" }, /turf/open/floor/prison/yellow/southeast, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "eLB" = ( /obj/structure/machinery/landinglight/ds1/delaytwo{ dir = 1 @@ -6203,7 +6296,7 @@ pixel_y = 21 }, /turf/open/floor/prison, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "eLX" = ( /obj/structure/platform_decoration{ dir = 1 @@ -6233,6 +6326,14 @@ }, /turf/open/floor/prison/floor_plate, /area/fiorina/station/central_ring) +"eMN" = ( +/obj/structure/machinery/light/double/blue{ + dir = 4; + pixel_x = 10; + pixel_y = 13 + }, +/turf/open/floor/prison/yellowfull, +/area/fiorina/station/lowsec/east) "eMU" = ( /turf/closed/shuttle/ert{ icon_state = "rightengine_1"; @@ -6254,7 +6355,7 @@ /obj/structure/surface/table/reinforced/prison, /obj/item/storage/surgical_tray/empty, /turf/open/floor/prison, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "eNv" = ( /obj/structure/surface/table/reinforced/prison, /turf/open/floor/prison/darkyellowfull2/east, @@ -6321,7 +6422,7 @@ "eQb" = ( /obj/item/clothing/gloves/boxing/green, /turf/open/floor/prison/yellow/north, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "eQk" = ( /obj/structure/machinery/light/double/blue{ dir = 4; @@ -6330,6 +6431,12 @@ }, /turf/open/floor/wood, /area/fiorina/station/civres_blue) +"eQs" = ( +/obj/structure/machinery/door/airlock/prison_hatch/autoname{ + dir = 1 + }, +/turf/open/floor/plating/prison, +/area/fiorina/station/lowsec/east) "eQz" = ( /obj/structure/machinery/gibber, /obj/effect/decal/cleanable/blood{ @@ -6391,6 +6498,10 @@ }, /turf/open/floor/prison, /area/fiorina/tumor/servers) +"eSI" = ( +/obj/item/device/flashlight/lamp/tripod, +/turf/open/floor/prison/darkpurplefull2, +/area/fiorina/station/research_cells/west) "eSO" = ( /obj/structure/largecrate/random/case/double, /obj/structure/machinery/light/double/blue, @@ -6399,7 +6510,7 @@ "eTa" = ( /obj/structure/reagent_dispensers/water_cooler, /turf/open/floor/prison/yellow/northwest, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "eTb" = ( /turf/closed/shuttle/ert{ icon_state = "rightengine_1"; @@ -6469,6 +6580,9 @@ /obj/structure/machinery/computer/arcade, /turf/open/floor/plating/prison, /area/fiorina/tumor/ice_lab) +"eVD" = ( +/turf/open/floor/prison/yellow/northeast, +/area/fiorina/station/lowsec/east) "eVK" = ( /obj/structure/prop/structure_lattice{ dir = 4; @@ -6623,7 +6737,7 @@ "eZW" = ( /obj/item/stack/rods/plasteel, /turf/open/floor/prison/floor_plate/southwest, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "fac" = ( /obj/structure/platform/shiva{ dir = 1 @@ -6636,7 +6750,7 @@ icon_state = "metal_1" }, /turf/open/floor/prison, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "faD" = ( /obj/structure/stairs/perspective{ icon_state = "p_stair_ew_full_cap" @@ -6647,6 +6761,9 @@ /obj/item/reagent_container/food/drinks/cans/waterbottle, /turf/open/floor/prison/whitegreenfull/southwest, /area/fiorina/station/medbay) +"fbn" = ( +/turf/closed/wall/prison, +/area/fiorina/station/power_ring/reactor) "fbo" = ( /obj/structure/barricade/plasteel, /obj/structure/barricade/metal{ @@ -6686,7 +6803,7 @@ dir = 1 }, /turf/open/floor/prison/yellow/north, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "fdf" = ( /obj/structure/closet, /obj/item/stack/cable_coil, @@ -6729,6 +6846,10 @@ }, /turf/open/floor/prison, /area/fiorina/station/medbay) +"ffx" = ( +/obj/structure/machinery/light/double/blue, +/turf/open/floor/prison/yellow, +/area/fiorina/station/lowsec/east) "ffA" = ( /obj/effect/decal/cleanable/blood/oil, /turf/open/floor/prison/greenfull/northwest, @@ -6740,7 +6861,7 @@ "fgq" = ( /obj/effect/landmark/corpsespawner/engineer, /turf/open/floor/prison/bluefull, -/area/fiorina/station/power_ring) +/area/fiorina/station/power_ring/reactor) "fgM" = ( /obj/structure/platform, /obj/item/ammo_casing{ @@ -6790,7 +6911,7 @@ }, /obj/structure/blocker/invisible_wall, /turf/open/ice/noweed, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/basketball) "fiw" = ( /obj/structure/machinery/vending/coffee, /turf/open/floor/prison/bluefull, @@ -6817,13 +6938,13 @@ dir = 4 }, /turf/open/floor/prison/yellow/northeast, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "fjg" = ( /obj/structure/machinery/light/double/blue{ pixel_y = -1 }, /turf/open/floor/prison, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "fjo" = ( /obj/item/ammo_casing{ icon_state = "casing_5_1" @@ -6871,6 +6992,9 @@ }, /turf/open/floor/prison/whitegreenfull/southwest, /area/fiorina/station/medbay) +"flG" = ( +/turf/open/floor/prison/yellow/northeast, +/area/fiorina/station/disco/east_disco) "fmb" = ( /obj/item/storage/firstaid/toxin, /turf/open/floor/prison/floor_plate, @@ -6890,6 +7014,13 @@ /obj/item/device/cassette_tape/ocean, /turf/open/floor/plating/prison, /area/fiorina/tumor/aux_engi) +"fna" = ( +/obj/structure/toilet{ + dir = 4; + pixel_y = 8 + }, +/turf/open/floor/prison/whitepurple/northwest, +/area/fiorina/station/research_cells/east) "fnn" = ( /obj/structure/machinery/vending/cigarette/colony, /turf/open/floor/plating/prison, @@ -6990,7 +7121,7 @@ "fqI" = ( /obj/structure/machinery/space_heater, /turf/open/floor/prison/darkredfull2, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "frc" = ( /obj/effect/decal/cleanable/blood, /turf/open/floor/prison/blue/west, @@ -7080,6 +7211,9 @@ }, /turf/open/floor/prison/cell_stripe/west, /area/fiorina/station/park) +"fvx" = ( +/turf/open/floor/prison/whitepurple/northwest, +/area/fiorina/station/research_cells/east) "fvH" = ( /turf/open/floor/prison/cell_stripe/east, /area/fiorina/oob) @@ -7149,10 +7283,10 @@ /obj/structure/surface/table/reinforced/prison, /obj/item/clothing/mask/surgical, /turf/open/floor/prison, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "fyi" = ( /turf/open/floor/wood, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "fyt" = ( /obj/structure/flora/bush/ausbushes/grassybush{ icon_state = "ywflowers_3" @@ -7175,7 +7309,7 @@ "fyL" = ( /obj/structure/platform_decoration, /turf/open/floor/prison, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "fyO" = ( /obj/item/stack/rods, /turf/open/floor/plating/prison, @@ -7251,10 +7385,16 @@ /obj/structure/closet/secure_closet/engineering_materials, /turf/open/floor/prison/floor_plate, /area/fiorina/tumor/civres) +"fBA" = ( +/turf/open/floor/prison/yellow/east, +/area/fiorina/station/lowsec/showers_laundry) "fBD" = ( /obj/structure/largecrate/random/case/small, /turf/open/floor/prison, /area/fiorina/lz/near_lzI) +"fBK" = ( +/turf/open/floor/prison/floor_plate, +/area/fiorina/station/lowsec/east) "fCf" = ( /obj/structure/bed/roller, /obj/structure/machinery/iv_drip{ @@ -7336,7 +7476,7 @@ "fDW" = ( /obj/structure/machinery/power/reactor/colony, /turf/open/floor/prison, -/area/fiorina/station/power_ring) +/area/fiorina/station/power_ring/reactor) "fEn" = ( /turf/open/floor/prison, /area/fiorina/tumor/ice_lab) @@ -7350,7 +7490,7 @@ /obj/item/fuel_cell, /obj/structure/surface/rack, /turf/open/floor/prison/bluefull, -/area/fiorina/station/power_ring) +/area/fiorina/station/power_ring/reactor) "fEH" = ( /obj/structure/surface/table/reinforced/prison, /obj/structure/machinery/computer/station_alert, @@ -7359,7 +7499,7 @@ "fEY" = ( /obj/structure/machinery/power/apc/power/south, /turf/open/floor/delivery, -/area/fiorina/station/power_ring) +/area/fiorina/station/power_ring/reactor) "fFv" = ( /obj/structure/barricade/sandbags{ icon_state = "sandbag_0"; @@ -7367,7 +7507,7 @@ pixel_y = -14 }, /turf/open/floor/prison/yellow/northwest, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "fFw" = ( /obj/structure/largecrate/random, /turf/open/floor/prison/floor_marked/southwest, @@ -7415,7 +7555,7 @@ }, /obj/structure/blocker/invisible_wall, /turf/open/ice/noweed, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/basketball) "fIn" = ( /obj/effect/landmark/corpsespawner/ua_riot, /turf/open/floor/prison/redfull, @@ -7489,11 +7629,11 @@ }, /obj/item/trash/syndi_cakes, /turf/open/floor/prison/floor_plate, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "fLb" = ( /obj/effect/decal/cleanable/blood/gibs, /turf/open/floor/prison/yellow/north, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "fLu" = ( /obj/effect/decal/cleanable/blood/oil, /turf/open/floor/prison/bluefull, @@ -7503,7 +7643,7 @@ dir = 4 }, /turf/open/floor/prison/darkpurplefull2, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/east) "fLS" = ( /obj/structure/bed/chair, /turf/open/floor/wood, @@ -7549,7 +7689,7 @@ /obj/structure/surface/table/reinforced/prison, /obj/item/device/flashlight/lamp, /turf/open/floor/prison/darkredfull2, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "fOg" = ( /obj/structure/flora/grass/tallgrass/jungle/corner{ dir = 8 @@ -7630,7 +7770,7 @@ }, /obj/effect/landmark/objective_landmark/science, /turf/open/floor/prison/whitepurple/northeast, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/east) "fRo" = ( /obj/structure/bed/chair, /turf/open/floor/plating/prison, @@ -7658,7 +7798,7 @@ icon = 'icons/obj/structures/doors/prepdoor_charlie.dmi' }, /turf/open/floor/plating/prison, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "fSz" = ( /turf/closed/shuttle/ert{ icon_state = "stan25" @@ -7790,13 +7930,13 @@ /area/fiorina/oob) "fWV" = ( /turf/open/floor/prison/damaged1/southwest, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "fXo" = ( /obj/structure/machinery/light/double/blue{ pixel_y = -1 }, /turf/open/floor/prison/floor_plate/southwest, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "fXB" = ( /turf/open/floor/plating/plating_catwalk/prison, /area/fiorina/station/security) @@ -7821,7 +7961,7 @@ "fXW" = ( /obj/effect/landmark/objective_landmark/medium, /turf/open/floor/prison/bluecorner/west, -/area/fiorina/station/power_ring) +/area/fiorina/station/power_ring/reactor) "fYa" = ( /obj/structure/inflatable, /turf/open/floor/prison/whitegreenfull/southwest, @@ -7847,7 +7987,7 @@ icon_state = "casing_6" }, /turf/open/floor/prison/floor_plate, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "fZc" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/storage/fancy/cigarettes/arcturian_ace{ @@ -7855,7 +7995,7 @@ pixel_y = 9 }, /turf/open/floor/prison/darkpurplefull2, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "fZd" = ( /obj/structure/machinery/landinglight/ds2/delayone{ dir = 1 @@ -7914,7 +8054,7 @@ "gbk" = ( /obj/item/trash/burger, /turf/open/floor/prison, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "gbv" = ( /obj/structure/machinery/light/double/blue{ dir = 8; @@ -7972,7 +8112,7 @@ pixel_y = 13 }, /turf/open/floor/prison/yellowfull, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "gec" = ( /obj/structure/prop/structure_lattice{ dir = 8; @@ -7994,7 +8134,7 @@ current_rounds = 0 }, /turf/open/floor/prison/yellow, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "geF" = ( /obj/structure/lattice, /turf/open/floor/almayer_hull, @@ -8102,7 +8242,7 @@ "gjr" = ( /obj/effect/landmark/static_comms/net_one, /turf/open/floor/prison, -/area/fiorina/station/power_ring) +/area/fiorina/station/power_ring/reactor) "gjs" = ( /obj/structure/machinery/light/double/blue{ dir = 1; @@ -8139,13 +8279,13 @@ "glj" = ( /obj/structure/window/framed/prison, /turf/open/floor/plating/prison, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/east) "glD" = ( /obj/structure/bed{ icon_state = "abed" }, /turf/open/floor/plating/prison, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "glG" = ( /obj/structure/window/framed/prison/reinforced, /turf/open/floor/plating/prison, @@ -8176,7 +8316,7 @@ "gmG" = ( /obj/structure/machinery/constructable_frame, /turf/open/floor/prison, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "gmN" = ( /obj/structure/closet/secure_closet/engineering_materials, /obj/effect/spawner/random/gun/smg, @@ -8211,10 +8351,13 @@ }, /obj/item/storage/bible/hefa, /turf/open/floor/prison/whitepurple/southeast, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "goo" = ( /turf/open/floor/prison/yellow/west, /area/fiorina/lz/near_lzII) +"gos" = ( +/turf/open/floor/prison/yellow/east, +/area/fiorina/station/lowsec/east) "goG" = ( /obj/structure/window/framed/prison/reinforced, /turf/open/floor/plating/prison, @@ -8242,6 +8385,10 @@ }, /turf/open/floor/prison/darkyellowfull2/east, /area/fiorina/tumor/servers) +"gqo" = ( +/obj/structure/machinery/power/apc/power/north, +/turf/open/floor/prison/yellow/north, +/area/fiorina/station/lowsec/showers_laundry) "gqM" = ( /obj/structure/platform_decoration, /turf/open/floor/prison/floor_plate, @@ -8276,7 +8423,7 @@ dir = 6 }, /turf/open/floor/plating/prison, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "gsN" = ( /obj/structure/closet, /obj/effect/spawner/random/gun/shotgun/midchance, @@ -8318,7 +8465,7 @@ "gtr" = ( /obj/structure/bedsheetbin, /turf/open/floor/prison/darkpurplefull2, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/east) "gtH" = ( /obj/structure/safe, /obj/item/storage/beer_pack, @@ -8355,7 +8502,7 @@ "gux" = ( /obj/effect/landmark/corpsespawner/ua_riot, /turf/open/floor/prison, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "guz" = ( /turf/open/floor/prison/greenfull/northwest, /area/fiorina/station/transit_hub) @@ -8380,6 +8527,9 @@ /obj/item/storage/pill_bottle/inaprovaline/skillless, /turf/open/floor/prison/blue_plate/north, /area/fiorina/station/botany) +"gvy" = ( +/turf/open/floor/prison/floor_plate, +/area/fiorina/station/disco/east_disco) "gvz" = ( /obj/structure/machinery/light/double/blue{ dir = 1; @@ -8400,7 +8550,7 @@ dir = 9 }, /turf/open/floor/prison/yellowfull, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "gvZ" = ( /obj/item/stack/sheet/wood{ pixel_x = 1; @@ -8514,12 +8664,12 @@ "gzu" = ( /obj/item/clothing/mask/cigarette/bcigarette, /turf/open/floor/prison/sterile_white/southwest, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "gzN" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/toy/handcard/aceofspades, /turf/open/floor/prison/darkpurplefull2, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/east) "gAh" = ( /obj/structure/prop/structure_lattice{ dir = 4 @@ -8543,6 +8693,9 @@ /obj/structure/machinery/light/double/blue, /turf/open/floor/prison/whitegreenfull/southwest, /area/fiorina/station/medbay) +"gAD" = ( +/turf/open/floor/prison/whitepurple/east, +/area/fiorina/station/research_cells/east) "gAQ" = ( /obj/structure/machinery/landinglight/ds2/delaytwo{ dir = 8 @@ -8556,7 +8709,7 @@ "gBw" = ( /obj/item/trash/chunk, /turf/open/floor/prison/darkpurplefull2, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "gBx" = ( /obj/structure/prop/structure_lattice{ dir = 4 @@ -8623,7 +8776,7 @@ "gCK" = ( /obj/effect/landmark/survivor_spawner, /turf/open/floor/prison/darkpurplefull2, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/east) "gDx" = ( /obj/structure/surface/table/woodentable, /obj/item/newspaper{ @@ -8653,7 +8806,7 @@ }, /obj/structure/platform, /turf/open/floor/prison, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "gFg" = ( /obj/effect/landmark/xeno_spawn, /turf/open/floor/plating/prison, @@ -8664,7 +8817,7 @@ }, /obj/item/fuel_cell, /turf/open/floor/plating/prison, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "gFp" = ( /obj/structure/inflatable/door, /turf/open/floor/prison/sterile_white/southwest, @@ -8672,7 +8825,7 @@ "gFN" = ( /obj/item/stack/sheet/metal, /turf/open/floor/prison/whitepurple/north, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/east) "gFW" = ( /obj/effect/decal/cleanable/blood, /turf/open/floor/prison/green/southeast, @@ -8688,7 +8841,13 @@ dir = 4 }, /turf/open/floor/prison, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) +"gGn" = ( +/turf/closed/wall/r_wall/prison_unmeltable{ + desc = "A huge chunk of metal used to seperate rooms."; + name = "metal wall" + }, +/area/fiorina/station/research_cells/east) "gGx" = ( /obj/effect/landmark/queen_spawn, /turf/open/floor/plating/prison, @@ -8699,7 +8858,7 @@ pixel_y = 21 }, /turf/open/floor/plating/prison, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "gHn" = ( /obj/structure/filingcabinet{ pixel_x = 8; @@ -8750,7 +8909,7 @@ pixel_y = 25 }, /turf/open/floor/prison/yellow/north, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "gIo" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/storage/box/cups{ @@ -8775,6 +8934,10 @@ /obj/effect/alien/weeds/node, /turf/open/floor/plating/prison, /area/fiorina/tumor/aux_engi) +"gJM" = ( +/obj/structure/barricade/wooden, +/turf/open/floor/prison/whitepurple/east, +/area/fiorina/station/research_cells/east) "gKg" = ( /obj/effect/landmark/survivor_spawner, /turf/open/floor/prison/floor_plate, @@ -8802,6 +8965,9 @@ /obj/item/stool, /turf/open/floor/prison, /area/fiorina/station/power_ring) +"gLq" = ( +/turf/closed/wall/prison, +/area/fiorina/station/disco/east_disco) "gLu" = ( /turf/closed/shuttle/ert{ icon_state = "stan_leftengine" @@ -8880,7 +9046,7 @@ "gOU" = ( /obj/item/bodybag, /turf/open/floor/prison/yellow/west, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "gPk" = ( /obj/structure/barricade/metal/wired{ dir = 4 @@ -8905,7 +9071,7 @@ dir = 8 }, /turf/open/floor/prison/yellow/southwest, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "gPS" = ( /obj/item/stack/rods, /turf/open/floor/prison/chapel_carpet/doubleside/north, @@ -8919,7 +9085,7 @@ "gQc" = ( /obj/item/stack/sheet/metal, /turf/open/floor/prison, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "gQz" = ( /obj/structure/bed/chair, /turf/open/floor/prison/whitegreenfull/southwest, @@ -8950,7 +9116,7 @@ /area/fiorina/station/flight_deck) "gRA" = ( /turf/open/floor/prison/floor_plate/southwest, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "gRT" = ( /obj/structure/surface/table/woodentable/fancy, /obj/structure/sign/poster{ @@ -9047,7 +9213,7 @@ }, /obj/effect/landmark/objective_landmark/close, /turf/open/floor/prison, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "gVs" = ( /obj/structure/largecrate/random/barrel/blue, /turf/open/floor/plating/prison, @@ -9073,7 +9239,7 @@ /obj/structure/powerloader_wreckage, /obj/effect/decal/cleanable/blood/gibs/robot/limb, /turf/open/organic/grass/astroturf, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/basketball) "gWq" = ( /obj/item/ammo_casing{ icon_state = "casing_1" @@ -9083,7 +9249,10 @@ }, /obj/effect/spawner/random/gun/rifle/midchance, /turf/open/floor/wood, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) +"gWA" = ( +/turf/open/floor/prison/bluecorner/east, +/area/fiorina/station/power_ring/reactor) "gXd" = ( /obj/structure/prop/almayer/computers/mission_planning_system{ density = 0; @@ -9104,11 +9273,11 @@ "gXI" = ( /obj/item/book/manual/atmospipes, /turf/open/floor/prison/whitepurple/northwest, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "gYD" = ( /obj/item/tool/wrench, /turf/open/floor/prison/whitepurple, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "gYH" = ( /obj/structure/closet/secure_closet/security_empty, /obj/structure/window/reinforced{ @@ -9182,7 +9351,7 @@ "haQ" = ( /obj/effect/landmark/objective_landmark/close, /turf/open/floor/prison/darkredfull2, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "hbn" = ( /obj/structure/bed/chair{ dir = 8 @@ -9383,6 +9552,10 @@ }, /turf/open/floor/plating/prison, /area/fiorina/tumor/servers) +"hhX" = ( +/obj/structure/extinguisher_cabinet, +/turf/closed/wall/prison, +/area/fiorina/station/lowsec/east) "hil" = ( /obj/structure/surface/rack, /obj/item/tool/plantspray/pests, @@ -9402,6 +9575,9 @@ /obj/item/stack/rods, /turf/open/floor/prison/whitegreen/north, /area/fiorina/station/medbay) +"hjg" = ( +/turf/closed/wall/r_wall/prison_unmeltable, +/area/fiorina/station/lowsec/showers_laundry) "hjp" = ( /obj/structure/bed/chair/office/dark, /turf/open/floor/prison/whitegreenfull/southwest, @@ -9409,7 +9585,7 @@ "hjB" = ( /obj/effect/decal/cleanable/blood/oil, /turf/open/floor/prison/sterile_white/southwest, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "hjC" = ( /obj/structure/platform{ dir = 8 @@ -9428,6 +9604,13 @@ }, /turf/open/floor/plating/prison, /area/fiorina/station/security) +"hjI" = ( +/obj/structure/machinery/light/double/blue{ + dir = 1; + pixel_y = 21 + }, +/turf/open/floor/prison/yellow/north, +/area/fiorina/station/lowsec/east) "hjM" = ( /obj/structure/filingcabinet, /obj/effect/landmark/objective_landmark/close, @@ -9468,7 +9651,7 @@ "hkH" = ( /obj/item/stack/sheet/wood, /turf/open/floor/prison/whitepurple/southeast, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/east) "hkM" = ( /obj/effect/decal/cleanable/blood/gibs/xeno/body, /turf/open/floor/prison/whitegreenfull/southwest, @@ -9485,7 +9668,7 @@ "hlB" = ( /obj/item/tool/kitchen/knife, /turf/open/floor/prison, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "hlT" = ( /obj/structure/machinery/light/double/blue{ dir = 4; @@ -9573,7 +9756,7 @@ }, /obj/structure/blocker/invisible_wall, /turf/open/ice/noweed, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/basketball) "hpW" = ( /obj/item/stack/cable_coil/orange, /turf/open/floor/plating/prison, @@ -9581,7 +9764,7 @@ "hpX" = ( /obj/effect/spawner/random/toolbox, /turf/open/floor/prison/bluefull, -/area/fiorina/station/power_ring) +/area/fiorina/station/power_ring/reactor) "hqb" = ( /obj/structure/stairs/perspective{ dir = 8; @@ -9598,7 +9781,7 @@ dir = 4 }, /turf/open/floor/plating/prison, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "hqG" = ( /obj/structure/platform{ dir = 1 @@ -9624,7 +9807,7 @@ pixel_y = 13 }, /turf/open/floor/prison/yellowfull, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "hre" = ( /obj/structure/platform_decoration{ dir = 4 @@ -9677,7 +9860,7 @@ dir = 8 }, /turf/open/floor/prison/kitchen, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "hsc" = ( /obj/structure/cable/heavyduty{ icon_state = "4-8" @@ -9700,7 +9883,7 @@ pixel_y = 21 }, /turf/open/floor/prison/yellow/northeast, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "hsC" = ( /obj/structure/surface/table/reinforced/prison, /obj/structure/machinery/door/window/southleft, @@ -9749,7 +9932,7 @@ "htT" = ( /obj/structure/reagent_dispensers/watertank, /turf/open/floor/prison/bluecorner/east, -/area/fiorina/station/power_ring) +/area/fiorina/station/power_ring/reactor) "htX" = ( /turf/open/floor/prison/green/southwest, /area/fiorina/station/chapel) @@ -9762,7 +9945,7 @@ "hul" = ( /obj/structure/machinery/door/airlock/prison_hatch/autoname, /turf/open/floor/plating/prison, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "huB" = ( /obj/structure/surface/table/reinforced/prison, /obj/structure/machinery/recharger{ @@ -9777,13 +9960,13 @@ "huG" = ( /obj/item/tool/wirecutters, /turf/open/floor/prison/floor_plate, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "huJ" = ( /obj/structure/prop/almayer/computers/sensor_computer1{ name = "computer" }, /turf/open/floor/prison/darkredfull2, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "hva" = ( /obj/structure/bed/chair/office/light{ dir = 4 @@ -9823,7 +10006,7 @@ "hwN" = ( /obj/structure/inflatable/popped/door, /turf/open/floor/prison/yellow/east, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "hwS" = ( /obj/structure/machinery/light/double/blue{ dir = 1; @@ -9868,7 +10051,7 @@ }, /obj/structure/blocker/invisible_wall, /turf/open/ice/noweed, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/basketball) "hyc" = ( /turf/open/floor/prison/darkbrowncorners2, /area/fiorina/maintenance) @@ -9890,6 +10073,12 @@ /obj/structure/grille, /turf/open/floor/plating/prison, /area/fiorina/station/central_ring) +"hyM" = ( +/obj/structure/bed/chair{ + dir = 8 + }, +/turf/open/floor/prison/bluefull, +/area/fiorina/station/power_ring/reactor) "hyT" = ( /turf/closed/shuttle/ert{ icon_state = "stan_leftengine" @@ -9960,14 +10149,14 @@ pixel_y = 13 }, /turf/open/floor/prison/kitchen, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "hAX" = ( /turf/open/floor/prison/darkpurple2/northwest, /area/fiorina/tumor/ice_lab) "hBc" = ( /obj/structure/inflatable, /turf/open/floor/prison/whitepurple, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "hBf" = ( /obj/effect/spawner/random/tool, /turf/open/floor/prison/darkbrown2/north, @@ -9978,7 +10167,7 @@ pixel_y = 5 }, /turf/open/floor/plating/prison, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "hCc" = ( /obj/item/reagent_container/food/snacks/meat, /turf/open/floor/plating/plating_catwalk/prison, @@ -10001,11 +10190,20 @@ /obj/structure/blocker/invisible_wall, /turf/open/floor/prison/floor_plate, /area/fiorina/tumor/servers) +"hCG" = ( +/turf/closed/wall/r_wall/prison_unmeltable, +/area/fiorina/station/research_cells/east) "hCR" = ( /obj/item/stack/sheet/wood, /obj/structure/machinery/light/double/blue, /turf/open/floor/prison/whitepurple, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) +"hCX" = ( +/obj/structure/machinery/door/airlock/prison/horizontal{ + dir = 4 + }, +/turf/open/floor/plating/prison, +/area/fiorina/station/lowsec/east) "hDb" = ( /obj/structure/closet/secure_closet/freezer/fridge, /obj/effect/landmark/objective_landmark/close, @@ -10020,6 +10218,9 @@ /obj/effect/landmark/monkey_spawn, /turf/open/floor/prison/whitegreenfull/southwest, /area/fiorina/tumor/ice_lab) +"hDF" = ( +/turf/open/floor/prison/yellow/northeast, +/area/fiorina/station/lowsec/showers_laundry) "hDS" = ( /obj/structure/platform{ dir = 4 @@ -10049,14 +10250,14 @@ "hEs" = ( /obj/structure/extinguisher_cabinet, /turf/closed/wall/prison, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "hEv" = ( /obj/structure/stairs/perspective{ dir = 8; icon_state = "p_stair_full" }, /turf/open/floor/prison, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "hEZ" = ( /turf/open/floor/prison/platingdmg3, /area/fiorina/station/security) @@ -10075,7 +10276,7 @@ "hFW" = ( /obj/effect/spawner/random/tool, /turf/open/floor/prison/whitepurple/north, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "hGg" = ( /obj/structure/sign/poster{ desc = "You are becoming hysterical."; @@ -10150,7 +10351,7 @@ }, /obj/effect/landmark/objective_landmark/medium, /turf/open/floor/prison/yellow/northwest, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "hIO" = ( /obj/structure/largecrate/random/barrel/green, /turf/open/floor/prison/floor_plate, @@ -10166,7 +10367,11 @@ }, /obj/item/reagent_container/food/drinks/flask/barflask, /turf/open/floor/prison/whitepurple/southwest, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) +"hJu" = ( +/obj/structure/bed/chair, +/turf/open/floor/prison/bluefull, +/area/fiorina/station/power_ring/reactor) "hKN" = ( /turf/open/floor/prison/sterile_white, /area/fiorina/station/civres_blue) @@ -10196,7 +10401,7 @@ current_rounds = 0 }, /turf/open/floor/prison, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "hMA" = ( /obj/item/tool/crowbar, /turf/open/floor/prison/whitegreen, @@ -10264,7 +10469,7 @@ "hPu" = ( /obj/effect/spawner/random/tool, /turf/open/floor/prison/bluecorner/north, -/area/fiorina/station/power_ring) +/area/fiorina/station/power_ring/reactor) "hPL" = ( /obj/item/tool/wrench, /turf/open/floor/prison/darkpurple2/southeast, @@ -10318,7 +10523,7 @@ dir = 9 }, /turf/open/floor/plating/prison, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "hQM" = ( /obj/structure/bed/chair{ dir = 4 @@ -10341,7 +10546,7 @@ }, /obj/item/stack/barbed_wire, /turf/open/floor/prison, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "hRb" = ( /obj/structure/machinery/light/double/blue{ dir = 4; @@ -10464,7 +10669,7 @@ "hVA" = ( /obj/structure/largecrate/random/case, /turf/open/floor/prison/whitepurple/southwest, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "hVG" = ( /obj/structure/machinery/door/airlock/almayer/maint/colony/autoname{ dir = 1; @@ -10524,18 +10729,25 @@ pixel_y = 8 }, /turf/open/floor/prison/floor_plate, -/area/fiorina/station/power_ring) +/area/fiorina/station/power_ring/reactor) "hXF" = ( /obj/structure/surface/table/reinforced/prison, /obj/effect/spawner/random/toolbox, /turf/open/floor/prison/floor_plate, -/area/fiorina/station/power_ring) +/area/fiorina/station/power_ring/reactor) "hXG" = ( /obj/structure/barricade/metal/wired{ dir = 1 }, /turf/open/floor/prison/darkyellow2, /area/fiorina/lz/near_lzI) +"hXJ" = ( +/obj/structure/stairs/perspective{ + dir = 8; + icon_state = "p_stair_full" + }, +/turf/open/floor/plating/prison, +/area/fiorina/station/disco/east_disco) "hXN" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/ashtray/plastic, @@ -10571,7 +10783,7 @@ pixel_y = -14 }, /turf/open/floor/prison, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "hYx" = ( /obj/item/tool/wet_sign, /obj/item/tool/mop{ @@ -10606,6 +10818,12 @@ /obj/structure/window/framed/prison/reinforced/hull, /turf/open/floor/plating/prison, /area/fiorina/station/lowsec) +"hZU" = ( +/obj/structure/machinery/door/airlock/prison/horizontal{ + dir = 4 + }, +/turf/open/floor/plating/prison, +/area/fiorina/station/research_cells/east) "iaa" = ( /turf/open/floor/prison/cell_stripe/west, /area/fiorina/station/disco) @@ -10672,7 +10890,7 @@ /obj/structure/surface/table/reinforced/prison, /obj/item/storage/briefcase/inflatable, /turf/open/floor/prison/yellowfull, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "idP" = ( /obj/structure/platform{ dir = 1 @@ -10878,7 +11096,7 @@ icon_state = "abed" }, /turf/open/floor/prison/darkpurplefull2, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/east) "ikt" = ( /obj/structure/closet/bodybag, /turf/open/floor/prison/whitegreen/northwest, @@ -10953,6 +11171,14 @@ /obj/effect/decal/cleanable/blood/splatter, /turf/open/floor/prison/floor_plate, /area/fiorina/tumor/aux_engi) +"inv" = ( +/obj/structure/machinery/light/double/blue{ + dir = 8; + pixel_x = -10; + pixel_y = 13 + }, +/turf/open/floor/prison/floor_plate, +/area/fiorina/station/power_ring/reactor) "inA" = ( /obj/structure/surface/table/reinforced/prison{ flipped = 1 @@ -11012,6 +11238,10 @@ /obj/structure/window/framed/prison, /turf/open/floor/plating/prison, /area/fiorina/station/botany) +"ipy" = ( +/obj/structure/window/framed/prison/reinforced/hull, +/turf/open/floor/plating/prison, +/area/fiorina/station/lowsec/showers_laundry) "ipz" = ( /obj/item/device/flashlight, /turf/open/floor/prison, @@ -11066,6 +11296,9 @@ }, /turf/open/floor/prison/floor_plate, /area/fiorina/station/civres_blue) +"isw" = ( +/turf/open/floor/prison/yellow/southwest, +/area/fiorina/station/disco/east_disco) "itd" = ( /obj/item/tool/lighter/random, /turf/open/floor/plating/plating_catwalk/prison, @@ -11091,7 +11324,7 @@ "iuC" = ( /obj/structure/surface/table/reinforced/prison, /turf/open/floor/prison/yellowfull, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "iuN" = ( /obj/structure/barricade/handrail/type_b{ layer = 3.5 @@ -11169,7 +11402,7 @@ }, /obj/structure/blocker/invisible_wall, /turf/open/ice/noweed, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/basketball) "iwZ" = ( /obj/structure/machinery/door/airlock/almayer/generic{ dir = 2; @@ -11272,7 +11505,7 @@ }, /obj/structure/platform, /turf/open/floor/plating/prison, -/area/fiorina/station/power_ring) +/area/fiorina/station/power_ring/reactor) "iAA" = ( /obj/effect/decal/cleanable/blood/splatter{ icon_state = "gib5" @@ -11285,6 +11518,9 @@ "iBr" = ( /turf/open/floor/prison, /area/fiorina/station/flight_deck) +"iBI" = ( +/turf/open/floor/prison/yellowfull, +/area/fiorina/station/lowsec/showers_laundry) "iBM" = ( /obj/effect/decal/cleanable/blood, /turf/open/floor/prison/greenblue/northeast, @@ -11299,7 +11535,11 @@ /obj/item/clothing/gloves/boxing/blue, /obj/item/clothing/gloves/boxing/blue, /turf/open/floor/prison/yellowfull, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) +"iCC" = ( +/obj/item/tool/warning_cone, +/turf/open/floor/prison, +/area/fiorina/station/disco/east_disco) "iCE" = ( /obj/structure/flora/pottedplant{ icon_state = "pottedplant_22" @@ -11313,11 +11553,11 @@ "iCN" = ( /obj/item/tool/wrench, /turf/open/floor/prison/floor_plate, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "iCU" = ( /obj/structure/sign/nosmoking_1, /turf/closed/wall/prison, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "iDg" = ( /obj/structure/barricade/sandbags{ dir = 8; @@ -11411,7 +11651,7 @@ pixel_y = 8 }, /turf/open/floor/prison/whitepurple/northeast, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "iFC" = ( /obj/structure/surface/rack, /obj/item/storage/toolbox/mechanical, @@ -11422,7 +11662,7 @@ dir = 4 }, /turf/open/floor/prison/sterile_white/southwest, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/east) "iFZ" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/reagent_container/food/snacks/hugemushroomslice, @@ -11443,6 +11683,9 @@ /obj/effect/landmark/queen_spawn, /turf/open/floor/plating/prison, /area/fiorina/tumor/fiberbush) +"iHi" = ( +/turf/open/floor/prison/yellow/southwest, +/area/fiorina/station/lowsec/showers_laundry) "iHu" = ( /obj/item/newspaper, /turf/open/floor/prison, @@ -11506,7 +11749,7 @@ pixel_y = -3 }, /turf/open/floor/prison/floor_plate, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "iIS" = ( /obj/structure/machinery/constructable_frame, /turf/open/floor/plating/prison, @@ -11541,7 +11784,7 @@ }, /obj/effect/spawner/random/gun/pistol, /turf/open/floor/prison/yellow/southwest, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "iKF" = ( /obj/structure/inflatable, /turf/open/floor/prison/floor_plate, @@ -11563,7 +11806,7 @@ pixel_y = 13 }, /turf/open/floor/prison/yellowfull, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "iLJ" = ( /obj/effect/spawner/random/tool, /turf/open/floor/plating/prison, @@ -11720,7 +11963,7 @@ /obj/item/storage/pill_bottle/tramadol/skillless, /obj/effect/landmark/objective_landmark/science, /turf/open/floor/prison/darkpurplefull2, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "iTs" = ( /obj/structure/stairs/perspective{ icon_state = "p_stair_sn_full_cap" @@ -11840,10 +12083,16 @@ }, /turf/open/floor/prison/whitegreen/west, /area/fiorina/station/central_ring) +"iWX" = ( +/obj/structure/barricade/wooden{ + dir = 8 + }, +/turf/open/floor/prison/whitepurple/north, +/area/fiorina/station/research_cells/east) "iXq" = ( /obj/item/stool, /turf/open/floor/prison/yellow/east, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "iXs" = ( /obj/structure/stairs/perspective{ dir = 8; @@ -11852,6 +12101,13 @@ /obj/structure/platform, /turf/open/floor/plating/prison, /area/fiorina/station/medbay) +"iXB" = ( +/obj/structure/toilet{ + dir = 8; + pixel_y = 8 + }, +/turf/open/floor/prison/whitepurple/northeast, +/area/fiorina/station/research_cells/east) "iXJ" = ( /obj/structure/bed/chair/comfy{ dir = 4 @@ -11868,7 +12124,7 @@ "iYe" = ( /obj/item/tool/wirecutters, /turf/open/floor/prison/bluecorner/north, -/area/fiorina/station/power_ring) +/area/fiorina/station/power_ring/reactor) "iYw" = ( /turf/closed/wall/r_wall/prison_unmeltable, /area/fiorina/station/central_ring) @@ -11904,11 +12160,11 @@ dir = 1 }, /turf/open/floor/prison/yellow/north, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "jbm" = ( /obj/item/clothing/under/color/orange, /turf/open/floor/prison/floor_plate, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "jbq" = ( /turf/open/floor/prison/whitegreen/east, /area/fiorina/station/medbay) @@ -11942,7 +12198,7 @@ icon_state = "large" }, /turf/open/floor/plating/prison, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "jci" = ( /obj/structure/machinery/cm_vending/sorted/medical/blood, /obj/structure/window/reinforced{ @@ -11996,7 +12252,7 @@ "jfc" = ( /obj/item/stack/rods, /turf/open/floor/plating/prison, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/east) "jfd" = ( /turf/open/gm/river/pool, /area/fiorina/station/park) @@ -12006,7 +12262,7 @@ dir = 8 }, /turf/open/organic/grass/astroturf, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/basketball) "jft" = ( /obj/structure/barricade/sandbags{ icon_state = "sandbag_0"; @@ -12066,6 +12322,9 @@ /obj/item/clothing/suit/armor/bulletproof/badge, /turf/open/floor/prison/yellow/southeast, /area/fiorina/station/lowsec) +"jii" = ( +/turf/open/floor/prison/sterile_white/southwest, +/area/fiorina/station/research_cells/east) "jiq" = ( /obj/structure/lz_sign/prison_sign, /turf/open/floor/prison, @@ -12080,13 +12339,13 @@ dir = 1 }, /turf/open/floor/prison, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "jiz" = ( /obj/structure/bed/chair{ dir = 8 }, /turf/open/floor/prison/darkpurplefull2, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "jiA" = ( /obj/item/storage/firstaid/regular, /turf/open/floor/prison/sterile_white/southwest, @@ -12118,13 +12377,16 @@ pixel_y = 4 }, /turf/open/floor/prison/whitepurple/northwest, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "jjs" = ( /obj/structure/machinery/door/airlock/almayer/maint/colony/autoname{ req_one_access = null }, /turf/open/floor/plating/prison, /area/fiorina/station/medbay) +"jjx" = ( +/turf/closed/wall/r_wall/prison_unmeltable, +/area/fiorina/station/disco/east_disco) "jjH" = ( /obj/effect/decal/cleanable/blood/splatter, /turf/open/floor/prison, @@ -12220,13 +12482,13 @@ dir = 4 }, /turf/open/floor/prison/kitchen, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "jmG" = ( /turf/closed/wall/r_wall/prison_unmeltable, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "jna" = ( /turf/open/floor/prison/whitepurplecorner/west, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "jnd" = ( /obj/structure/machinery/light/double/blue{ dir = 8; @@ -12253,7 +12515,7 @@ "jnX" = ( /obj/item/storage/pill_bottle/spaceacillin/skillless, /turf/open/floor/prison/whitepurple/northeast, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "jor" = ( /obj/effect/spawner/random/attachment, /obj/structure/disposalpipe/segment{ @@ -12279,7 +12541,7 @@ /obj/structure/bed/roller, /obj/effect/decal/cleanable/blood/gibs/core, /turf/open/floor/prison, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "joU" = ( /obj/structure/largecrate/random/secure, /turf/open/floor/prison, @@ -12314,7 +12576,7 @@ desc = "Enlist in the Penal Battalions today! The USCM 3rd Fleet features a subset of UA sanctioned penal battalions, drawing from inmate popualtions across the colonies. Mostly New Argentina though." }, /turf/closed/wall/r_wall/prison_unmeltable, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "jpQ" = ( /obj/structure/bed/chair{ dir = 4 @@ -12403,7 +12665,7 @@ pixel_y = 7 }, /turf/open/floor/prison/darkredfull2, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "jsU" = ( /obj/item/stack/tile/plasteel{ pixel_x = 3; @@ -12428,6 +12690,12 @@ /obj/effect/alien/weeds/node, /turf/open/floor/prison/floor_plate, /area/fiorina/tumor/aux_engi) +"juV" = ( +/obj/structure/prop/structure_lattice{ + dir = 4 + }, +/turf/open/floor/plating/prison, +/area/fiorina/station/research_cells/east) "juX" = ( /obj/structure/machinery/door/poddoor/almayer{ density = 0; @@ -12442,11 +12710,11 @@ }, /obj/structure/platform/stair_cut, /turf/open/floor/plating/prison, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "jvi" = ( /obj/structure/closet/wardrobe/orange, /turf/open/floor/prison/yellowfull, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "jvm" = ( /obj/item/storage/surgical_tray, /obj/structure/surface/table/reinforced/prison, @@ -12532,7 +12800,7 @@ "jAW" = ( /obj/structure/largecrate/supply/ammo, /turf/open/floor/plating/prison, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "jBn" = ( /obj/structure/closet/secure_closet/medical3, /obj/structure/machinery/light/double/blue{ @@ -12600,7 +12868,7 @@ "jEa" = ( /obj/effect/landmark/corpsespawner/engineer, /turf/open/floor/prison/bluecorner/north, -/area/fiorina/station/power_ring) +/area/fiorina/station/power_ring/reactor) "jEr" = ( /obj/structure/machinery/vending/snack, /turf/open/floor/prison, @@ -12618,7 +12886,7 @@ dir = 8 }, /turf/open/floor/wood, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "jEQ" = ( /obj/structure/surface/table/reinforced/prison, /obj/structure/machinery/computer/shuttle/dropship/flight/lz2, @@ -12629,7 +12897,7 @@ dir = 4 }, /turf/open/floor/prison/floor_plate, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "jFh" = ( /obj/structure/stairs/perspective{ dir = 4; @@ -12684,7 +12952,7 @@ /obj/effect/spawner/random/tool, /obj/item/clothing/gloves/combat, /turf/open/floor/prison/darkpurplefull2, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "jGC" = ( /obj/structure/platform{ dir = 8 @@ -12723,7 +12991,7 @@ /obj/item/paper, /obj/structure/inflatable/door, /turf/open/floor/prison/darkpurplefull2, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "jIw" = ( /obj/structure/surface/table/reinforced/prison, /obj/structure/machinery/computer/cameras{ @@ -12806,7 +13074,7 @@ "jLe" = ( /obj/structure/machinery/constructable_frame, /turf/open/floor/prison, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "jLC" = ( /obj/item/ammo_casing{ dir = 8; @@ -12829,7 +13097,7 @@ pixel_y = 5 }, /turf/open/floor/plating/prison, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "jMh" = ( /turf/open/floor/prison/cell_stripe/east, /area/fiorina/station/medbay) @@ -12860,7 +13128,7 @@ }, /obj/structure/blocker/invisible_wall, /turf/open/ice/noweed, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/basketball) "jNw" = ( /turf/open/floor/prison/blue/northwest, /area/fiorina/tumor/servers) @@ -12907,7 +13175,7 @@ icon_state = "S" }, /turf/open/floor/prison/sterile_white/southwest, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/east) "jPY" = ( /obj/structure/machinery/door/airlock/almayer/generic{ name = "Residential Apartment" @@ -12977,7 +13245,7 @@ }, /obj/item/reagent_container/food/drinks/flask/marine, /turf/open/floor/prison/whitepurple/southwest, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "jSD" = ( /obj/item/storage/toolbox/mechanical, /turf/open/floor/plating/prison, @@ -13011,7 +13279,7 @@ /area/fiorina/station/medbay) "jTJ" = ( /turf/closed/wall/r_wall/prison, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "jTN" = ( /obj/structure/filingcabinet{ pixel_x = 8; @@ -13091,7 +13359,7 @@ dir = 4 }, /turf/open/organic/grass/astroturf, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/basketball) "jWE" = ( /obj/item/trash/used_stasis_bag{ desc = "Wow, instant sand. They really have everything in space."; @@ -13101,14 +13369,14 @@ /area/fiorina/station/civres_blue) "jWI" = ( /turf/open/floor/prison/whitepurple/northwest, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "jWY" = ( /obj/structure/bed{ icon_state = "abed" }, /obj/item/storage/fancy/cigar/tarbacks, /turf/open/floor/prison/whitepurple/southeast, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/east) "jXj" = ( /obj/item/stack/rods, /turf/open/floor/plating/prison, @@ -13120,6 +13388,9 @@ "jXz" = ( /turf/closed/wall/prison, /area/fiorina/tumor/servers) +"jXU" = ( +/turf/open/floor/prison/yellowcorner/east, +/area/fiorina/station/lowsec/showers_laundry) "jXV" = ( /obj/effect/decal/cleanable/blood/gibs/xeno, /turf/open/floor/plating/plating_catwalk/prison, @@ -13130,7 +13401,7 @@ "jYm" = ( /obj/structure/machinery/constructable_frame, /turf/open/floor/prison/floor_plate, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "jYn" = ( /obj/structure/platform, /turf/open/floor/prison/floor_plate, @@ -13140,7 +13411,7 @@ dir = 1 }, /turf/open/floor/plating/prison, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "jYt" = ( /obj/structure/barricade/metal/wired{ dir = 8 @@ -13154,7 +13425,7 @@ "jYM" = ( /obj/item/trash/chips, /turf/open/floor/prison/sterile_white/southwest, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "jYU" = ( /obj/structure/stairs/perspective{ dir = 1; @@ -13171,7 +13442,7 @@ dir = 4 }, /turf/open/floor/prison, -/area/fiorina/station/power_ring) +/area/fiorina/station/power_ring/reactor) "jZc" = ( /obj/structure/disposalpipe/segment{ icon_state = "delivery_outlet"; @@ -13222,7 +13493,7 @@ "kbh" = ( /obj/item/explosive/grenade/incendiary/molotov, /turf/open/floor/prison/floor_plate, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "kbi" = ( /obj/item/ammo_casing{ dir = 6; @@ -13272,6 +13543,13 @@ /obj/structure/largecrate/random/case/small, /turf/open/floor/plating/plating_catwalk/prison, /area/fiorina/lz/near_lzI) +"keb" = ( +/obj/structure/sink{ + dir = 4; + pixel_x = 12 + }, +/turf/open/floor/prison/whitepurple/southeast, +/area/fiorina/station/research_cells/east) "kfL" = ( /obj/structure/machinery/photocopier, /turf/open/floor/prison, @@ -13298,7 +13576,7 @@ "kgp" = ( /obj/effect/decal/cleanable/blood/oil, /turf/open/floor/prison/yellow, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "kgG" = ( /turf/open/floor/prison/darkyellow2/east, /area/fiorina/station/telecomm/lz1_cargo) @@ -13309,7 +13587,7 @@ "kgQ" = ( /obj/item/stool, /turf/open/floor/prison/floor_plate, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "kgT" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/paper/carbon, @@ -13339,7 +13617,7 @@ "khw" = ( /obj/effect/spawner/random/gun/rifle/midchance, /turf/open/floor/prison/blue/west, -/area/fiorina/station/power_ring) +/area/fiorina/station/power_ring/reactor) "khY" = ( /obj/structure/closet/secure_closet/medical3, /turf/open/floor/prison/whitegreenfull/southwest, @@ -13369,10 +13647,10 @@ "kiT" = ( /obj/item/stack/sheet/metal, /turf/open/floor/prison/darkpurplefull2, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/east) "kjt" = ( /turf/open/floor/prison/whitepurple/north, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "kjP" = ( /obj/structure/surface/table/reinforced/prison, /obj/structure/machinery/door/window/northleft, @@ -13469,7 +13747,7 @@ icon = 'icons/obj/structures/doors/2x1prepdoor_charlie.dmi' }, /turf/open/floor/plating/prison, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/east) "kmN" = ( /obj/structure/machinery/computer/cameras{ dir = 1; @@ -13481,7 +13759,7 @@ "knb" = ( /obj/item/device/flashlight/lamp/tripod, /turf/open/floor/prison/darkpurplefull2, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/east) "knh" = ( /obj/effect/landmark/structure_spawner/xvx_hive/xeno_door, /turf/open/floor/plating/prison, @@ -13574,7 +13852,7 @@ /obj/effect/spawner/random/gun/smg, /obj/effect/landmark/objective_landmark/close, /turf/open/floor/prison/yellowfull, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "kpv" = ( /obj/structure/pipes/standard/simple/visible{ dir = 4 @@ -13634,7 +13912,7 @@ "ksE" = ( /obj/structure/inflatable, /turf/open/floor/prison/yellow, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "ksL" = ( /obj/structure/stairs/perspective{ dir = 8; @@ -13773,7 +14051,7 @@ pixel_y = -1 }, /turf/open/floor/prison/whitepurple/northwest, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "kyW" = ( /obj/item/stack/sandbags/large_stack, /turf/open/floor/plating/prison, @@ -13793,7 +14071,7 @@ dir = 4 }, /turf/open/floor/plating/prison, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "kzs" = ( /obj/item/stack/sandbags/large_stack, /turf/open/floor/prison/green/east, @@ -13828,7 +14106,7 @@ dir = 4 }, /turf/open/floor/prison/darkredfull2, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "kAc" = ( /obj/structure/surface/table/reinforced/prison, /obj/structure/machinery/processor{ @@ -13895,7 +14173,7 @@ "kCT" = ( /obj/effect/spawner/random/gun/smg, /turf/open/floor/prison/yellow/northeast, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "kCY" = ( /obj/item/tool/weldingtool, /turf/open/floor/plating/prison, @@ -13956,11 +14234,11 @@ "kGd" = ( /obj/structure/barricade/wooden, /turf/open/floor/prison/whitepurple/west, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/east) "kGo" = ( /obj/structure/machinery/power/apc/power/south, /turf/open/floor/prison/whitepurple, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "kGB" = ( /obj/structure/platform, /turf/open/floor/prison/floor_plate, @@ -14010,7 +14288,7 @@ "kHH" = ( /obj/effect/decal/cleanable/blood/oil, /turf/open/floor/prison, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "kHI" = ( /obj/item/stack/sheet/metal, /turf/open/floor/prison/darkpurplefull2, @@ -14030,7 +14308,7 @@ "kIb" = ( /obj/structure/inflatable, /turf/open/floor/prison/yellow/west, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "kIg" = ( /obj/item/device/flashlight/lamp/tripod, /turf/open/floor/prison/floor_plate, @@ -14059,7 +14337,7 @@ "kIO" = ( /obj/structure/machinery/vending/snack/packaged, /turf/open/floor/prison/darkpurplefull2, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "kJd" = ( /obj/item/tool/warning_cone, /turf/open/floor/prison/darkbrown2/east, @@ -14123,7 +14401,7 @@ icon_state = "p_stair_ew_full_cap" }, /turf/open/floor/plating/prison, -/area/fiorina/station/power_ring) +/area/fiorina/station/power_ring/reactor) "kLs" = ( /obj/vehicle/powerloader{ dir = 8 @@ -14296,7 +14574,7 @@ /area/fiorina/station/medbay) "kSe" = ( /turf/open/floor/prison/yellow, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "kSh" = ( /turf/closed/shuttle/elevator{ dir = 9 @@ -14386,7 +14664,7 @@ pixel_y = 4 }, /turf/open/floor/prison/sterile_white/southwest, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "kWL" = ( /turf/open/floor/prison/floor_marked/southwest, /area/fiorina/lz/near_lzII) @@ -14396,7 +14674,7 @@ /area/fiorina/tumor/ice_lab) "kXk" = ( /turf/open/floor/prison/whitepurple/northeast, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "kXm" = ( /obj/structure/surface/rack, /obj/item/weapon/gun/pistol/heavy, @@ -14426,6 +14704,9 @@ }, /turf/open/floor/plating/plating_catwalk, /area/fiorina/tumor/ship) +"kXT" = ( +/turf/open/floor/prison/yellow/northwest, +/area/fiorina/station/lowsec/showers_laundry) "kYd" = ( /obj/structure/bed/chair/office/light{ dir = 8 @@ -14501,7 +14782,7 @@ "laK" = ( /obj/item/stool, /turf/open/floor/prison/yellow/southwest, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "laX" = ( /obj/structure/toilet{ dir = 8 @@ -14537,7 +14818,7 @@ /obj/structure/surface/table/reinforced/prison, /obj/item/trash/cigbutt, /turf/open/floor/prison/floor_plate/southwest, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "lbZ" = ( /obj/structure/platform{ dir = 1 @@ -14567,7 +14848,7 @@ "lcE" = ( /obj/structure/inflatable, /turf/open/floor/prison/whitepurple/northeast, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "lcJ" = ( /obj/effect/landmark/queen_spawn, /turf/open/floor/prison/whitegreencorner/east, @@ -14601,7 +14882,7 @@ "ldF" = ( /obj/structure/machinery/fuelcell_recycler/full, /turf/open/floor/prison/blue/southwest, -/area/fiorina/station/power_ring) +/area/fiorina/station/power_ring/reactor) "ldW" = ( /obj/item/stack/sandbags, /turf/open/floor/prison/kitchen, @@ -14627,7 +14908,7 @@ dir = 8 }, /turf/open/floor/prison/yellow/east, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "leZ" = ( /obj/item/trash/cigbutt, /turf/open/floor/prison/whitegreenfull/southwest, @@ -14636,10 +14917,14 @@ /obj/structure/pipes/standard/manifold/visible, /turf/open/floor/plating/prison, /area/fiorina/station/medbay) +"lfx" = ( +/obj/item/stack/sheet/cardboard, +/turf/open/floor/prison, +/area/fiorina/station/disco/east_disco) "lfX" = ( /obj/structure/inflatable/door, /turf/open/floor/prison/sterile_white/southwest, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "lge" = ( /turf/open/floor/prison/blue/northeast, /area/fiorina/station/civres_blue) @@ -14704,7 +14989,7 @@ "ljc" = ( /obj/structure/barricade/wooden, /turf/open/floor/plating/prison, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/east) "ljd" = ( /obj/item/stack/cable_coil, /turf/open/floor/plating/prison, @@ -14723,7 +15008,7 @@ /obj/item/tool/kitchen/knife, /obj/structure/bed/roller, /turf/open/floor/prison, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "lkr" = ( /turf/open/floor/prison/whitegreen/northwest, /area/fiorina/tumor/ice_lab) @@ -14809,6 +15094,9 @@ }, /turf/open/floor/prison/floor_plate/southwest, /area/fiorina/station/flight_deck) +"lmC" = ( +/turf/open/floor/prison/yellowfull, +/area/fiorina/station/lowsec/east) "lnK" = ( /turf/closed/wall/r_wall/prison, /area/fiorina/station/telecomm/lz1_tram) @@ -14876,7 +15164,7 @@ dir = 4 }, /turf/open/floor/plating/prison, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "lpW" = ( /obj/structure/largecrate/random/barrel/white, /turf/open/floor/prison/floor_plate/southwest, @@ -14884,11 +15172,11 @@ "lpX" = ( /obj/structure/machinery/door/airlock/prison/horizontal, /turf/open/floor/prison/sterile_white/southwest, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "lpZ" = ( /obj/item/trash/boonie, /turf/open/floor/prison/sterile_white/southwest, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "lqa" = ( /obj/structure/flora/pottedplant{ icon_state = "pottedplant_22" @@ -14961,7 +15249,7 @@ dir = 4 }, /turf/open/floor/prison/kitchen, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "lsZ" = ( /obj/item/tool/soap, /obj/structure/machinery/shower{ @@ -14972,7 +15260,7 @@ dir = 8 }, /turf/open/floor/prison/kitchen, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "ltd" = ( /obj/item/device/flashlight/lamp/tripod, /turf/open/floor/prison/sterile_white/southwest, @@ -15009,7 +15297,7 @@ "lux" = ( /obj/structure/inflatable/door, /turf/open/floor/prison/floor_plate, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "luy" = ( /obj/item/trash/candle, /turf/open/floor/prison/chapel_carpet/doubleside/north, @@ -15112,6 +15400,13 @@ }, /turf/open/floor/plating/prison, /area/fiorina/tumor/aux_engi) +"lyp" = ( +/obj/structure/stairs/perspective{ + icon_state = "p_stair_ew_full_cap" + }, +/obj/structure/platform/stair_cut/alt, +/turf/open/floor/plating/prison, +/area/fiorina/station/disco/east_disco) "lyJ" = ( /obj/item/tool/crowbar, /turf/open/floor/plating/prison, @@ -15131,7 +15426,7 @@ /obj/structure/surface/table/reinforced/prison, /obj/structure/window/reinforced/tinted, /turf/open/floor/plating/prison, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "lzn" = ( /obj/structure/machinery/portable_atmospherics/canister/phoron, /turf/open/floor/corsat/squares, @@ -15150,7 +15445,7 @@ }, /obj/item/storage/fancy/crayons, /turf/open/floor/prison/whitepurple/southeast, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/east) "lzB" = ( /obj/structure/closet/crate/miningcar{ name = "\improper materials storage bin" @@ -15190,7 +15485,7 @@ pixel_y = 5 }, /turf/open/floor/prison/floor_plate, -/area/fiorina/station/power_ring) +/area/fiorina/station/power_ring/reactor) "lAN" = ( /obj/structure/machinery/light/double/blue{ dir = 4; @@ -15285,7 +15580,7 @@ "lEd" = ( /obj/structure/inflatable/popped/door, /turf/open/floor/prison/whitepurple/northwest, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "lEg" = ( /obj/structure/machinery/light/double/blue, /turf/open/floor/prison/floor_plate, @@ -15346,7 +15641,7 @@ "lFg" = ( /obj/item/paper, /turf/open/floor/prison/sterile_white/southwest, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "lFm" = ( /obj/structure/bed/roller, /obj/item/trash/used_stasis_bag, @@ -15365,11 +15660,18 @@ /area/fiorina/station/disco) "lFB" = ( /turf/open/floor/prison/whitepurple/southwest, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "lFD" = ( /obj/item/tool/crowbar/red, /turf/open/floor/prison/darkbrown2/east, /area/fiorina/tumor/aux_engi) +"lFK" = ( +/obj/structure/flora/pottedplant{ + icon_state = "pottedplant_22" + }, +/obj/structure/machinery/light/double/blue, +/turf/open/floor/prison/yellow/northwest, +/area/fiorina/station/disco/east_disco) "lFM" = ( /obj/structure/surface/table/reinforced/prison, /obj/effect/landmark/objective_landmark/close, @@ -15407,6 +15709,10 @@ }, /turf/open/floor/prison, /area/fiorina/station/security) +"lHH" = ( +/obj/structure/window/framed/prison/reinforced, +/turf/open/floor/plating/prison, +/area/fiorina/station/lowsec/east) "lIj" = ( /obj/structure/prop/ice_colony/surveying_device, /turf/open/floor/prison/blue/east, @@ -15469,7 +15775,7 @@ "lIG" = ( /obj/structure/extinguisher_cabinet, /turf/closed/wall/r_wall/prison_unmeltable, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "lIH" = ( /obj/structure/machinery/processor, /turf/open/floor/prison/blue_plate/west, @@ -15477,7 +15783,7 @@ "lIJ" = ( /obj/item/stack/rods, /turf/open/floor/plating/prison, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "lJf" = ( /obj/structure/reagent_dispensers/fueltank/gas/hydrogen{ layer = 2.6 @@ -15538,7 +15844,7 @@ "lMi" = ( /obj/structure/largecrate/random, /turf/open/floor/plating/prison, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/east) "lMq" = ( /obj/structure/surface/table/reinforced/prison, /obj/structure/machinery/microwave{ @@ -15553,7 +15859,7 @@ dir = 1 }, /turf/open/floor/prison/floor_plate, -/area/fiorina/station/power_ring) +/area/fiorina/station/power_ring/reactor) "lNc" = ( /obj/structure/surface/table/reinforced/prison, /turf/open/floor/prison/redfull, @@ -15565,11 +15871,14 @@ pixel_y = 21 }, /turf/open/floor/prison/yellow/north, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "lNv" = ( /obj/item/restraint/adjustable/cable/pink, /turf/open/floor/prison/chapel_carpet/doubleside/north, /area/fiorina/station/chapel) +"lNC" = ( +/turf/open/floor/prison/yellowcorner, +/area/fiorina/station/lowsec/east) "lNP" = ( /obj/structure/bed/roller, /turf/open/floor/prison, @@ -15662,11 +15971,11 @@ icon = 'icons/obj/structures/doors/2x1prepdoor_charlie.dmi' }, /turf/open/floor/plating/prison, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "lSq" = ( /obj/item/ammo_magazine/shotgun/buckshot, /turf/open/floor/prison/darkpurplefull2, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "lSS" = ( /obj/structure/platform_decoration/kutjevo{ dir = 1 @@ -15680,6 +15989,10 @@ }, /turf/open/floor/almayer/plate, /area/fiorina/tumor/ship) +"lTs" = ( +/obj/effect/spawner/random/tool, +/turf/open/floor/prison/sterile_white/southwest, +/area/fiorina/station/research_cells/east) "lTW" = ( /obj/structure/flora/pottedplant{ icon_state = "pottedplant_29"; @@ -15703,7 +16016,7 @@ }, /obj/structure/blocker/invisible_wall, /turf/open/ice/noweed, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/basketball) "lUu" = ( /obj/structure/machinery/light/double/blue{ dir = 8; @@ -15730,7 +16043,7 @@ icon_state = "pottedplant_22" }, /turf/open/floor/prison/darkredfull2, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "lVA" = ( /turf/open/floor/prison/cell_stripe/east, /area/fiorina/lz/near_lzII) @@ -15754,7 +16067,7 @@ /obj/item/fuel_cell, /obj/structure/surface/rack, /turf/open/floor/prison/floor_plate, -/area/fiorina/station/power_ring) +/area/fiorina/station/power_ring/reactor) "lXs" = ( /obj/item/book/manual/marine_law, /obj/item/book/manual/marine_law{ @@ -15806,7 +16119,7 @@ /area/fiorina/tumor/fiberbush) "lZp" = ( /turf/open/floor/prison/kitchen, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "lZs" = ( /obj/structure/disposalpipe/segment{ color = "#c4c4c4"; @@ -15827,7 +16140,7 @@ icon = 'icons/obj/structures/doors/2x1prepdoor_charlie.dmi' }, /turf/open/floor/plating/prison, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/east) "maA" = ( /obj/item/stack/tile/plasteel, /turf/open/floor/prison/whitegreenfull/southwest, @@ -15942,6 +16255,9 @@ }, /turf/open/floor/plating/prison, /area/fiorina/station/medbay) +"meE" = ( +/turf/open/floor/prison/whitepurple/southwest, +/area/fiorina/station/research_cells/east) "mfe" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/weapon/twohanded/sledgehammer{ @@ -15969,7 +16285,7 @@ /area/fiorina/tumor/ice_lab) "mgz" = ( /turf/open/floor/prison/sterile_white/southwest, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "mgE" = ( /obj/structure/machinery/light/double/blue{ pixel_y = -1 @@ -16049,7 +16365,7 @@ "mlg" = ( /obj/effect/landmark/corpsespawner/ua_riot/burst, /turf/open/floor/prison/whitepurple/north, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "mlu" = ( /obj/structure/prop/invuln/minecart_tracks/bumper{ dir = 1 @@ -16060,6 +16376,9 @@ /obj/structure/window/framed/prison/reinforced/hull, /turf/open/floor/plating/prison, /area/fiorina/station/disco) +"mlE" = ( +/turf/open/floor/prison/yellowcorner, +/area/fiorina/station/lowsec/showers_laundry) "mlU" = ( /obj/structure/machinery/shower{ pixel_y = 13 @@ -16100,7 +16419,7 @@ "mns" = ( /obj/item/stool, /turf/open/floor/prison/sterile_white/southwest, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/east) "mny" = ( /turf/closed/wall/prison, /area/fiorina/station/flight_deck) @@ -16125,7 +16444,7 @@ /obj/structure/surface/table/reinforced/prison, /obj/item/tool/surgery/surgicaldrill, /turf/open/floor/prison/yellowcorner, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "moK" = ( /obj/item/clothing/under/shorts/red, /turf/open/floor/prison/yellowfull, @@ -16137,7 +16456,7 @@ }, /obj/effect/landmark/objective_landmark/science, /turf/open/floor/prison/whitepurple/southwest, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/east) "moW" = ( /obj/effect/landmark/corpsespawner/ua_riot/burst, /turf/open/floor/plating/prison, @@ -16181,7 +16500,7 @@ "mpR" = ( /obj/structure/machinery/vending/cigarette/colony, /turf/open/floor/prison/darkpurplefull2, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "mpY" = ( /obj/structure/flora/pottedplant{ icon_state = "pottedplant_22" @@ -16205,6 +16524,10 @@ /obj/item/stack/sheet/metal, /turf/open/floor/plating/prison, /area/fiorina/station/central_ring) +"mqL" = ( +/obj/item/stack/sheet/metal/medium_stack, +/turf/open/floor/prison/floor_plate, +/area/fiorina/station/power_ring/reactor) "mqM" = ( /obj/item/stack/sandbags_empty/half, /turf/open/floor/prison/darkyellow2/east, @@ -16220,7 +16543,7 @@ /obj/structure/extinguisher_cabinet, /obj/structure/window/framed/prison, /turf/open/floor/plating/prison, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "mrI" = ( /obj/structure/machinery/cm_vending/sorted/medical/wall_med, /turf/closed/wall/prison, @@ -16232,7 +16555,7 @@ "mrW" = ( /obj/item/stack/rods, /turf/open/floor/prison, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "mrX" = ( /obj/structure/bed/chair{ dir = 8 @@ -16302,7 +16625,7 @@ pixel_y = 18 }, /turf/open/floor/prison/yellowfull, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "muD" = ( /obj/structure/tunnel, /turf/open/organic/grass/astroturf, @@ -16316,7 +16639,7 @@ "mvl" = ( /obj/structure/window/framed/prison/reinforced, /turf/open/floor/plating/prison, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "mvp" = ( /turf/open/floor/prison/whitegreenfull/southwest, /area/fiorina/tumor/ice_lab) @@ -16356,7 +16679,7 @@ pixel_y = -3 }, /turf/open/floor/prison/floor_plate, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "mwK" = ( /obj/structure/surface/table/reinforced/prison, /obj/structure/window/reinforced{ @@ -16377,7 +16700,7 @@ icon_state = "abed" }, /turf/open/floor/prison/yellow/southwest, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "mxc" = ( /obj/effect/spawner/random/tool, /turf/open/floor/prison, @@ -16529,7 +16852,7 @@ "mCF" = ( /obj/structure/extinguisher_cabinet, /turf/closed/wall/prison, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "mCH" = ( /obj/item/newspaper, /turf/open/floor/prison, @@ -16665,7 +16988,7 @@ }, /obj/item/reagent_container/food/snacks/wrapped/barcardine, /turf/open/floor/prison/darkpurplefull2, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/east) "mIu" = ( /obj/effect/spawner/random/sentry/midchance, /turf/open/floor/plating/prison, @@ -16710,10 +17033,14 @@ /obj/item/device/flashlight/flare/on, /turf/open/floor/prison/whitegreenfull/southwest, /area/fiorina/tumor/ice_lab) +"mKa" = ( +/obj/structure/machinery/power/apc/power/north, +/turf/open/floor/prison/floor_plate, +/area/fiorina/station/lowsec/east) "mKd" = ( /obj/effect/decal/cleanable/blood/oil, /turf/open/floor/prison/yellow/east, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "mKo" = ( /obj/structure/closet/secure_closet/engineering_personal, /obj/effect/landmark/objective_landmark/close, @@ -16835,7 +17162,7 @@ "mOI" = ( /obj/effect/landmark/objective_landmark/close, /turf/open/floor/prison/floor_plate, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "mOU" = ( /obj/structure/barricade/handrail/type_b{ dir = 4 @@ -16945,7 +17272,7 @@ }, /obj/structure/blocker/invisible_wall, /turf/open/ice/noweed, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/basketball) "mTl" = ( /obj/item/storage/box/gloves, /turf/open/floor/prison/greenfull/northwest, @@ -16966,7 +17293,7 @@ }, /obj/effect/decal/cleanable/blood/oil/streak, /turf/open/floor/prison/sterile_white/southwest, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/east) "mUA" = ( /obj/effect/decal/cleanable/blood/oil, /turf/open/floor/plating/prison, @@ -17013,6 +17340,9 @@ /obj/structure/largecrate/random, /turf/open/floor/prison/darkyellowfull2/east, /area/fiorina/station/telecomm/lz1_tram) +"mVE" = ( +/turf/open/floor/prison/whitepurple/northeast, +/area/fiorina/station/research_cells/east) "mVO" = ( /obj/item/tool/extinguisher, /turf/open/floor/prison, @@ -17091,7 +17421,7 @@ }, /obj/effect/spawner/random/gun/smg/lowchance, /turf/open/floor/prison/darkpurplefull2, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "mZH" = ( /obj/structure/stairs/perspective{ dir = 1; @@ -17105,7 +17435,7 @@ "naI" = ( /obj/item/clothing/under/color/orange, /turf/open/floor/prison/yellow, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "naW" = ( /turf/closed/wall/r_wall/prison, /area/fiorina/tumor/civres) @@ -17171,7 +17501,7 @@ "ndQ" = ( /obj/structure/machinery/recharge_station, /turf/open/floor/prison/whitepurple/northeast, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/east) "ndZ" = ( /obj/structure/machinery/constructable_frame{ icon_state = "box_1" @@ -17263,7 +17593,7 @@ "ngg" = ( /obj/item/device/flashlight/lamp/tripod, /turf/open/floor/prison/bluefull, -/area/fiorina/station/power_ring) +/area/fiorina/station/power_ring/reactor) "ngn" = ( /obj/structure/machinery/deployable/barrier, /turf/open/floor/prison/redfull, @@ -17272,7 +17602,7 @@ /obj/item/device/flashlight/lamp/tripod, /obj/structure/machinery/light/double/blue, /turf/open/floor/prison/whitepurple, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "nho" = ( /obj/structure/platform{ dir = 1 @@ -17325,7 +17655,7 @@ dir = 8 }, /turf/open/organic/grass/astroturf, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/basketball) "njg" = ( /obj/effect/spawner/random/gun/rifle/lowchance, /turf/open/floor/prison/darkyellow2/west, @@ -17379,7 +17709,7 @@ /obj/structure/surface/table/reinforced/prison, /obj/item/weapon/gun/shotgun/pump/dual_tube/cmb, /turf/open/floor/prison/yellowfull, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "nkF" = ( /turf/open/floor/prison/cell_stripe/west, /area/fiorina/station/park) @@ -17414,10 +17744,10 @@ icon = 'icons/obj/structures/doors/prepdoor_charlie.dmi' }, /turf/open/floor/prison/floor_plate, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "nmm" = ( /turf/open/organic/grass/astroturf, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/basketball) "nmy" = ( /obj/structure/machinery/space_heater, /turf/open/floor/prison/sterile_white/southwest, @@ -17447,7 +17777,7 @@ icon_state = "p_stair_full" }, /turf/open/floor/plating/prison, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "nny" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/trash/cigbutt/bcigbutt, @@ -17549,7 +17879,7 @@ icon_state = "p_stair_sn_full_cap" }, /turf/open/floor/plating/plating_catwalk/prison, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "nsD" = ( /obj/structure/prop/structure_lattice{ dir = 4; @@ -17574,13 +17904,13 @@ "ntv" = ( /obj/structure/window/framed/prison, /turf/open/floor/plating/prison, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "ntw" = ( /turf/open/floor/prison/cell_stripe/west, /area/fiorina/lz/near_lzI) "ntx" = ( /turf/open/floor/prison/yellow/north, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "ntE" = ( /obj/structure/barricade/handrail/type_b, /turf/open/floor/prison/floor_plate, @@ -17661,6 +17991,13 @@ }, /turf/open/floor/prison/whitegreenfull/southwest, /area/fiorina/station/medbay) +"nvx" = ( +/obj/structure/machinery/light/double/blue{ + dir = 1; + pixel_y = 21 + }, +/turf/open/floor/prison, +/area/fiorina/station/disco/east_disco) "nvD" = ( /turf/closed/wall/r_wall/prison, /area/fiorina/station/botany) @@ -17707,6 +18044,9 @@ }, /turf/open/floor/prison, /area/fiorina/station/chapel) +"nxC" = ( +/turf/closed/wall/r_wall/prison_unmeltable, +/area/fiorina/station/power_ring/reactor) "nxW" = ( /obj/structure/machinery/light/double/blue{ pixel_y = -1 @@ -17739,7 +18079,7 @@ icon_state = "pottedplant_22" }, /turf/open/floor/prison/darkredfull2, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "nyO" = ( /obj/structure/machinery/light/double/blue{ dir = 8; @@ -17805,14 +18145,14 @@ "nAs" = ( /obj/structure/inflatable, /turf/open/floor/prison/yellowfull, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "nAK" = ( /turf/open/floor/prison/yellowcorner/north, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "nAV" = ( /obj/structure/machinery/fuelcell_recycler/full, /turf/open/floor/prison/bluecorner/west, -/area/fiorina/station/power_ring) +/area/fiorina/station/power_ring/reactor) "nBb" = ( /obj/structure/machinery/light/double/blue{ dir = 1; @@ -17874,6 +18214,13 @@ }, /turf/open/floor/plating/prison, /area/fiorina/station/medbay) +"nDu" = ( +/obj/structure/toilet{ + dir = 4; + pixel_y = 8 + }, +/turf/open/floor/prison/yellow/northwest, +/area/fiorina/station/lowsec/east) "nDI" = ( /obj/item/stack/tile/plasteel, /turf/open/floor/prison/floor_plate, @@ -17894,13 +18241,13 @@ /obj/item/clothing/glasses/material, /obj/structure/barricade/handrail, /turf/open/organic/grass/astroturf, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/basketball) "nEP" = ( /obj/structure/closet, /obj/item/reagent_container/spray/cleaner, /obj/item/stack/sheet/plasteel/small_stack, /turf/open/floor/prison, -/area/fiorina/station/power_ring) +/area/fiorina/station/power_ring/reactor) "nEW" = ( /obj/structure/surface/table/reinforced/prison, /obj/structure/machinery/computer/communications{ @@ -17938,7 +18285,7 @@ dir = 1 }, /turf/open/floor/prison, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "nGy" = ( /obj/item/newspaper, /turf/open/floor/wood, @@ -17946,21 +18293,21 @@ "nGB" = ( /obj/structure/machinery/light/double/blue, /turf/open/floor/prison/yellow/southeast, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "nGO" = ( /obj/structure/largecrate/random/barrel/yellow, /obj/structure/machinery/light/double/blue{ pixel_y = -1 }, /turf/open/floor/prison/yellow/southwest, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "nGV" = ( /obj/structure/machinery/light/double/blue{ dir = 1; pixel_y = 21 }, /turf/open/floor/prison/whitepurple/northeast, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "nGZ" = ( /turf/open/floor/prison, /area/fiorina/lz/near_lzI) @@ -18006,6 +18353,10 @@ }, /turf/open/floor/prison/darkredfull2, /area/fiorina/station/security) +"nIU" = ( +/obj/structure/machinery/door/airlock/prison_hatch/autoname, +/turf/open/floor/plating/prison, +/area/fiorina/station/lowsec/east) "nJq" = ( /obj/structure/platform{ dir = 1 @@ -18025,7 +18376,7 @@ dir = 1 }, /turf/open/floor/prison/bluefull, -/area/fiorina/station/power_ring) +/area/fiorina/station/power_ring/reactor) "nKl" = ( /obj/structure/platform{ dir = 1 @@ -18062,6 +18413,10 @@ }, /turf/open/floor/wood, /area/fiorina/station/park) +"nLO" = ( +/obj/structure/window/framed/prison/reinforced/hull, +/turf/open/floor/plating/prison, +/area/fiorina/station/research_cells/east) "nLS" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/reagent_container/food/condiment/saltshaker{ @@ -18267,7 +18622,7 @@ /area/fiorina/station/transit_hub) "nSx" = ( /turf/closed/wall/r_wall/prison, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "nSS" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/reagent_container/dropper, @@ -18301,6 +18656,9 @@ }, /turf/open/floor/prison, /area/fiorina/station/park) +"nUh" = ( +/turf/open/floor/prison/yellow/west, +/area/fiorina/station/lowsec/east) "nUm" = ( /obj/structure/barricade/wooden, /turf/open/floor/prison/floor_plate, @@ -18345,11 +18703,14 @@ }, /obj/structure/largecrate/random/case/double, /turf/open/floor/prison/whitepurple/southeast, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "nVE" = ( /obj/item/stack/tile/plasteel, /turf/open/floor/prison, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) +"nVK" = ( +/turf/open/floor/prison/whitepurple/north, +/area/fiorina/station/research_cells/east) "nVN" = ( /obj/item/trash/cigbutt, /turf/open/floor/prison/floor_plate, @@ -18544,7 +18905,14 @@ "odQ" = ( /obj/structure/largecrate/supply, /turf/open/floor/plating/prison, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/east) +"oeh" = ( +/obj/structure/sink{ + dir = 4; + pixel_x = 12 + }, +/turf/open/floor/prison/yellow/southeast, +/area/fiorina/station/lowsec/east) "oer" = ( /turf/open/floor/prison/darkbrown2, /area/fiorina/station/park) @@ -18612,6 +18980,10 @@ }, /turf/open/floor/prison/whitegreen/northeast, /area/fiorina/station/medbay) +"ogc" = ( +/obj/item/reagent_container/food/drinks/cans/aspen, +/turf/open/floor/prison/floor_plate, +/area/fiorina/station/lowsec/east) "ogf" = ( /obj/structure/monorail{ name = "launch track" @@ -18771,13 +19143,13 @@ pixel_y = -10 }, /turf/open/ice/noweed, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/basketball) "okG" = ( /obj/structure/barricade/deployable{ dir = 4 }, /turf/open/floor/prison/yellowfull, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "okJ" = ( /obj/structure/machinery/shower{ pixel_y = 13 @@ -18786,7 +19158,7 @@ dir = 8 }, /turf/open/floor/prison/kitchen, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "okT" = ( /obj/item/device/flashlight/lamp/tripod, /turf/open/floor/plating/prison, @@ -18903,13 +19275,13 @@ pixel_y = 13 }, /turf/open/floor/prison/kitchen, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "ooq" = ( /obj/structure/platform_decoration{ dir = 8 }, /turf/open/floor/prison/yellow/northeast, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "oou" = ( /obj/structure/closet/emcloset, /obj/item/clothing/head/cmcap{ @@ -18924,7 +19296,7 @@ "oox" = ( /obj/structure/bed/chair, /turf/open/floor/prison/bluecorner, -/area/fiorina/station/power_ring) +/area/fiorina/station/power_ring/reactor) "ooF" = ( /obj/structure/machinery/power/apc/power/south, /turf/open/floor/wood, @@ -18932,7 +19304,7 @@ "ooO" = ( /obj/item/storage/briefcase/inflatable, /turf/open/floor/prison, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "oph" = ( /obj/structure/surface/table/woodentable/fancy, /obj/item/reagent_container/food/drinks/bottle/holywater, @@ -18942,7 +19314,7 @@ "opj" = ( /obj/effect/decal/cleanable/blood/gibs, /turf/open/floor/prison/yellow/east, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "opM" = ( /obj/structure/bed/chair, /turf/open/floor/prison/bluefull, @@ -19006,7 +19378,7 @@ /obj/structure/closet/bodybag, /obj/effect/decal/cleanable/blood/gibs/limb, /turf/open/floor/prison, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "osQ" = ( /obj/structure/bed{ icon_state = "abed" @@ -19079,6 +19451,10 @@ }, /turf/open/floor/prison/chapel_carpet/doubleside/north, /area/fiorina/station/chapel) +"owc" = ( +/obj/structure/window/framed/prison, +/turf/open/floor/plating/prison, +/area/fiorina/station/disco/east_disco) "owd" = ( /obj/item/storage/backpack/souto, /turf/open/floor/prison, @@ -19094,7 +19470,7 @@ pixel_y = 13 }, /turf/open/floor/prison/whitepurple/west, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "oxp" = ( /obj/structure/platform{ dir = 4; @@ -19150,7 +19526,7 @@ icon_state = "abed" }, /turf/open/floor/prison/whitepurple/southwest, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "oyC" = ( /obj/structure/bed/sofa/south/grey/right, /turf/open/floor/wood, @@ -19212,7 +19588,7 @@ }, /obj/structure/blocker/invisible_wall, /turf/open/ice/noweed, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/basketball) "oCe" = ( /turf/closed/wall/r_wall/prison, /area/fiorina/station/park) @@ -19257,7 +19633,7 @@ pixel_y = 21 }, /turf/open/floor/prison/darkpurplefull2, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/east) "oDV" = ( /obj/item/stack/rods, /turf/open/floor/prison/whitegreen/west, @@ -19394,7 +19770,7 @@ "oHi" = ( /obj/item/stool, /turf/open/floor/prison, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "oHm" = ( /turf/open/floor/prison/darkbrown2/northeast, /area/fiorina/tumor/aux_engi) @@ -19491,7 +19867,7 @@ dir = 8 }, /turf/open/organic/grass/astroturf, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/basketball) "oKq" = ( /obj/effect/landmark/objective_landmark/close, /turf/open/floor/plating/prison, @@ -19500,6 +19876,9 @@ /obj/structure/machinery/door/airlock/multi_tile/elevator/freight, /turf/open/floor/corsat/plate, /area/fiorina/station/civres_blue) +"oLE" = ( +/turf/open/floor/prison, +/area/fiorina/station/lowsec/showers_laundry) "oLF" = ( /obj/effect/landmark/objective_landmark/medium, /turf/open/floor/prison/darkbrown2, @@ -19517,7 +19896,7 @@ /obj/structure/surface/rack, /obj/item/tank/emergency_oxygen/engi, /turf/open/floor/prison/bluecorner, -/area/fiorina/station/power_ring) +/area/fiorina/station/power_ring/reactor) "oMf" = ( /obj/structure/bed/chair/comfy, /turf/open/floor/prison/floor_plate, @@ -19538,7 +19917,10 @@ pixel_y = -1 }, /turf/open/floor/prison/whitepurple/northeast, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) +"oMW" = ( +/turf/open/floor/prison/yellow, +/area/fiorina/station/lowsec/showers_laundry) "oNu" = ( /obj/structure/barricade/handrail/type_b{ layer = 3.4 @@ -19550,11 +19932,11 @@ dir = 4 }, /turf/open/organic/grass/astroturf, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/basketball) "oNC" = ( /obj/structure/inflatable, /turf/open/floor/prison/darkpurplefull2, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "oOg" = ( /obj/structure/barricade/handrail/type_b{ dir = 4; @@ -19606,7 +19988,7 @@ pixel_y = 16 }, /turf/open/floor/prison/darkredfull2, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "oOV" = ( /obj/structure/machinery/filtration/console{ pixel_y = 22 @@ -19620,7 +20002,7 @@ "oPN" = ( /obj/structure/inflatable/popped/door, /turf/open/floor/plating/prison, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "oPR" = ( /turf/open/floor/prison/floor_plate, /area/fiorina/station/disco) @@ -19650,7 +20032,7 @@ pixel_y = 21 }, /turf/open/floor/prison/floor_plate/southwest, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "oRg" = ( /turf/open/floor/prison/darkyellow2/north, /area/fiorina/station/telecomm/lz1_cargo) @@ -19661,7 +20043,7 @@ "oSn" = ( /obj/structure/inflatable/door, /turf/open/floor/prison/yellow/northeast, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "oSz" = ( /obj/item/shard{ icon_state = "medium" @@ -19700,6 +20082,13 @@ }, /turf/open/organic/grass/astroturf, /area/fiorina/station/civres_blue) +"oTL" = ( +/obj/structure/machinery/light/double/blue{ + dir = 1; + pixel_y = 21 + }, +/turf/open/floor/prison/yellow/north, +/area/fiorina/station/lowsec/showers_laundry) "oTP" = ( /turf/open/floor/prison/darkyellow2/southwest, /area/fiorina/station/telecomm/lz1_tram) @@ -19739,7 +20128,7 @@ "oWC" = ( /obj/item/stack/sandbags/large_stack, /turf/open/floor/prison/yellow/northeast, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "oWF" = ( /obj/structure/machinery/door/airlock/prison_hatch/autoname, /turf/open/floor/plating/prison, @@ -19837,7 +20226,7 @@ "oZj" = ( /obj/effect/landmark/survivor_spawner, /turf/open/floor/prison/darkredfull2, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "oZk" = ( /turf/open/floor/prison/darkpurple2/southwest, /area/fiorina/tumor/ice_lab) @@ -19872,7 +20261,7 @@ "oZU" = ( /obj/structure/largecrate/random/case, /turf/open/floor/prison/sterile_white/southwest, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "pab" = ( /obj/item/tool/weldpack{ pixel_x = 6 @@ -19894,14 +20283,14 @@ dir = 1 }, /turf/open/floor/plating/prison, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "pai" = ( /obj/structure/machinery/cm_vending/sorted/marine_food{ desc = "Prison meal vendor, containing preprepared meals fit for the dregs of society."; name = "\improper Fiorina Green Block Canteen Vendor" }, /turf/open/floor/prison/floor_plate, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "paF" = ( /obj/item/tool/shovel/etool, /turf/open/floor/prison/floor_plate, @@ -19971,7 +20360,7 @@ /obj/structure/surface/table/reinforced/prison, /obj/effect/spawner/random/tool, /turf/open/floor/prison/darkpurplefull2, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/east) "pdB" = ( /obj/structure/machinery/light/double/blue{ dir = 1; @@ -20035,7 +20424,7 @@ "pho" = ( /obj/item/stack/sheet/wood, /turf/open/floor/prison/darkpurplefull2, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/east) "phz" = ( /turf/open/floor/plating/prison, /area/fiorina/tumor/ice_lab) @@ -20052,7 +20441,7 @@ "pim" = ( /obj/structure/machinery/door/airlock/prison_hatch/autoname, /turf/open/floor/prison/redfull, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "piw" = ( /obj/structure/platform{ dir = 1 @@ -20163,7 +20552,7 @@ "pnP" = ( /obj/effect/landmark/corpsespawner/ua_riot, /turf/open/floor/prison/floor_plate, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "pnS" = ( /obj/structure/surface/table/reinforced/prison, /turf/open/floor/plating/plating_catwalk/prison, @@ -20171,7 +20560,7 @@ "poC" = ( /obj/structure/machinery/photocopier, /turf/open/floor/prison/darkredfull2, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "ppq" = ( /obj/structure/surface/table/reinforced/prison, /obj/structure/flora/pottedplant{ @@ -20212,7 +20601,7 @@ "pqz" = ( /obj/item/clothing/suit/storage/labcoat, /turf/open/organic/grass/astroturf, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/basketball) "pqC" = ( /obj/structure/window/framed/prison/reinforced/hull, /turf/open/floor/plating/prison, @@ -20222,6 +20611,14 @@ icon_state = "stan20" }, /area/fiorina/tumor/ship) +"pqQ" = ( +/obj/structure/stairs/perspective{ + dir = 8; + icon_state = "p_stair_full" + }, +/obj/structure/platform, +/turf/open/floor/plating/prison, +/area/fiorina/station/disco/east_disco) "pqY" = ( /obj/structure/monorail{ dir = 9; @@ -20276,6 +20673,12 @@ /obj/structure/platform, /turf/open/floor/prison/cell_stripe/west, /area/fiorina/station/botany) +"psG" = ( +/obj/structure/machinery/light/double/blue{ + pixel_y = -1 + }, +/turf/open/floor/prison/darkpurplefull2, +/area/fiorina/station/research_cells/east) "psL" = ( /obj/structure/machinery/optable{ desc = "This maybe could be used for advanced medical procedures."; @@ -20346,7 +20749,7 @@ "pvE" = ( /obj/item/clothing/under/color/orange, /turf/open/floor/prison/yellowfull, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "pvF" = ( /turf/open/floor/prison/whitegreencorner, /area/fiorina/tumor/ice_lab) @@ -20398,7 +20801,7 @@ "pxX" = ( /obj/structure/largecrate/random/case/double, /turf/open/floor/prison/whitepurple/southeast, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "pyK" = ( /obj/structure/machinery/door/airlock/multi_tile/elevator/freight, /turf/open/floor/corsat/plate, @@ -20436,6 +20839,14 @@ /obj/structure/largecrate/random/barrel/white, /turf/open/floor/plating/prison, /area/fiorina/tumor/fiberbush) +"pBD" = ( +/obj/structure/stairs/perspective{ + dir = 8; + icon_state = "p_stair_full" + }, +/obj/structure/platform, +/turf/open/floor/prison, +/area/fiorina/station/disco/east_disco) "pBT" = ( /obj/structure/barricade/metal{ health = 250; @@ -20487,7 +20898,7 @@ pixel_y = 6 }, /turf/open/floor/prison/yellowfull, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "pCX" = ( /obj/item/stack/sheet/metal, /turf/open/floor/plating/prison, @@ -20497,7 +20908,7 @@ icon = 'icons/obj/structures/doors/2x1prepdoor_charlie.dmi' }, /turf/open/floor/prison/sterile_white/southwest, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "pDQ" = ( /obj/structure/bed/sofa/south/grey/right, /turf/open/floor/prison/redfull, @@ -20563,7 +20974,7 @@ pixel_y = 21 }, /turf/open/floor/prison/yellowfull, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "pHh" = ( /obj/structure/ice/thin/indestructible{ dir = 4; @@ -20589,7 +21000,7 @@ }, /obj/item/device/flashlight/lamp/tripod, /turf/open/floor/prison/floor_plate, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "pIs" = ( /obj/structure/flora/grass/tallgrass/jungle/corner{ dir = 4 @@ -20685,7 +21096,7 @@ pixel_y = 15 }, /turf/open/floor/prison/yellowfull, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "pLM" = ( /obj/item/trash/cigbutt, /turf/open/floor/prison/blue/west, @@ -20698,6 +21109,11 @@ /obj/effect/decal/cleanable/blood, /turf/open/floor/prison/greencorner/west, /area/fiorina/tumor/aux_engi) +"pMr" = ( +/obj/structure/surface/table/reinforced/prison, +/obj/item/storage/box/cups, +/turf/open/floor/prison/floor_plate, +/area/fiorina/station/power_ring/reactor) "pNj" = ( /obj/structure/bookcase, /turf/open/floor/carpet, @@ -20751,7 +21167,7 @@ /obj/structure/closet/basketball, /obj/effect/landmark/objective_landmark/science, /turf/open/floor/prison/sterile_white/southwest, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/east) "pQs" = ( /turf/open/floor/prison, /area/fiorina/station/civres_blue) @@ -20763,7 +21179,7 @@ icon_state = "abed" }, /turf/open/floor/prison/whitepurple/northwest, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "pRp" = ( /obj/structure/platform, /obj/structure/machinery/light/double/blue, @@ -20836,7 +21252,7 @@ "pUG" = ( /obj/item/stack/rods, /turf/open/floor/prison/sterile_white/southwest, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/east) "pUO" = ( /obj/item/trash/boonie, /turf/open/floor/prison/whitegreenfull/southwest, @@ -20869,7 +21285,7 @@ "pVY" = ( /obj/item/stack/sheet/mineral/plastic, /turf/open/floor/prison/yellow/northwest, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "pWc" = ( /obj/item/tool/crowbar/red, /turf/open/floor/prison/floor_plate, @@ -20959,14 +21375,14 @@ /area/fiorina/oob) "pZn" = ( /turf/open/floor/prison/yellowcorner/west, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "pZp" = ( /obj/item/tool/soap, /obj/structure/machinery/shower{ dir = 8 }, /turf/open/floor/prison/kitchen, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "qaA" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/clipboard, @@ -21139,11 +21555,15 @@ /obj/effect/landmark/monkey_spawn, /turf/open/floor/prison, /area/fiorina/station/civres_blue) +"qfh" = ( +/obj/item/stack/sheet/metal, +/turf/open/floor/plating/prison, +/area/fiorina/station/disco/east_disco) "qfi" = ( /obj/structure/closet/secure_closet/personal, /obj/effect/landmark/objective_landmark/science, /turf/open/floor/prison/darkpurplefull2, -/area/fiorina/station/telecomm/lz1_cargo) +/area/fiorina/station/research_cells/east) "qgd" = ( /obj/item/explosive/grenade/incendiary/molotov{ pixel_x = 8; @@ -21402,7 +21822,7 @@ pixel_y = -1 }, /turf/open/floor/prison/sterile_white/southwest, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "qqQ" = ( /turf/open/floor/prison/green/northeast, /area/fiorina/station/transit_hub) @@ -21436,7 +21856,7 @@ "qrU" = ( /obj/effect/landmark/monkey_spawn, /turf/open/floor/prison/whitepurple, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "qsc" = ( /obj/structure/machinery/light/double/blue, /turf/open/floor/prison, @@ -21466,6 +21886,10 @@ "qsF" = ( /turf/open/floor/prison/darkbrown2/north, /area/fiorina/maintenance) +"qtp" = ( +/obj/structure/window/framed/prison, +/turf/open/floor/plating/prison, +/area/fiorina/station/power_ring/reactor) "qtP" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/prop/helmetgarb/raincover, @@ -21498,7 +21922,7 @@ dir = 2 }, /turf/open/floor/plating/prison, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "qvN" = ( /obj/structure/prop/resin_prop{ icon_state = "rack" @@ -21517,14 +21941,14 @@ /area/fiorina/maintenance) "qwH" = ( /turf/open/floor/prison/floor_plate/southwest, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "qwK" = ( /turf/open/floor/prison/floorscorched2, /area/fiorina/station/civres_blue) "qxx" = ( /obj/item/ammo_magazine/smg/mp5, /turf/open/floor/prison/whitepurple/southwest, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "qxy" = ( /obj/item/stack/sheet/metal, /turf/open/floor/prison/greenfull/northwest, @@ -21547,7 +21971,7 @@ pixel_y = -3 }, /turf/open/floor/prison/yellowfull, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "qya" = ( /obj/structure/closet{ density = 0; @@ -21556,7 +21980,7 @@ /obj/item/clothing/gloves/combat, /obj/effect/landmark/objective_landmark/science, /turf/open/floor/prison/whitepurple/north, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "qyq" = ( /obj/structure/closet/secure_closet/engineering_personal, /obj/structure/machinery/light/double/blue{ @@ -21565,10 +21989,10 @@ }, /obj/effect/landmark/objective_landmark/close, /turf/open/floor/prison/floor_plate, -/area/fiorina/station/power_ring) +/area/fiorina/station/power_ring/reactor) "qyM" = ( /turf/open/floor/prison/darkyellowfull2/east, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "qzb" = ( /obj/structure/stairs/perspective{ dir = 4; @@ -21594,7 +22018,7 @@ pixel_y = 2 }, /turf/open/floor/prison/yellow/southeast, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "qAe" = ( /obj/item/trash/eat, /turf/open/floor/prison/floor_plate, @@ -21625,6 +22049,9 @@ /obj/item/storage/briefcase, /turf/open/floor/prison/floor_plate, /area/fiorina/station/security/wardens) +"qBw" = ( +/turf/open/floor/prison/darkpurplefull2, +/area/fiorina/station/research_cells/east) "qBB" = ( /obj/item/prop/helmetgarb/spacejam_tickets{ desc = "A ticket to Souto Man's raffle!"; @@ -21645,7 +22072,7 @@ /obj/structure/surface/table/reinforced/prison, /obj/effect/landmark/objective_landmark/science, /turf/open/floor/prison/darkredfull2, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "qBT" = ( /obj/structure/sink{ dir = 4; @@ -21653,7 +22080,7 @@ }, /obj/effect/landmark/objective_landmark/medium, /turf/open/floor/prison/whitepurple/southeast, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "qCa" = ( /obj/structure/prop/resin_prop{ dir = 1; @@ -21677,7 +22104,7 @@ "qCx" = ( /obj/item/reagent_container/food/drinks/sillycup, /turf/open/floor/prison/bluefull, -/area/fiorina/station/power_ring) +/area/fiorina/station/power_ring/reactor) "qCE" = ( /obj/structure/machinery/computer/emails{ dir = 1; @@ -21688,7 +22115,7 @@ /area/fiorina/station/medbay) "qCK" = ( /turf/open/floor/prison/damaged1/southwest, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "qCW" = ( /turf/closed/shuttle/elevator{ dir = 6 @@ -21732,7 +22159,7 @@ "qEC" = ( /obj/structure/largecrate/random/barrel/blue, /turf/open/floor/prison/yellow/southeast, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "qFf" = ( /obj/item/tool/kitchen/rollingpin, /turf/open/floor/prison/kitchen, @@ -21771,6 +22198,12 @@ }, /turf/open/floor/prison/floor_plate/southwest, /area/fiorina/station/telecomm/lz1_cargo) +"qFW" = ( +/obj/structure/bed{ + icon_state = "abed" + }, +/turf/open/floor/prison/yellow/southeast, +/area/fiorina/station/lowsec/east) "qGe" = ( /obj/structure/machinery/landinglight/ds1/delaytwo{ dir = 4 @@ -21795,7 +22228,7 @@ "qGB" = ( /obj/structure/barricade/wooden, /turf/open/floor/prison/whitepurple/east, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "qGO" = ( /obj/structure/machinery/photocopier, /obj/structure/machinery/light/double/blue, @@ -21867,7 +22300,7 @@ icon_state = "linenbin-empty" }, /turf/open/floor/prison/yellow/west, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "qJr" = ( /turf/open/floor/prison, /area/fiorina/tumor/fiberbush) @@ -21912,6 +22345,9 @@ /obj/item/disk/data, /turf/open/floor/prison/darkpurplefull2, /area/fiorina/tumor/servers) +"qJY" = ( +/turf/open/floor/prison/yellow, +/area/fiorina/station/lowsec/east) "qKq" = ( /obj/structure/machinery/computer/arcade, /obj/item/toy/syndicateballoon{ @@ -22027,7 +22463,7 @@ "qOq" = ( /obj/structure/grille, /turf/open/floor/plating/prison, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "qOu" = ( /turf/open/floor/prison/damaged3, /area/fiorina/station/disco) @@ -22066,7 +22502,7 @@ pixel_y = 8 }, /turf/open/floor/prison/darkpurplefull2, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/east) "qQa" = ( /turf/open/floor/prison/darkpurple2/north, /area/fiorina/station/central_ring) @@ -22107,7 +22543,7 @@ dir = 1 }, /turf/open/floor/prison/blue/northwest, -/area/fiorina/station/power_ring) +/area/fiorina/station/power_ring/reactor) "qQA" = ( /obj/item/reagent_container/food/drinks/bottle/holywater{ desc = "A flask of the holy HEFA grenade oil."; @@ -22128,14 +22564,14 @@ "qRa" = ( /obj/effect/decal/cleanable/blood/gibs/core, /turf/open/floor/prison, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "qRf" = ( /obj/structure/bed{ icon_state = "abed" }, /obj/item/toy/beach_ball/holoball, /turf/open/floor/prison/whitepurple/southeast, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/east) "qRg" = ( /obj/structure/sign/prop3{ desc = "Enlist in the Penal Battalions today! The USCM 3rd Fleet features a subset of UA sanctioned penal battalions, drawing from inmate popualtions across the colonies. Mostly New Argentina though." @@ -22153,7 +22589,7 @@ dir = 4 }, /turf/open/floor/plating/prison, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "qRK" = ( /turf/open/floor/prison/darkpurple2/southeast, /area/fiorina/station/central_ring) @@ -22182,7 +22618,7 @@ /obj/structure/closet/wardrobe/orange, /obj/item/clothing/gloves/boxing/yellow, /turf/open/floor/prison/yellowfull, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "qSA" = ( /obj/item/trash/candy, /turf/open/floor/prison/whitegreen/east, @@ -22194,7 +22630,7 @@ "qTt" = ( /obj/item/stack/tile/plasteel, /turf/open/floor/prison/yellow/southwest, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "qTx" = ( /obj/structure/surface/rack, /obj/item/storage/firstaid/regular, @@ -22230,7 +22666,7 @@ "qUw" = ( /obj/item/device/multitool, /turf/open/floor/prison/yellow/southwest, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "qUC" = ( /obj/item/ammo_casing{ dir = 2; @@ -22249,7 +22685,7 @@ }, /obj/structure/machinery/light/double/blue, /turf/open/floor/prison/kitchen, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "qXM" = ( /obj/item/stack/tile/plasteel, /turf/open/floor/plating/prison, @@ -22329,7 +22765,7 @@ pixel_y = 11 }, /turf/open/floor/prison/darkpurplefull2, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "rcg" = ( /turf/open/floor/plating/prison, /area/fiorina/station/central_ring) @@ -22378,7 +22814,7 @@ dir = 4 }, /turf/open/floor/prison/darkredfull2, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "reZ" = ( /obj/structure/barricade/sandbags{ dir = 8; @@ -22413,7 +22849,7 @@ pixel_y = 21 }, /turf/open/floor/prison/yellow/north, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "rgg" = ( /obj/item/tool/candle{ pixel_x = -2 @@ -22422,7 +22858,7 @@ /area/fiorina/station/chapel) "rhf" = ( /turf/open/floor/prison/cell_stripe, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "rhh" = ( /obj/structure/monorail{ dir = 4; @@ -22435,7 +22871,7 @@ icon_state = "abed" }, /turf/open/floor/prison/whitepurple/southeast, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "rie" = ( /obj/effect/decal/cleanable/blood/oil, /turf/open/floor/prison/whitegreen/west, @@ -22447,10 +22883,19 @@ "rja" = ( /turf/closed/wall/prison, /area/fiorina/station/civres_blue) +"rjw" = ( +/turf/closed/wall/prison, +/area/fiorina/station/lowsec/showers_laundry) "rjy" = ( /obj/effect/landmark/objective_landmark/close, /turf/open/floor/prison/kitchen/southwest, /area/fiorina/tumor/civres) +"rjD" = ( +/obj/structure/machinery/door/airlock/multi_tile/almayer/generic/autoname{ + icon = 'icons/obj/structures/doors/2x1prepdoor_charlie.dmi' + }, +/turf/open/floor/plating/prison, +/area/fiorina/station/research_cells/west) "rjP" = ( /obj/structure/flora/pottedplant{ icon_state = "pottedplant_22" @@ -22472,14 +22917,14 @@ }, /obj/effect/decal/cleanable/blood/gibs, /turf/open/floor/prison/yellow/northwest, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "rkv" = ( /turf/open/floor/prison/greencorner/west, /area/fiorina/station/chapel) "rkF" = ( /obj/structure/closet/secure_closet/personal, /turf/open/floor/prison/darkpurplefull2, -/area/fiorina/station/telecomm/lz1_cargo) +/area/fiorina/station/research_cells/east) "rkH" = ( /obj/structure/grille, /obj/structure/lattice, @@ -22489,6 +22934,10 @@ /obj/item/clothing/glasses/science, /turf/open/space, /area/fiorina/oob) +"rkX" = ( +/obj/effect/landmark/survivor_spawner, +/turf/open/floor/prison/floor_plate, +/area/fiorina/station/power_ring/reactor) "rle" = ( /obj/item/stack/cable_coil/green, /turf/open/floor/wood, @@ -22515,7 +22964,7 @@ pixel_y = 13 }, /turf/open/floor/plating/prison, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "rmX" = ( /obj/structure/stairs/perspective{ icon_state = "p_stair_sn_full_cap" @@ -22524,7 +22973,7 @@ dir = 8 }, /turf/open/floor/plating/prison, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "rmZ" = ( /obj/structure/barricade/metal/wired{ dir = 4 @@ -22555,7 +23004,7 @@ "rnE" = ( /obj/structure/inflatable, /turf/open/floor/prison/yellow/southeast, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "rnM" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/storage/fancy/crayons, @@ -22605,7 +23054,7 @@ "rpf" = ( /obj/structure/grille, /turf/open/floor/prison/sterile_white/southwest, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/east) "rpt" = ( /obj/effect/decal/cleanable/blood, /turf/open/floor/prison/floor_plate, @@ -22627,7 +23076,7 @@ }, /obj/structure/platform/stair_cut, /turf/open/floor/plating/prison, -/area/fiorina/station/power_ring) +/area/fiorina/station/power_ring/reactor) "rqq" = ( /obj/structure/machinery/light/double/blue{ dir = 1; @@ -22660,7 +23109,7 @@ "rru" = ( /obj/effect/spawner/random/goggles/midchance, /turf/open/organic/grass/astroturf, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/basketball) "rrD" = ( /obj/structure/machinery/landinglight/ds1{ dir = 1 @@ -22752,7 +23201,7 @@ pixel_x = -12 }, /turf/open/floor/prison/whitepurple/southwest, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "rwu" = ( /obj/structure/bed/chair{ dir = 1 @@ -22771,7 +23220,7 @@ /obj/item/clothing/under/color/orange, /obj/structure/surface/rack, /turf/open/floor/prison/yellow/east, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "rwQ" = ( /obj/effect/decal/cleanable/blood/drip, /turf/open/floor/prison/greenblue/west, @@ -22824,7 +23273,7 @@ pixel_y = 25 }, /turf/open/floor/prison/yellow, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "rAm" = ( /obj/structure/surface/rack, /obj/effect/landmark/objective_landmark/medium, @@ -22833,7 +23282,7 @@ "rAw" = ( /obj/structure/bed/chair, /turf/open/floor/prison/sterile_white/southwest, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/east) "rAK" = ( /obj/structure/barricade/metal{ dir = 4; @@ -22886,17 +23335,17 @@ dir = 4 }, /turf/open/floor/prison/yellow/southeast, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "rCq" = ( /obj/structure/largecrate/supply/supplies/flares, /turf/open/floor/plating/prison, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "rCt" = ( /obj/structure/bed/chair/comfy{ dir = 4 }, /turf/open/floor/wood, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "rDu" = ( /obj/structure/stairs/perspective{ dir = 8; @@ -22908,6 +23357,9 @@ }, /turf/open/floor/plating/prison, /area/fiorina/station/medbay) +"rEx" = ( +/turf/open/floor/prison/whitepurplecorner/east, +/area/fiorina/station/research_cells/east) "rFu" = ( /obj/effect/decal/cleanable/blood/drip, /turf/open/floor/prison/chapel_carpet/doubleside, @@ -22931,7 +23383,7 @@ /area/fiorina/station/medbay) "rGf" = ( /turf/open/auto_turf/sand/layer1, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "rGq" = ( /turf/open/floor/plating/prison, /area/fiorina/tumor/aux_engi) @@ -22986,7 +23438,7 @@ pixel_y = -3 }, /turf/open/floor/prison/whitepurple/southwest, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "rIy" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/phone{ @@ -23053,7 +23505,7 @@ pixel_y = 32 }, /turf/open/floor/prison/yellow/north, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "rKm" = ( /obj/structure/machinery/vending/coffee, /turf/open/floor/prison/redfull, @@ -23080,11 +23532,11 @@ /area/fiorina/station/botany) "rLG" = ( /turf/open/floor/prison/whitepurple, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "rLJ" = ( /obj/item/clothing/gloves/boxing, /turf/open/floor/prison/yellow/southwest, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "rMo" = ( /obj/effect/landmark/objective_landmark/far, /obj/structure/closet/secure_closet/engineering_personal, @@ -23098,7 +23550,7 @@ "rMw" = ( /obj/item/device/flashlight/lamp/tripod, /turf/open/floor/prison/yellow/northeast, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "rMT" = ( /obj/structure/prop/almayer/computers/mission_planning_system{ density = 0; @@ -23200,7 +23652,7 @@ "rPS" = ( /obj/item/device/flashlight/lamp/tripod, /turf/open/floor/plating/prison, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/east) "rPW" = ( /obj/effect/spawner/random/gun/rifle/lowchance, /turf/open/floor/prison/floor_plate, @@ -23224,7 +23676,7 @@ /area/fiorina/maintenance) "rQB" = ( /turf/open/floor/prison/sterile_white/west, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "rQK" = ( /obj/item/bananapeel{ name = "tactical banana peel" @@ -23254,7 +23706,7 @@ req_one_access = null }, /turf/open/floor/plating/prison, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "rSN" = ( /obj/structure/platform{ dir = 8 @@ -23301,9 +23753,12 @@ }, /turf/open/floor/prison/whitegreen/north, /area/fiorina/station/medbay) +"rTY" = ( +/turf/open/floor/prison/bluecorner, +/area/fiorina/station/power_ring/reactor) "rTZ" = ( /turf/open/floor/prison/whitepurplecorner/north, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "rUf" = ( /turf/open/floor/prison/darkyellow2/northwest, /area/fiorina/tumor/servers) @@ -23393,13 +23848,13 @@ pixel_y = 32 }, /turf/open/floor/prison/yellow/north, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "rYK" = ( /obj/structure/machinery/light/double/blue{ pixel_y = -1 }, /turf/open/floor/prison/yellow, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "rYY" = ( /obj/structure/bed/roller, /obj/structure/machinery/filtration/console{ @@ -23418,6 +23873,11 @@ icon_state = "stan_rightengine" }, /area/fiorina/station/power_ring) +"rZF" = ( +/obj/effect/decal/cleanable/blood/gibs, +/obj/effect/spawner/random/gun/rifle, +/turf/open/floor/prison/floor_plate, +/area/fiorina/station/lowsec/east) "rZI" = ( /obj/structure/surface/rack, /obj/effect/landmark/objective_landmark/close, @@ -23457,7 +23917,7 @@ pixel_y = 8 }, /turf/open/floor/prison/floor_plate, -/area/fiorina/station/power_ring) +/area/fiorina/station/power_ring/reactor) "sbf" = ( /obj/effect/landmark/corpsespawner/prisoner, /turf/open/gm/river/darkred_pool, @@ -23628,7 +24088,7 @@ pixel_y = 12 }, /turf/open/floor/prison/darkredfull2, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "sga" = ( /obj/effect/decal{ icon = 'icons/obj/items/policetape.dmi'; @@ -23642,11 +24102,14 @@ "sgt" = ( /obj/structure/inflatable/popped/door, /turf/open/floor/prison, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "sgw" = ( /obj/structure/window_frame/prison, /turf/open/floor/plating/prison, /area/fiorina/tumor/aux_engi) +"sgI" = ( +/turf/open/floor/prison/floor_plate, +/area/fiorina/station/power_ring/reactor) "sgJ" = ( /obj/structure/surface/rack, /obj/item/storage/belt/gun/flaregun/full, @@ -23668,7 +24131,7 @@ pixel_y = -1 }, /turf/open/floor/prison/kitchen, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "shH" = ( /obj/structure/machinery/light/double/blue, /turf/open/floor/prison, @@ -23684,11 +24147,11 @@ "siy" = ( /obj/item/stack/cable_coil, /turf/open/floor/prison/floor_plate, -/area/fiorina/station/power_ring) +/area/fiorina/station/power_ring/reactor) "siB" = ( /obj/item/poster, /turf/open/floor/prison/whitepurple/northwest, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "siE" = ( /obj/structure/machinery/cm_vending/sorted/tech/electronics_storage, /turf/open/floor/prison/darkbrownfull2, @@ -23705,7 +24168,7 @@ /obj/structure/closet/bodybag, /obj/effect/decal/cleanable/blood/gibs/up, /turf/open/floor/prison, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "sjd" = ( /obj/structure/stairs/perspective{ dir = 8; @@ -23766,14 +24229,14 @@ pixel_y = -3 }, /turf/open/floor/prison/yellowfull, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "skj" = ( /obj/structure/closet/crate/miningcar{ name = "\improper materials storage bin" }, /obj/item/reagent_container/food/snacks/meat, /turf/open/floor/prison/yellow, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "skG" = ( /turf/open/floor/prison/blue/southwest, /area/fiorina/tumor/servers) @@ -23870,7 +24333,7 @@ dir = 4 }, /turf/open/organic/grass/astroturf, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/basketball) "spm" = ( /obj/structure/surface/table/reinforced/prison, /obj/structure/flora/pottedplant{ @@ -23908,7 +24371,7 @@ "spR" = ( /obj/structure/surface/table/reinforced/prison, /turf/open/floor/prison/darkredfull2, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "sqx" = ( /obj/structure/machinery/door/poddoor/shutters/almayer{ density = 0; @@ -23919,7 +24382,7 @@ "sqC" = ( /obj/structure/extinguisher_cabinet, /turf/closed/wall/r_wall/prison, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "sqR" = ( /obj/structure/surface/table/reinforced/prison, /obj/effect/spawner/random/supply_kit, @@ -23945,7 +24408,7 @@ "srQ" = ( /obj/structure/barricade/handrail, /turf/open/floor/prison/whitepurple/northeast, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/east) "ssb" = ( /turf/open/floor/prison, /area/fiorina/station/telecomm/lz1_tram) @@ -23988,7 +24451,7 @@ icon = 'icons/obj/structures/doors/prepdoor_charlie.dmi' }, /turf/open/floor/plating/prison, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "stf" = ( /obj/effect/spawner/random/tool, /turf/open/floor/prison, @@ -24025,7 +24488,7 @@ "suq" = ( /obj/item/stool, /turf/open/floor/prison/damaged2/southwest, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "suX" = ( /turf/open/floor/prison, /area/fiorina/station/central_ring) @@ -24058,10 +24521,13 @@ dir = 4 }, /turf/open/floor/prison/kitchen, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "svP" = ( /turf/open/floor/prison/floor_plate, /area/fiorina/tumor/aux_engi) +"svS" = ( +/turf/open/floor/prison/yellow/northwest, +/area/fiorina/station/disco/east_disco) "svW" = ( /obj/structure/surface/rack, /obj/item/clothing/gloves/latex, @@ -24161,7 +24627,7 @@ "sAF" = ( /obj/item/inflatable, /turf/open/floor/prison/yellow/north, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "sBf" = ( /obj/structure/platform{ dir = 1 @@ -24223,6 +24689,9 @@ /obj/structure/machinery/light/double/blue, /turf/open/floor/prison/whitegreen, /area/fiorina/station/medbay) +"sDw" = ( +/turf/open/floor/prison, +/area/fiorina/station/lowsec/east) "sDL" = ( /obj/structure/machinery/door/airlock/almayer/maint/colony/autoname{ dir = 1; @@ -24236,12 +24705,18 @@ icon_state = "human2" }, /turf/open/floor/prison/yellowfull, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "sDS" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/ammo_magazine/rifle/m16, /turf/open/floor/prison/darkyellow2, /area/fiorina/lz/near_lzI) +"sEK" = ( +/obj/structure/bed{ + icon_state = "abed" + }, +/turf/open/floor/prison/whitepurple/southeast, +/area/fiorina/station/research_cells/east) "sEO" = ( /turf/closed/wall/r_wall/prison, /area/fiorina/lz/near_lzII) @@ -24271,7 +24746,7 @@ }, /obj/item/tool/stamp, /turf/open/floor/prison/darkredfull2, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "sFY" = ( /obj/structure/barricade/metal/wired{ dir = 4 @@ -24321,7 +24796,7 @@ pixel_y = 9 }, /turf/open/floor/prison/darkpurplefull2, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "sHe" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/stock_parts/subspace/amplifier{ @@ -24333,7 +24808,7 @@ pixel_y = 8 }, /turf/open/floor/prison/floor_plate, -/area/fiorina/station/power_ring) +/area/fiorina/station/power_ring/reactor) "sHj" = ( /obj/structure/machinery/light/double/blue{ dir = 4; @@ -24341,7 +24816,7 @@ pixel_y = -3 }, /turf/open/floor/prison/darkpurplefull2, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "sHL" = ( /obj/effect/landmark/objective_landmark/close, /turf/open/floor/prison/greenfull/east, @@ -24379,7 +24854,7 @@ pixel_y = 13 }, /turf/open/floor/prison/kitchen, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "sIs" = ( /obj/item/weapon/gun/smg/nailgun, /obj/structure/surface/rack, @@ -24422,6 +24897,9 @@ /obj/item/stack/folding_barricade, /turf/open/floor/prison, /area/fiorina/station/security) +"sJH" = ( +/turf/open/floor/prison/whitepurple/southeast, +/area/fiorina/station/research_cells/east) "sJN" = ( /obj/structure/sign/prop3{ desc = "Enlist in the Penal Battalions today! The USCM 3rd Fleet features a subset of UA sanctioned penal battalions, drawing from inmate popualtions across the colonies. Mostly New Argentina though." @@ -24438,14 +24916,14 @@ pixel_y = 18 }, /turf/open/floor/prison/floor_plate, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "sKt" = ( /obj/structure/bed/chair{ dir = 1; layer = 2.7 }, /turf/open/floor/prison/yellowfull, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "sKu" = ( /obj/structure/stairs/perspective{ icon_state = "p_stair_ew_full_cap" @@ -24505,7 +24983,7 @@ "sNi" = ( /obj/item/device/flashlight, /turf/open/floor/prison/sterile_white/southwest, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "sNj" = ( /obj/structure/barricade/metal/wired{ dir = 8 @@ -24518,7 +24996,7 @@ "sNN" = ( /obj/structure/platform, /turf/open/floor/plating/prison, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "sNQ" = ( /obj/structure/monorail{ name = "launch track" @@ -24619,7 +25097,7 @@ "sRv" = ( /obj/item/clothing/shoes/marine/upp/knife, /turf/open/floor/prison, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "sRE" = ( /obj/structure/platform, /obj/structure/machinery/light/double/blue, @@ -24632,7 +25110,7 @@ pixel_y = 21 }, /turf/open/floor/prison/damaged2/southwest, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "sSM" = ( /obj/structure/stairs/perspective{ icon_state = "p_stair_ew_full_cap" @@ -24737,7 +25215,7 @@ "sUX" = ( /obj/effect/decal/cleanable/blood/oil, /turf/open/organic/grass/astroturf, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/basketball) "sUY" = ( /obj/effect/decal/cleanable/blood/drip, /turf/open/floor/corsat/squares, @@ -24818,14 +25296,14 @@ icon_state = "p_stair_full" }, /turf/open/floor/plating/plating_catwalk/prison, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "sXa" = ( /obj/structure/machinery/filtration/console, /turf/open/floor/prison, /area/fiorina/station/power_ring) "sXe" = ( /turf/open/floor/prison, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/east) "sXi" = ( /turf/open/floor/corsat/plate, /area/fiorina/tumor/aux_engi) @@ -24872,7 +25350,7 @@ "tad" = ( /obj/structure/machinery/light/double/blue, /turf/open/floor/prison/yellow/northwest, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "tai" = ( /obj/structure/bed/chair, /obj/structure/prop/souto_land/pole, @@ -24897,7 +25375,7 @@ "taI" = ( /obj/structure/machinery/vending/coffee, /turf/open/floor/prison/darkpurplefull2, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "taL" = ( /obj/item/clothing/under/color/orange, /turf/open/floor/prison/floor_plate, @@ -24905,7 +25383,7 @@ "taS" = ( /obj/item/stack/cable_coil, /turf/open/floor/prison/blue/northeast, -/area/fiorina/station/power_ring) +/area/fiorina/station/power_ring/reactor) "taY" = ( /obj/structure/window/framed/prison/reinforced/hull, /turf/open/space/basic, @@ -25066,7 +25544,7 @@ pixel_y = 4 }, /turf/open/floor/prison/floor_plate, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "thI" = ( /obj/structure/machinery/light/double/blue{ dir = 8; @@ -25115,10 +25593,14 @@ }, /turf/open/floor/prison/whitegreen/west, /area/fiorina/tumor/ice_lab) +"tiP" = ( +/obj/structure/barricade/wooden, +/turf/open/floor/prison/whitepurple/west, +/area/fiorina/station/research_cells/west) "tiX" = ( /obj/item/stack/sheet/mineral/plastic, /turf/open/floor/plating/prison, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "tiY" = ( /turf/open/floor/prison/floorscorched2, /area/fiorina/tumor/civres) @@ -25128,6 +25610,13 @@ "tja" = ( /turf/open/floor/prison/sterile_white/southwest, /area/fiorina/station/medbay) +"tjh" = ( +/obj/structure/sink{ + dir = 8; + pixel_x = -12 + }, +/turf/open/floor/prison/yellow/southwest, +/area/fiorina/station/lowsec/east) "tji" = ( /obj/structure/flora/pottedplant{ icon_state = "pottedplant_22"; @@ -25158,7 +25647,7 @@ pixel_y = -1 }, /turf/open/floor/prison/kitchen, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "tkd" = ( /obj/structure/filingcabinet, /obj/structure/filingcabinet{ @@ -25170,6 +25659,9 @@ /obj/structure/machinery/door/airlock/prison_hatch/autoname, /turf/open/floor/prison/floor_plate, /area/fiorina/station/park) +"tkh" = ( +/turf/open/floor/prison/yellow/southeast, +/area/fiorina/station/disco/east_disco) "tkj" = ( /turf/open/floor/prison/darkbrown2/north, /area/fiorina/station/park) @@ -25187,7 +25679,7 @@ pixel_y = -3 }, /turf/open/floor/prison/whitepurple/west, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "tle" = ( /obj/structure/filingcabinet{ pixel_x = 8; @@ -25205,7 +25697,7 @@ dir = 4 }, /turf/open/floor/prison/bluecorner, -/area/fiorina/station/power_ring) +/area/fiorina/station/power_ring/reactor) "tlq" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/device/flashlight/lamp{ @@ -25425,7 +25917,7 @@ }, /obj/item/storage/fancy/cigarettes/blackpack, /turf/open/floor/prison/whitepurple/southeast, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "trS" = ( /obj/structure/barricade/wooden{ dir = 8 @@ -25543,7 +26035,7 @@ pixel_y = 21 }, /turf/open/floor/prison/darkredfull2, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "txh" = ( /obj/structure/bed/sofa/vert/grey, /turf/open/floor/prison, @@ -25585,13 +26077,13 @@ pixel_y = 29 }, /turf/open/floor/plating/prison, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "tzM" = ( /obj/structure/platform_decoration{ dir = 8 }, /turf/open/floor/prison, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "tzN" = ( /obj/structure/platform/kutjevo/smooth{ dir = 4 @@ -25626,7 +26118,7 @@ "tAE" = ( /obj/structure/barricade/handrail, /turf/open/floor/prison/whitepurple/north, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/east) "tAR" = ( /obj/structure/surface/rack, /obj/item/tool/extinguisher, @@ -25642,7 +26134,7 @@ dir = 1 }, /turf/open/floor/interior/plastic, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/east) "tCv" = ( /obj/effect/landmark/corpsespawner/ua_riot/burst, /turf/open/floor/prison/greenfull/east, @@ -25706,6 +26198,9 @@ }, /turf/open/floor/plating/prison, /area/fiorina/station/transit_hub) +"tEU" = ( +/turf/open/floor/prison/bluefull, +/area/fiorina/station/power_ring/reactor) "tEX" = ( /obj/structure/machinery/vending/cigarette, /turf/open/floor/prison/floor_plate, @@ -25758,7 +26253,7 @@ "tHl" = ( /obj/structure/inflatable, /turf/open/floor/plating/prison, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "tHw" = ( /obj/item/stack/rods, /turf/open/floor/prison/darkbrown2/east, @@ -25909,6 +26404,12 @@ /obj/structure/closet/firecloset/full, /turf/open/floor/prison/floor_plate, /area/fiorina/station/medbay) +"tMW" = ( +/obj/structure/bed/chair{ + dir = 1 + }, +/turf/open/floor/prison/blue/southeast, +/area/fiorina/station/power_ring/reactor) "tNf" = ( /obj/structure/stairs/perspective{ dir = 1; @@ -25933,11 +26434,11 @@ /area/fiorina/station/park) "tOc" = ( /turf/open/floor/wood, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "tOp" = ( /obj/structure/window/framed/prison/cell, /turf/open/floor/plating/prison, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "tOG" = ( /obj/structure/surface/table/woodentable, /obj/item/storage/pill_bottle/kelotane/skillless, @@ -25974,7 +26475,7 @@ /area/fiorina/station/telecomm/lz1_cargo) "tPB" = ( /turf/open/floor/prison/whitepurple/southeast, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "tPC" = ( /turf/open/floor/prison/darkyellowcorners2, /area/fiorina/station/flight_deck) @@ -26003,7 +26504,7 @@ /obj/structure/surface/table/reinforced/prison, /obj/item/stack/sheet/mineral/plastic, /turf/open/floor/prison/yellowfull, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "tSm" = ( /turf/open/floor/prison/greenblue/west, /area/fiorina/station/botany) @@ -26030,7 +26531,7 @@ pixel_y = 12 }, /turf/open/floor/prison/yellowfull, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "tTv" = ( /obj/item/stack/sandbags/large_stack, /turf/open/floor/prison/darkyellow2/west, @@ -26079,15 +26580,15 @@ "tVI" = ( /obj/structure/inflatable/popped/door, /turf/open/floor/prison/sterile_white/southwest, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "tVV" = ( /obj/effect/landmark/corpsespawner/ua_riot, /turf/open/floor/plating/prison, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "tVY" = ( /obj/structure/machinery/power/smes/buildable, /turf/open/floor/prison, -/area/fiorina/station/power_ring) +/area/fiorina/station/power_ring/reactor) "tWf" = ( /obj/structure/inflatable/popped, /turf/open/floor/plating/plating_catwalk/prison, @@ -26099,12 +26600,12 @@ "tWs" = ( /obj/item/toy/deck, /turf/open/floor/prison/darkpurplefull2, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "tWz" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/tool/pen/blue/clicky, /turf/open/floor/prison/floor_plate, -/area/fiorina/station/power_ring) +/area/fiorina/station/power_ring/reactor) "tWI" = ( /obj/structure/platform/kutjevo/smooth, /obj/structure/platform/kutjevo/smooth{ @@ -26170,7 +26671,7 @@ icon_state = "pottedplant_22" }, /turf/open/floor/prison/yellowfull, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "tZk" = ( /turf/open/floor/prison/greenfull/northwest, /area/fiorina/tumor/aux_engi) @@ -26212,12 +26713,15 @@ pixel_y = 21 }, /turf/open/floor/prison/kitchen, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "ubo" = ( /obj/item/stack/sheet/metal/medium_stack, /obj/structure/surface/rack, /turf/open/floor/prison/floor_plate, -/area/fiorina/station/power_ring) +/area/fiorina/station/power_ring/reactor) +"ubx" = ( +/turf/open/floor/plating/prison, +/area/fiorina/station/disco/east_disco) "ubA" = ( /obj/structure/surface/table/reinforced/prison, /obj/structure/machinery/computer/emails{ @@ -26241,7 +26745,7 @@ }, /obj/structure/blocker/invisible_wall, /turf/open/ice/noweed, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/basketball) "ubX" = ( /turf/open/floor/prison/whitegreen/northeast, /area/fiorina/tumor/ice_lab) @@ -26329,7 +26833,7 @@ "ufE" = ( /obj/effect/decal/cleanable/blood/drip, /turf/open/floor/prison, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "ufL" = ( /obj/structure/stairs/perspective{ icon_state = "p_stair_sn_full_cap" @@ -26346,14 +26850,14 @@ /area/fiorina/tumor/aux_engi) "ufR" = ( /turf/open/floor/prison/whitepurplecorner/east, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "ugg" = ( /obj/structure/closet/crate/miningcar{ name = "\improper materials storage bin" }, /obj/item/reagent_container/food/snacks/meat, /turf/open/floor/prison, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "ugk" = ( /turf/open/floor/prison/darkbrowncorners2, /area/fiorina/tumor/aux_engi) @@ -26405,11 +26909,11 @@ "uhm" = ( /obj/structure/window_frame/prison/reinforced, /turf/open/floor/plating/prison, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "uhA" = ( /obj/structure/closet/bodybag, /turf/open/floor/prison/sterile_white/southwest, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/east) "uhX" = ( /obj/structure/largecrate/random/case/double, /turf/open/floor/prison/whitegreen/northeast, @@ -26452,7 +26956,7 @@ name = "ice shard" }, /turf/open/organic/grass/astroturf, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/basketball) "ujz" = ( /obj/item/paper/prison_station/inmate_handbook, /turf/open/floor/prison/floor_plate/southwest, @@ -26480,7 +26984,11 @@ "ulc" = ( /obj/item/paper, /turf/open/floor/prison/whitepurple/west, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) +"ulN" = ( +/obj/structure/machinery/light/double/blue, +/turf/open/floor/prison/floor_plate, +/area/fiorina/station/power_ring/reactor) "ume" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/reagent_container/food/drinks/coffee{ @@ -26500,6 +27008,12 @@ "umm" = ( /turf/open/floor/prison/yellow/north, /area/fiorina/station/central_ring) +"umu" = ( +/obj/structure/machinery/door/airlock/multi_tile/almayer/generic{ + icon = 'icons/obj/structures/doors/2x1prepdoor.dmi' + }, +/turf/open/floor/plating/prison, +/area/fiorina/station/lowsec/east) "umy" = ( /obj/structure/prop/resin_prop{ dir = 4; @@ -26516,6 +27030,9 @@ /obj/item/clothing/gloves/boxing/blue, /turf/open/floor/prison/yellow/northwest, /area/fiorina/station/central_ring) +"umN" = ( +/turf/closed/wall/prison, +/area/fiorina/station/lowsec/east) "umW" = ( /obj/structure/bed/sofa/pews, /turf/open/floor/wood, @@ -26568,7 +27085,15 @@ }, /obj/item/storage/toolbox/syndicate, /turf/open/floor/prison, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) +"uow" = ( +/obj/structure/machinery/light/double/blue{ + dir = 8; + pixel_x = -10; + pixel_y = -3 + }, +/turf/open/floor/prison/floor_plate, +/area/fiorina/station/power_ring/reactor) "uoH" = ( /obj/structure/barricade/sandbags{ dir = 4; @@ -26577,7 +27102,7 @@ }, /obj/item/storage/pouch/tools/full, /turf/open/floor/prison/yellow/southwest, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "upf" = ( /obj/structure/closet/toolcloset, /turf/open/floor/prison/darkbrown2/west, @@ -26602,7 +27127,7 @@ "upM" = ( /obj/structure/disposalpipe/broken, /turf/open/floor/plating/prison, -/area/fiorina/station/power_ring) +/area/fiorina/station/power_ring/reactor) "upX" = ( /obj/structure/sign/nosmoking_1, /turf/closed/wall/prison, @@ -26627,11 +27152,15 @@ "uqV" = ( /obj/structure/inflatable, /turf/open/floor/prison/whitepurple/north, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "urv" = ( /obj/item/device/flashlight/lamp/tripod, /turf/open/floor/prison, /area/fiorina/station/flight_deck) +"urw" = ( +/obj/structure/machinery/power/apc/power/north, +/turf/open/floor/prison/whitepurple/north, +/area/fiorina/station/research_cells/east) "urJ" = ( /obj/structure/platform/kutjevo/smooth, /turf/open/floor/almayer_hull, @@ -26651,7 +27180,7 @@ dir = 4 }, /turf/open/floor/prison/darkredfull2, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "utL" = ( /obj/structure/bed/chair, /turf/open/floor/prison/darkbrown2/north, @@ -26663,7 +27192,7 @@ "uud" = ( /obj/structure/bed/chair/office/dark, /turf/open/floor/prison, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "uuk" = ( /obj/item/reagent_container/food/drinks/cans/waterbottle, /turf/open/floor/prison/floor_plate, @@ -26675,7 +27204,7 @@ }, /obj/structure/machinery/light/double/blue, /turf/open/floor/prison/yellowfull, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "uuJ" = ( /obj/structure/holohoop{ dir = 8; @@ -26686,7 +27215,7 @@ dir = 4 }, /turf/open/organic/grass/astroturf, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/basketball) "uuL" = ( /obj/structure/machinery/door/poddoor/shutters/almayer{ density = 0; @@ -26742,7 +27271,7 @@ "uwk" = ( /obj/structure/window/framed/prison/reinforced/hull, /turf/open/floor/plating/prison, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "uws" = ( /obj/structure/stairs/perspective{ icon_state = "p_stair_ew_full_cap" @@ -26791,7 +27320,7 @@ dir = 4 }, /turf/open/floor/prison/kitchen, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "uyM" = ( /obj/effect/decal/cleanable/blood/oil, /turf/open/floor/plating/prison, @@ -26854,6 +27383,13 @@ }, /turf/open/floor/prison/bluefull, /area/fiorina/station/power_ring) +"uBX" = ( +/obj/structure/machinery/light/double/blue{ + dir = 1; + pixel_y = 21 + }, +/turf/open/floor/prison/darkpurplefull2, +/area/fiorina/station/research_cells/west) "uCO" = ( /obj/structure/bed/chair/comfy{ dir = 4 @@ -26868,6 +27404,10 @@ /obj/structure/platform, /turf/open/floor/plating/prison, /area/fiorina/station/park) +"uDF" = ( +/obj/structure/window/framed/prison/reinforced/hull, +/turf/open/floor/plating/prison, +/area/fiorina/station/disco/east_disco) "uDX" = ( /obj/structure/prop/structure_lattice{ health = 300 @@ -26953,7 +27493,7 @@ name = "Insta-Sand! bag" }, /turf/open/floor/prison/yellow/northeast, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "uGT" = ( /obj/structure/window/framed/prison/reinforced/hull, /turf/open/floor/plating/prison, @@ -27009,7 +27549,7 @@ "uJp" = ( /obj/structure/inflatable, /turf/open/floor/prison/yellow/northwest, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "uJG" = ( /obj/item/ammo_casing{ icon_state = "casing_10_1" @@ -27041,7 +27581,7 @@ /obj/structure/bed/roller, /obj/item/bedsheet/green, /turf/open/floor/prison/whitepurple/north, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "uKX" = ( /turf/open/floor/prison/redfull, /area/fiorina/station/security/wardens) @@ -27052,7 +27592,7 @@ "uLj" = ( /obj/effect/decal/cleanable/blood/gibs/robot/limb, /turf/open/floor/prison/whitepurple/northeast, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/east) "uLq" = ( /obj/structure/machinery/light/double/blue, /turf/open/floor/prison/cell_stripe/east, @@ -27080,7 +27620,7 @@ "uLV" = ( /obj/item/bedsheet, /turf/open/floor/prison/kitchen, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "uMc" = ( /obj/structure/largecrate/random/barrel/white, /turf/open/floor/prison, @@ -27271,6 +27811,13 @@ }, /turf/open/floor/prison/darkyellow2/southwest, /area/fiorina/station/telecomm/lz1_cargo) +"uTq" = ( +/obj/structure/sink{ + dir = 8; + pixel_x = -12 + }, +/turf/open/floor/prison/whitepurple/southwest, +/area/fiorina/station/research_cells/east) "uTr" = ( /obj/effect/landmark/structure_spawner/xvx_hive/xeno_nest, /turf/open/floor/prison/whitegreen/west, @@ -27283,10 +27830,14 @@ /obj/item/device/flashlight/flare, /turf/open/floor/prison/darkyellowcorners2/north, /area/fiorina/station/telecomm/lz1_cargo) +"uTv" = ( +/obj/structure/window/framed/prison/reinforced/hull, +/turf/open/floor/plating/prison, +/area/fiorina/station/lowsec/east) "uTw" = ( /obj/item/weapon/gun/rifle/mar40, /turf/open/floor/prison/bluefull, -/area/fiorina/station/power_ring) +/area/fiorina/station/power_ring/reactor) "uTA" = ( /obj/structure/bed/chair{ dir = 8 @@ -27485,7 +28036,7 @@ "vao" = ( /obj/structure/machinery/light/double/blue, /turf/open/floor/prison, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "vaC" = ( /obj/structure/closet/bombcloset, /obj/item/clothing/suit/armor/bulletproof, @@ -27507,6 +28058,14 @@ /obj/effect/spawner/random/toolbox, /turf/open/floor/prison/floor_plate, /area/fiorina/station/medbay) +"vcn" = ( +/obj/structure/machinery/light/double/blue{ + dir = 4; + pixel_x = 10; + pixel_y = -3 + }, +/turf/open/floor/prison/floor_plate, +/area/fiorina/station/power_ring/reactor) "vcq" = ( /obj/effect/decal/cleanable/blood/xeno, /turf/open/floor/prison/blue_plate/west, @@ -27520,7 +28079,7 @@ "vcv" = ( /obj/item/tool/screwdriver, /turf/open/floor/prison/yellowfull, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "vcC" = ( /obj/item/stack/rods, /turf/open/space, @@ -27619,7 +28178,7 @@ /area/fiorina/station/power_ring) "vfO" = ( /turf/open/floor/prison/floor_marked/west, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "vgi" = ( /obj/item/stack/rods, /turf/open/floor/prison/floor_plate, @@ -27635,6 +28194,10 @@ }, /turf/open/floor/prison/darkyellow2/northwest, /area/fiorina/lz/near_lzI) +"vgG" = ( +/obj/structure/machinery/power/apc/power/west, +/turf/open/floor/plating/prison, +/area/fiorina/station/disco) "vgL" = ( /obj/structure/closet/secure_closet/guncabinet{ req_access = null @@ -27660,7 +28223,7 @@ }, /obj/structure/platform, /turf/open/floor/plating/prison, -/area/fiorina/station/power_ring) +/area/fiorina/station/power_ring/reactor) "vhy" = ( /obj/item/reagent_container/food/drinks/cans/waterbottle, /turf/open/floor/prison/floor_plate/southwest, @@ -27713,7 +28276,7 @@ "vjR" = ( /obj/structure/disposalpipe/segment, /turf/open/floor/plating/prison, -/area/fiorina/station/power_ring) +/area/fiorina/station/power_ring/reactor) "vjT" = ( /obj/effect/alien/weeds/node, /turf/open/floor/plating/prison, @@ -27840,7 +28403,7 @@ "voh" = ( /obj/item/tool/warning_cone, /turf/open/floor/prison/yellowfull, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "voi" = ( /turf/open/floor/prison/darkbrownfull2, /area/fiorina/station/park) @@ -27860,7 +28423,7 @@ "voI" = ( /obj/item/tool/wrench, /turf/open/floor/prison/bluefull, -/area/fiorina/station/power_ring) +/area/fiorina/station/power_ring/reactor) "voK" = ( /obj/structure/stairs/perspective{ icon_state = "p_stair_sn_full_cap" @@ -27904,18 +28467,18 @@ "vqs" = ( /obj/item/paper/prison_station/inmate_handbook, /turf/open/floor/prison/darkredfull2, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "vqW" = ( /obj/item/stack/sheet/cardboard, /turf/open/floor/prison/whitepurple/west, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "vrp" = ( /obj/structure/ice/thin/indestructible{ icon_state = "Corner" }, /obj/structure/blocker/invisible_wall, /turf/open/ice/noweed, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/basketball) "vrA" = ( /obj/structure/machinery/landinglight/ds1/delaythree{ dir = 8 @@ -27930,7 +28493,7 @@ /obj/item/stack/sheet/metal, /obj/item/stack/sheet/metal, /turf/open/floor/prison/sterile_white/southwest, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/east) "vrO" = ( /obj/structure/closet/secure_closet/engineering_materials, /turf/open/floor/prison/darkbrownfull2, @@ -27956,7 +28519,7 @@ "vsr" = ( /obj/structure/barricade/handrail, /turf/open/floor/prison/whitepurple/northwest, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/east) "vsL" = ( /obj/structure/prop/dam/crane, /turf/open/floor/prison/floor_marked/west, @@ -27967,7 +28530,7 @@ }, /obj/item/ammo_magazine/smg/mp5, /turf/open/floor/prison/whitepurple/north, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "vsT" = ( /obj/structure/cable/heavyduty{ icon_state = "1-8" @@ -28034,7 +28597,7 @@ dir = 8 }, /turf/open/floor/prison/bright_clean2/southwest, -/area/fiorina/station/power_ring) +/area/fiorina/station/power_ring/reactor) "vuV" = ( /obj/structure/stairs/perspective{ dir = 1; @@ -28105,7 +28668,7 @@ dir = 8 }, /turf/open/floor/prison/whitepurple, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/east) "vxm" = ( /obj/structure/platform{ dir = 4 @@ -28153,6 +28716,9 @@ }, /turf/open/floor/prison/darkyellow2/east, /area/fiorina/station/telecomm/lz1_cargo) +"vza" = ( +/turf/open/floor/prison/yellow/southeast, +/area/fiorina/station/lowsec/showers_laundry) "vzh" = ( /obj/structure/foamed_metal, /turf/open/floor/plating/prison, @@ -28200,7 +28766,7 @@ }, /obj/structure/barricade/wooden, /turf/open/floor/prison/sterile_white/southwest, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "vAX" = ( /turf/open/floor/prison/blue_plate/west, /area/fiorina/station/botany) @@ -28209,7 +28775,7 @@ dir = 4 }, /turf/open/floor/prison/kitchen, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "vBF" = ( /obj/structure/machinery/light/double/blue{ dir = 8; @@ -28351,11 +28917,15 @@ "vFV" = ( /obj/structure/inflatable, /turf/open/floor/prison/yellow/southwest, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "vFY" = ( /obj/item/reagent_container/glass/bucket, /turf/open/floor/plating/prison, /area/fiorina/tumor/fiberbush) +"vGf" = ( +/obj/structure/largecrate/random/barrel/white, +/turf/open/floor/prison, +/area/fiorina/station/power_ring/reactor) "vGM" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/paper_bin{ @@ -28401,7 +28971,7 @@ "vJh" = ( /obj/effect/spawner/random/sentry/midchance, /turf/open/floor/plating/prison, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/east) "vJn" = ( /obj/structure/platform{ dir = 4 @@ -28499,7 +29069,7 @@ pixel_y = 13 }, /turf/open/floor/plating/prison, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "vOm" = ( /turf/open/floor/prison/cell_stripe/west, /area/fiorina/station/botany) @@ -28568,7 +29138,7 @@ "vRk" = ( /obj/structure/machinery/recharge_station, /turf/open/floor/prison/blue/northwest, -/area/fiorina/station/power_ring) +/area/fiorina/station/power_ring/reactor) "vRu" = ( /obj/structure/sink{ dir = 4; @@ -28579,7 +29149,7 @@ /area/fiorina/oob) "vRA" = ( /turf/open/floor/plating/prison, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "vRF" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/pamphlet/skill/powerloader, @@ -28654,7 +29224,7 @@ pixel_y = 21 }, /turf/open/floor/prison/yellowfull, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "vUv" = ( /obj/structure/surface/table/reinforced/prison, /obj/structure/window/reinforced, @@ -28667,7 +29237,7 @@ /area/fiorina/tumor/civres) "vUP" = ( /turf/open/floor/prison/darkpurplefull2, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "vUZ" = ( /obj/structure/platform{ dir = 1 @@ -28725,6 +29295,16 @@ /obj/structure/window/framed/prison/reinforced/hull, /turf/open/floor/plating/prison, /area/fiorina/station/security/wardens) +"vYp" = ( +/obj/structure/stairs/perspective{ + dir = 4; + icon_state = "p_stair_sn_full_cap" + }, +/obj/structure/platform{ + dir = 4 + }, +/turf/open/floor/plating/prison, +/area/fiorina/station/power_ring/reactor) "vYw" = ( /obj/structure/girder/reinforced, /turf/open/floor/almayer/plate, @@ -28732,7 +29312,7 @@ "vYX" = ( /obj/item/roller, /turf/open/floor/prison, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "vYY" = ( /obj/structure/flora/pottedplant{ icon_state = "pottedplant_29"; @@ -28744,7 +29324,7 @@ "vZe" = ( /obj/structure/closet/emcloset, /turf/open/floor/prison/bluecorner, -/area/fiorina/station/power_ring) +/area/fiorina/station/power_ring/reactor) "vZs" = ( /obj/item/device/flashlight/lamp/tripod, /turf/open/floor/prison/floor_plate, @@ -28756,7 +29336,7 @@ "vZL" = ( /obj/effect/decal/cleanable/blood/oil, /turf/open/floor/prison, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "vZV" = ( /turf/closed/wall/strata_ice/jungle{ desc = "It is made of Fiberbush(tm). It contains asbestos."; @@ -28769,7 +29349,10 @@ "wam" = ( /obj/item/stack/medical/bruise_pack, /turf/open/floor/prison, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) +"wat" = ( +/turf/open/floor/prison/yellow/west, +/area/fiorina/station/lowsec/showers_laundry) "waN" = ( /obj/structure/platform{ dir = 1 @@ -28833,7 +29416,7 @@ "wbW" = ( /obj/item/reagent_container/food/snacks/meat, /turf/open/floor/prison, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "wcB" = ( /obj/structure/surface/table/reinforced/prison, /obj/effect/spawner/random/gun/pistol/midchance, @@ -28844,7 +29427,7 @@ /obj/item/storage/pill_bottle/bicaridine/skillless, /obj/effect/landmark/objective_landmark/science, /turf/open/floor/prison/darkpurplefull2, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "wcP" = ( /obj/effect/landmark/queen_spawn, /turf/open/floor/plating/prison, @@ -28862,20 +29445,20 @@ "wdo" = ( /obj/structure/closet, /turf/open/floor/prison/bluecorner/east, -/area/fiorina/station/power_ring) +/area/fiorina/station/power_ring/reactor) "wdL" = ( /obj/structure/barricade/wooden{ dir = 8 }, /turf/open/floor/prison/whitepurple/north, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "wdU" = ( /obj/structure/foamed_metal, /turf/open/floor/prison/floor_plate, /area/fiorina/station/civres_blue) "wef" = ( /turf/open/floor/plating/prison, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "wet" = ( /obj/item/stack/sandbags/large_stack, /turf/open/floor/prison/darkyellow2/north, @@ -29017,7 +29600,7 @@ "wjH" = ( /obj/item/stack/barbed_wire, /turf/open/floor/plating/prison, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "wjO" = ( /obj/structure/bed/chair, /obj/effect/decal/cleanable/blood, @@ -29056,7 +29639,7 @@ "wlv" = ( /obj/item/trash/barcardine, /turf/open/floor/prison/whitepurple/north, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "wly" = ( /turf/closed/wall/r_wall/prison_unmeltable, /area/fiorina/lz/near_lzII) @@ -29164,7 +29747,7 @@ dir = 1 }, /turf/open/floor/plating/prison, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "wpW" = ( /obj/structure/sign/kiddieplaque{ desc = "It is a warning sign that describes the process by which fiberbush expands in humid environments, behaving similar to kudzu vines."; @@ -29177,7 +29760,7 @@ /obj/structure/surface/table/reinforced/prison, /obj/item/poster, /turf/open/floor/prison/darkpurplefull2, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "wqz" = ( /obj/structure/closet{ density = 0; @@ -29185,14 +29768,14 @@ }, /obj/item/clothing/gloves/combat, /turf/open/floor/prison/whitepurple/northwest, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "wqY" = ( /obj/effect/decal/warning_stripes{ icon_state = "N"; pixel_y = 1 }, /turf/open/floor/prison/sterile_white/southwest, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/east) "wrR" = ( /turf/closed/wall/prison, /area/fiorina/station/botany) @@ -29205,7 +29788,7 @@ "wsw" = ( /obj/effect/spawner/random/tool, /turf/open/floor/prison/darkpurplefull2, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/east) "wsz" = ( /turf/open/floor/prison/darkbrown2/west, /area/fiorina/tumor/aux_engi) @@ -29319,7 +29902,7 @@ "wxW" = ( /obj/structure/prop/almayer/computers/mapping_computer, /turf/open/floor/prison/darkredfull2, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "wxX" = ( /obj/structure/machinery/computer/cameras{ dir = 8; @@ -29374,7 +29957,7 @@ "wyQ" = ( /obj/structure/largecrate/supply/supplies/mre, /turf/open/floor/prison/yellowfull, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "wyT" = ( /obj/structure/window/framed/prison/reinforced/hull, /turf/open/floor/plating/prison, @@ -29382,7 +29965,7 @@ "wyU" = ( /obj/effect/decal/cleanable/blood/gibs/robot/up, /turf/open/organic/grass/astroturf, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/basketball) "wzd" = ( /obj/structure/stairs/perspective{ dir = 10; @@ -29539,7 +30122,7 @@ pixel_y = 13 }, /turf/open/floor/prison/floor_plate, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "wFM" = ( /obj/structure/machinery/power/apc/power/west, /turf/open/floor/prison/floor_plate/southwest, @@ -29602,6 +30185,12 @@ }, /turf/open/floor/prison/red/west, /area/fiorina/station/security) +"wHu" = ( +/obj/structure/machinery/door/airlock/prison_hatch/autoname{ + dir = 1 + }, +/turf/open/floor/plating/prison, +/area/fiorina/station/lowsec/showers_laundry) "wHw" = ( /obj/structure/machinery/door/airlock/prison_hatch/autoname, /turf/open/floor/plating/prison, @@ -29613,6 +30202,9 @@ /obj/item/clothing/gloves/botanic_leather, /turf/open/floor/prison/floor_plate, /area/fiorina/station/botany) +"wHV" = ( +/turf/open/floor/plating/prison, +/area/fiorina/station/research_cells/east) "wId" = ( /obj/structure/reagent_dispensers/fueltank, /turf/open/floor/plating/prison, @@ -29668,7 +30260,7 @@ "wJd" = ( /obj/structure/barricade/handrail, /turf/open/organic/grass/astroturf, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/basketball) "wJw" = ( /obj/structure/closet/crate/trashcart, /obj/item/weapon/gun/rifle/m16, @@ -29682,6 +30274,9 @@ /obj/effect/spawner/random/gun/rifle/midchance, /turf/open/floor/wood, /area/fiorina/station/park) +"wKi" = ( +/turf/open/floor/prison/yellow/north, +/area/fiorina/station/lowsec/east) "wKl" = ( /obj/structure/bed/sofa/south/grey/right, /turf/open/floor/prison/floor_plate, @@ -29803,7 +30398,7 @@ "wOG" = ( /obj/structure/largecrate/random, /turf/open/floor/prison/floor_plate/southwest, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "wPz" = ( /turf/closed/shuttle/elevator, /area/fiorina/station/telecomm/lz1_cargo) @@ -29915,7 +30510,7 @@ }, /obj/effect/landmark/objective_landmark/science, /turf/open/floor/prison/darkredfull2, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "wSD" = ( /obj/item/reagent_container/food/drinks/cans/waterbottle, /turf/open/floor/prison, @@ -29924,7 +30519,7 @@ /obj/structure/surface/table/reinforced/prison, /obj/item/storage/firstaid/regular, /turf/open/floor/prison/darkredfull2, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "wSU" = ( /turf/open/floor/prison/floor_plate, /area/fiorina/station/transit_hub) @@ -29945,7 +30540,7 @@ "wUz" = ( /obj/item/frame/toolbox_tiles, /turf/open/floor/prison/whitepurple/northwest, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "wVc" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/reagent_container/food/drinks/coffee{ @@ -29954,6 +30549,9 @@ }, /turf/open/floor/prison/floor_plate, /area/fiorina/tumor/fiberbush) +"wWm" = ( +/turf/open/floor/prison/yellowcorner/north, +/area/fiorina/station/lowsec/east) "wWs" = ( /turf/open/floor/greengrid, /area/fiorina/station/security) @@ -29994,7 +30592,7 @@ pixel_y = -3 }, /turf/open/floor/prison/floor_plate, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "wYq" = ( /obj/structure/surface/table/reinforced/prison, /obj/structure/machinery/chem_dispenser/soda, @@ -30009,10 +30607,10 @@ /obj/structure/surface/rack, /obj/item/tank/emergency_oxygen/engi, /turf/open/floor/prison/blue/southeast, -/area/fiorina/station/power_ring) +/area/fiorina/station/power_ring/reactor) "wZt" = ( /turf/open/floor/prison/floor_marked/west, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "wZv" = ( /obj/item/stack/sheet/metal, /turf/open/floor/wood, @@ -30060,7 +30658,7 @@ pixel_y = 2 }, /turf/open/floor/prison/yellow/northeast, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "xbp" = ( /obj/item/card/id/silver/clearance_badge/cl{ desc = "Wow sorry, didn't mean to drop that in front of you, it's real, btw."; @@ -30085,6 +30683,9 @@ /obj/structure/largecrate/random/case/small, /turf/open/floor/plating/plating_catwalk/prison, /area/fiorina/station/park) +"xct" = ( +/turf/open/floor/prison/blue/north, +/area/fiorina/station/power_ring/reactor) "xcz" = ( /obj/structure/closet/secure_closet/engineering_personal, /obj/structure/machinery/light/double/blue{ @@ -30093,7 +30694,7 @@ }, /obj/effect/landmark/objective_landmark/medium, /turf/open/floor/prison/floor_plate, -/area/fiorina/station/power_ring) +/area/fiorina/station/power_ring/reactor) "xcS" = ( /obj/structure/platform{ dir = 8 @@ -30109,7 +30710,7 @@ /obj/structure/closet/bodybag, /obj/effect/decal/cleanable/blood/gibs/body, /turf/open/floor/prison, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "xdt" = ( /obj/structure/platform/kutjevo/smooth{ dir = 4 @@ -30138,7 +30739,7 @@ pixel_y = -3 }, /turf/open/floor/prison/floor_plate, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "xei" = ( /obj/item/device/flashlight/lamp/tripod, /turf/open/organic/grass/astroturf, @@ -30146,7 +30747,7 @@ "xel" = ( /obj/effect/landmark/survivor_spawner, /turf/open/floor/prison/floor_plate, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "xew" = ( /turf/closed/shuttle/ert{ icon_state = "stan_leftengine" @@ -30193,7 +30794,7 @@ pixel_y = 21 }, /turf/open/floor/prison/yellow/northwest, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "xgF" = ( /obj/structure/machinery/light/double/blue, /turf/open/floor/plating/prison, @@ -30201,7 +30802,7 @@ "xgH" = ( /obj/item/toy/handcard/uno_reverse_blue, /turf/open/floor/prison/darkpurplefull2, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "xgU" = ( /obj/item/circuitboard/machine/rdserver, /turf/open/floor/prison/floorscorched1, @@ -30235,6 +30836,9 @@ /obj/structure/machinery/vending/cigarette/free, /turf/open/floor/prison/darkbrownfull2, /area/fiorina/tumor/aux_engi) +"xiZ" = ( +/turf/open/floor/prison/yellowcorner/west, +/area/fiorina/station/lowsec/east) "xja" = ( /obj/structure/machinery/door/airlock/almayer/maint/colony/autoname{ req_one_access = null @@ -30282,12 +30886,16 @@ dir = 8 }, /turf/open/floor/wood, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "xlx" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/reagent_container/food/snacks/tomatosoup, /turf/open/floor/prison/blue, /area/fiorina/station/power_ring) +"xlC" = ( +/obj/item/device/flashlight/lamp/tripod, +/turf/open/floor/prison/floor_plate, +/area/fiorina/station/power_ring/reactor) "xlZ" = ( /obj/structure/surface/table/woodentable, /obj/item/storage/box/pillbottles, @@ -30326,7 +30934,7 @@ }, /obj/item/clothing/gloves/combat, /turf/open/floor/prison/whitepurple/north, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "xnU" = ( /obj/structure/machinery/camera/autoname/lz_camera, /turf/open/floor/plating/prison, @@ -30364,6 +30972,13 @@ /obj/item/storage/belt/marine, /turf/open/floor/prison, /area/fiorina/station/security) +"xpy" = ( +/obj/structure/toilet{ + dir = 8; + pixel_y = 8 + }, +/turf/open/floor/prison/yellow/northeast, +/area/fiorina/station/lowsec/east) "xpM" = ( /obj/structure/platform, /turf/open/floor/prison/floor_plate, @@ -30374,6 +30989,10 @@ }, /turf/open/floor/prison/darkbrownfull2, /area/fiorina/tumor/aux_engi) +"xqi" = ( +/obj/item/tool/wrench, +/turf/open/floor/prison/floor_plate, +/area/fiorina/station/power_ring/reactor) "xqP" = ( /obj/structure/surface/rack, /obj/item/tool/plantspray/weeds, @@ -30495,6 +31114,9 @@ /obj/item/trash/eat, /turf/open/floor/plating/prison, /area/fiorina/tumor/ice_lab) +"xwm" = ( +/turf/open/floor/prison, +/area/fiorina/station/power_ring/reactor) "xwo" = ( /obj/structure/surface/rack, /obj/item/storage/box/sprays, @@ -30507,6 +31129,9 @@ "xwC" = ( /turf/closed/wall/mineral/bone_resin, /area/fiorina/tumor/fiberbush) +"xxg" = ( +/turf/closed/wall/r_wall/prison_unmeltable, +/area/fiorina/station/lowsec/east) "xxD" = ( /turf/open/floor/wood, /area/fiorina/station/civres_blue) @@ -30554,6 +31179,9 @@ }, /turf/open/space, /area/fiorina/oob) +"xAn" = ( +/turf/open/floor/prison/floor_plate, +/area/fiorina/station/lowsec/showers_laundry) "xAo" = ( /obj/item/trash/cigbutt/bcigbutt, /obj/item/device/flashlight/lamp/tripod, @@ -30562,7 +31190,7 @@ "xAq" = ( /obj/effect/spawner/random/tool, /turf/open/floor/prison/sterile_white/southwest, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "xAs" = ( /obj/item/device/reagent_scanner, /turf/open/organic/grass/astroturf, @@ -30578,7 +31206,7 @@ "xBc" = ( /obj/structure/barricade/wooden, /turf/open/floor/prison/whitepurple, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "xBl" = ( /obj/structure/surface/table/woodentable, /obj/item/circuitboard/apc, @@ -30600,6 +31228,9 @@ /obj/effect/spawner/random/tool, /turf/open/floor/prison, /area/fiorina/station/power_ring) +"xBF" = ( +/turf/open/floor/prison/yellow/northwest, +/area/fiorina/station/lowsec/east) "xBN" = ( /obj/item/prop/helmetgarb/spacejam_tickets{ desc = "Low security prisoners would smuggle in arcade tickets after visitations. The tickets act as a stand in for paper currency in the prison economy, they're backed by the cigarette standard, since one ticket nets one cigarette at the prize booth. The cigarettes also get smuggled back in."; @@ -30608,7 +31239,7 @@ pixel_y = -1 }, /turf/open/floor/prison/darkpurplefull2, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "xCa" = ( /obj/item/toy/crayon/rainbow, /turf/open/floor/plating/prison, @@ -30616,13 +31247,13 @@ "xCg" = ( /obj/item/stack/sheet/metal, /turf/open/floor/prison/sterile_white/southwest, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/east) "xCh" = ( /obj/structure/bed/chair{ dir = 8 }, /turf/open/floor/prison/sterile_white/southwest, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/east) "xCp" = ( /obj/structure/inflatable/popped, /turf/open/floor/prison/whitegreen, @@ -30637,6 +31268,10 @@ }, /turf/open/floor/prison, /area/fiorina/station/medbay) +"xCR" = ( +/obj/structure/machinery/light/double/blue, +/turf/open/floor/prison/whitepurple, +/area/fiorina/station/research_cells/east) "xCV" = ( /obj/item/reagent_container/food/drinks/bottle/orangejuice, /turf/open/floor/prison, @@ -30689,7 +31324,7 @@ "xFJ" = ( /obj/item/tool/soap, /turf/open/floor/prison/kitchen, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "xFL" = ( /obj/effect/decal{ icon = 'icons/obj/items/policetape.dmi'; @@ -30714,7 +31349,7 @@ icon_state = "ucigoff" }, /turf/open/floor/prison/darkredfull2, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "xGi" = ( /obj/structure/flora/pottedplant{ icon_state = "pottedplant_22" @@ -30768,7 +31403,7 @@ "xJn" = ( /obj/structure/surface/table/reinforced/prison, /turf/open/floor/prison/darkredfull2, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "xJw" = ( /turf/closed/wall/r_wall/prison_unmeltable, /area/fiorina/station/civres_blue) @@ -30805,11 +31440,11 @@ pixel_y = 8 }, /turf/open/floor/prison/darkredfull2, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/east) "xKP" = ( /obj/structure/barricade/handrail, /turf/open/floor/prison/darkpurplefull2, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/east) "xKX" = ( /turf/open/floor/plating/prison, /area/fiorina/station/disco) @@ -30841,7 +31476,7 @@ "xLx" = ( /obj/item/bedsheet, /turf/open/floor/prison/floor_plate, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "xLD" = ( /obj/structure/machinery/light/double/blue{ dir = 1; @@ -30914,7 +31549,7 @@ }, /obj/item/frame/rack, /turf/open/floor/prison/yellow/southeast, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "xNU" = ( /obj/structure/bed/chair/comfy{ dir = 4 @@ -30988,7 +31623,10 @@ }, /obj/item/card/id/visa, /turf/open/floor/prison/whitepurple, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) +"xSw" = ( +/turf/open/floor/plating/prison, +/area/fiorina/station/lowsec/east) "xSz" = ( /obj/structure/barricade/metal/wired{ dir = 8 @@ -31043,7 +31681,7 @@ pixel_y = 21 }, /turf/open/floor/prison/whitepurple/north, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "xVJ" = ( /obj/structure/surface/rack, /obj/item/storage/toolbox/mechanical/green, @@ -31075,7 +31713,7 @@ "xWG" = ( /obj/item/weapon/twohanded/spear, /turf/open/floor/prison/sterile_white/southwest, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "xWV" = ( /obj/structure/surface/table/reinforced/prison, /obj/structure/window/reinforced{ @@ -31137,7 +31775,7 @@ icon_state = "abed" }, /turf/open/floor/prison/whitepurple/east, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "xYN" = ( /obj/item/device/t_scanner, /turf/open/floor/prison/floor_plate, @@ -31221,6 +31859,13 @@ /obj/structure/machinery/vending/sovietsoda, /turf/open/floor/plating/prison, /area/fiorina/station/medbay) +"yaS" = ( +/obj/structure/machinery/door/airlock/almayer/maint/colony/autoname{ + dir = 1; + req_one_access = null + }, +/turf/open/floor/plating/prison, +/area/fiorina/station/lowsec/showers_laundry) "yaY" = ( /obj/item/stack/sheet/metal, /turf/open/space, @@ -31326,7 +31971,7 @@ pixel_y = 21 }, /turf/open/floor/prison/floor_plate/southwest, -/area/fiorina/station/disco) +/area/fiorina/station/disco/east_disco) "yfA" = ( /obj/structure/machinery/light/double/blue{ dir = 1; @@ -31359,7 +32004,7 @@ current_rounds = 0 }, /turf/open/floor/prison/yellowcorner, -/area/fiorina/station/lowsec) +/area/fiorina/station/lowsec/showers_laundry) "ygr" = ( /obj/structure/platform, /turf/open/floor/prison/cell_stripe/west, @@ -31388,6 +32033,13 @@ }, /turf/open/floor/plating/prison, /area/fiorina/oob) +"ygL" = ( +/obj/effect/decal/cleanable/blood, +/turf/open/floor/prison/floor_plate, +/area/fiorina/station/lowsec/east) +"ygS" = ( +/turf/open/floor/prison/yellow/east, +/area/fiorina/station/disco/east_disco) "yhs" = ( /obj/structure/surface/rack, /obj/item/storage/firstaid/regular, @@ -31410,7 +32062,7 @@ pixel_y = -1 }, /turf/open/floor/prison/whitepurple/southeast, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/west) "yhR" = ( /obj/structure/sign/prop3{ desc = "Enlist in the Penal Battalions today! The USCM 3rd Fleet features a subset of UA sanctioned penal battalions, drawing from inmate popualtions across the colonies. Mostly New Argentina though." @@ -31478,7 +32130,7 @@ pixel_y = 13 }, /turf/open/floor/prison/whitepurple/east, -/area/fiorina/station/research_cells) +/area/fiorina/station/research_cells/east) "ylu" = ( /obj/item/tool/wrench, /turf/open/floor/plating/prison, @@ -59183,14 +59835,14 @@ mCp rHu rJu uzw -kqC -rzp -vds -vds -elO +rjw +kXT +wat +wat +iHi abJ -ioc -ioc +iBI +iBI abJ ubP ubP @@ -59395,14 +60047,14 @@ eLu eLu kfW cME -kqC -dHD +rjw +btJ lkb -upY -fHo +oLE +oMW vRA -ioc -ioc +iBI +iBI vRA ubP nXX @@ -59607,15 +60259,15 @@ eLu cME cME cME -oFI -dHD +wHu +btJ qRa -upY -voO -kqC +oLE +blt +rjw pGS -kgN -kqC +cas +rjw sOj uye ubP @@ -59819,14 +60471,14 @@ uvF cME ljd cME -oFI -dHD -upY -upY +wHu +btJ +oLE +oLE ger abJ -ioc -ioc +iBI +iBI abJ aUg ubP @@ -60031,14 +60683,14 @@ cME cME cME eLu -kqC -dHD -upY -eNa -efW +rjw +btJ +oLE +mlE +vza vRA -ioc -ioc +iBI +iBI vRA ubP ubP @@ -60243,11 +60895,11 @@ cME cME cME eLu -kqC -dHD -upY +rjw +btJ +oLE skj -uGY +rjw ceC xGt xGt @@ -60455,11 +61107,11 @@ uvF cME cME cME -kqC -dHD -upY -fHo -uGY +rjw +btJ +oLE +oMW +rjw jIw cRl sQC @@ -60667,11 +61319,11 @@ eLu cYP qso gsN -kqC -dHD -upY -fHo -hVG +rjw +btJ +oLE +oMW +yaS yiL cZV wNG @@ -60879,11 +61531,11 @@ kqC kqC kqC kqC -kqC +rjw oSn hwN eJy -uGY +rjw lEF tsN tsN @@ -61091,11 +61743,11 @@ bjt kqC sfu jyF -kqC -ioc -ioc -ioc -uGY +rjw +iBI +iBI +iBI +rjw xGt xGt xGt @@ -61303,11 +61955,11 @@ bjt kqC qNF ctW -kqC -rzp -vds -vds -vds +rjw +kXT +wat +wat +wat car gOU gOU @@ -61515,14 +62167,14 @@ kgN kqC ryJ end -kqC -dHD +rjw +btJ wbW -upY +oLE ufE ugg -upY -upY +oLE +oLE gmG ksE xGt @@ -61728,13 +62380,13 @@ vds vds elO nAs -dHD -upY -upY +btJ +oLE +oLE hMj -upY +oLE dQe -upY +oLE ygk rnE xGt @@ -61941,14 +62593,14 @@ xRI efW nAs fcB -upY +oLE hlB -upY -upY +oLE +oLE vYX ugg ksE -ceC +jTJ ceC sIh ihB @@ -62151,13 +62803,13 @@ end kqC ryJ end -kqC +rjw lNf -upY -upY +oLE +oLE elc -upY -upY +oLE +oLE eNr ksE xGt @@ -62363,11 +63015,11 @@ tKk kqC rzp osQ -kqC -dHD -upY -upY -upY +rjw +btJ +oLE +oLE +oLE ufE wbW fxS @@ -62575,13 +63227,13 @@ dpe kqC qLi dpe -kqC -dHD -upY +rjw +btJ +oLE sRv -upY +oLE wam -upY +oLE mom rnE xGt @@ -62789,11 +63441,11 @@ kqC kqC mCF sAF -upY -upY +oLE +oLE vRA -upY -upY +oLE +oLE ksE ceC ceC @@ -62999,10 +63651,10 @@ ioc kqC sfu iEG -kqC -dHD -upY -upY +rjw +btJ +oLE +oLE vRA cKH joJ @@ -63211,13 +63863,13 @@ ioc kqC qNF mDO -kqC -dHD -upY +rjw +btJ +oLE vRA vZL -upY -upY +oLE +oLE ksE xGt mEJ @@ -63423,12 +64075,12 @@ kgN kqC ryJ end -kqC -nBb -upY +rjw +oTL +oLE vRA -upY -upY +oLE +oLE ejf ksE xGt @@ -63638,10 +64290,10 @@ elO nAs fcB gQc -upY -upY -upY -upY +oLE +oLE +oLE +oLE ksE ceC ceC @@ -63849,15 +64501,15 @@ xRI efW nAs fcB -upY -upY +oLE +oLE vRA osN xdb pZn kIb vFV -hZR +ipy kPz kPz kPz @@ -64059,17 +64711,17 @@ kgN kqC ryJ end -kqC -nBb -upY -upY -upY -upY +rjw +oTL +oLE +oLE +oLE +oLE siW bEm -upY +oLE ksE -hZR +ipy kPz bQM kPz @@ -64271,17 +64923,17 @@ ioc kqC rzp ldz -kqC -qNF -xRI -xRI -xRI -xRI -xRI -xRI -xRI +rjw +hDF +fBA +fBA +fBA +fBA +fBA +fBA +fBA rnE -hZR +ipy kPz kPz kPz @@ -64483,20 +65135,20 @@ ioc kqC qLi dpe -kqC +rjw okG -ioc +iBI okG -kqC -kqC +rjw +rjw dbI dbI dbI -kqC -wzE -hZR -hZR -hZR +rjw +hjg +ipy +ipy +ipy nqN xGt xGt @@ -64699,19 +65351,19 @@ mCF uJp kIb vFV -kqC +rjw lsR lZp lZp lZp svN -kqC -rzp -vds -elO +rjw +kXT +wat +iHi abJ -ioc -ioc +iBI +iBI abJ goo goo @@ -64907,23 +65559,23 @@ ioc kqC sfu jyF -kqC -dHD +rjw +btJ xLx -voO -kqC +blt +rjw ubh xFJ eao lZp qXj -kqC -nBb -xbM -fHo +rjw +oTL +xAn +oMW vRA -ioc -ioc +iBI +iBI vRA fAf fAf @@ -65119,24 +65771,24 @@ ioc kqC qNF eub -kqC -dHD -xbM -fHo -kqC +rjw +btJ +xAn +oMW +rjw sIk dzE -kqC +rjw sIk dzE -kqC -dHD -xbM -fHo -kqC -ioc -ioc -kqC +rjw +btJ +xAn +oMW +rjw +iBI +iBI +rjw nAm nAm fAf @@ -65253,17 +65905,17 @@ loE eIx mvp mvp -lZA +rjD vUP vUP vUP -lZA +rjD byY byY byY byY byY -lZA +rjD kjt kjt rLG @@ -65331,10 +65983,10 @@ kgN kqC ryJ end -kqC +rjw rgc -xbM -fHo +xAn +oMW vfO lZp lZp @@ -65342,12 +65994,12 @@ jmv uLV lZp vfO -dHD -xbM -fHo +btJ +xAn +oMW abJ -ioc -ioc +iBI +iBI abJ fAf fAf @@ -65543,10 +66195,10 @@ lvV vds vds elO -ioc -dHD -xbM -fHo +iBI +btJ +xAn +oMW vfO lZp lZp @@ -65554,12 +66206,12 @@ eao lZp lZp vfO -dHD -xbM -fHo +btJ +xAn +oMW vRA -ioc -ioc +iBI +iBI vRA fAf fAf @@ -65755,24 +66407,24 @@ eNa xRI xRI efW -ioc -dHD -xbM -fHo -kqC +iBI +btJ +xAn +oMW +rjw hAP dzE -kqC +rjw sIk dzE -kqC -dHD -xbM -fHo -kqC -ioc -ioc -kqC +rjw +btJ +xAn +oMW +rjw +iBI +iBI +rjw goo goo fAf @@ -65889,11 +66541,11 @@ gDI agh mvp mvp -lZA +rjD vUP vUP vUP -lZA +rjD jWI eow eow @@ -65967,23 +66619,23 @@ jlq kqC ryJ end -kqC -nBb -xbM -voO -kqC +rjw +oTL +xAn +blt +rjw ubh lZp jmv lZp qXj -kqC -nBb -xbM -fHo +rjw +oTL +xAn +oMW abJ -ioc -ioc +iBI +iBI abJ fAf fAf @@ -66179,23 +66831,23 @@ rzp kqC rzp jln -kqC +rjw eQb -xbM +xAn kgp -kqC +rjw erU lZp lZp xFJ hrL -kqC -dHD -xbM -fHo +rjw +btJ +xAn +oMW vRA -ioc -ioc +iBI +iBI vRA nAm nAm @@ -66391,20 +67043,20 @@ dHD kqC qLi jhN -kqC +rjw rYy -xbM -fHo -kqC -kqC +xAn +oMW +rjw +rjw vfO vfO vfO -kqC -kqC -dHD -xbM -fHo +rjw +rjw +btJ +xAn +oMW vMK goG goG @@ -66530,7 +67182,7 @@ wSN kzR wSC mvl -knb +eSI vUP vUP kjt @@ -66578,7 +67230,7 @@ oEH oEH vkt bLJ -xKX +vgG iaa iaa tZO @@ -66586,37 +67238,37 @@ iaa iaa ecM mlC -wzE -wzE -wzE -wzE +xxg +xxg +xxg +xxg rzF -fHo -xbM -xbM +qJY +fBK +fBK xel -xbM -xbM -xbM -dHD +fBK +fBK +fBK +wKi jbg -kqC -kqC -kqC -kqC +umN +umN +umN +umN rKd -xbM +xAn pZn atY atY -vds -vds -vds +wat +wat +wat qJl atY -qEs -xbM -fHo +jXU +xAn +oMW goG dYq chg @@ -66798,37 +67450,37 @@ oPR oPR jnQ oPR -kqC -ioc -ioc -ioc -ioc -ioc -xbM -xbM -xbM -xbM +umN +lmC +lmC +lmC +lmC +lmC +fBK +fBK +fBK +fBK bkQ -xbM -qNF -dHD -kqC +fBK +eVD +wKi +umN rkp iKy -kqC -dHD -xbM +umN +gqo +xAn jbm -xbM +xAn xLx -xbM +xAn jbm -xbM -xbM -xbM -xbM -xbM -fHo +xAn +xAn +xAn +xAn +xAn +oMW goG xoR ioW @@ -66966,7 +67618,7 @@ uwk uwk uwk aSz -cIt +uBX vUP vUP cKa @@ -67011,36 +67663,36 @@ qBe qBe eFQ wpO -ioc -ioc -ioc -efW -xbM -cxA -cZh -xbM -oFf -voV -xbM -xbM -qNF -kqC -qNF -efW -kqC -qNF -xRI +lmC +lmC +lmC +duL +fBK +ygL +rZF +fBK +ogc +eja +fBK +fBK +eVD +umN +eVD +duL +umN +hDF +fBA iXq -xRI -xRI -xRI -xRI -xRI +fBA +fBA +fBA +fBA +fBA mKd -xRI -xRI -xRI -efW +fBA +fBA +fBA +vza goG egd pYB @@ -67223,32 +67875,32 @@ qBe lFv eFQ wpO -ioc -ioc -ioc -dHD +lmC +lmC +lmC +wKi kbh -xbM -xbM -cxA +fBK +fBK +ygL jET -xbM -cZh +fBK +rZF fYY -voO -kqC +ffx +umN qRi -end -wzE -wzE -wzE -kqC -ioc -ioc -ioc -ioc +elm +xxg +hjg +hjg +rjw +iBI +iBI +iBI +iBI pvE -kqC +rjw jTJ goG goG @@ -67435,30 +68087,30 @@ qBe qBe oPR wpO -ioc -ioc -ioc -qNF -nAK -xbM -xbM -xbM -xbM +lmC +lmC +lmC +eVD +wWm +fBK +fBK +fBK +fBK jET -xbM -xbM -pZn -vds -vds -elO -hZR -bQM -hZR +fBK +fBK +xiZ +nUh +nUh +bhC +uTv +bQM +ipy iCf -rzp -vds -vds -vds +kXT +wat +wat +wat rLJ jvi duF @@ -67575,7 +68227,7 @@ lAh bQM bQM bQM -jmG +lAh cAW cAW jmG @@ -67646,32 +68298,32 @@ hxj wis sGa gNU -kqC -kqC -ecd -kqC -kqC -dHD -xbM -xbM +umN +umN +nIU +umN +umN +wKi +fBK +fBK pHx -xbM -eNa -xRI -xRI -xRI -xRI -xRI -efW -hZR +fBK +lNC +gos +gos +gos +gos +gos +duL +uTv kPz -hZR +ipy auS -dHD +btJ jbm -xbM -xbM -fHo +xAn +xAn +oMW jvi duF fEH @@ -67785,7 +68437,7 @@ bQM bQM lAh lAh -jmG +lAh cAW cAW cAW @@ -67853,37 +68505,37 @@ qBe eXz qBe oPR -kqC -kqC +umN +umN dAd hbp -kqC -kqC +umN +umN rCq -vRA -vRA -kqC +xSw +xSw +umN fLb ayW -xbM -xbM -xbM +fBK +fBK +fBK rYK -kqC +umN cRB -end -kqC +elm +umN cRB -end -wzE +elm +xxg bQM -hZR +ipy qSz -dHD -eNa +btJ +mlE rwK nAK -fHo +oMW kpu duF fAU @@ -68065,37 +68717,37 @@ qBe qBe qBe sGa -kqC -kqC -vRA +umN +umN +xSw blG -kqC -kqC -kqC +umN +umN +umN tVV arl -oFI +eQs kCT opj -xRI -nAK -xbM -fHo -kqC -rzp +gos +wWm +fBK +qJY +umN +xBF bIP -kqC -rzp +umN +xBF mwP -wzE +xxg kPz jTJ vUl -dHD -fHo +btJ +oMW pLE -dHD -fHo +btJ +oMW uuG jTJ gHn @@ -68278,36 +68930,36 @@ qBe qBe vcu qQM -abJ -rzp -vds -elO +umu +xBF +nUh +bhC sKt -kqC -vRA +umN +xSw tiX -kqC -kqC -kqC -kqC -dHD -xbM -fHo -kqC -qLi -dpe -kqC -qLi -dpe -wzE -bQM -hZR +umN +umN +umN +umN +wKi +fBK +qJY +umN +xpy +oeh +umN +xpy +oeh +xxg +bQM +ipy pLE -dHD -fHo +btJ +oMW pLE -dHD -fHo +btJ +oMW pLE duF mWR @@ -68490,35 +69142,35 @@ bno bno vrR jOb -vRA -dHD +xSw +wKi bAM -fHo +qJY sKt -oFI -vRA +eQs +xSw glD -kqC +umN pVY mwP -kqC -dHD -xbM +umN +wKi +fBK rYK -mCF -kqC -kqC -kqC -kqC -kqC -wzE +hhX +umN +umN +umN +umN +umN +xxg kPz -hZR +ipy pLE -dHD -fHo +btJ +oMW pLE -dHD +btJ naI pLE duF @@ -68701,37 +69353,37 @@ eac dPe mcJ uIL -kqC -kqC -nBb -xbM -fHo +umN +umN +hjI +fBK +qJY sKt -kqC -kqC -kqC -kqC -ryJ -end -kqC -nBb -xbM -fHo -kqC -sfu -jyF -kqC +umN +umN +umN +umN +hCX +elm +umN +hjI +fBK +qJY +umN +nDu +tjh +umN hHX -jyF -wzE +tjh +xxg bQM -hZR +ipy pLE -qNF -efW +hDF +vza pLE -qNF -efW +hDF +vza pLE duF chg @@ -68913,38 +69565,38 @@ fWH fWH fWH fWH -kqC +umN mue bbI -xbM +fBK rYK -kqC -kqC +umN +umN wyQ eTa -vds -vds -vds -elO -dHD -xbM -fHo -kqC -qNF -mDO -kqC -qNF -mDO -wzE -wzE -wzE -kqC +nUh +nUh +nUh +bhC +wKi +fBK +qJY +umN +eVD +qFW +umN +eVD +qFW +xxg +hjg +hjg +rjw ecd ecd -kqC +rjw ecd ecd -kqC +rjw jTJ vMK mGZ @@ -69073,7 +69725,7 @@ vUP pDo jWI bXz -kGd +tiP ufR sNi jna @@ -69082,7 +69734,7 @@ eow lFB vUP pRa -kGd +tiP eow eow lFB @@ -69125,37 +69777,37 @@ izZ oPR oPR oPR -kqC +umN pCQ -dHD -xbM -fHo -abJ -ioc -rzp -vds -vds -vds -elO -efW -dHD -xbM +wKi +fBK +qJY +umu +lmC +xBF +nUh +nUh +nUh +bhC +duL +wKi +fBK rYK -kqC -ryJ -end -kqC -ryJ -end -kqC -wzE +umN +hCX +elm +umN +hCX +elm +umN +hjg pah vNQ -xbM +xAn iCN qOq -xbM -xbM +xAn +xAn pah bhu goG @@ -69337,37 +69989,37 @@ wKm qBe qBe oPR -kqC +umN cRI -dHD -xbM -fHo -vRA -ioc -qNF -xRI -xRI -xRI -efW -elO +wKi +fBK +qJY +xSw +lmC +eVD +gos +gos +gos +duL +bhC cHC -xbM -fHo -ioc -rzp -vds -vds -vds -elO -ioc +fBK +qJY +lmC +xBF +nUh +nUh +nUh +bhC +lmC duF hQv gsL mOI -xbM +xAn qOq -xbM -xbM +xAn +xAn gFj sNN goG @@ -69503,7 +70155,7 @@ wef wef xgH vUP -knb +eSI wef wef tOp @@ -69549,37 +70201,37 @@ qBe qBe qBe oPR -kqC +umN mue gIa -xbM +fBK rYK -kqC -kqC -ioc -qNF -xRI -xRI -xRI -efW -dHD -xbM -fHo -ioc -qNF -xRI -xRI -xRI -efW +umN +umN +lmC +eVD +gos +gos +gos +duL +wKi +fBK +qJY +lmC +eVD +gos +gos +gos +duL sDR hBF vcv iLl -xbM -xbM +xAn +xAn qOq huG -xbM +xAn pah rmJ goG @@ -69725,11 +70377,11 @@ oyy cKa kjt mgz -rLG -vUP -cKa +apg +qBw +cIa sXe -wef +wHV sXe aSz jmG @@ -69761,38 +70413,38 @@ qBe qBe qBe pUf -kqC -kqC -nBb -xbM -fHo +umN +umN +hjI +fBK +qJY sKt -kqC -ryJ -end -kqC -ryJ -end -kqC -dHD -xbM +umN +hCX +elm +umN +hCX +elm +umN +wKi +fBK rYK -kqC -ryJ -end -kqC -ryJ -end -kqC -wzE -kqC -kqC +umN +hCX +elm +umN +hCX +elm +umN +hjg +rjw +rjw ecd ecd -kqC +rjw ecd ecd -kqC +rjw jTJ vMK pFW @@ -69936,15 +70588,15 @@ iFB qBT cKa kjt -mgz -rLG -vUP +jii +apg +qBw glj sXe -wef +wHV sXe odQ -uwk +nLO bQM bQM bQM @@ -69974,28 +70626,28 @@ okE qBe vcu qQM -abJ -dHD -xbM -fHo +umu +wKi +fBK +qJY sKt -kqC -qNF -mDO -kqC -qNF -mDO -kqC -nBb -xbM -fHo -kqC -rzp +umN +eVD +qFW +umN +eVD +qFW +umN +hjI +fBK +qJY +umN +xBF mwP -kqC -rzp +umN +xBF mwP -kqC +umN rKs tOM wGA @@ -70147,16 +70799,16 @@ cKa cKa cKa cKa -xVw -mgz -rLG -vUP +apm +jii +apg +qBw glj sXe -wef +wHV sXe vJh -uwk +nLO kPz kPz kPz @@ -70186,28 +70838,28 @@ qBe eUP sGa jOb -vRA -qNF +xSw +eVD eux -efW -ioc -kqC -kqC -kqC -mCF -kqC -kqC -kqC -dHD -xbM -fHo -kqC -qLi -dpe -kqC -qLi -dpe -kqC +duL +lmC +umN +umN +umN +hhX +umN +umN +umN +wKi +fBK +qJY +umN +xpy +oeh +umN +xpy +oeh +umN lbz gLk gbf @@ -70345,30 +70997,30 @@ dbh eov doe cAW -eov -bqu -rwm -cKa +gGn +fna +uTq +cIa gzN -vUP -vUP -cKa -bqu -rwm -cKa -bqu -rwm -cKa -kjt -xAq -rLG -vUP -cKa +qBw +qBw +cIa +fna +uTq +cIa +fna +uTq +cIa +nVK +lTs +apg +qBw +cIa dcv -wef +wHV sXe lMi -uwk +nLO bQM bQM bQM @@ -70397,29 +71049,29 @@ mlC eUP qBe xIq -kqC -kqC -vRA +umN +umN +xSw blG -kqC -kqC -kqC -xbM -xbM -xbM +umN +umN +umN +mKa +fBK +fBK kgQ -xbM -xbM -dHD -xbM +fBK +fBK +wKi +fBK rYK -kqC -kqC -kqC -kqC -kqC -kqC -kqC +umN +umN +umN +umN +umN +umN +umN mxQ tOM gbf @@ -70557,30 +71209,30 @@ taI eov ivb cAW -eov -kXk -tPB -cKa +gGn +mVE +sJH +cIa fLH gCK -vUP -cKa -kXk -rhH -cKa -kXk -rhH -cKa -kjt -mgz -rLG -cKa -cKa -cKa -hul -cKa -cKa -jmG +qBw +cIa +mVE +sEK +cIa +mVE +sEK +cIa +nVK +jii +apg +cIa +cIa +cIa +aNY +cIa +cIa +hCG vnr hxq hxq @@ -70601,37 +71253,37 @@ oPR qBe vtX dYo -mlC +uDF kPz kPz kPz -mlC -qBe -qBe -qBe -kqC -kqC +uDF +aCw +aCw +aCw +umN +umN jva gEX -wzE -kqC +xxg +umN pai kgQ tSl diJ ddt -ioc +lmC kgQ diF -xbM -fHo -kqC -sfu -jyF -kqC -sfu -jyF -kqC +fBK +qJY +umN +nDu +tjh +umN +nDu +tjh +umN hNj ijd gbf @@ -70769,28 +71421,28 @@ mpR eov hxJ qgd -eov -kzh -tOp -cKa +gGn +hZU +dZM +cIa oDH -vUP -dFI -cKa -kzh -tOp -cKa -kzh -tOp -cKa -xVw -mgz -bOx -cKa -vUP -vUP -vUP -cKa +qBw +psG +cIa +hZU +dZM +cIa +hZU +dZM +cIa +apm +jii +xCR +cIa +qBw +qBw +qBw +cIa xRl cPz ixl @@ -70806,44 +71458,44 @@ mlC kPz kPz kPz -mlC +uDF hdR oPR oPR qBe aZL nGB -ecM -mlC -mlC -mlC -ecM +jjx +uDF +uDF +uDF +jjx eLU -qBe -qBe -qBe +aCw +aCw +aCw jis dQV nGp dQV -kqC +umN pai kgQ nkg diJ iuC -ioc +lmC pnP -dHD -xbM -fHo -kqC -qNF -mDO -kqC -qNF -mDO -kqC +wKi +fBK +qJY +umN +eVD +qFW +umN +eVD +qFW +umN lbz hnh gbf @@ -70977,31 +71629,31 @@ jmG jmG jmG jmG -jmG -eov -eov -eov -eov -vUP -wef -vUP +hCG +gGn +gGn +gGn +gGn +qBw +wHV +qBw ika -vUP -vUP +qBw +qBw bjZ -jWI -eow +fvx +aYR aiv kGd -lFB -vUP -kjt -mgz -rLG +meE +qBw +nVK +jii +apg lZA -jWI -eow -lFB +fvx +aYR +meE lZA ixl ixl @@ -71010,53 +71662,53 @@ hHH hHH ixl rmX -qBe -oPR -oPR -roQ -mlC +aCw +gvy +gvy +isw +uDF bQM kPz bQM -mlC -aZL -oPR -oPR -qBe -qBe +uDF +flG +gvy +gvy +aCw +aCw gbk -qBe -eUP -qBe -qBe -qBe -qBe -qBe -hdR -roQ -qBe -qBe -qBe +aCw +iCC +aCw +aCw +aCw +aCw +aCw +svS +isw +aCw +aCw +aCw fjg -kqC +umN pai kgQ tTm diJ aga diJ -xbM -dHD -xbM +fBK +wKi +fBK rYK -kqC -ryJ -end -kqC -ryJ -end -kqC -kqC +umN +hCX +elm +umN +hCX +elm +umN +umN pFW cTy fOT @@ -71189,32 +71841,32 @@ cAW cAW cAW cAW -jmG -cKa -cKa -cKa +hCG +cIa +cIa +cIa rpf -vUP -vUP -vUP -vUP +qBw +qBw +qBw +qBw mIr -vUP +qBw knb -kXk -xYJ -qGB -amn +mVE +bVO +gJM +gAD hkH -vUP -kjt -mgz -rLG -wef -kjt -mgz -rLG -wef +qBw +nVK +jii +apg +wHV +nVK +jii +apg +wHV ixl ixl ixl @@ -71222,52 +71874,52 @@ ixl ixl gpr nnr -oPR -oPR -oPR -kJJ -ecM -mlC -mlC -mlC -ecM -iCE -oPR -oPR -qBe -qBe -qBe -qBe -qBe -qBe -qBe -qBe -qBe -qBe +gvy +gvy +gvy +lFK +jjx +uDF +uDF +uDF +jjx +cYY +gvy +gvy +aCw +aCw +aCw +aCw +aCw +aCw +aCw +aCw +aCw +aCw rMw -mEU -qBe -qBe -qBe +tkh +aCw +aCw +aCw jLe -kqC -kqC +umN +umN sRJ iuC coj -ioc -ioc -xbM -dHD -xbM -fHo -ioc -rzp -vds -vds -vds -elO -ioc +lmC +lmC +fBK +wKi +fBK +qJY +lmC +xBF +nUh +nUh +nUh +bhC +lmC ntv tOM gbf @@ -71401,31 +72053,31 @@ jmG jmG jmG jmG -jmG -cKa -cKa -cKa -cKa -vUP -vUP -vUP +hCG +cIa +cIa +cIa +cIa +qBw +qBw +qBw jfc -wef -wef -wef -wef -wef +wHV +wHV +wHV +wHV +wHV rPS -wef -wef +wHV +wHV jfc -kjt -mgz -rLG +nVK +jii +apg lZA -kjt -mgz -rLG +nVK +jii +apg lZA ixl ixl @@ -71434,52 +72086,52 @@ ixl ixl ixl nnr -oPR -oPR -oPR -aZL +gvy +gvy +gvy +flG eLy -roQ -qBe -aZL +isw +aCw +flG eLy -roQ -oPR -oPR -hdR -roQ -qBe -qBe -hdR -roQ -qBe -qBe -qBe -qBe +isw +gvy +gvy +svS +isw +aCw +aCw +svS +isw +aCw +aCw +aCw +aCw hYs uou -qBe +aCw mrW -qBe +aCw fWV tHl qCK lIJ qCK -ioc +lmC idj -ioc -xbM -qNF -xRI -efW -ioc -qNF -xRI -xRI -xRI -efW -ioc +lmC +fBK +eVD +gos +duL +lmC +eVD +gos +gos +gos +duL +lmC ntv tOM gbf @@ -71613,32 +72265,32 @@ cAW cAW cAW cAW -jmG -cKa -cKa -cKa +hCG +cIa +cIa +cIa rpf -jWI -eow -lFB -hqD -jWI +fvx +aYR +meE +juV +fvx clA -wef -jWI -lFB +wHV +fvx +meE jfc -jWI -lFB +fvx +meE rPS -kjt -mgz -rLG -wef -kXk -amn -tPB -wef +nVK +jii +apg +wHV +mVE +gAD +sJH +wHV ixl ixl ixl @@ -71647,52 +72299,52 @@ ghS ixl lpS ooq -oPR -oPR -oPR -oPR -oPR -oPR -oPR -oPR -oPR -oPR -oPR -aZL -mEU -qBe -eUP -aZL -mEU -qBe -qBe -qBe -qBe +gvy +gvy +gvy +gvy +gvy +gvy +gvy +gvy +gvy +gvy +gvy +flG +tkh +aCw +iCC +flG +tkh +aCw +aCw +aCw +aCw hYs -qBe -qBe -qBe +aCw +aCw +aCw oHi -miU +qfh sgt -vRA -upY -vRA -vRA -ioc +xSw +sDw +xSw +xSw +lmC diJ -xbM -vRA -xbM -xbM -kqC -ryJ -end -kqC -kqC -ecd -kqC -kqC +fBK +xSw +fBK +fBK +umN +hCX +elm +umN +umN +nIU +umN +umN pFW gbf gbf @@ -71825,32 +72477,32 @@ cAW cAW cAW cAW -jmG -cKa -cKa -cKa -cKa -kjt -mgz -rLG -hqD +hCG +cIa +cIa +cIa +cIa +nVK +jii +apg +juV fRc -dUx -hqD -iFB -dUx +keb +juV +iXB +keb jfc -iFB -dUx -wef -kjt -mgz -rLG -cKa -vUP -vUP -vUP -cKa +iXB +keb +wHV +nVK +jii +apg +cIa +qBw +qBw +qBw +cIa xRl ixl ixl @@ -71860,8 +72512,8 @@ bjf vNq gvz ooq -mEU -roQ +tkh +isw fyL fje rCe @@ -71870,35 +72522,35 @@ gGc dIx rCe gPE -qBe -qBe +aCw +aCw fyL gGc gGc tzM -hdR -roQ -qBe +svS +isw +aCw kHH fFv uoH -qBe -qBe -qBe -qBe +aCw +aCw +aCw +aCw oPN -vRA +xSw aXC -vRA +xSw qCK lIJ -vRA -upY -upY -upY +xSw +sDw +sDw +sDw tZe -kqC -rzp +umN +xBF mwP mxQ fCZ @@ -72037,32 +72689,32 @@ cAW cAW cAW cAW -jmG -cKa -cKa -cKa -cKa -wdL -mgz -rLG -hEs -cKa -cKa -cKa -cKa -cKa -cKa -cKa -cKa -cKa -xVw -mgz -rLG -jmG -uwk -uwk -uwk -jmG +hCG +cIa +cIa +cIa +cIa +iWX +jii +apg +asF +cIa +cIa +cIa +cIa +cIa +cIa +cIa +cIa +cIa +apm +jii +apg +hCG +nLO +nLO +nLO +hCG vnr ixl ixl @@ -72071,31 +72723,31 @@ ixl ixl vNq vNq -dAd -ode -ode -cry +lyp +hXJ +hXJ +pqQ vNq vNq vnr -mlC -mlC -ecM +uDF +uDF +jjx yfp hEv hEv -hbp -ecM +pBD +jjx nSx gVc xbo qzZ -qBe -qBe -aZL -mEU -qBe -qBe +aCw +aCw +flG +tkh +aCw +aCw ooO faw lux @@ -72104,14 +72756,14 @@ cqW ckS voh dtg -ioc -upY -upY -upY +lmC +sDw +sDw +sDw tZe -kqC -qLi -dpe +umN +xpy +oeh mxQ gRW ssO @@ -72249,28 +72901,28 @@ cAW cAW cAW cAW -jmG -cKa -bqu +hCG +cIa +fna moQ -cKa -kjt -mgz +cIa +urw +jii vwX -cKa -bqu -rwm -cKa -bqu -rwm -cKa -bqu +cIa +fna +uTq +cIa +fna +uTq +cIa +fna aLC -cKa -kjt -mgz -rLG -uwk +cIa +nVK +jii +apg +nLO bQM kPz kPz @@ -72297,33 +72949,33 @@ ovq vyw bix uTb -ecM +jjx nSx gux eio -qBe -qBe -qBe -qBe -qBe -wKm -qBe -qBe +aCw +aCw +aCw +aCw +aCw +lfx +aCw +aCw faw tHl jYm -xbM +fBK thz suq -xbM +fBK wFB -xbM -xbM +fBK +fBK xdZ -xbM -kqC -kqC -kqC +fBK +umN +umN +umN mxQ tUs tUs @@ -72461,28 +73113,28 @@ cAW cAW cAW cAW -jmG -cKa -kXk +hCG +cIa +mVE qRf -cKa -kjt -mgz -rLG -cKa -kXk +cIa +nVK +jii +apg +cIa +mVE jWY -cKa -kXk +cIa +mVE lzz -cKa -kXk -rhH -cKa -kXk -amn -tPB -uwk +cIa +mVE +sEK +cIa +mVE +gAD +sJH +nLO bQM kPz kPz @@ -72509,31 +73161,31 @@ lOx oRg ixl uvn -ecM +jjx nSx ayG laK gRA -qBe -hdR -roQ +aCw +svS +isw gRA -qBe -qBe -qBe +aCw +aCw +aCw hQT -jTJ -jTJ -kqC -kqC -kqC -jTJ -jTJ -vRA +axz +axz +umN +umN +umN +axz +axz +xSw blG -jTJ -jTJ -jTJ +axz +axz +axz bMG anl ffZ @@ -72673,28 +73325,28 @@ cAW cAW cAW cAW -jmG -cKa -kzh -tOp -cKa -kjt -mgz -rLG -cKa -kzh -tOp -cKa -kzh -tOp -cKa -kzh -tOp -cKa +hCG +cIa +hZU +dZM +cIa +nVK +jii +apg +cIa +hZU +dZM +cIa +hZU +dZM +cIa +hZU +dZM +cIa cIt -vUP -vUP -uwk +qBw +qBw +nLO bQM kPz kPz @@ -72724,27 +73376,27 @@ kGc nSx cVV oWC -xKX +ubx qTt gRA -aZL -hdR -roQ +flG +svS +isw gRA -qBe -qBe +aCw +aCw uud wXQ ntv hqX -vds -vds +nUh +nUh rQB gdS -ioc -ioc +lmC +lmC qxZ -duF +lHH sFH rCt xGd @@ -72885,28 +73537,28 @@ cAW cAW cAW cAW -jmG -cKa -jWI -eow -eow -ufR -mgz -jna -eow -eow +hCG +cIa +fvx +aYR +aYR +rEx +jii +deg +aYR +aYR kGd -wef -eow -eow -eow -eow -lFB -vUP -jWI -eow -lFB -uwk +wHV +aYR +aYR +aYR +aYR +meE +qBw +fvx +aYR +meE +nLO bQM kPz kPz @@ -72935,28 +73587,28 @@ ovq uvn nSx nSx -xKX +ubx rGf -xKX +ubx qUw gRA -aZL -mEU -roQ -qBe -qBe -qBe -kqC -kqC -kqC +flG +tkh +isw +aCw +aCw +aCw +umN +umN +umN fKX -upY +sDw rQB -iLl -ioc -ioc +eMN +lmC +lmC sjZ -kqC +umN huJ caF xKE @@ -73097,28 +73749,28 @@ cAW cAW cAW cAW -jmG -cKa -kjt -mgz -mgz -mgz -mgz -mgz -mgz -mgz -mgz -wef -mgz -mgz -mgz -mgz -rLG -vUP -kjt -mgz -rLG -uwk +hCG +cIa +nVK +jii +jii +jii +jii +jii +jii +jii +jii +wHV +jii +jii +jii +jii +apg +qBw +nVK +jii +apg +nLO bQM kPz kPz @@ -73148,30 +73800,30 @@ uvn cVV nSx nVE -xKX +ubx uGL -mEU -qBe +tkh +aCw gRA -aZL -mEU -qBe -qBe +flG +tkh +aCw +aCw uud mwu ntv hqX -vds -vds -jTJ -jTJ -vRA +nUh +nUh +axz +axz +xSw blG -jTJ -jTJ -kqC +axz +axz +umN pim -kqC +umN mxQ tUs mxQ @@ -73309,28 +73961,28 @@ cAW cAW cAW cAW -jmG -cKa +hCG +cIa ndQ -amn -amn -amn -amn -amn -amn -amn -amn +gAD +gAD +gAD +gAD +gAD +gAD +gAD +gAD ljc -amn -amn -amn -amn -tPB -vUP -kXk +gAD +gAD +gAD +gAD +sJH +qBw +mVE ylr -tPB -uwk +sJH +nLO bQM kPz kPz @@ -73360,21 +74012,21 @@ peP nSx nSx xgC -roQ +isw gRA -qBe -hdR +aCw +svS dVu nSx -okE -qBe -qBe -qBe -kqC -kqC -kqC -xbM -upY +nvx +aCw +aCw +aCw +umN +umN +umN +fBK +sDw sqC vVx qQb @@ -73396,12 +74048,12 @@ tOM tYD egz xkq -mxQ -mxQ +fbn +fbn kKQ vhk -mxQ -mxQ +fbn +fbn tSL egz jOv @@ -73521,28 +74173,28 @@ cAW cAW cAW cAW -jmG -cKa -cKa -cKa -cKa +hCG +cIa +cIa +cIa +cIa wsw -dVA -vUP -dVA -vUP -mgz -mgz -mgz -vUP -dVA +doc +qBw +doc +qBw +jii +jii +jii +qBw +doc gtr gtr gtr -cKa -cKa -cKa -jmG +cIa +cIa +cIa +hCG bQM kPz kPz @@ -73571,22 +74223,22 @@ vdN uvn uFC qyM -aZL -hdR -roQ +flG +svS +isw gRA -aZL -hdR +flG +svS dhc nSx -okE -qBe +nvx +aCw uud wXQ ntv hqX -vds -vds +nUh +nUh ntv kUR sIj @@ -73606,16 +74258,16 @@ tOM rko egz xkq -mxQ -jjg -mxQ -wGA -pYB -pYB -cwM -mxQ -jjg -mxQ +fbn +qtp +fbn +inv +tEU +tEU +uow +fbn +qtp +fbn cBn egz sGg @@ -73732,26 +74384,26 @@ cAW cAW cAW cAW -jmG -jmG -cKa -cKa -cKa +hCG +hCG +cIa +cIa +cIa pQc -mgz -mgz -mgz -mgz -vUP -mgz -mgz -mgz -vUP -mgz -mgz +jii +jii +jii +jii +qBw +jii +jii +jii +qBw +jii +jii mns -vUP -vUP +qBw +qBw tBP vNq vnr @@ -73784,21 +74436,21 @@ uvn ovq qyM gRA -aZL -mEU -roQ +flG +tkh +isw gRA -aZL +flG qEC -roQ +isw gRA -qBe -qBe -kqC -kqC -kqC +aCw +aCw +umN +umN +umN sKr -upY +sDw ntv kUR sIj @@ -73816,20 +74468,20 @@ gbf ekx tOM xpM -mxQ -jjg -mxQ +fbn +qtp +fbn tVY -jzP -gbf -pYB -pYB -gbf +rTY +sgI +tEU +tEU +sgI blf fDW -mxQ -jjg -mxQ +fbn +qtp +fbn vUZ tOM beB @@ -73944,13 +74596,13 @@ cAW cAW cAW cAW -jmG -jmG -cKa -cKa -cKa -cKa -mgz +hCG +hCG +cIa +cIa +cIa +cIa +jii rAw rAw xKP @@ -73960,10 +74612,10 @@ oKn niw jfp pho -mgz -mgz -vUP -vUP +jii +jii +qBw +qBw tBP vNq vnr @@ -73995,22 +74647,22 @@ jUP uvn ovq qyM -roQ +isw gRA -aZL -hdR +flG +svS dVu nSx asf -hdR -roQ +svS +isw gRA uud iIG ntv hqX -vds -vds +nUh +nUh ntv kUR sIj @@ -74028,20 +74680,20 @@ gbf tOM tYD xkq -jjg +qtp vRk -pRD +gWA bTC -apu -gbf -pYB +aZA +sgI +tEU voI -gbf -fOT -nBw +sgI +xct +emE fXW ldF -jjg +qtp cBn jOv tOM @@ -74156,13 +74808,13 @@ cAW cAW cAW cAW -jmG -jmG -jmG -jmG +hCG +hCG +hCG +hCG pcN -vUP -mgz +qBw +jii rAw rAw vsr @@ -74171,11 +74823,11 @@ gWg nmm nmm wJd -lFB +meE mns -mgz -vUP -vUP +jii +qBw +qBw tBP vNq vnr @@ -74207,23 +74859,23 @@ xHi uvn ovq qyM -mEU -roQ +tkh +isw gRA -aZL -mEU +flG +tkh nGO nSx hsz -mEU -roQ +tkh +isw gRA -kqC -kqC -kqC -xbM -upY -jTJ +umN +umN +umN +fBK +sDw +axz veW vVN vVN @@ -74239,22 +74891,22 @@ gbf tOM tOM xpM -mxQ -mxQ -pRD -gbf -gbf -jzP -gbf -pYB -pYB -gbf +fbn +fbn +gWA +sgI +sgI +rTY +sgI +tEU +tEU +sgI iYe -bnx +mqL siy nAV -mxQ -mxQ +fbn +fbn vUZ tOM tOM @@ -74371,10 +75023,10 @@ cAW cAW bQM fwn -jmG +hCG dVC -vUP -mgz +qBw +jii rAw vrH tAE @@ -74383,9 +75035,9 @@ pqz nmm nmm wJd -rLG -mgz -mgz +apg +jii +jii rkF qfi vNq @@ -74420,22 +75072,22 @@ uvn vja nSx oQS -aZL -roQ +flG +isw gRA -aZL -hdR -roQ +flG +svS +isw gRA -aZL -hdR -roQ +flG +svS +isw cfa qwH qwH -rzp -elO -jTJ +xBF +bhC +axz lmu sIj hkA @@ -74451,22 +75103,22 @@ gbf tOM rko xkq -jjg +qtp tVY bxv -gbf -gbf +sgI +sgI oox lMV -pYB -pYB +tEU +tEU vjR doQ upM vjR -nBw +emE fDW -jjg +qtp cBn rxM tOM @@ -74583,10 +75235,10 @@ cAW cAW tan geF -jmG +hCG qPL -vUP -mgz +qBw +jii rAw rAw uLj @@ -74595,8 +75247,8 @@ rru nmm djB wJd -tPB -mgz +sJH +jii uhA oUg oUg @@ -74632,22 +75284,22 @@ iHB reZ qyM gRA -aZL -mEU +flG +tkh dVu nSx hsz -mEU -roQ +tkh +isw gRA -aZL -mEU +flG +tkh cfa -upY +sDw qwH -qNF -efW -jTJ +eVD +duL +axz hcB sIj hkA @@ -74662,24 +75314,24 @@ gbf tOM tOM xpM -mxQ -mxQ +fbn +fbn vZe -ydK -jzP +dIp +rTY tlj -ekW -rKs +tMW +pMr ngg -pYB -bnx +tEU +mqL taS jEa hPu -ydK +dIp blf -mxQ -mxQ +fbn +fbn jLD tOM tOM @@ -74795,10 +75447,10 @@ cAW cAW kPz cAW -jmG -uwk -jmG -mgz +hCG +nLO +hCG +jii xCg iFP kiT @@ -74807,9 +75459,9 @@ nmm nmm nmm wJd -vUP -mgz -mgz +qBw +jii +jii oUg oUg oUg @@ -74843,23 +75495,23 @@ ovq uvn uFC qyM -roQ +isw gRA -aZL -hdR +flG +svS dVu nSx hsz tad -izZ +gLq oQS vao -kqC +umN cYj qwH -mCF -kqC -jTJ +hhX +umN +axz oaa sIj hkA @@ -74874,24 +75526,24 @@ dxW gbf gbf gSg -mxQ +fbn qyq -gbf -gbf -gbf +sgI +sgI +sgI eEC -rKs +pMr saL qCx fEY -bzO -gbf +nxC +sgI drk -gbf -gbf -gbf -jHj -mxQ +sgI +sgI +sgI +ulN +fbn aNz gbf gbf @@ -75009,10 +75661,10 @@ bQM cAW cAW cAW -uwk -mgz -mgz -mgz +nLO +jii +jii +jii jPM oBC jNl @@ -75020,8 +75672,8 @@ vrp mTa bsm wqY -mgz -mgz +jii +jii oUg kSh wPz @@ -75055,14 +75707,14 @@ xZV uvn ovq qyM -mEU -roQ +tkh +isw gRA -aZL -mEU -roQ +flG +tkh +isw gRA -aZL +flG xNJ gRA gRA @@ -75087,22 +75739,22 @@ pYB pYB ont eGm -pYB -pYB -pYB -pYB +tEU +tEU +tEU +tEU qCx -pYB -pYB -pYB -pYB -pYB -pYB -pYB +tEU +tEU +tEU +tEU +tEU +tEU +tEU hpX -pYB -pYB -pYB +tEU +tEU +tEU vuT uBV pYB @@ -75221,10 +75873,10 @@ tan cAW cAW cAW -jmG -mgz -mgz -mgz +hCG +jii +jii +jii mUd ubQ okF @@ -75232,8 +75884,8 @@ fis lUs pqz wqY -mgz -mgz +jii +jii mPW cpP aFK @@ -75267,10 +75919,10 @@ xFL pmC xFL gRA -aZL -mEU -cGS -mEU +flG +tkh +ygS +tkh gRA gRA wOG @@ -75299,23 +75951,23 @@ pYB pYB aMr jYV -pYB -pYB +tEU +tEU ngg -pYB -pYB -pYB -pYB -pYB -pYB -pYB -pYB -pYB -pYB -pYB -pYB -pYB -qzb +tEU +tEU +tEU +tEU +tEU +tEU +tEU +tEU +tEU +tEU +tEU +tEU +tEU +vYp nmM pYB pYB @@ -75433,10 +76085,10 @@ eeI cAW cAW cAW -uwk -mgz +nLO +jii xCh -mgz +jii mUd hpz hxM @@ -75445,7 +76097,7 @@ iwT nmm wqY pUG -mgz +jii puE hTf qGn @@ -75480,13 +76132,13 @@ lAE vja nSx hsz -mEU +tkh gRA dJt -izZ -bEX -bEX -bEX +gLq +owc +owc +owc iCU gRA gRA @@ -75510,24 +76162,24 @@ gbf dxW gbf gSg -mxQ +fbn xcz -gbf -gbf -gbf +sgI +sgI +sgI ubo ubo -mxQ -opM -pYB +fbn +hJu +tEU tWz duV lAM -gbf -gbf -gbf -jHj -mxQ +sgI +sgI +sgI +ulN +fbn dNc gbf dxW @@ -75645,9 +76297,9 @@ kPz cAW cAW cAW -jmG -mgz -mgz +hCG +jii +jii rAw kiT wyU @@ -75655,9 +76307,9 @@ ujs nmm nmm wJd -vUP -mgz -wef +qBw +jii +wHV puE cJv eqQ @@ -75690,16 +76342,16 @@ uVH xFL pmC xFL -hdR +svS ntx kSe leN -mEU -izZ +tkh +gLq fOe rez xJn -bEX +owc cRM gRA bhX @@ -75722,24 +76374,24 @@ gbf tOM tOM xpM -mxQ -mxQ +fbn +fbn fEv uTw -pYB -pYB +tEU +tEU nKf -gbf -pYB -pYB +sgI +tEU +tEU hWG qQy -pRD -pRD +gWA +gWA khw htT -mxQ -mxQ +fbn +fbn vUZ tOM tOM @@ -75857,8 +76509,8 @@ emC cAW cAW cAW -uwk -mgz +nLO +jii rAw rAw vsr @@ -75867,9 +76519,9 @@ nmm cYT nmm wJd -lFB -wef -mgz +meE +wHV +jii qrz puE lzn @@ -75902,18 +76554,18 @@ oRg ovq uvn uZP -aZL -aZL -mEU +flG +flG +tkh gRA gRA -izZ +gLq bIR gWq xJn -bEX +owc lbL -xKX +ubx iyc bhX iBr @@ -75935,22 +76587,22 @@ gbf tOM rdt rsQ -mxQ +fbn lWy -gbf -gbf -jMv -pYB -gbf -pYB -ioW +sgI +sgI +xqi +tEU +sgI +tEU +hyM hXF -pRD -ota -gbf -jzP -pRx -jjg +gWA +rkX +sgI +rTY +vGf +qtp tlC kyh tOM @@ -76069,8 +76721,8 @@ bQM cAW cAW cAW -jmG -mgz +hCG +jii rAw rAw gFN @@ -76079,8 +76731,8 @@ nmm nmm nmm wJd -rLG -mgz +apg +jii pUG puE eqQ @@ -76119,7 +76771,7 @@ ntx kSe gRA gRA -izZ +gLq nyF tOc tOc @@ -76147,22 +76799,22 @@ gbf tOM tOM xpM -mxQ -mxQ -tOM +fbn +fbn +xwm gjr -gbf +sgI fgq drk -pYB -pYB -gbf -pRD -gbf -gbf +tEU +tEU +sgI +gWA +sgI +sgI oLX -mxQ -mxQ +fbn +fbn vUZ tOM tOM @@ -76281,8 +76933,8 @@ cAW bQM cAW cAW -uwk -mgz +nLO +jii rAw rAw srQ @@ -76291,9 +76943,9 @@ sUX nmm nmm nEN -tPB -mgz -mgz +sJH +jii +jii mPW vvM tet @@ -76327,15 +76979,15 @@ ovq uvn ovq ovq -aZL -mEU +flG +tkh gRA fXo -izZ -bEX +gLq +owc mrG -bEX -izZ +owc +gLq oQS lco oZx @@ -76360,20 +77012,20 @@ gbf tOM kTD rsQ -mxQ -tOM -tOM -gbf -pYB -gbf -pYB -pYB -gbf -fOT -jzP +fbn +xwm +xwm +sgI +tEU +sgI +tEU +tEU +sgI +xct +rTY oLX wYT -jjg +qtp tlC jrO tOM @@ -76493,8 +77145,8 @@ bce kPz bce cAW -jmG -mgz +hCG +jii rAw xCg xKP @@ -76503,9 +77155,9 @@ oNx uuJ oNx jWy -vUP -mgz -mgz +qBw +jii +jii jqt pTU wPz @@ -76572,20 +77224,20 @@ gbf rsR tOM xpM -mxQ -mxQ -mxQ +fbn +fbn +fbn sHe -pYB -kBt -pYB -pYB -gbf +tEU +xlC +tEU +tEU +sgI wdo nEP -mxQ -jjg -mxQ +fbn +qtp +fbn vUZ tOM oEQ @@ -76705,19 +77357,19 @@ cAW fiq cAW cAW -uwk -mgz -mgz -mgz -mgz -mgz -mgz -mgz -mgz -mgz -mgz -mgz -mgz +nLO +jii +jii +jii +jii +jii +jii +jii +jii +jii +jii +jii +jii oUg oUg oUg @@ -76786,16 +77438,16 @@ tOM rdt jGC rsQ -mxQ -mxQ -mxQ +fbn +fbn +fbn aLz -pYB -pYB -mPn -mxQ -jjg -mxQ +tEU +tEU +vcn +fbn +qtp +fbn tlC jGC kyh @@ -76917,19 +77569,19 @@ cAW fiq fiq tan -jmG -mgz -mgz -mgz -mgz -mgz -vUP -vUP -vUP -vUP -mgz -mgz -mgz +hCG +jii +jii +jii +jii +jii +qBw +qBw +qBw +qBw +jii +jii +jii oUg oUg oUg @@ -77000,12 +77652,12 @@ tOM kTD jGC rsQ -mxQ -mxQ +fbn +fbn rqh iAr -mxQ -mxQ +fbn +fbn tlC jGC jrO @@ -77129,19 +77781,19 @@ tan tan tan tan -jmG -jmG -uwk -jmG -uwk -jmG -wef +hCG +hCG +nLO +hCG +nLO +hCG +wHV kmL -wef +wHV kmL -jmG -jmG -jmG +hCG +hCG +hCG vnr vnr vnr diff --git a/maps/map_files/Ice_Colony_v3/Shivas_Snowball.dmm b/maps/map_files/Ice_Colony_v3/Shivas_Snowball.dmm index 6c1c5460a935..5d1f4b9ccc7b 100644 --- a/maps/map_files/Ice_Colony_v3/Shivas_Snowball.dmm +++ b/maps/map_files/Ice_Colony_v3/Shivas_Snowball.dmm @@ -1641,14 +1641,6 @@ /obj/structure/bed/chair/wheelchair, /turf/open/floor/shiva/wred/northeast, /area/shiva/interior/colony/medseceng) -"ajd" = ( -/obj/item/stack/snow{ - pixel_x = 8; - pixel_y = 9 - }, -/obj/item/stack/snow, -/turf/open/auto_turf/snow/layer3, -/area/shiva/exterior/junkyard) "aje" = ( /obj/structure/machinery/light/double{ dir = 4; @@ -1699,13 +1691,6 @@ /obj/structure/machinery/vending/snack, /turf/open/floor/shiva/bluefull, /area/shiva/interior/colony/central) -"ajE" = ( -/obj/item/stack/snow{ - pixel_x = -7 - }, -/obj/item/tool/shovel/snow, -/turf/open/auto_turf/snow/layer3, -/area/shiva/exterior/junkyard) "ajF" = ( /obj/item/tool/shovel/etool, /turf/open/auto_turf/snow/layer3, @@ -1980,6 +1965,10 @@ "alA" = ( /turf/open/auto_turf/ice/layer2, /area/shiva/exterior/junkyard) +"alG" = ( +/obj/effect/landmark/structure_spawner/setup/distress/xeno_weed_node, +/turf/open/auto_turf/snow/layer0, +/area/shiva/exterior/cp_colony_grounds) "alJ" = ( /obj/item/device/flashlight/lamp/tripod/grey, /turf/open/auto_turf/ice/layer1, @@ -2637,6 +2626,14 @@ }, /turf/open/auto_turf/snow/layer3, /area/shiva/exterior/cp_lz2) +"aqz" = ( +/obj/structure/machinery/light/double{ + dir = 4; + pixel_y = -5 + }, +/obj/effect/landmark/structure_spawner/setup/distress/xeno_weed_node, +/turf/open/floor/shiva/north, +/area/shiva/interior/colony/medseceng) "aqC" = ( /obj/effect/decal/warning_stripes{ icon_state = "W" @@ -3179,12 +3176,6 @@ }, /turf/open/floor/shiva/floor3, /area/shiva/interior/bar) -"avx" = ( -/obj/structure/platform/shiva/catwalk{ - dir = 1 - }, -/turf/open/auto_turf/snow/layer3, -/area/shiva/exterior/junkyard) "avz" = ( /obj/structure/surface/rack, /obj/item/bodybag/tarp/snow{ @@ -3195,6 +3186,13 @@ }, /turf/open/floor/interior/plastic, /area/shiva/interior/warehouse) +"avR" = ( +/obj/structure/stairs/perspective/ice{ + dir = 8; + icon_state = "p_stair_sn_full_cap" + }, +/turf/open/auto_turf/snow/layer1, +/area/shiva/exterior/southwest_valley) "avU" = ( /obj/structure/prop/invuln/ice_prefab{ icon_state = "fab_2" @@ -4315,6 +4313,9 @@ /obj/item/frame/table, /turf/open/floor/shiva/wred, /area/shiva/interior/colony/medseceng) +"aJt" = ( +/turf/open/auto_turf/snow/layer1, +/area/shiva/exterior/southwest_valley) "aJy" = ( /obj/structure/flora/tree/dead/tree_5, /turf/open/auto_turf/snow/layer3, @@ -4861,6 +4862,10 @@ /obj/effect/decal/cleanable/blood/oil, /turf/open/floor/plating, /area/shiva/interior/colony/medseceng) +"aRa" = ( +/obj/effect/landmark/structure_spawner/setup/distress/xeno_weed_node, +/turf/open/auto_turf/ice/layer2, +/area/shiva/exterior/valley) "aRb" = ( /obj/structure/machinery/door/poddoor/shutters/almayer{ name = "\improper Panic Room Shutters" @@ -5306,11 +5311,6 @@ /obj/item/stack/sheet/metal, /turf/open/shuttle/can_surgery/black, /area/shiva/interior/aerodrome) -"aWb" = ( -/obj/structure/foamed_metal, -/obj/item/weapon/gun/shotgun/pump/dual_tube/cmb, -/turf/open/floor/shiva/north, -/area/shiva/exterior/lz2_fortress) "aWs" = ( /obj/effect/decal/warning_stripes{ icon_state = "NE-out" @@ -5460,6 +5460,11 @@ }, /turf/open/floor/shiva/purplefull/east, /area/shiva/interior/colony/research_hab) +"aXD" = ( +/obj/effect/decal/cleanable/dirt, +/obj/effect/landmark/structure_spawner/setup/distress/xeno_door, +/turf/open/floor/shiva/purplefull/west, +/area/shiva/interior/colony/research_hab) "aXH" = ( /obj/effect/decal/warning_stripes{ icon_state = "S" @@ -5658,7 +5663,7 @@ dir = 8 }, /turf/open/floor/shiva/multi_tiles/east, -/area/shiva/interior/colony/deck) +/area/shiva/interior/colony/central) "bbG" = ( /obj/structure/ice/thin/indestructible{ dir = 4; @@ -5712,9 +5717,6 @@ }, /turf/open/gm/river, /area/shiva/interior/warehouse/caves) -"bdT" = ( -/turf/open/floor/shiva/radiator_tile2, -/area/shiva/interior/colony/medseceng) "ben" = ( /turf/open/auto_turf/snow/layer1, /area/shiva/exterior/telecomm/lz1_north) @@ -5804,10 +5806,6 @@ "bhI" = ( /turf/open/floor/shiva/wred/southeast, /area/shiva/interior/colony/medseceng) -"bhN" = ( -/obj/structure/flora/grass/tallgrass/ice/corner, -/turf/open/auto_turf/snow/layer2, -/area/shiva/exterior/junkyard) "bhS" = ( /turf/open/floor/shiva/wred/north, /area/shiva/interior/colony/medseceng) @@ -5818,19 +5816,16 @@ }, /turf/open/floor/shiva/floor3, /area/shiva/interior/lz2_habs) +"bir" = ( +/obj/structure/stairs/perspective/ice{ + dir = 1; + icon_state = "p_stair_sn_full_cap" + }, +/turf/open/auto_turf/snow/layer0, +/area/shiva/exterior/southwest_valley) "biM" = ( /turf/open/floor/carpet, /area/shiva/interior/colony/research_hab) -"bjb" = ( -/obj/structure/prop/ice_colony/dense/planter_box{ - dir = 5 - }, -/obj/structure/flora/bush/snow{ - icon_state = "snowbush_2"; - pixel_y = 10 - }, -/turf/open/auto_turf/snow/layer0, -/area/shiva/interior/colony/deck) "bjv" = ( /turf/open/auto_turf/ice/layer1, /area/shiva/exterior/cp_colony_grounds) @@ -5930,6 +5925,10 @@ /obj/structure/closet/firecloset, /turf/open/floor/shiva/redfull, /area/shiva/interior/colony/research_hab) +"bqz" = ( +/obj/effect/sentry_landmark/lz_1/top_right, +/turf/open/auto_turf/snow/layer3, +/area/shiva/interior/caves/cp_camp) "bqN" = ( /obj/structure/machinery/door/airlock/almayer/generic, /turf/open/shuttle/can_surgery/black, @@ -5938,9 +5937,6 @@ /obj/effect/decal/cleanable/blood, /turf/open/asphalt/cement, /area/shiva/interior/warehouse) -"bsp" = ( -/turf/open/floor/shiva/bluefull, -/area/shiva/interior/colony/deck) "bsw" = ( /obj/effect/landmark/corpsespawner/bridgeofficer, /turf/open/auto_turf/snow/layer0, @@ -6125,6 +6121,12 @@ /obj/item/reagent_container/food/drinks/cans/beer, /turf/open/floor/prison/kitchen, /area/shiva/interior/bar) +"bBx" = ( +/obj/effect/decal/cleanable/dirt, +/obj/effect/decal/cleanable/dirt, +/obj/effect/landmark/structure_spawner/setup/distress/xeno_door, +/turf/open/auto_turf/snow/layer0, +/area/shiva/interior/colony/research_hab) "bBB" = ( /obj/structure/largecrate/random/barrel, /turf/open/floor/plating, @@ -6193,12 +6195,6 @@ }, /turf/open/floor/shiva/floor3, /area/shiva/interior/bar) -"bHC" = ( -/obj/structure/platform/shiva/catwalk{ - dir = 8 - }, -/turf/open/auto_turf/snow/layer2, -/area/shiva/exterior/junkyard) "bHN" = ( /obj/item/ammo_magazine/rifle/boltaction{ pixel_x = -7; @@ -6223,6 +6219,10 @@ /obj/item/device/motiondetector/hacked, /turf/open/floor/shiva, /area/shiva/interior/colony/research_hab) +"bIl" = ( +/obj/effect/landmark/structure_spawner/setup/distress/xeno_weed_node, +/turf/open/floor/shiva/yellow/west, +/area/shiva/interior/colony/research_hab) "bIV" = ( /turf/open/auto_turf/snow/layer1, /area/shiva/exterior/junkyard/cp_bar) @@ -6272,6 +6272,12 @@ }, /turf/open/floor/plating, /area/shiva/interior/colony/central) +"bLV" = ( +/obj/effect/decal/warning_stripes{ + icon_state = "W-corner" + }, +/turf/open/floor/plating, +/area/shiva/exterior/southwest_valley) "bMn" = ( /obj/structure/surface/table/woodentable, /obj/item/reagent_container/food/drinks/bottle/holywater, @@ -6353,6 +6359,9 @@ /obj/structure/flora/tree/dead/tree_5, /turf/open/auto_turf/snow/layer3, /area/shiva/exterior/junkyard) +"bSu" = ( +/turf/closed/wall/shiva/ice, +/area/shiva/exterior/southwest_valley) "bSB" = ( /obj/structure/prop/invuln{ desc = "big pile energy."; @@ -6415,11 +6424,6 @@ /obj/structure/reagent_dispensers/water_cooler, /turf/open/floor/wood, /area/shiva/interior/colony/medseceng) -"bVS" = ( -/obj/structure/machinery/light/double, -/obj/effect/decal/cleanable/vomit, -/turf/open/floor/plating, -/area/shiva/interior/colony/medseceng) "bWB" = ( /obj/structure/surface/rack, /obj/item/tank/emergency_oxygen/double, @@ -6531,6 +6535,10 @@ /obj/effect/spawner/random/tool, /turf/open/auto_turf/snow/layer0, /area/shiva/interior/caves/cp_camp) +"cbV" = ( +/obj/vehicle/train/cargo/engine, +/turf/open/floor/plating/plating_catwalk/shiva, +/area/shiva/exterior/southwest_valley) "cbW" = ( /obj/structure/largecrate/random/mini/med, /turf/open/floor/plating, @@ -6588,6 +6596,15 @@ }, /turf/open/auto_turf/snow/layer3, /area/shiva/exterior/cp_lz2) +"cgN" = ( +/obj/structure/stairs/perspective{ + icon_state = "p_stair_sn_full_cap" + }, +/obj/structure/platform/shiva/catwalk{ + dir = 8 + }, +/turf/open/floor/plating, +/area/shiva/interior/colony/central) "cgQ" = ( /obj/item/device/taperecorder, /obj/item/clothing/glasses/sunglasses, @@ -6654,10 +6671,6 @@ }, /turf/open/auto_turf/snow/layer2, /area/shiva/exterior/junkyard/cp_bar) -"cnk" = ( -/obj/item/stack/sheet/metal, -/turf/open/floor/shiva/wred/east, -/area/shiva/interior/colony/medseceng) "cnt" = ( /obj/structure/largecrate/random/secure, /turf/open/auto_turf/snow/layer2, @@ -6730,6 +6743,10 @@ "crF" = ( /turf/open/floor/plating/plating_catwalk/shiva, /area/shiva/interior/colony/research_hab) +"crJ" = ( +/obj/effect/sentry_landmark/lz_1/bottom_right, +/turf/open/auto_turf/snow/layer0, +/area/shiva/exterior/lz1_valley) "crN" = ( /obj/structure/filingcabinet, /obj/effect/landmark/objective_landmark/far, @@ -6769,6 +6786,10 @@ /obj/structure/machinery/space_heater, /turf/open/floor/plating, /area/shiva/interior/caves/research_caves) +"cux" = ( +/obj/effect/landmark/structure_spawner/setup/distress/xeno_weed_node, +/turf/open/auto_turf/ice/layer0, +/area/shiva/interior/caves/research_caves) "cuJ" = ( /obj/structure/prop/ice_colony/ground_wire{ dir = 1 @@ -6791,6 +6812,21 @@ }, /turf/open/auto_turf/snow/layer4, /area/shiva/exterior/cp_lz2) +"cwx" = ( +/obj/structure/machinery/light/double{ + dir = 1; + pixel_y = 9 + }, +/obj/effect/landmark/structure_spawner/setup/distress/xeno_door, +/turf/open/floor/shiva/radiator_tile2, +/area/shiva/interior/colony/medseceng) +"cwG" = ( +/obj/structure/barricade/handrail/strata{ + dir = 8 + }, +/obj/structure/barricade/handrail/strata, +/turf/open/floor/shiva/north, +/area/shiva/interior/colony/central) "cwU" = ( /obj/effect/decal/warning_stripes{ icon_state = "W-corner" @@ -6999,9 +7035,6 @@ }, /turf/open/auto_turf/ice/layer1, /area/shiva/interior/caves/cp_camp) -"cKb" = ( -/turf/closed/wall/shiva/prefabricated/reinforced, -/area/shiva/interior/colony/deck) "cKB" = ( /obj/structure/machinery/light/double, /turf/open/floor/shiva/yellowfull/west, @@ -7095,6 +7128,12 @@ /obj/structure/machinery/medical_pod/bodyscanner, /turf/open/floor/shiva/wred/north, /area/shiva/interior/colony/medseceng) +"cQL" = ( +/obj/structure/platform/strata{ + dir = 1 + }, +/turf/open/gm/river, +/area/shiva/exterior/valley) "cQW" = ( /turf/open/floor/plating, /area/shiva/exterior/lz1_valley) @@ -7130,6 +7169,10 @@ /obj/item/clothing/suit/armor/riot/marine, /turf/open/floor/shiva/redfull/west, /area/shiva/interior/colony/research_hab) +"cTe" = ( +/obj/item/lightstick/red/variant, +/turf/open/auto_turf/snow/layer1, +/area/shiva/exterior/southwest_valley) "cTh" = ( /obj/item/lightstick/red/spoke/planted{ pixel_x = 11; @@ -7190,6 +7233,14 @@ }, /turf/open/floor/plating, /area/shiva/exterior/valley) +"cWI" = ( +/obj/item/stack/snow{ + pixel_x = 8; + pixel_y = 9 + }, +/obj/item/stack/snow, +/turf/open/auto_turf/snow/layer3, +/area/shiva/exterior/southwest_valley) "cWN" = ( /obj/structure/flora/grass/tallgrass/ice/corner{ dir = 4 @@ -7320,10 +7371,17 @@ "daD" = ( /turf/open/auto_turf/snow/layer3, /area/shiva/exterior/junkyard/cp_bar) +"daY" = ( +/obj/structure/stairs/perspective/ice{ + dir = 1; + icon_state = "p_stair_full" + }, +/turf/open/auto_turf/snow/layer1, +/area/shiva/exterior/southwest_valley) "dbv" = ( /obj/structure/largecrate/random/case, /turf/open/auto_turf/ice/layer1, -/area/shiva/interior/aerodrome) +/area/shiva/exterior/junkyard/cp_bar) "dbH" = ( /turf/closed/shuttle/ert{ icon_state = "stan1" @@ -7367,6 +7425,15 @@ }, /turf/open/floor/shiva/north, /area/shiva/interior/colony/medseceng) +"ddF" = ( +/obj/structure/prop/ice_colony/flamingo{ + dir = 1 + }, +/obj/structure/platform_decoration/shiva/catwalk{ + dir = 8 + }, +/turf/open/auto_turf/snow/layer2, +/area/shiva/exterior/southwest_valley) "dex" = ( /obj/structure/machinery/photocopier, /obj/effect/landmark/item_pool_spawner/survivor_ammo/buckshot, @@ -7400,6 +7467,15 @@ /obj/vehicle/train/cargo/engine, /turf/open/auto_turf/snow/layer0, /area/shiva/exterior/junkyard/cp_bar) +"dij" = ( +/obj/structure/platform/strata{ + dir = 1 + }, +/obj/structure/platform/strata{ + dir = 8 + }, +/turf/open/gm/river, +/area/shiva/exterior/valley) "diL" = ( /obj/structure/machinery/light/double{ dir = 1; @@ -7465,6 +7541,10 @@ }, /turf/open/floor/plating/plating_catwalk/shiva, /area/shiva/exterior/lz2_fortress) +"dkY" = ( +/obj/effect/sentry_landmark/lz_2/top_left, +/turf/open/floor/shiva/north, +/area/shiva/exterior/lz2_fortress) "dlk" = ( /obj/effect/decal/warning_stripes{ icon_state = "E-corner" @@ -7478,6 +7558,12 @@ /obj/structure/window/reinforced, /turf/open/floor/wood, /area/shiva/interior/colony/central) +"dmv" = ( +/obj/structure/platform/shiva/catwalk{ + dir = 4 + }, +/turf/open/auto_turf/snow/layer2, +/area/shiva/exterior/southwest_valley) "dnj" = ( /obj/structure/surface/rack, /obj/item/tool/shovel/snow, @@ -7608,6 +7694,10 @@ }, /turf/open/auto_turf/snow/layer2, /area/shiva/interior/colony/central) +"dvw" = ( +/obj/structure/flora/tree/dead/tree_1, +/turf/open/auto_turf/snow/layer2, +/area/shiva/exterior/southwest_valley) "dwf" = ( /obj/item/clothing/shoes/snow, /obj/structure/surface/rack, @@ -7677,6 +7767,10 @@ /obj/structure/cargo_container/horizontal/blue/bottom, /turf/open/floor/shiva/floor3, /area/shiva/interior/bar) +"dCB" = ( +/obj/item/lightstick/red/variant/planted, +/turf/open/auto_turf/snow/layer3, +/area/shiva/exterior/southwest_valley) "dCS" = ( /turf/closed/shuttle/ert{ icon_state = "stan2" @@ -7690,6 +7784,10 @@ /obj/structure/machinery/landinglight/ds1/spoke, /turf/open/floor/shiva/multi_tiles/southeast, /area/shiva/interior/colony/botany) +"dEh" = ( +/obj/effect/landmark/structure_spawner/setup/distress/xeno_wall, +/turf/open/floor/shiva/redfull/west, +/area/shiva/interior/colony/medseceng) "dEH" = ( /obj/structure/surface/rack, /obj/item/storage/toolbox/electrical, @@ -7707,6 +7805,10 @@ /obj/effect/landmark/crap_item, /turf/open/floor/shiva/north, /area/shiva/interior/colony/central) +"dIE" = ( +/obj/effect/landmark/structure_spawner/setup/distress/xeno_weed_node, +/turf/open/auto_turf/ice/layer2, +/area/shiva/interior/caves/research_caves) "dIF" = ( /obj/structure/machinery/photocopier, /turf/open/floor/shiva/wred/east, @@ -7719,6 +7821,9 @@ /obj/item/powerloader_clamp, /turf/open/auto_turf/ice/layer1, /area/shiva/interior/colony/research_hab) +"dKD" = ( +/turf/open/auto_turf/snow/layer4, +/area/shiva/exterior/southwest_valley) "dKL" = ( /obj/structure/flora/bush/snow{ icon_state = "snowgrassbb_1" @@ -7765,10 +7870,16 @@ dir = 8 }, /turf/open/floor/strata/floor3/east, -/area/shiva/interior/colony/deck) -"dOf" = ( -/turf/open/floor/shiva/yellowcorners/east, -/area/shiva/interior/colony/deck) +/area/shiva/interior/colony/central) +"dOn" = ( +/obj/structure/platform/strata{ + dir = 1 + }, +/obj/structure/platform/strata{ + dir = 4 + }, +/turf/open/gm/river, +/area/shiva/exterior/valley) "dOo" = ( /obj/structure/machinery/door_control/brbutton{ id = "nlz_shutters"; @@ -7944,6 +8055,10 @@ }, /turf/closed/wall/shiva/ice, /area/shiva/interior/caves/s_lz2) +"ean" = ( +/obj/effect/landmark/structure_spawner/setup/distress/xeno_door, +/turf/open/auto_turf/ice/layer1, +/area/shiva/interior/caves/research_caves) "eaz" = ( /obj/structure/surface/table, /obj/item/stock_parts/matter_bin/adv{ @@ -7963,6 +8078,15 @@ /obj/item/lightstick/red/spoke/planted, /turf/open/auto_turf/snow/layer3, /area/shiva/exterior/cp_colony_grounds) +"ecg" = ( +/obj/structure/platform/shiva/catwalk{ + dir = 1 + }, +/obj/structure/prop/ice_colony/flamingo{ + dir = 9 + }, +/turf/open/auto_turf/snow/layer2, +/area/shiva/exterior/southwest_valley) "ecj" = ( /turf/closed/wall/shiva/ice, /area/shiva/interior/caves/right_spiders) @@ -8008,6 +8132,10 @@ /obj/structure/largecrate/random/barrel/white, /turf/open/auto_turf/snow/layer1, /area/shiva/exterior/junkyard) +"efO" = ( +/obj/effect/landmark/structure_spawner/setup/distress/xeno_weed_node, +/turf/open/auto_turf/ice/layer1, +/area/shiva/interior/caves/research_caves) "egf" = ( /obj/structure/machinery/door/airlock/almayer/medical/colony{ name = "\improper Underground Sports Center" @@ -8026,12 +8154,6 @@ /obj/structure/blocker/forcefield/multitile_vehicles, /turf/closed/wall/shiva/prefabricated/blue, /area/shiva/interior/colony/research_hab) -"ehV" = ( -/obj/structure/platform/shiva/catwalk{ - dir = 1 - }, -/turf/open/auto_turf/snow/layer2, -/area/shiva/exterior/junkyard) "eit" = ( /obj/effect/decal/cleanable/blood/drip, /turf/open/auto_turf/ice/layer1, @@ -8152,6 +8274,16 @@ }, /turf/open/floor/shiva/snow_mat/north, /area/shiva/exterior/cp_lz2) +"eqm" = ( +/obj/structure/machinery/door_control/brbutton{ + id = "hangar_ice_2"; + pixel_y = 28 + }, +/obj/structure/platform/shiva/catwalk{ + dir = 4 + }, +/turf/open/auto_turf/snow/layer1, +/area/shiva/exterior/southwest_valley) "eqD" = ( /obj/structure/machinery/light/double{ dir = 8; @@ -8183,13 +8315,6 @@ }, /turf/open/floor/plating, /area/shiva/interior/colony/central) -"etl" = ( -/obj/structure/largecrate/random/secure, -/obj/item/ashtray/bronze{ - pixel_y = 7 - }, -/turf/open/auto_turf/snow/layer2, -/area/shiva/exterior/junkyard) "etm" = ( /obj/structure/machinery/cm_vending/sorted/medical/wall_med/limited{ pixel_y = 28 @@ -8243,12 +8368,6 @@ "exX" = ( /turf/open/floor/shiva/bluefull/west, /area/shiva/interior/warehouse) -"eyx" = ( -/obj/structure/bed/chair{ - dir = 4 - }, -/turf/open/auto_turf/snow/layer1, -/area/shiva/exterior/junkyard) "eAZ" = ( /turf/open/auto_turf/snow/layer2, /area/shiva/interior/colony/medseceng) @@ -8267,10 +8386,6 @@ }, /turf/open/floor/shiva/purplefull/west, /area/shiva/interior/lz2_habs) -"eBG" = ( -/obj/structure/barricade/wooden, -/turf/open/floor/plating, -/area/shiva/interior/colony/research_hab) "eBU" = ( /obj/effect/landmark/survivor_spawner, /turf/open/floor/shiva/north, @@ -8464,6 +8579,11 @@ /obj/item/reagent_container/food/drinks/bottle/vodka/chess/w_rook, /turf/open/floor/shiva/radiator_tile, /area/shiva/exterior/cp_lz2) +"eQr" = ( +/obj/item/weapon/gun/shotgun/pump/dual_tube/cmb, +/obj/effect/sentry_landmark/lz_2/bottom_right, +/turf/open/floor/shiva/north, +/area/shiva/exterior/lz2_fortress) "eRk" = ( /obj/structure/barricade/sandbags/wired{ dir = 8; @@ -8491,6 +8611,10 @@ }, /turf/open/auto_turf/snow/layer1, /area/shiva/interior/caves/cp_camp) +"eSo" = ( +/obj/effect/landmark/structure_spawner/setup/distress/xeno_wall, +/turf/open/auto_turf/ice/layer1, +/area/shiva/interior/colony/research_hab) "eSt" = ( /obj/effect/landmark/xeno_spawn, /turf/open/floor/shiva/multi_tiles/east, @@ -8499,10 +8623,6 @@ /obj/item/lightstick/red/spoke/planted, /turf/open/auto_turf/snow/layer2, /area/shiva/exterior/cp_colony_grounds) -"eSN" = ( -/obj/vehicle/train/cargo/engine, -/turf/open/floor/plating/plating_catwalk/shiva, -/area/shiva/exterior/junkyard) "eTV" = ( /obj/structure/flora/bush/ausbushes/lavendergrass{ icon_state = "lavendergrass_2" @@ -8551,6 +8671,10 @@ "eWB" = ( /turf/open/floor/plating, /area/shiva/interior/garage) +"eWF" = ( +/obj/structure/flora/bush/ausbushes/lavendergrass, +/turf/open/auto_turf/snow/layer3, +/area/shiva/exterior/southwest_valley) "eXL" = ( /obj/structure/surface/table, /obj/item/stack/cable_coil, @@ -8635,6 +8759,10 @@ "fcL" = ( /turf/open/floor/shiva/snow_mat, /area/shiva/exterior/cp_colony_grounds) +"fdo" = ( +/obj/effect/landmark/structure_spawner/setup/distress/xeno_weed_node, +/turf/open/floor/plating, +/area/shiva/interior/colony/research_hab) "fel" = ( /obj/structure/machinery/light/double{ dir = 8; @@ -8649,6 +8777,10 @@ }, /turf/open/floor/shiva/yellowfull, /area/shiva/interior/colony/research_hab) +"feQ" = ( +/obj/structure/platform/strata, +/turf/open/gm/river, +/area/shiva/exterior/valley) "feR" = ( /obj/structure/machinery/light/double, /turf/open/floor/shiva/yellow, @@ -8677,6 +8809,10 @@ /obj/effect/landmark/xeno_spawn, /turf/open/floor/shiva/multi_tiles, /area/shiva/interior/colony/research_hab) +"fgj" = ( +/obj/effect/landmark/structure_spawner/setup/distress/xeno_wall, +/turf/open/floor/shiva/redfull, +/area/shiva/interior/colony/medseceng) "fgB" = ( /obj/item/stack/sheet/metal, /obj/effect/decal/cleanable/dirt, @@ -8808,6 +8944,16 @@ /obj/structure/platform/strata, /turf/open/gm/river, /area/shiva/interior/caves/research_caves) +"fna" = ( +/obj/structure/platform_decoration/strata{ + dir = 1 + }, +/obj/item/lightstick/red/variant/planted{ + pixel_x = -7; + pixel_y = -5 + }, +/turf/open/auto_turf/snow/layer0, +/area/shiva/exterior/southwest_valley) "fnw" = ( /obj/structure/stairs/perspective/ice{ dir = 1; @@ -8842,13 +8988,10 @@ /obj/item/storage/firstaid/fire, /turf/open/shuttle/can_surgery/black, /area/shiva/interior/aerodrome) -"fpF" = ( -/obj/structure/stairs/perspective/ice{ - dir = 8; - icon_state = "p_stair_sn_full_cap" - }, -/turf/open/auto_turf/snow/layer1, -/area/shiva/interior/warehouse/caves) +"fpp" = ( +/obj/effect/landmark/structure_spawner/setup/distress/xeno_weed_node, +/turf/open/auto_turf/ice/layer0, +/area/shiva/interior/caves/medseceng_caves) "fqJ" = ( /obj/structure/bed/chair/office/dark{ dir = 1 @@ -8998,16 +9141,16 @@ /obj/structure/bed/chair, /turf/open/floor/shiva/red/north, /area/shiva/interior/colony/medseceng) -"fCs" = ( -/obj/structure/flora/grass/tallgrass/ice, -/turf/open/auto_turf/snow/layer2, -/area/shiva/exterior/junkyard) "fDd" = ( /obj/structure/surface/table, /obj/item/storage/box/donkpockets, /obj/effect/landmark/item_pool_spawner/survivor_ammo/buckshot, /turf/open/floor/shiva/north, /area/shiva/interior/colony/botany) +"fDx" = ( +/obj/effect/sentry_landmark/lz_1/bottom_left, +/turf/open/auto_turf/snow/layer0, +/area/shiva/exterior/lz1_valley) "fDH" = ( /obj/structure/machinery/colony_floodlight, /turf/open/auto_turf/snow/layer0, @@ -9174,21 +9317,18 @@ /obj/effect/decal/cleanable/blood, /turf/open/floor/prison, /area/shiva/interior/bar) +"fKR" = ( +/obj/structure/platform/shiva/catwalk{ + dir = 8 + }, +/turf/open/auto_turf/snow/layer3, +/area/shiva/exterior/southwest_valley) "fKT" = ( /obj/structure/surface/table, /obj/item/storage/box/bodybags, /obj/structure/machinery/light/double, /turf/open/floor/shiva/floor3, /area/shiva/interior/colony/central) -"fLi" = ( -/obj/item/tool/shovel/snow, -/obj/item/storage/fancy/cigarettes/arcturian_ace{ - layer = 3.1; - pixel_x = -8; - pixel_y = 23 - }, -/turf/open/auto_turf/snow/layer2, -/area/shiva/exterior/junkyard) "fLk" = ( /obj/item/clothing/shoes/snow, /obj/structure/surface/rack, @@ -9466,6 +9606,10 @@ /obj/effect/decal/cleanable/blood/gibs/xeno/up, /turf/open/floor/shiva/bluefull, /area/shiva/interior/colony/central) +"gdI" = ( +/obj/item/lightstick/red/variant/planted, +/turf/open/auto_turf/snow/layer1, +/area/shiva/exterior/southwest_valley) "gdU" = ( /obj/structure/barricade/wooden{ dir = 4; @@ -9486,6 +9630,12 @@ "geE" = ( /turf/closed/wall/shiva/prefabricated, /area/shiva/exterior/junkyard) +"geQ" = ( +/obj/structure/bed/chair{ + dir = 4 + }, +/turf/open/auto_turf/snow/layer1, +/area/shiva/exterior/southwest_valley) "geS" = ( /obj/structure/machinery/iv_drip, /turf/open/floor/shiva/wred/northwest, @@ -9534,9 +9684,6 @@ /obj/effect/landmark/objective_landmark/science, /turf/open/floor/shiva/redfull/west, /area/shiva/interior/colony/research_hab) -"gik" = ( -/turf/open/auto_turf/snow/layer0, -/area/shiva/interior/aerodrome) "giH" = ( /obj/structure/machinery/door/airlock/almayer/security/glass/colony, /turf/open/floor/plating, @@ -9584,19 +9731,11 @@ /obj/item/device/flashlight, /turf/open/auto_turf/ice/layer1, /area/shiva/interior/caves/s_lz2) -"gmV" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/shiva/floor3, -/area/shiva/interior/colony/research_hab) "gnZ" = ( /turf/closed/shuttle/elevator{ dir = 8 }, /area/shiva/interior/colony/central) -"goe" = ( -/turf/open/auto_turf/ice/layer2, -/area/shiva/interior/aerodrome) "goh" = ( /obj/effect/decal/cleanable/blood{ icon_state = "gib6" @@ -9677,16 +9816,6 @@ /obj/structure/machinery/power/apc/no_power/east, /turf/open/floor/shiva/north, /area/shiva/interior/caves/s_lz2) -"grk" = ( -/obj/structure/platform/strata{ - dir = 8 - }, -/obj/structure/stairs/perspective/ice{ - dir = 1; - icon_state = "p_stair_sn_full_cap" - }, -/turf/open/auto_turf/snow/layer0, -/area/shiva/interior/warehouse/caves) "gso" = ( /obj/structure/platform/strata, /turf/open/gm/river, @@ -9789,12 +9918,6 @@ /obj/effect/landmark/hunter_secondary, /turf/open/auto_turf/ice/layer1, /area/shiva/exterior/valley) -"gzb" = ( -/obj/structure/flora/grass/tallgrass/ice/corner{ - dir = 6 - }, -/turf/open/auto_turf/snow/layer2, -/area/shiva/exterior/junkyard) "gzc" = ( /obj/structure/machinery/portable_atmospherics/powered/scrubber{ icon_state = "psiphon:1" @@ -9836,6 +9959,11 @@ }, /turf/open/floor/plating, /area/shiva/interior/colony/botany) +"gCe" = ( +/obj/item/ammo_magazine/rifle/m41aMK1, +/obj/effect/landmark/structure_spawner/setup/distress/xeno_weed_node, +/turf/open/floor/shiva, +/area/shiva/interior/colony/research_hab) "gCx" = ( /obj/structure/machinery/landinglight/ds1/spoke, /turf/open/auto_turf/snow/layer1, @@ -9845,11 +9973,6 @@ /obj/item/device/flashlight, /turf/open/floor/shiva/yellow/southeast, /area/shiva/interior/garage) -"gCL" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/blood/drip, -/turf/open/floor/shiva, -/area/shiva/interior/colony/research_hab) "gCW" = ( /obj/structure/platform/shiva/catwalk{ dir = 8 @@ -9860,6 +9983,12 @@ /obj/item/device/flashlight/lamp/tripod, /turf/open/floor/shiva/snow_mat, /area/shiva/interior/colony/botany) +"gDH" = ( +/obj/structure/platform_decoration/shiva/catwalk{ + dir = 8 + }, +/turf/open/auto_turf/snow/layer4, +/area/shiva/exterior/southwest_valley) "gEk" = ( /obj/structure/prop/invuln/ice_prefab/roof_greeble{ icon_state = "vent4"; @@ -9904,6 +10033,10 @@ /obj/item/ammo_magazine/rifle/m41aMK1, /turf/open/floor/shiva, /area/shiva/interior/colony/research_hab) +"gGq" = ( +/obj/item/lightstick/red/variant/planted, +/turf/open/auto_turf/snow/layer2, +/area/shiva/exterior/southwest_valley) "gGB" = ( /obj/effect/decal/cleanable/blood{ icon_state = "xgibdown1" @@ -9987,6 +10120,9 @@ /obj/item/trash/cigbutt, /turf/open/floor/shiva/floor3, /area/shiva/interior/colony/research_hab) +"gKF" = ( +/turf/open/auto_turf/ice/layer1, +/area/shiva/exterior/southwest_valley) "gKQ" = ( /obj/structure/machinery/light/small{ dir = 4 @@ -10188,10 +10324,17 @@ /obj/effect/landmark/objective_landmark/close, /turf/open/floor/shiva/green/northwest, /area/shiva/interior/colony/botany) +"gWc" = ( +/obj/effect/landmark/structure_spawner/setup/distress/xeno_wall, +/turf/open/floor/plating, +/area/shiva/interior/caves/research_caves) "gWk" = ( /obj/structure/window/framed/shiva, /turf/open/floor/plating, /area/shiva/interior/bar) +"gWx" = ( +/turf/closed/wall/shiva/prefabricated/reinforced, +/area/shiva/exterior/southwest_valley) "gWF" = ( /obj/structure/machinery/light/double{ dir = 1; @@ -10235,6 +10378,10 @@ /obj/effect/landmark/hunter_primary, /turf/open/auto_turf/ice/layer1, /area/shiva/interior/caves/cp_camp) +"gZn" = ( +/obj/effect/decal/cleanable/blood/oil, +/turf/open/auto_turf/snow/layer1, +/area/shiva/exterior/southwest_valley) "gZG" = ( /obj/structure/machinery/door/airlock/almayer/medical/colony{ dir = 2; @@ -10258,13 +10405,6 @@ /obj/structure/platform/strata, /turf/open/auto_turf/ice/layer1, /area/shiva/interior/oob/dev_room) -"hbp" = ( -/obj/structure/stairs/perspective/ice{ - dir = 1; - icon_state = "p_stair_full" - }, -/turf/open/auto_turf/snow/layer4, -/area/shiva/exterior/junkyard) "hbu" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/reagent_container/food/snacks/flour{ @@ -10282,12 +10422,19 @@ }, /turf/open/auto_turf/snow/layer2, /area/shiva/exterior/lz1_valley) +"hbY" = ( +/turf/open/auto_turf/snow/layer0, +/area/shiva/exterior/southwest_valley) "hcH" = ( /turf/closed/wall/shiva/prefabricated/reinforced, /area/shiva/interior/bar) "hcJ" = ( /turf/closed/wall/shiva/prefabricated/reinforced/hull, /area/shiva/interior/telecomm/lz1_biceps) +"hdF" = ( +/obj/effect/landmark/structure_spawner/setup/distress/xeno_weed_node, +/turf/open/floor/shiva/redfull, +/area/shiva/interior/colony/medseceng) "hfm" = ( /obj/item/paper/research_notes/good, /turf/open/floor/shiva/floor3, @@ -10505,6 +10652,10 @@ }, /turf/open/floor/shiva/wredfull, /area/shiva/interior/colony/medseceng) +"hst" = ( +/obj/effect/landmark/structure_spawner/setup/distress/xeno_weed_node, +/turf/open/floor/shiva/wred/southeast, +/area/shiva/interior/colony/medseceng) "hsw" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/circuitboard, @@ -10554,6 +10705,16 @@ /obj/structure/flora/tree/dead/tree_3, /turf/open/auto_turf/snow/layer3, /area/shiva/exterior/cp_s_research) +"hvd" = ( +/obj/effect/landmark/structure_spawner/setup/distress/xeno_door, +/turf/open/floor/shiva/radiator_tile2, +/area/shiva/interior/colony/medseceng) +"hvH" = ( +/obj/structure/flora/bush/snow{ + icon_state = "snowgrassbb_1" + }, +/turf/open/auto_turf/snow/layer2, +/area/shiva/exterior/southwest_valley) "hvZ" = ( /obj/structure/machinery/door/poddoor/shutters/almayer{ id = "hangar_ice_3"; @@ -10591,15 +10752,6 @@ /obj/structure/flora/tree/dead/tree_2, /turf/open/auto_turf/snow/layer3, /area/shiva/exterior/cp_s_research) -"hye" = ( -/obj/structure/prop/ice_colony/flamingo{ - dir = 1 - }, -/obj/structure/platform_decoration/shiva/catwalk{ - dir = 8 - }, -/turf/open/auto_turf/snow/layer2, -/area/shiva/exterior/junkyard) "hyu" = ( /turf/open/floor/shiva/bluefull, /area/shiva/interior/colony/s_admin) @@ -10752,7 +10904,7 @@ dir = 4 }, /turf/open/floor/plating, -/area/shiva/interior/colony/deck) +/area/shiva/interior/colony/medseceng) "hEx" = ( /obj/item/lightstick/red/spoke/planted{ pixel_x = 12; @@ -10776,6 +10928,10 @@ "hFj" = ( /turf/open/auto_turf/snow/layer4, /area/shiva/exterior/junkyard/fortbiceps) +"hFk" = ( +/obj/effect/landmark/structure_spawner/setup/distress/xeno_weed_node, +/turf/open/floor/shiva/yellowfull, +/area/shiva/interior/colony/research_hab) "hFl" = ( /turf/open/auto_turf/ice/layer0, /area/shiva/interior/oob/dev_room) @@ -10807,15 +10963,6 @@ }, /turf/open/auto_turf/snow/layer1, /area/shiva/exterior/junkyard/fortbiceps) -"hHR" = ( -/obj/effect/decal/warning_stripes{ - icon_state = "W-corner" - }, -/obj/structure/barricade/metal{ - dir = 4 - }, -/turf/open/floor/plating, -/area/shiva/exterior/junkyard) "hHV" = ( /obj/structure/surface/table, /obj/structure/machinery/cell_charger, @@ -11038,6 +11185,11 @@ }, /turf/open/floor/wood, /area/shiva/interior/colony/medseceng) +"hUS" = ( +/obj/item/stack/sheet/metal, +/obj/effect/landmark/structure_spawner/setup/distress/xeno_weed_node, +/turf/open/floor/shiva/wredfull, +/area/shiva/interior/colony/medseceng) "hVs" = ( /obj/structure/surface/table, /obj/item/evidencebag{ @@ -11045,9 +11197,6 @@ }, /turf/open/floor/shiva, /area/shiva/interior/colony/research_hab) -"hWh" = ( -/turf/open/floor/shiva/floor3, -/area/shiva/interior/colony/deck) "hWK" = ( /obj/structure/prop/ice_colony/dense/planter_box{ dir = 1 @@ -11141,13 +11290,6 @@ }, /turf/open/floor/shiva/floor3, /area/shiva/interior/aerodrome) -"icC" = ( -/obj/structure/machinery/light/double{ - dir = 8; - pixel_y = -5 - }, -/turf/open/floor/shiva/north, -/area/shiva/interior/colony/deck) "idR" = ( /obj/structure/platform_decoration/strata{ dir = 1 @@ -11183,6 +11325,10 @@ /obj/effect/landmark/xeno_spawn, /turf/open/floor/shiva/redfull/west, /area/shiva/interior/colony/research_hab) +"ifI" = ( +/obj/effect/landmark/structure_spawner/setup/distress/xeno_weed_node, +/turf/open/floor/wood, +/area/shiva/interior/colony/medseceng) "ifN" = ( /obj/structure/surface/rack, /obj/item/lightstick, @@ -11212,15 +11358,16 @@ /obj/effect/landmark/objective_landmark/science, /turf/open/floor/plating, /area/shiva/interior/caves/research_caves) -"igN" = ( -/turf/open/floor/shiva/yellow/east, -/area/shiva/interior/colony/deck) "ihh" = ( /obj/structure/surface/table, /obj/item/clipboard, /obj/effect/landmark/item_pool_spawner/survivor_ammo/buckshot, /turf/open/floor/shiva/north, /area/shiva/interior/colony/medseceng) +"ihk" = ( +/obj/effect/sentry_landmark/lz_2/bottom_right, +/turf/open/floor/shiva/radiator_tile, +/area/shiva/exterior/lz2_fortress) "ihp" = ( /obj/structure/surface/table/woodentable, /obj/item/reagent_container/food/drinks/bottle/sake, @@ -11410,6 +11557,10 @@ /obj/structure/machinery/vending/snack, /turf/open/floor/shiva/floor3, /area/shiva/interior/colony/central) +"itu" = ( +/obj/structure/flora/tree/dead/tree_2, +/turf/open/auto_turf/snow/layer3, +/area/shiva/exterior/southwest_valley) "itG" = ( /obj/structure/closet/secure_closet/security, /obj/effect/landmark/objective_landmark/medium, @@ -11439,6 +11590,12 @@ "itW" = ( /turf/open/floor/shiva/red/north, /area/shiva/interior/colony/central) +"iub" = ( +/obj/structure/flora/grass/tallgrass/ice/corner{ + dir = 10 + }, +/turf/open/auto_turf/snow/layer2, +/area/shiva/exterior/southwest_valley) "iuz" = ( /obj/effect/decal/cleanable/blood/drip, /turf/open/floor/shiva/floor3, @@ -11544,7 +11701,7 @@ "ixX" = ( /obj/structure/closet/toolcloset, /turf/open/floor/shiva/yellow/southwest, -/area/shiva/interior/colony/deck) +/area/shiva/interior/colony/medseceng) "iyk" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/reagent_container/food/snacks/sliceable/cheesecake{ @@ -11682,12 +11839,6 @@ }, /turf/open/floor/shiva/multi_tiles/east, /area/shiva/interior/colony/botany) -"iHu" = ( -/obj/structure/platform_decoration/shiva/catwalk{ - dir = 8 - }, -/turf/open/auto_turf/snow/layer4, -/area/shiva/exterior/junkyard) "iHN" = ( /obj/effect/landmark/survivor_spawner, /turf/open/floor/shiva/green/east, @@ -11746,12 +11897,6 @@ "iJY" = ( /turf/open/floor/shiva/red/north, /area/shiva/interior/colony/medseceng) -"iKW" = ( -/obj/structure/platform_decoration/shiva/catwalk{ - dir = 4 - }, -/turf/open/auto_turf/snow/layer1, -/area/shiva/exterior/junkyard) "iLf" = ( /obj/item/lightstick/red/spoke/planted{ pixel_x = 12; @@ -11759,10 +11904,6 @@ }, /turf/open/floor/shiva/radiator_tile, /area/shiva/exterior/lz2_fortress) -"iLS" = ( -/obj/item/stack/cable_coil/cut, -/turf/open/floor/shiva/north, -/area/shiva/interior/colony/deck) "iMb" = ( /turf/open/auto_turf/snow/layer2, /area/shiva/exterior/valley) @@ -11770,14 +11911,15 @@ /obj/structure/window/framed/shiva, /turf/open/floor/plating, /area/shiva/interior/aerodrome) -"iMC" = ( -/obj/item/tool/shovel/snow, -/turf/open/auto_turf/snow/layer1, -/area/shiva/exterior/junkyard) "iMW" = ( /obj/item/stack/cable_coil/cut, /turf/open/auto_turf/snow/layer0, /area/shiva/interior/caves/cp_camp) +"iNt" = ( +/obj/structure/desertdam/decals/road_stop, +/obj/effect/landmark/structure_spawner/setup/distress/xeno_door, +/turf/open/floor/shiva/floor3, +/area/shiva/interior/colony/research_hab) "iNS" = ( /obj/effect/decal/cleanable/blood{ dir = 4; @@ -11808,13 +11950,6 @@ /obj/item/lightstick/red/variant/planted, /turf/open/auto_turf/snow/layer1, /area/shiva/exterior/lz1_valley) -"iOA" = ( -/obj/structure/machinery/door_control/brbutton{ - id = "hangar_ice_3"; - pixel_y = 28 - }, -/turf/open/auto_turf/snow/layer0, -/area/shiva/exterior/junkyard) "iPg" = ( /turf/open/floor/shiva/multi_tiles/west, /area/shiva/interior/colony/n_admin) @@ -11895,7 +12030,7 @@ pixel_y = 7 }, /turf/open/floor/shiva/north, -/area/shiva/interior/colony/deck) +/area/shiva/interior/colony/medseceng) "iWu" = ( /obj/structure/machinery/cm_vending/sorted/medical/wall_med/souto{ pixel_y = 26 @@ -12027,12 +12162,6 @@ /obj/structure/machinery/power/apc/no_power/east, /turf/open/floor/shiva, /area/shiva/interior/bar) -"jac" = ( -/obj/structure/platform/shiva/catwalk{ - dir = 4 - }, -/turf/open/auto_turf/snow/layer3, -/area/shiva/exterior/junkyard) "jay" = ( /turf/open/floor/shiva/yellowcorners/north, /area/shiva/interior/colony/medseceng) @@ -12048,6 +12177,10 @@ /obj/item/device/whistle, /turf/open/floor/shiva/floor3, /area/shiva/interior/colony/research_hab) +"jbr" = ( +/obj/effect/landmark/structure_spawner/setup/distress/xeno_weed_node, +/turf/open/floor/carpet, +/area/shiva/interior/colony/medseceng) "jbE" = ( /turf/open/floor/shiva/floor3, /area/shiva/interior/colony/medseceng) @@ -12100,12 +12233,6 @@ }, /turf/open/floor/shiva/multi_tiles/west, /area/shiva/interior/colony/botany) -"jhm" = ( -/obj/structure/platform/shiva/catwalk{ - dir = 8 - }, -/turf/open/auto_turf/snow/layer4, -/area/shiva/exterior/junkyard) "jhq" = ( /turf/open/floor/shiva/radiator_tile, /area/shiva/interior/colony/n_admin) @@ -12206,9 +12333,6 @@ /obj/structure/platform_decoration/strata, /turf/open/auto_turf/ice/layer0, /area/shiva/interior/caves/s_lz2) -"joP" = ( -/turf/open/floor/shiva/yellowfull/west, -/area/shiva/interior/colony/deck) "jph" = ( /obj/structure/flora/grass/tallgrass/ice/corner{ dir = 6 @@ -12266,6 +12390,10 @@ /obj/structure/closet/secure_closet/security, /turf/open/floor/shiva/red/southwest, /area/shiva/interior/colony/central) +"jtc" = ( +/obj/effect/sentry_landmark/lz_1/bottom_left, +/turf/open/auto_turf/snow/layer1, +/area/shiva/exterior/lz1_valley) "jtp" = ( /obj/structure/prop/invuln/ice_prefab, /turf/open/auto_turf/ice/layer0, @@ -12518,6 +12646,10 @@ /obj/item/tool/pickaxe, /turf/open/auto_turf/ice/layer1, /area/shiva/interior/oob/dev_room) +"jLT" = ( +/obj/effect/landmark/structure_spawner/setup/distress/xeno_door, +/turf/open/auto_turf/ice/layer1, +/area/shiva/interior/caves/medseceng_caves) "jLX" = ( /obj/structure/machinery/door/airlock/almayer/generic{ name = "\improper Anti-Freeze Lounge" @@ -12527,10 +12659,18 @@ "jMf" = ( /turf/open/auto_turf/snow/layer3, /area/shiva/exterior/junkyard) +"jMB" = ( +/obj/effect/landmark/structure_spawner/setup/distress/xeno_wall, +/turf/open/auto_turf/ice/layer0, +/area/shiva/interior/caves/research_caves) "jMD" = ( /obj/structure/foamed_metal, /turf/open/floor/shiva/north, /area/shiva/exterior/lz2_fortress) +"jMK" = ( +/obj/effect/landmark/monkey_spawn, +/turf/open/auto_turf/snow/layer0, +/area/shiva/exterior/southwest_valley) "jMZ" = ( /turf/open/floor/chapel/east, /area/shiva/interior/colony/central) @@ -12604,6 +12744,12 @@ }, /turf/open/auto_turf/snow/layer0, /area/shiva/exterior/junkyard) +"jQi" = ( +/obj/effect/decal/cleanable/dirt, +/obj/effect/decal/cleanable/blood/drip, +/obj/effect/landmark/structure_spawner/setup/distress/xeno_weed_node, +/turf/open/floor/shiva, +/area/shiva/interior/colony/research_hab) "jQy" = ( /obj/structure/machinery/door/airlock/multi_tile/almayer/medidoor/colony{ dir = 1; @@ -12664,13 +12810,16 @@ /obj/item/device/flashlight/lamp, /turf/open/floor/shiva/north, /area/shiva/interior/colony/medseceng) +"jUM" = ( +/obj/structure/platform/shiva/catwalk{ + dir = 1 + }, +/turf/open/auto_turf/snow/layer3, +/area/shiva/exterior/southwest_valley) "jVi" = ( /obj/effect/decal/cleanable/blood/drip, /turf/open/auto_turf/snow/layer2, /area/shiva/interior/caves/cp_camp) -"jVp" = ( -/turf/open/floor/shiva/yellow/west, -/area/shiva/interior/colony/deck) "jVx" = ( /obj/structure/girder/reinforced, /turf/open/floor/plating, @@ -12684,13 +12833,6 @@ }, /turf/open/auto_turf/snow/layer0, /area/shiva/interior/colony/medseceng) -"jWh" = ( -/obj/structure/stairs/perspective/ice{ - dir = 1; - icon_state = "p_stair_full" - }, -/turf/open/auto_turf/snow/layer0, -/area/shiva/interior/warehouse/caves) "jWL" = ( /obj/structure/machinery/light/double{ dir = 1; @@ -12718,6 +12860,10 @@ }, /turf/open/auto_turf/snow/layer1, /area/shiva/exterior/cp_colony_grounds) +"jYX" = ( +/obj/effect/sentry_landmark/lz_1/top_right, +/turf/open/auto_turf/snow/layer0, +/area/shiva/interior/caves/cp_camp) "jZF" = ( /obj/item/tool/wirecutters/clippers, /turf/open/floor/shiva/floor3, @@ -12728,9 +12874,6 @@ }, /turf/open/floor/shiva/floor3, /area/shiva/interior/colony/research_hab) -"kaC" = ( -/turf/closed/wall/shiva/ice, -/area/shiva/interior/aerodrome) "kaL" = ( /obj/effect/decal/warning_stripes{ icon_state = "NE-out" @@ -12758,13 +12901,6 @@ }, /turf/open/floor/shiva/floor3, /area/shiva/interior/aux_power) -"kbJ" = ( -/obj/structure/machinery/light/double{ - dir = 4; - pixel_y = -5 - }, -/turf/open/floor/shiva/north, -/area/shiva/interior/colony/medseceng) "kbK" = ( /obj/item/reagent_container/glass/bucket{ pixel_x = 4; @@ -12904,12 +13040,6 @@ }, /turf/open/auto_turf/snow/layer3, /area/shiva/exterior/cp_colony_grounds) -"khx" = ( -/obj/structure/platform/shiva/catwalk{ - dir = 4 - }, -/turf/open/auto_turf/snow/layer2, -/area/shiva/exterior/junkyard) "khz" = ( /obj/item/device/flashlight, /turf/open/floor/shiva, @@ -12946,7 +13076,7 @@ }, /obj/structure/barricade/handrail/strata, /turf/open/floor/shiva/north, -/area/shiva/interior/colony/deck) +/area/shiva/interior/colony/medseceng) "kjt" = ( /obj/structure/surface/table, /turf/open/floor/shiva/north, @@ -12958,13 +13088,10 @@ }, /turf/open/floor/plating, /area/shiva/interior/aerodrome) -"kjX" = ( -/obj/structure/stairs/perspective/ice{ - dir = 1; - icon_state = "p_stair_full" - }, -/turf/open/auto_turf/snow/layer4, -/area/shiva/interior/warehouse/caves) +"kkw" = ( +/obj/effect/landmark/structure_spawner/setup/distress/xeno_weed_node, +/turf/open/floor/shiva/wred/northeast, +/area/shiva/interior/colony/medseceng) "klF" = ( /obj/structure/bed/chair{ dir = 4 @@ -13043,6 +13170,10 @@ /obj/effect/landmark/objective_landmark/close, /turf/open/floor/shiva/floor3, /area/shiva/interior/colony/s_admin) +"kqO" = ( +/obj/effect/landmark/structure_spawner/setup/distress/xeno_wall, +/turf/open/auto_turf/ice/layer1, +/area/shiva/interior/caves/medseceng_caves) "kri" = ( /obj/item/lightstick/red/planted, /turf/open/auto_turf/snow/layer2, @@ -13100,7 +13231,7 @@ /area/shiva/interior/bar) "kuM" = ( /turf/open/floor/shiva/yellow/northwest, -/area/shiva/interior/colony/deck) +/area/shiva/interior/colony/medseceng) "kuS" = ( /obj/structure/flora/tree/dead/tree_1, /turf/open/auto_turf/snow/layer3, @@ -13423,6 +13554,12 @@ }, /turf/open/floor/interior/plastic/alt, /area/shiva/interior/warehouse) +"kLk" = ( +/obj/structure/flora/grass/tallgrass/ice/corner{ + dir = 6 + }, +/turf/open/auto_turf/snow/layer2, +/area/shiva/exterior/southwest_valley) "kLv" = ( /obj/item/tool/wirecutters/clippers, /turf/open/floor/shiva/north, @@ -13441,6 +13578,12 @@ /obj/structure/flora/grass/tallgrass/ice, /turf/open/auto_turf/snow/layer2, /area/shiva/exterior/cp_lz2) +"kLL" = ( +/obj/effect/decal/cleanable/dirt, +/obj/effect/decal/cleanable/dirt, +/obj/effect/landmark/structure_spawner/setup/distress/xeno_wall, +/turf/open/floor/shiva/floor3, +/area/shiva/interior/colony/research_hab) "kLM" = ( /turf/open/auto_turf/snow/layer1, /area/shiva/exterior/lz1_valley) @@ -13606,7 +13749,7 @@ "kTZ" = ( /obj/item/tool/wirecutters, /turf/open/floor/plating, -/area/shiva/interior/colony/deck) +/area/shiva/interior/colony/medseceng) "kVd" = ( /turf/open/auto_turf/snow/layer3, /area/shiva/exterior/cp_s_research) @@ -13676,6 +13819,10 @@ /obj/structure/machinery/power/port_gen/pacman, /turf/open/auto_turf/snow/layer2, /area/shiva/exterior/cp_lz2) +"kXM" = ( +/obj/vehicle/train/cargo/engine, +/turf/open/auto_turf/snow/layer0, +/area/shiva/exterior/southwest_valley) "kZj" = ( /obj/structure/prop/ice_colony/dense/planter_box{ dir = 1 @@ -13770,6 +13917,10 @@ "leg" = ( /turf/closed/wall/shiva/prefabricated/reinforced/hull, /area/shiva/exterior/telecomm/lz1_north) +"lel" = ( +/obj/item/lightstick/red/variant, +/turf/open/auto_turf/snow/layer0, +/area/shiva/exterior/southwest_valley) "lfe" = ( /obj/structure/prop/ice_colony/soil_net, /turf/open/auto_turf/snow/layer1, @@ -13823,12 +13974,6 @@ }, /turf/open/auto_turf/snow/layer1, /area/shiva/interior/caves/cp_camp) -"lip" = ( -/obj/structure/flora/grass/tallgrass/ice/corner{ - dir = 10 - }, -/turf/open/auto_turf/snow/layer2, -/area/shiva/exterior/junkyard) "liD" = ( /obj/structure/machinery/power/apc/no_power/west, /turf/open/floor/shiva/floor3, @@ -13840,9 +13985,6 @@ }, /turf/open/auto_turf/snow/layer2, /area/shiva/exterior/cp_lz2) -"ljM" = ( -/turf/open/floor/shiva/yellow/northeast, -/area/shiva/interior/colony/deck) "ljS" = ( /obj/structure/surface/table, /obj/item/tool/wrench, @@ -13861,6 +14003,10 @@ "llZ" = ( /turf/open/auto_turf/snow/layer2, /area/shiva/interior/warehouse/caves) +"lmg" = ( +/obj/effect/landmark/structure_spawner/setup/distress/xeno_weed_node, +/turf/open/floor/shiva/wred/north, +/area/shiva/interior/colony/medseceng) "lmt" = ( /obj/structure/largecrate/random/barrel/red, /turf/open/auto_turf/snow/layer0, @@ -14007,6 +14153,10 @@ /obj/effect/landmark/objective_landmark/close, /turf/open/floor/prison/kitchen, /area/shiva/interior/colony/central) +"lsR" = ( +/obj/effect/landmark/structure_spawner/setup/distress/xeno_door, +/turf/open/auto_turf/ice/layer2, +/area/shiva/interior/caves/research_caves) "ltA" = ( /obj/structure/surface/rack, /obj/item/tool/shovel/snow, @@ -14032,6 +14182,10 @@ /obj/effect/landmark/objective_landmark/far, /turf/open/floor/shiva/bluefull, /area/shiva/interior/colony/central) +"lvy" = ( +/obj/effect/landmark/structure_spawner/setup/distress/xeno_weed_node, +/turf/open/floor/dark2, +/area/shiva/interior/valley_huts/disposals) "lvW" = ( /obj/structure/machinery/computer/cameras{ dir = 8 @@ -14063,6 +14217,10 @@ "lxn" = ( /turf/open/floor/shiva/floor3, /area/shiva/interior/bar) +"lxD" = ( +/obj/effect/landmark/structure_spawner/setup/distress/xeno_weed_node, +/turf/open/auto_turf/ice/layer1, +/area/shiva/exterior/junkyard/cp_bar) "lyh" = ( /obj/item/lightstick/red/spoke/planted{ layer = 2.99; @@ -14096,6 +14254,10 @@ }, /turf/open/auto_turf/snow/layer3, /area/shiva/interior/caves/cp_camp) +"lAP" = ( +/obj/effect/landmark/structure_spawner/setup/distress/xeno_weed_node, +/turf/open/floor/shiva/yellowfull/west, +/area/shiva/interior/colony/research_hab) "lBC" = ( /obj/structure/machinery/landinglight/ds2/delaythree{ dir = 8 @@ -14225,6 +14387,16 @@ /obj/structure/blocker/forcefield/multitile_vehicles, /turf/open/auto_turf/snow/layer3, /area/shiva/exterior/cp_s_research) +"lIA" = ( +/obj/effect/decal/cleanable/blood/drip, +/obj/effect/landmark/structure_spawner/setup/distress/xeno_wall, +/turf/open/auto_turf/ice/layer1, +/area/shiva/interior/colony/research_hab) +"lJf" = ( +/obj/effect/decal/cleanable/blood, +/obj/effect/landmark/structure_spawner/setup/distress/xeno_weed_node, +/turf/open/floor/shiva/yellowfull, +/area/shiva/interior/colony/research_hab) "lJh" = ( /obj/structure/machinery/vending/snack, /turf/open/floor/shiva/floor3, @@ -14235,6 +14407,10 @@ }, /turf/open/floor/shiva/north, /area/shiva/interior/colony/s_admin) +"lJv" = ( +/obj/effect/sentry_landmark/lz_2/top_right, +/turf/open/floor/shiva/north, +/area/shiva/exterior/lz2_fortress) "lJx" = ( /obj/structure/window/framed/shiva, /turf/open/floor/plating, @@ -14259,6 +14435,10 @@ /obj/structure/machinery/power/port_gen/pacman, /turf/open/floor/plating, /area/shiva/exterior/lz1_valley) +"lMC" = ( +/obj/structure/flora/tree/dead/tree_5, +/turf/open/auto_turf/snow/layer3, +/area/shiva/exterior/southwest_valley) "lMO" = ( /obj/structure/barricade/snow{ dir = 8 @@ -14269,7 +14449,7 @@ /obj/structure/surface/table/reinforced/prison, /obj/structure/machinery/computer/communications, /turf/open/floor/shiva/floor3, -/area/shiva/interior/colony/deck) +/area/shiva/interior/colony/central) "lNg" = ( /turf/open/auto_turf/snow/layer3, /area/shiva/exterior/lz1_valley) @@ -14280,12 +14460,6 @@ /obj/structure/surface/table, /turf/open/floor/shiva/redfull/west, /area/shiva/interior/colony/research_hab) -"lNE" = ( -/obj/structure/flora/bush/snow{ - icon_state = "snowgrassbb_1" - }, -/turf/open/auto_turf/snow/layer2, -/area/shiva/exterior/lz1_valley) "lNK" = ( /obj/structure/prop/invuln/ice_prefab{ dir = 5 @@ -14408,16 +14582,6 @@ /obj/effect/spawner/random/toolbox, /turf/open/floor/shiva/north, /area/shiva/interior/colony/central) -"lWC" = ( -/obj/effect/decal/warning_stripes{ - icon_state = "W-corner" - }, -/obj/item/lightstick/red/spoke/planted{ - pixel_x = -10; - pixel_y = -1 - }, -/turf/open/floor/plating, -/area/shiva/exterior/junkyard) "lWL" = ( /obj/effect/spider/cocoon{ icon_state = "cocoon_large3" @@ -14463,13 +14627,6 @@ }, /turf/open/floor/shiva/floor3, /area/shiva/interior/bar) -"lXQ" = ( -/obj/structure/stairs/perspective/ice{ - dir = 1; - icon_state = "p_stair_sn_full_cap" - }, -/turf/open/auto_turf/snow/layer0, -/area/shiva/interior/warehouse/caves) "lYf" = ( /obj/structure/machinery/door/poddoor/shutters/almayer{ dir = 4; @@ -14518,6 +14675,16 @@ /obj/item/device/flashlight/lamp, /turf/open/floor/shiva/bluefull, /area/shiva/interior/colony/s_admin) +"lZl" = ( +/obj/effect/decal/warning_stripes{ + icon_state = "W-corner" + }, +/obj/item/lightstick/red/spoke/planted{ + pixel_x = -11; + pixel_y = 25 + }, +/turf/open/floor/plating, +/area/shiva/exterior/southwest_valley) "mae" = ( /obj/structure/surface/table, /obj/item/paper_bin{ @@ -14542,6 +14709,10 @@ "maW" = ( /turf/open/floor/shiva/redfull, /area/shiva/interior/colony/medseceng) +"mbd" = ( +/obj/effect/sentry_landmark/lz_2/bottom_right, +/turf/open/floor/shiva/floor3, +/area/shiva/exterior/lz2_fortress) "mbj" = ( /obj/structure/prop/invuln/ice_prefab/trim{ dir = 8 @@ -14571,6 +14742,13 @@ "mdx" = ( /turf/open/floor/shiva/north, /area/shiva/interior/colony/n_admin) +"mdz" = ( +/obj/structure/bed/chair/office/dark{ + dir = 1 + }, +/obj/effect/landmark/structure_spawner/setup/distress/xeno_weed_node, +/turf/open/floor/shiva/yellowfull, +/area/shiva/interior/colony/research_hab) "mdV" = ( /obj/structure/flora/bush/snow{ icon_state = "snowgrassall_3" @@ -14597,6 +14775,10 @@ /obj/structure/bed/chair, /turf/open/floor/shiva/north, /area/shiva/interior/colony/s_admin) +"meQ" = ( +/obj/effect/landmark/structure_spawner/setup/distress/xeno_weed_node, +/turf/open/floor/carpet, +/area/shiva/interior/colony/research_hab) "mfa" = ( /obj/item/weapon/ice_axe, /turf/open/auto_turf/snow/layer2, @@ -14665,6 +14847,13 @@ "miD" = ( /turf/open/floor/shiva/yellow/east, /area/shiva/interior/colony/research_hab) +"miG" = ( +/obj/structure/machinery/door_control/brbutton{ + id = "hangar_ice_3"; + pixel_y = 28 + }, +/turf/open/auto_turf/snow/layer0, +/area/shiva/exterior/southwest_valley) "miW" = ( /obj/structure/closet/secure_closet/security, /obj/effect/landmark/objective_landmark/close, @@ -14696,9 +14885,6 @@ }, /turf/open/floor/plating, /area/shiva/exterior/lz2_fortress) -"mms" = ( -/turf/open/floor/shiva/north, -/area/shiva/interior/colony/deck) "mnD" = ( /turf/open/floor/shiva/radiator_tile2, /area/shiva/exterior/lz2_fortress) @@ -14840,13 +15026,10 @@ /obj/structure/machinery/light/double, /turf/open/floor/shiva/floor3, /area/shiva/interior/bar) -"mxr" = ( -/obj/structure/stairs/perspective/ice{ - dir = 8; - icon_state = "p_stair_sn_full_cap" - }, -/turf/open/auto_turf/snow/layer0, -/area/shiva/exterior/junkyard) +"mxS" = ( +/obj/effect/landmark/structure_spawner/setup/distress/xeno_door, +/turf/open/floor/shiva/yellow/west, +/area/shiva/interior/colony/medseceng) "myR" = ( /obj/structure/prop/invuln/ice_prefab/trim{ dir = 8 @@ -14975,6 +15158,10 @@ }, /turf/closed/wall/shiva/prefabricated, /area/shiva/interior/bar) +"mEQ" = ( +/obj/effect/landmark/structure_spawner/setup/distress/xeno_weed_node, +/turf/open/auto_turf/ice/layer1, +/area/shiva/interior/colony/research_hab) "mEV" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/tool/hand_labeler, @@ -15147,6 +15334,12 @@ }, /turf/open/floor/plating, /area/shiva/interior/colony/medseceng) +"mMw" = ( +/obj/structure/platform_decoration/shiva/catwalk{ + dir = 4 + }, +/turf/open/auto_turf/snow/layer1, +/area/shiva/exterior/southwest_valley) "mME" = ( /obj/item/lightstick/red/spoke/planted{ layer = 2.99; @@ -15201,7 +15394,7 @@ pixel_y = 9 }, /turf/open/floor/shiva/floor3, -/area/shiva/interior/colony/deck) +/area/shiva/interior/colony/central) "mQL" = ( /turf/open/floor/darkgreen2/northwest, /area/shiva/interior/colony/botany) @@ -15392,17 +15585,16 @@ /obj/item/weapon/gun/flamer, /turf/open/floor/shiva/floor3, /area/shiva/interior/colony/central) -"ndb" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/auto_turf/snow/layer0, -/area/shiva/interior/colony/research_hab) "ndJ" = ( /obj/structure/flora/bush/snow{ icon_state = "snowgrassall_3" }, /turf/open/auto_turf/snow/layer2, /area/shiva/exterior/junkyard) +"ndK" = ( +/obj/structure/barricade/handrail/wire, +/turf/open/auto_turf/ice/layer1, +/area/shiva/exterior/valley) "ndR" = ( /turf/open/floor/shiva/floor3, /area/shiva/interior/colony/central) @@ -15518,6 +15710,11 @@ }, /turf/open/auto_turf/snow/layer2, /area/shiva/exterior/cp_lz2) +"nlt" = ( +/obj/structure/barricade/handrail/wire, +/obj/effect/landmark/structure_spawner/setup/distress/xeno_weed_node, +/turf/open/floor/shiva, +/area/shiva/interior/colony/research_hab) "nlx" = ( /obj/structure/platform/strata, /obj/structure/platform/strata{ @@ -15623,6 +15820,10 @@ }, /turf/open/floor/shiva, /area/shiva/interior/colony/research_hab) +"nrt" = ( +/obj/effect/landmark/structure_spawner/setup/distress/xeno_weed_node, +/turf/open/floor/plating, +/area/shiva/interior/colony/medseceng) "nrB" = ( /obj/effect/landmark/objective_landmark/science, /turf/open/floor/shiva/north, @@ -15764,10 +15965,6 @@ /obj/item/tool/crowbar, /turf/open/auto_turf/snow/layer3, /area/shiva/exterior/junkyard) -"nAs" = ( -/obj/effect/decal/cleanable/blood/oil, -/turf/open/auto_turf/snow/layer1, -/area/shiva/exterior/junkyard) "nAY" = ( /turf/open/floor/shiva/yellowcorners, /area/shiva/interior/colony/medseceng) @@ -15921,7 +16118,13 @@ pixel_x = -9 }, /turf/open/auto_turf/ice/layer1, -/area/shiva/interior/caves/cp_camp) +/area/shiva/exterior/valley) +"nKM" = ( +/obj/structure/platform/shiva/catwalk{ + dir = 8 + }, +/turf/open/auto_turf/snow/layer2, +/area/shiva/exterior/southwest_valley) "nKO" = ( /obj/structure/machinery/light/double, /turf/open/floor/shiva/radiator_tile, @@ -16033,13 +16236,6 @@ /obj/item/tool/stamp, /turf/open/floor/shiva/bluefull, /area/shiva/interior/colony/n_admin) -"nRD" = ( -/obj/structure/stairs/perspective/ice{ - dir = 1; - icon_state = "p_stair_full" - }, -/turf/open/auto_turf/snow/layer1, -/area/shiva/interior/warehouse/caves) "nSI" = ( /obj/structure/machinery/light/double{ dir = 1; @@ -16050,6 +16246,11 @@ "nSO" = ( /turf/open/auto_turf/ice/layer1, /area/shiva/interior/caves/medseceng_caves) +"nSZ" = ( +/obj/item/stack/cable_coil/cut, +/obj/effect/landmark/structure_spawner/setup/distress/xeno_weed_node, +/turf/open/floor/shiva/north, +/area/shiva/interior/colony/medseceng) "nTu" = ( /obj/structure/reagent_dispensers/fueltank, /turf/open/floor/interior/plastic, @@ -16165,6 +16366,11 @@ "oaP" = ( /turf/open/auto_turf/ice/layer2, /area/shiva/interior/oob/dev_room) +"oaW" = ( +/obj/structure/blocker/forcefield/multitile_vehicles, +/obj/effect/landmark/structure_spawner/setup/distress/xeno_wall, +/turf/open/auto_turf/ice/layer1, +/area/shiva/interior/colony/research_hab) "obb" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/device/flashlight, @@ -16206,6 +16412,16 @@ }, /turf/open/floor/shiva, /area/shiva/interior/bar) +"ocP" = ( +/obj/effect/decal/warning_stripes{ + icon_state = "W-corner" + }, +/obj/item/lightstick/red/spoke/planted{ + pixel_x = -10; + pixel_y = -1 + }, +/turf/open/floor/plating, +/area/shiva/exterior/southwest_valley) "odb" = ( /obj/structure/machinery/light/double{ dir = 8; @@ -16283,6 +16499,10 @@ /obj/structure/blocker/forcefield/multitile_vehicles, /turf/open/auto_turf/snow/layer1, /area/shiva/exterior/cp_colony_grounds) +"oiy" = ( +/obj/effect/landmark/structure_spawner/setup/distress/xeno_weed_node, +/turf/open/auto_turf/ice/layer1, +/area/shiva/exterior/valley) "oiH" = ( /obj/structure/flora/tree/dead/tree_1, /turf/open/auto_turf/snow/layer3, @@ -16417,10 +16637,12 @@ /obj/effect/decal/cleanable/dirt, /turf/open/auto_turf/ice/layer1, /area/shiva/interior/colony/research_hab) -"orO" = ( -/obj/structure/desertdam/decals/road_stop, -/turf/open/floor/shiva/floor3, -/area/shiva/interior/colony/research_hab) +"orv" = ( +/obj/structure/platform/shiva/catwalk{ + dir = 8 + }, +/turf/open/auto_turf/snow/layer4, +/area/shiva/exterior/southwest_valley) "osh" = ( /turf/open/floor/shiva/yellowfull/west, /area/shiva/interior/colony/medseceng) @@ -16465,6 +16687,10 @@ }, /turf/closed/wall/shiva/ice, /area/shiva/interior/caves/cp_camp) +"ouY" = ( +/obj/effect/sentry_landmark/lz_2/bottom_left, +/turf/open/floor/shiva/north, +/area/shiva/exterior/lz2_fortress) "ovc" = ( /turf/open/floor/carpet, /area/shiva/interior/colony/medseceng) @@ -16554,16 +16780,6 @@ "oCG" = ( /turf/open/floor/plating/plating_catwalk/shiva, /area/shiva/interior/aerodrome) -"oDi" = ( -/obj/structure/platform_decoration/strata{ - dir = 1 - }, -/obj/item/lightstick/red/variant/planted{ - pixel_x = -7; - pixel_y = -5 - }, -/turf/open/auto_turf/snow/layer0, -/area/shiva/exterior/junkyard) "oDH" = ( /obj/structure/flora/grass/tallgrass/ice/corner{ dir = 6 @@ -16589,6 +16805,10 @@ /obj/effect/decal/cleanable/vomit, /turf/open/floor/wood, /area/shiva/interior/colony/s_admin) +"oEA" = ( +/obj/effect/landmark/structure_spawner/setup/distress/xeno_wall, +/turf/open/auto_turf/ice/layer1, +/area/shiva/interior/caves/research_caves) "oET" = ( /obj/item/weapon/baseballbat/metal, /turf/open/floor/shiva/floor3, @@ -16650,6 +16870,10 @@ }, /turf/open/floor/shiva/north, /area/shiva/exterior/lz2_fortress) +"oHV" = ( +/obj/structure/machinery/power/apc/no_power/north, +/turf/open/floor/plating, +/area/shiva/exterior/southwest_valley) "oIh" = ( /obj/item/frame/air_alarm, /turf/open/floor/shiva/wred/north, @@ -16658,6 +16882,11 @@ /obj/structure/largecrate/random/case/small, /turf/open/floor/shiva/floor3, /area/shiva/interior/aerodrome) +"oIT" = ( +/obj/effect/decal/cleanable/dirt, +/obj/effect/landmark/structure_spawner/setup/distress/xeno_wall, +/turf/open/floor/shiva/floor3, +/area/shiva/interior/colony/research_hab) "oJe" = ( /obj/structure/surface/table, /obj/item/tool/hand_labeler, @@ -16748,6 +16977,10 @@ "oQo" = ( /turf/closed/wall/shiva/prefabricated, /area/shiva/exterior/cp_s_research) +"oRc" = ( +/obj/effect/landmark/structure_spawner/setup/distress/xeno_weed_node, +/turf/open/auto_turf/snow/layer0, +/area/shiva/interior/colony/medseceng) "oRH" = ( /turf/open/auto_turf/snow/layer2, /area/shiva/interior/caves/cp_camp) @@ -16933,7 +17166,14 @@ dir = 8 }, /turf/open/floor/shiva/north, -/area/shiva/interior/colony/deck) +/area/shiva/interior/colony/medseceng) +"pfj" = ( +/obj/structure/stairs/perspective/ice{ + dir = 8; + icon_state = "p_stair_sn_full_cap" + }, +/turf/open/auto_turf/snow/layer0, +/area/shiva/exterior/southwest_valley) "pfp" = ( /obj/structure/prop/invuln/ice_prefab{ dir = 9 @@ -17295,6 +17535,10 @@ }, /turf/open/auto_turf/snow/layer1, /area/shiva/interior/caves/research_caves) +"pCj" = ( +/obj/effect/landmark/structure_spawner/setup/distress/xeno_weed_node, +/turf/open/floor/shiva/floor3, +/area/shiva/interior/colony/research_hab) "pCw" = ( /obj/item/lightstick/red/spoke/planted{ pixel_x = 12; @@ -17306,10 +17550,6 @@ /obj/item/tool/shovel, /turf/open/auto_turf/snow/layer3, /area/shiva/exterior/cp_colony_grounds) -"pCI" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/shiva/floor3, -/area/shiva/interior/colony/research_hab) "pCJ" = ( /obj/item/book/manual/marine_law, /obj/structure/surface/table/reinforced/prison, @@ -17364,7 +17604,7 @@ /area/shiva/interior/colony/s_admin) "pEs" = ( /turf/open/floor/shiva/multi_tiles/north, -/area/shiva/interior/colony/deck) +/area/shiva/interior/colony/central) "pEv" = ( /obj/structure/surface/table, /obj/structure/machinery/computer/emails{ @@ -17429,6 +17669,10 @@ }, /turf/open/auto_turf/snow/layer4, /area/shiva/exterior/cp_lz2) +"pHd" = ( +/obj/structure/flora/bush/ausbushes/lavendergrass, +/turf/open/auto_turf/snow/layer1, +/area/shiva/exterior/southwest_valley) "pHz" = ( /obj/structure/closet/secure_closet/personal, /obj/effect/landmark/objective_landmark/close, @@ -17510,10 +17754,6 @@ }, /turf/open/auto_turf/snow/layer0, /area/shiva/exterior/cp_colony_grounds) -"pKK" = ( -/obj/item/lightstick/red/variant, -/turf/open/auto_turf/snow/layer0, -/area/shiva/exterior/junkyard) "pKP" = ( /obj/structure/surface/table, /obj/item/device/flashlight/lamp/green{ @@ -17553,13 +17793,6 @@ /obj/structure/surface/rack, /turf/open/floor/plating, /area/shiva/interior/caves/research_caves) -"pMs" = ( -/obj/structure/machinery/light/double{ - dir = 8; - pixel_y = -5 - }, -/turf/open/floor/shiva/floor3, -/area/shiva/interior/colony/deck) "pME" = ( /obj/item/ammo_magazine/revolver/cmb, /turf/open/floor/shiva/floor3, @@ -17615,6 +17848,10 @@ /obj/item/stack/cable_coil/cut, /turf/open/floor/shiva/yellowfull/west, /area/shiva/interior/colony/medseceng) +"pOn" = ( +/obj/effect/landmark/structure_spawner/setup/distress/xeno_door, +/turf/open/auto_turf/ice/layer1, +/area/shiva/interior/colony/research_hab) "pOI" = ( /obj/structure/surface/table, /obj/item/reagent_container/food/drinks/dry_ramen, @@ -17760,7 +17997,7 @@ pixel_y = -3 }, /turf/open/auto_turf/snow/layer0, -/area/shiva/interior/caves/cp_camp) +/area/shiva/exterior/valley) "pZB" = ( /obj/structure/largecrate/random/mini/ammo{ pixel_x = 3 @@ -17798,6 +18035,10 @@ "qbF" = ( /turf/open/auto_turf/ice/layer0, /area/shiva/exterior/junkyard/cp_bar) +"qcn" = ( +/obj/structure/flora/grass/tallgrass/ice/corner, +/turf/open/auto_turf/snow/layer2, +/area/shiva/exterior/southwest_valley) "qcT" = ( /obj/structure/largecrate/random, /turf/open/floor/plating/plating_catwalk/shiva, @@ -17929,7 +18170,7 @@ pixel_y = 9 }, /turf/open/floor/shiva/multi_tiles/east, -/area/shiva/interior/colony/deck) +/area/shiva/interior/colony/central) "qkt" = ( /obj/item/stack/cable_coil/cut, /turf/open/floor/plating/plating_catwalk/shiva, @@ -18119,10 +18360,6 @@ }, /turf/open/floor/shiva/multi_tiles, /area/shiva/interior/colony/research_hab) -"que" = ( -/obj/item/lightstick/red/variant/planted, -/turf/open/auto_turf/snow/layer3, -/area/shiva/exterior/junkyard) "qvr" = ( /obj/structure/machinery/alarm{ dir = 8; @@ -18176,6 +18413,12 @@ /obj/item/stool, /turf/open/floor/shiva/floor3, /area/shiva/interior/colony/research_hab) +"qyQ" = ( +/obj/structure/prop/ice_colony/flamingo/festive{ + dir = 4 + }, +/turf/open/auto_turf/snow/layer2, +/area/shiva/exterior/southwest_valley) "qza" = ( /obj/item/device/flashlight/flare, /turf/open/auto_turf/snow/layer2, @@ -18241,6 +18484,9 @@ }, /turf/open/floor/plating, /area/shiva/interior/bar) +"qDh" = ( +/turf/open/auto_turf/snow/layer2, +/area/shiva/exterior/southwest_valley) "qDJ" = ( /obj/structure/morgue{ dir = 8 @@ -18273,7 +18519,7 @@ "qEH" = ( /obj/structure/largecrate/random/case/small, /turf/open/auto_turf/ice/layer1, -/area/shiva/interior/aerodrome) +/area/shiva/exterior/junkyard/cp_bar) "qEK" = ( /obj/structure/prop/invuln/ice_prefab/standalone{ icon_state = "white" @@ -18312,6 +18558,13 @@ /obj/effect/landmark/item_pool_spawner/survivor_ammo/buckshot, /turf/open/floor/shiva/yellow/west, /area/shiva/interior/colony/medseceng) +"qKB" = ( +/obj/effect/decal/warning_stripes{ + icon_state = "N" + }, +/obj/effect/landmark/structure_spawner/setup/distress/xeno_weed_node, +/turf/open/floor/shiva/purplefull/north, +/area/shiva/interior/colony/research_hab) "qLA" = ( /obj/structure/machinery/door/airlock/almayer/maint/colony/autoname{ dir = 8 @@ -18384,9 +18637,6 @@ }, /turf/open/floor/carpet, /area/shiva/interior/colony/research_hab) -"qOD" = ( -/turf/open/floor/shiva/yellow/north, -/area/shiva/interior/colony/deck) "qOE" = ( /obj/structure/surface/rack, /obj/item/storage/firstaid/rad, @@ -18528,6 +18778,13 @@ }, /turf/open/floor/plating, /area/shiva/exterior/valley) +"qXQ" = ( +/obj/item/stack/snow{ + pixel_x = -7 + }, +/obj/item/tool/shovel/snow, +/turf/open/auto_turf/snow/layer3, +/area/shiva/exterior/southwest_valley) "qXS" = ( /turf/open/floor/shiva, /area/shiva/interior/bar) @@ -18647,6 +18904,12 @@ /obj/effect/decal/cleanable/blood/oil, /turf/open/floor/wood, /area/shiva/interior/aerodrome) +"rff" = ( +/obj/structure/flora/bush/snow{ + icon_state = "snowgrassall_1" + }, +/turf/open/auto_turf/snow/layer3, +/area/shiva/exterior/southwest_valley) "rfi" = ( /obj/structure/platform/strata, /turf/open/auto_turf/snow/layer3, @@ -18676,6 +18939,15 @@ /obj/item/storage/firstaid/fire, /turf/open/floor/interior/plastic, /area/shiva/interior/warehouse) +"rhL" = ( +/obj/effect/decal/warning_stripes{ + icon_state = "W-corner" + }, +/obj/structure/barricade/metal{ + dir = 4 + }, +/turf/open/floor/plating, +/area/shiva/exterior/southwest_valley) "rhS" = ( /obj/structure/surface/table, /obj/item/paper/janitor{ @@ -18738,10 +19010,6 @@ }, /turf/open/auto_turf/snow/layer1, /area/shiva/interior/caves/cp_camp) -"rli" = ( -/obj/structure/flora/tree/dead/tree_1, -/turf/open/auto_turf/snow/layer2, -/area/shiva/exterior/junkyard) "rnz" = ( /obj/structure/flora/pottedplant, /turf/open/floor/wood, @@ -18760,6 +19028,10 @@ }, /turf/open/auto_turf/ice/layer1, /area/shiva/interior/caves/cp_camp) +"rps" = ( +/obj/effect/landmark/structure_spawner/setup/distress/xeno_weed_node, +/turf/open/floor/shiva/yellowcorners/east, +/area/shiva/interior/colony/medseceng) "rpv" = ( /obj/item/stack/rods, /turf/open/floor/shiva/bluefull, @@ -18850,6 +19122,16 @@ /obj/structure/machinery/light/double, /turf/open/floor/shiva/wred, /area/shiva/interior/colony/medseceng) +"ryN" = ( +/obj/structure/platform/strata{ + dir = 8 + }, +/obj/structure/stairs/perspective/ice{ + dir = 1; + icon_state = "p_stair_sn_full_cap" + }, +/turf/open/auto_turf/snow/layer0, +/area/shiva/exterior/southwest_valley) "ryZ" = ( /obj/structure/surface/table, /obj/item/tool/pickaxe/plasmacutter, @@ -18895,7 +19177,7 @@ "rAF" = ( /obj/structure/barricade/handrail/strata, /turf/open/floor/shiva/multi_tiles/north, -/area/shiva/interior/colony/deck) +/area/shiva/interior/colony/central) "rAH" = ( /turf/open/auto_turf/snow/layer2, /area/shiva/exterior/cp_s_research) @@ -18929,9 +19211,6 @@ /obj/item/tool/wirecutters, /turf/open/auto_turf/snow/layer1, /area/shiva/interior/colony/central) -"rDn" = ( -/turf/open/floor/shiva/yellowcorners/west, -/area/shiva/interior/colony/deck) "rEd" = ( /obj/structure/flora/bush/snow{ icon_state = "snowgrassgb_2" @@ -19049,10 +19328,6 @@ /obj/structure/prop/ice_colony/soil_net, /turf/open/auto_turf/snow/layer2, /area/shiva/exterior/junkyard) -"rNY" = ( -/obj/effect/landmark/monkey_spawn, -/turf/open/auto_turf/snow/layer0, -/area/shiva/exterior/junkyard) "rNZ" = ( /obj/structure/prop/ice_colony/dense/planter_box{ dir = 9 @@ -19072,6 +19347,10 @@ }, /turf/open/floor/plating, /area/shiva/interior/colony/medseceng) +"rOL" = ( +/obj/effect/landmark/structure_spawner/setup/distress/xeno_weed_node, +/turf/open/floor/shiva/multi_tiles/north, +/area/shiva/interior/colony/research_hab) "rPa" = ( /obj/structure/bed/chair/dropship/passenger{ dir = 4 @@ -19196,6 +19475,15 @@ }, /turf/open/auto_turf/snow/layer2, /area/shiva/exterior/cp_colony_grounds) +"rWN" = ( +/obj/item/tool/shovel/snow, +/obj/item/storage/fancy/cigarettes/arcturian_ace{ + layer = 3.1; + pixel_x = -8; + pixel_y = 23 + }, +/turf/open/auto_turf/snow/layer2, +/area/shiva/exterior/southwest_valley) "rWS" = ( /obj/item/ammo_magazine/rifle/ap, /turf/open/floor/shiva/multi_tiles/north, @@ -19290,6 +19578,9 @@ }, /turf/open/auto_turf/snow/layer2, /area/shiva/interior/caves/cp_camp) +"saY" = ( +/turf/open/auto_turf/snow/layer3, +/area/shiva/exterior/southwest_valley) "sbd" = ( /obj/effect/decal/cleanable/blood/splatter, /turf/open/floor/shiva/floor3, @@ -19302,12 +19593,6 @@ /obj/structure/largecrate/random/barrel/green, /turf/open/auto_turf/snow/layer2, /area/shiva/exterior/junkyard) -"scp" = ( -/obj/structure/platform_decoration/shiva/catwalk{ - dir = 4 - }, -/turf/open/auto_turf/snow/layer2, -/area/shiva/exterior/junkyard) "scN" = ( /obj/structure/surface/table, /obj/item/device/assembly/infra, @@ -19426,6 +19711,10 @@ "sjo" = ( /turf/open/floor/shiva/green/northwest, /area/shiva/interior/colony/botany) +"sjA" = ( +/obj/item/lightstick/planted, +/turf/open/auto_turf/snow/layer2, +/area/shiva/exterior/southwest_valley) "skl" = ( /obj/effect/decal/cleanable/dirt, /turf/open/auto_turf/snow/layer0, @@ -19508,7 +19797,7 @@ /obj/item/wrapping_paper, /obj/structure/surface/table/reinforced/prison, /turf/open/floor/shiva/floor3, -/area/shiva/interior/colony/deck) +/area/shiva/interior/colony/central) "srJ" = ( /obj/structure/stairs/perspective/ice{ dir = 4; @@ -19591,6 +19880,10 @@ /obj/structure/machinery/landinglight/ds2/spoke, /turf/open/floor/shiva/north, /area/shiva/exterior/lz2_fortress) +"sxS" = ( +/obj/effect/landmark/structure_spawner/setup/distress/xeno_door, +/turf/open/floor/shiva/yellow/east, +/area/shiva/interior/colony/medseceng) "sxT" = ( /obj/structure/flora/grass/tallgrass/ice, /turf/open/auto_turf/snow/layer0, @@ -19626,12 +19919,6 @@ /obj/item/clothing/gloves/yellow, /turf/open/floor/shiva/north, /area/shiva/interior/colony/medseceng) -"szU" = ( -/obj/structure/prop/ice_colony/flamingo/festive{ - dir = 4 - }, -/turf/open/auto_turf/snow/layer2, -/area/shiva/exterior/junkyard) "sAe" = ( /obj/structure/machinery/light/double{ dir = 4; @@ -19719,9 +20006,6 @@ /obj/structure/largecrate/random/case/double, /turf/open/auto_turf/ice/layer1, /area/shiva/interior/caves/cp_camp) -"sFs" = ( -/turf/open/auto_turf/snow/layer1, -/area/shiva/interior/aerodrome) "sFu" = ( /obj/item/tool/mop, /turf/open/floor/wood, @@ -19874,7 +20158,18 @@ icon_state = "p_stair_full" }, /turf/open/floor/plating, -/area/shiva/interior/colony/deck) +/area/shiva/interior/colony/medseceng) +"sNk" = ( +/obj/effect/decal/warning_stripes{ + icon_state = "NW-out" + }, +/obj/structure/desertdam/decals/road_stop{ + icon_state = "road_edge_decal5"; + pixel_x = -14 + }, +/obj/effect/landmark/structure_spawner/setup/distress/xeno_wall, +/turf/open/floor/shiva/purplefull/west, +/area/shiva/interior/colony/research_hab) "sNX" = ( /obj/effect/landmark/xeno_spawn, /turf/open/floor/shiva, @@ -19888,6 +20183,12 @@ /obj/structure/surface/table, /turf/open/floor/shiva/yellow/northwest, /area/shiva/interior/colony/medseceng) +"sON" = ( +/obj/structure/platform/shiva/catwalk{ + dir = 4 + }, +/turf/open/auto_turf/snow/layer3, +/area/shiva/exterior/southwest_valley) "sPn" = ( /obj/structure/surface/table, /obj/effect/spawner/random/toolbox{ @@ -19962,6 +20263,10 @@ /obj/item/stack/rods, /turf/open/floor/shiva/floor3, /area/shiva/exterior/lz2_fortress) +"sWw" = ( +/obj/vehicle/train/cargo/trolley, +/turf/open/auto_turf/snow/layer0, +/area/shiva/exterior/southwest_valley) "sXr" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/paper_bin{ @@ -19969,7 +20274,7 @@ }, /obj/item/tool/pen/blue, /turf/open/floor/shiva/floor3, -/area/shiva/interior/colony/deck) +/area/shiva/interior/colony/central) "sXt" = ( /obj/structure/machinery/light/double, /turf/open/asphalt/cement, @@ -20140,6 +20445,11 @@ /obj/item/tool/shovel/spade, /turf/open/auto_turf/snow/layer0, /area/shiva/interior/colony/botany) +"tgJ" = ( +/obj/structure/barricade/wooden, +/obj/effect/landmark/structure_spawner/setup/distress/xeno_weed_node, +/turf/open/floor/plating, +/area/shiva/interior/colony/research_hab) "thc" = ( /obj/structure/surface/table, /obj/item/storage/fancy/cigarettes/lucky_strikes{ @@ -20167,9 +20477,6 @@ /obj/structure/fence, /turf/open/auto_turf/snow/layer3, /area/shiva/exterior/junkyard) -"tjL" = ( -/turf/open/auto_turf/snow/layer4, -/area/shiva/interior/aerodrome) "tkb" = ( /obj/structure/surface/table, /obj/item/tool/pen/blue, @@ -20224,7 +20531,7 @@ "tmP" = ( /obj/structure/largecrate/random/case/double, /turf/open/auto_turf/ice/layer1, -/area/shiva/interior/aerodrome) +/area/shiva/exterior/junkyard/cp_bar) "tmV" = ( /obj/structure/machinery/door/airlock/multi_tile/elevator/arrivals, /turf/open/shuttle/elevator/grating, @@ -20239,6 +20546,12 @@ "tnu" = ( /turf/closed/wall/shiva/prefabricated, /area/shiva/interior/bar) +"tnw" = ( +/obj/structure/stairs/perspective{ + icon_state = "p_stair_full" + }, +/turf/open/floor/plating, +/area/shiva/interior/colony/central) "tnz" = ( /obj/effect/decal/cleanable/blood, /obj/item/weapon/gun/shotgun/pump/dual_tube/cmb, @@ -20294,19 +20607,6 @@ /obj/item/stack/rods, /turf/open/auto_turf/snow/layer1, /area/shiva/interior/caves/cp_camp) -"tpg" = ( -/turf/open/floor/plating/plating_catwalk/shiva, -/area/shiva/exterior/junkyard) -"tpL" = ( -/obj/effect/decal/warning_stripes{ - icon_state = "NW-out" - }, -/obj/structure/desertdam/decals/road_stop{ - icon_state = "road_edge_decal5"; - pixel_x = -14 - }, -/turf/open/floor/shiva/purplefull/west, -/area/shiva/interior/colony/research_hab) "tqs" = ( /obj/structure/prop/ice_colony/dense/ice_tray{ pixel_y = 5 @@ -20462,13 +20762,20 @@ /area/shiva/interior/aux_power) "tzH" = ( /turf/open/floor/shiva/multi_tiles/east, -/area/shiva/interior/colony/deck) +/area/shiva/interior/colony/central) "tAc" = ( /obj/structure/flora/bush/ausbushes/lavendergrass{ icon_state = "lavendergrass_4" }, /turf/open/auto_turf/snow/layer3, /area/shiva/exterior/cp_lz2) +"tAe" = ( +/obj/structure/largecrate/random/secure, +/obj/item/ashtray/bronze{ + pixel_y = 7 + }, +/turf/open/auto_turf/snow/layer2, +/area/shiva/exterior/southwest_valley) "tBB" = ( /obj/structure/platform/strata, /turf/open/auto_turf/snow/layer4, @@ -20613,16 +20920,6 @@ /obj/structure/blocker/invisible_wall, /turf/open/auto_turf/snow/layer2, /area/shiva/exterior/junkyard) -"tJY" = ( -/obj/effect/decal/warning_stripes{ - icon_state = "SW-out" - }, -/obj/structure/desertdam/decals/road_stop{ - icon_state = "road_edge_decal8"; - pixel_x = -14 - }, -/turf/open/floor/shiva/purplefull/west, -/area/shiva/interior/colony/research_hab) "tKd" = ( /obj/structure/bed/chair/comfy/blue, /turf/open/floor/shiva/north, @@ -20676,6 +20973,10 @@ }, /turf/open/auto_turf/snow/layer3, /area/shiva/exterior/cp_colony_grounds) +"tMv" = ( +/obj/effect/sentry_landmark/lz_2/top_right, +/turf/open/floor/shiva/floor3, +/area/shiva/exterior/lz2_fortress) "tMR" = ( /obj/structure/ice/thin/single{ opacity = 1; @@ -20737,12 +21038,22 @@ }, /turf/open/floor/shiva/floor3, /area/shiva/interior/colony/botany) +"tOX" = ( +/obj/structure/platform_decoration/shiva/catwalk{ + dir = 4 + }, +/turf/open/auto_turf/snow/layer2, +/area/shiva/exterior/southwest_valley) "tPs" = ( /obj/structure/prop/ice_colony/ground_wire{ dir = 1 }, /turf/open/auto_turf/snow/layer0, /area/shiva/interior/caves/cp_camp) +"tPu" = ( +/obj/effect/landmark/structure_spawner/setup/distress/xeno_weed_node, +/turf/open/floor/shiva/multi_tiles/west, +/area/shiva/interior/colony/research_hab) "tPz" = ( /obj/structure/largecrate/random, /turf/open/floor/shiva/floor3, @@ -20815,6 +21126,10 @@ }, /turf/open/floor/prison/kitchen, /area/shiva/interior/bar) +"tSq" = ( +/obj/structure/flora/tree/dead/tree_4, +/turf/open/auto_turf/snow/layer2, +/area/shiva/exterior/southwest_valley) "tSt" = ( /obj/structure/barricade/handrail/strata, /obj/structure/surface/table, @@ -20881,13 +21196,6 @@ }, /turf/open/floor/shiva/bluefull, /area/shiva/interior/colony/s_admin) -"tWv" = ( -/obj/structure/machinery/light/double{ - dir = 1; - pixel_y = 9 - }, -/turf/open/floor/shiva/radiator_tile2, -/area/shiva/interior/colony/medseceng) "tWz" = ( /obj/structure/machinery/space_heater, /turf/open/floor/shiva, @@ -21199,6 +21507,10 @@ /obj/structure/machinery/disposal, /turf/open/floor/shiva/north, /area/shiva/interior/garage) +"ulr" = ( +/obj/item/tool/shovel/snow, +/turf/open/auto_turf/snow/layer1, +/area/shiva/exterior/southwest_valley) "ulD" = ( /obj/structure/cable/heavyduty{ icon_state = "1-2-4-8" @@ -21289,6 +21601,10 @@ /obj/structure/machinery/space_heater, /turf/open/floor/shiva/redfull/west, /area/shiva/interior/colony/medseceng) +"urH" = ( +/obj/structure/flora/bush/ausbushes/lavendergrass, +/turf/open/auto_turf/snow/layer2, +/area/shiva/exterior/southwest_valley) "urX" = ( /obj/structure/flora/bush/snow{ icon_state = "snowgrassbb_3" @@ -21298,6 +21614,17 @@ "ush" = ( /turf/open/floor/shiva/yellow/northeast, /area/shiva/interior/garage) +"usQ" = ( +/obj/effect/decal/warning_stripes{ + icon_state = "SW-out" + }, +/obj/structure/desertdam/decals/road_stop{ + icon_state = "road_edge_decal8"; + pixel_x = -14 + }, +/obj/effect/landmark/structure_spawner/setup/distress/xeno_wall, +/turf/open/floor/shiva/purplefull/west, +/area/shiva/interior/colony/research_hab) "usZ" = ( /obj/structure/barricade/handrail/wire{ dir = 8; @@ -21315,6 +21642,13 @@ /obj/structure/bed/chair/comfy/beige, /turf/open/floor/shiva/yellowfull, /area/shiva/interior/colony/research_hab) +"uuC" = ( +/obj/structure/platform/strata{ + dir = 8 + }, +/obj/structure/platform/strata, +/turf/open/gm/river, +/area/shiva/exterior/valley) "uuN" = ( /obj/effect/landmark/structure_spawner/xvx_hive/xeno_core, /turf/open/floor/shiva, @@ -21362,12 +21696,6 @@ "uxV" = ( /turf/open/floor/shiva/multi_tiles/north, /area/shiva/interior/colony/botany) -"uxZ" = ( -/obj/effect/decal/warning_stripes{ - icon_state = "W-corner" - }, -/turf/open/floor/plating, -/area/shiva/exterior/junkyard) "uyI" = ( /obj/structure/largecrate/random/mini/small_case/c{ pixel_x = 11; @@ -21423,6 +21751,10 @@ }, /turf/open/auto_turf/snow/layer0, /area/shiva/exterior/cp_colony_grounds) +"uBt" = ( +/obj/effect/sentry_landmark/lz_1/top_left, +/turf/open/auto_turf/snow/layer2, +/area/shiva/interior/caves/cp_camp) "uBz" = ( /obj/structure/machinery/autolathe/full, /turf/open/floor/shiva/floor3, @@ -21461,6 +21793,14 @@ }, /turf/open/floor/shiva/purplefull/north, /area/shiva/interior/colony/research_hab) +"uFi" = ( +/obj/structure/machinery/light/double{ + dir = 1; + pixel_y = 9 + }, +/obj/effect/landmark/structure_spawner/setup/distress/xeno_weed_node, +/turf/open/floor/plating, +/area/shiva/interior/colony/medseceng) "uFl" = ( /obj/structure/barricade/snow{ dir = 1 @@ -21489,6 +21829,12 @@ "uGq" = ( /turf/open/floor/plating, /area/shiva/interior/colony/n_admin) +"uGs" = ( +/obj/structure/platform/shiva/catwalk{ + dir = 1 + }, +/turf/open/auto_turf/snow/layer2, +/area/shiva/exterior/southwest_valley) "uGw" = ( /obj/structure/filingcabinet, /obj/effect/landmark/objective_landmark/medium, @@ -21513,6 +21859,13 @@ }, /turf/open/floor/prison/kitchen, /area/shiva/interior/colony/central) +"uIx" = ( +/obj/structure/bed/chair{ + dir = 4 + }, +/obj/effect/landmark/structure_spawner/setup/distress/xeno_weed_node, +/turf/open/floor/shiva/north, +/area/shiva/interior/colony/medseceng) "uIC" = ( /obj/structure/prop/invuln/minecart_tracks{ dir = 8 @@ -21575,6 +21928,16 @@ }, /turf/open/auto_turf/snow/layer1, /area/shiva/exterior/junkyard/fortbiceps) +"uKm" = ( +/obj/structure/stairs/perspective{ + dir = 4; + icon_state = "p_stair_sn_full_cap" + }, +/obj/structure/platform/shiva/catwalk{ + dir = 4 + }, +/turf/open/floor/plating, +/area/shiva/interior/colony/central) "uKo" = ( /obj/structure/surface/table, /obj/item/ashtray/plastic, @@ -21632,9 +21995,6 @@ }, /turf/open/gm/river/no_overlay, /area/shiva/interior/caves/cp_camp) -"uLi" = ( -/turf/open/auto_turf/ice/layer0, -/area/shiva/interior/aerodrome) "uLn" = ( /obj/structure/closet/secure_closet/medical1{ req_access_txt = "100" @@ -21707,7 +22067,7 @@ dir = 8 }, /turf/open/floor/plating, -/area/shiva/interior/colony/deck) +/area/shiva/interior/colony/medseceng) "uQA" = ( /obj/structure/machinery/firealarm{ dir = 8; @@ -21778,6 +22138,12 @@ /obj/structure/machinery/vending/coffee, /turf/open/floor/shiva/bluefull, /area/shiva/interior/colony/n_admin) +"uUb" = ( +/obj/structure/flora/bush/snow{ + icon_state = "snowgrassbb_1" + }, +/turf/open/auto_turf/snow/layer3, +/area/shiva/exterior/southwest_valley) "uVa" = ( /obj/structure/machinery/power/terminal{ dir = 1 @@ -21915,6 +22281,11 @@ }, /turf/open/floor/shiva/floor3, /area/shiva/interior/colony/research_hab) +"vei" = ( +/obj/item/stack/sheet/metal, +/obj/effect/landmark/structure_spawner/setup/distress/xeno_weed_node, +/turf/open/floor/shiva/wred/east, +/area/shiva/interior/colony/medseceng) "veo" = ( /obj/structure/surface/table, /obj/item/device/defibrillator, @@ -22067,12 +22438,12 @@ }, /turf/open/floor/plating/plating_catwalk/shiva, /area/shiva/exterior/lz2_fortress) -"voo" = ( +"vou" = ( /obj/structure/prop/ice_colony/flamingo{ dir = 8 }, /turf/open/auto_turf/snow/layer2, -/area/shiva/exterior/junkyard) +/area/shiva/exterior/southwest_valley) "voH" = ( /obj/structure/machinery/landinglight/ds2/spoke{ pixel_x = 1; @@ -22080,6 +22451,20 @@ }, /turf/closed/wall/shiva/prefabricated/reinforced/hull, /area/shiva/exterior/lz2_fortress) +"vph" = ( +/obj/structure/barricade/handrail/strata{ + dir = 8 + }, +/obj/structure/barricade/handrail/strata{ + dir = 4 + }, +/obj/structure/barricade/handrail/strata, +/obj/structure/machinery/colony_floodlight{ + layer = 2.9; + pixel_y = 7 + }, +/turf/open/floor/shiva/north, +/area/shiva/interior/colony/central) "vpD" = ( /turf/open/auto_turf/snow/layer2, /area/shiva/exterior/telecomm/lz1_north) @@ -22098,15 +22483,6 @@ /obj/effect/landmark/monkey_spawn, /turf/open/auto_turf/snow/layer2, /area/shiva/interior/caves/cp_camp) -"vqV" = ( -/obj/structure/platform/shiva/catwalk{ - dir = 1 - }, -/obj/structure/prop/ice_colony/flamingo{ - dir = 9 - }, -/turf/open/auto_turf/snow/layer2, -/area/shiva/exterior/junkyard) "vrm" = ( /obj/structure/bed/chair/office/light{ dir = 4 @@ -22128,6 +22504,10 @@ /obj/item/storage/box/wy_mre, /turf/open/floor/shiva/bluefull, /area/shiva/interior/colony/n_admin) +"vtf" = ( +/obj/effect/landmark/structure_spawner/setup/distress/xeno_weed_node, +/turf/open/floor/plating, +/area/shiva/interior/caves/research_caves) "vty" = ( /obj/item/shard{ icon_state = "medium"; @@ -22139,6 +22519,13 @@ /obj/effect/decal/cleanable/blood/drip, /turf/open/auto_turf/snow/layer1, /area/shiva/interior/caves/cp_camp) +"vtD" = ( +/obj/structure/stairs/perspective/ice{ + dir = 1; + icon_state = "p_stair_full" + }, +/turf/open/auto_turf/snow/layer0, +/area/shiva/exterior/southwest_valley) "vuj" = ( /obj/structure/bed/roller, /turf/open/floor/shiva/floor3, @@ -22222,6 +22609,10 @@ /obj/structure/fence, /turf/open/auto_turf/snow/layer1, /area/shiva/exterior/valley) +"vAv" = ( +/obj/effect/sentry_landmark/lz_1/top_left, +/turf/open/auto_turf/snow/layer0, +/area/shiva/interior/caves/cp_camp) "vAw" = ( /obj/structure/bed/chair, /obj/structure/machinery/light/double{ @@ -22371,7 +22762,7 @@ "vJh" = ( /obj/structure/barricade/handrail/strata, /turf/open/floor/shiva/north, -/area/shiva/interior/colony/deck) +/area/shiva/interior/colony/central) "vJu" = ( /turf/closed/wall/shiva/prefabricated/blue, /area/shiva/exterior/valley) @@ -22718,6 +23109,11 @@ }, /turf/open/floor/shiva/floor3, /area/shiva/interior/colony/research_hab) +"wli" = ( +/obj/effect/decal/cleanable/dirt, +/obj/effect/landmark/structure_spawner/setup/distress/xeno_weed_node, +/turf/open/floor/shiva/multi_tiles, +/area/shiva/interior/colony/research_hab) "wlj" = ( /turf/open/auto_turf/snow/layer4, /area/shiva/interior/colony/central) @@ -22734,6 +23130,9 @@ }, /turf/open/floor/shiva/floor3, /area/shiva/interior/colony/botany) +"wme" = ( +/turf/open/floor/plating/plating_catwalk/shiva, +/area/shiva/exterior/southwest_valley) "wnK" = ( /turf/open/floor/shiva/floor3, /area/shiva/interior/colony/research_hab) @@ -23050,7 +23449,7 @@ "wMC" = ( /obj/structure/closet/toolcloset, /turf/open/floor/shiva/yellow/west, -/area/shiva/interior/colony/deck) +/area/shiva/interior/colony/medseceng) "wMR" = ( /obj/structure/machinery/firealarm{ dir = 4; @@ -23062,16 +23461,6 @@ /obj/structure/window/framed/shiva, /turf/open/floor/plating/icefloor, /area/shiva/interior/telecomm/lz1_biceps) -"wNB" = ( -/obj/structure/machinery/door_control/brbutton{ - id = "hangar_ice_2"; - pixel_y = 28 - }, -/obj/structure/platform/shiva/catwalk{ - dir = 4 - }, -/turf/open/auto_turf/snow/layer1, -/area/shiva/exterior/junkyard) "wOq" = ( /obj/structure/reagent_dispensers/water_cooler, /turf/open/floor/shiva/red/southwest, @@ -23212,7 +23601,7 @@ "wXs" = ( /obj/structure/blocker/forcefield/multitile_vehicles, /turf/open/auto_turf/ice/layer1, -/area/shiva/interior/aerodrome) +/area/shiva/exterior/junkyard/cp_bar) "wXQ" = ( /obj/effect/decal/cleanable/blood/drip, /turf/open/floor/shiva/floor3, @@ -23300,6 +23689,13 @@ /obj/structure/machinery/power/reactor/colony, /turf/open/floor/shiva/north, /area/shiva/interior/garage) +"xdo" = ( +/obj/structure/platform/strata{ + dir = 4 + }, +/obj/structure/platform/strata, +/turf/open/gm/river, +/area/shiva/exterior/valley) "xdT" = ( /obj/structure/surface/table, /obj/effect/spawner/random/toolbox, @@ -23354,9 +23750,6 @@ /obj/structure/prop/invuln/ice_prefab, /turf/open/auto_turf/snow/layer0, /area/shiva/interior/caves/cp_camp) -"xjg" = ( -/turf/open/floor/shiva/yellow, -/area/shiva/interior/colony/deck) "xkf" = ( /obj/structure/machinery/light/double{ dir = 4; @@ -23397,6 +23790,10 @@ }, /turf/open/floor/shiva/wredfull, /area/shiva/interior/colony/medseceng) +"xpd" = ( +/obj/structure/flora/grass/tallgrass/ice, +/turf/open/auto_turf/snow/layer2, +/area/shiva/exterior/southwest_valley) "xqe" = ( /obj/structure/bed/chair/comfy/orange{ dir = 1 @@ -23491,16 +23888,6 @@ /obj/item/device/flashlight/lamp/green, /turf/open/floor/shiva/multi_tiles/southeast, /area/shiva/interior/colony/research_hab) -"xwk" = ( -/obj/item/lightstick/red/variant, -/turf/open/auto_turf/snow/layer1, -/area/shiva/exterior/junkyard) -"xwo" = ( -/obj/structure/platform/shiva/catwalk{ - dir = 8 - }, -/turf/open/auto_turf/snow/layer3, -/area/shiva/exterior/junkyard) "xwL" = ( /obj/structure/filingcabinet, /obj/effect/landmark/objective_landmark/close, @@ -23521,6 +23908,12 @@ }, /turf/open/auto_turf/snow/layer3, /area/shiva/exterior/cp_colony_grounds) +"xyi" = ( +/obj/structure/machinery/light/double, +/obj/effect/decal/cleanable/vomit, +/obj/effect/landmark/structure_spawner/setup/distress/xeno_weed_node, +/turf/open/floor/plating, +/area/shiva/interior/colony/medseceng) "xyY" = ( /obj/structure/prop/invuln{ desc = "The mounting points are ground down from heavy use. They'll need some maintenance work before they can be used again."; @@ -23591,16 +23984,6 @@ }, /turf/open/floor/shiva/north, /area/shiva/interior/colony/medseceng) -"xCz" = ( -/obj/effect/decal/warning_stripes{ - icon_state = "W-corner" - }, -/obj/item/lightstick/red/spoke/planted{ - pixel_x = -11; - pixel_y = 25 - }, -/turf/open/floor/plating, -/area/shiva/exterior/junkyard) "xCA" = ( /obj/effect/decal/cleanable/blood/drip, /turf/open/floor/prison/kitchen, @@ -23688,9 +24071,6 @@ /obj/structure/largecrate/random, /turf/open/floor/shiva/floor3, /area/shiva/interior/aerodrome) -"xHv" = ( -/turf/open/auto_turf/ice/layer1, -/area/shiva/interior/aerodrome) "xIL" = ( /obj/item/powerloader_clamp, /turf/open/floor/shiva/floor3, @@ -23743,7 +24123,7 @@ "xMH" = ( /obj/structure/machinery/power/apc/no_power/north, /turf/open/floor/shiva/floor3, -/area/shiva/interior/colony/deck) +/area/shiva/interior/colony/central) "xMQ" = ( /obj/structure/reagent_dispensers/fueltank, /turf/open/floor/shiva/floor3, @@ -23846,6 +24226,10 @@ }, /turf/open/auto_turf/snow/layer4, /area/shiva/exterior/cp_lz2) +"xUA" = ( +/obj/effect/landmark/structure_spawner/setup/distress/xeno_weed_node, +/turf/open/auto_turf/ice/layer1, +/area/shiva/exterior/cp_s_research) "xVo" = ( /obj/structure/machinery/photocopier, /turf/open/floor/shiva/blue/west, @@ -23856,6 +24240,13 @@ }, /turf/open/auto_turf/ice/layer1, /area/shiva/interior/caves/cp_camp) +"xXf" = ( +/obj/structure/stairs/perspective/ice{ + dir = 1; + icon_state = "p_stair_full" + }, +/turf/open/auto_turf/snow/layer4, +/area/shiva/exterior/southwest_valley) "xXv" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/trash/plate{ @@ -26352,7 +26743,7 @@ mFm mFm uRn mFm -mFm +ouY xYx mFm nNd @@ -26424,7 +26815,7 @@ aFO aFO aFO aFO -aFO +vAv xAS oRH oRH @@ -26516,7 +26907,7 @@ mFm fOE mFm mFm -mFm +ouY mFm xYx mFm @@ -26588,7 +26979,7 @@ elf too xAS oRH -aFO +vAv aFO xAS aFO @@ -26746,7 +27137,7 @@ aFO aFO xAS xAS -oRH +uBt uIO oRH oRH @@ -26842,7 +27233,7 @@ mFm mFm mFm xYx -mFm +ouY mFm caS caS @@ -27753,7 +28144,7 @@ iQq kLM kLM uqb -kLM +jtc uqb puZ puZ @@ -28074,7 +28465,7 @@ cQW cQW iQq iQq -iQq +fDx kLM kLM ath @@ -28400,7 +28791,7 @@ kLM cQW iQq kLM -kLM +jtc wgM kLM ath @@ -28623,7 +29014,7 @@ wgX mFm mFm mFm -aWb +eQr hlO jMD caS @@ -28943,7 +29334,7 @@ mhP mFm wMj wMj -iuK +mbd mFm kEh jMD @@ -29081,7 +29472,7 @@ mFm mFm mFm mFm -mFm +dkY mFm mFm mFm @@ -29093,7 +29484,7 @@ iuK mFm mFm mFm -mFm +lJv mFm mFm mFm @@ -29179,10 +29570,10 @@ tlB tlB hBq tlB -tlB +bqz tlB xAS -aFO +jYX tlB xAS tlB @@ -29240,19 +29631,18 @@ caS caS mFm mFm +dkY mFm mFm mFm mFm mFm +dkY mFm mFm mFm -mFm -mFm +tMv iuK -iuK -mFm mFm mFm mFm @@ -29260,6 +29650,7 @@ mFm mFm mFm mFm +lJv mFm mFm mFm @@ -29272,7 +29663,7 @@ ftm umj hjx vOd -slj +ihk mFm hlO kAp @@ -29668,7 +30059,7 @@ aFO aFO xAS tlB -tlB +bqz tlB xAS aFO @@ -30009,11 +30400,11 @@ kLM iQq iQq iQq +crJ iQq iQq iQq -iQq -iQq +crJ kLM kLM qoU @@ -30168,7 +30559,7 @@ kLM knI iQq iQq -iQq +crJ iQq iQq iQq @@ -30488,20 +30879,20 @@ ibP dMo uji uji -kLM -lNE -uqb -iOu -kLM -iQq -iQq -iQq -iQq -kLM -kLM -uqb -uqb -uqb +oHV +hvH +qDh +gdI +aJt +hbY +hbY +hbY +hbY +aJt +aJt +qDh +qDh +qDh hzJ huz huz @@ -30649,22 +31040,22 @@ pvv pvv fRg uji -ofw -kop -kop -kop -tHd -tHd -kyD -kyD -kyD -kyD -tHd -tHd -rtZ -jMf -ofw -ofw +dKD +qDh +qDh +qDh +aJt +aJt +hbY +hbY +hbY +hbY +aJt +aJt +gGq +saY +dKD +dKD huz huz huz @@ -30811,22 +31202,22 @@ pvv pvv fRg hGj -tHd -xvp -kop -xwk -kop -kyD -kyD -kyD -kyD -tHd -kyD -tHd -kop -tHd -que -ofw +aJt +gdI +qDh +cTe +qDh +hbY +hbY +hbY +hbY +aJt +hbY +aJt +qDh +aJt +dCB +dKD huz kys pef @@ -30973,22 +31364,22 @@ pvv pvv fRg hGj -tHd -kyD -tHd -kop -tHd -kyD -kyD -kyD -kyD -kyD -tHd -kyD -kyD -tHd -tHd -tHd +aJt +hbY +aJt +qDh +aJt +hbY +hbY +hbY +hbY +hbY +aJt +hbY +hbY +aJt +aJt +aJt huz krU axJ @@ -31135,22 +31526,22 @@ pvv pvv gxK hGj -kyD -kyD -kyD -tHd -kyD -kyD -kyD -kyD -kyD -kyD -kyD -tHd -tHd -kyD -kyD -kyD +hbY +hbY +hbY +aJt +hbY +hbY +hbY +hbY +hbY +hbY +hbY +aJt +aJt +hbY +hbY +hbY huz axJ axJ @@ -31297,22 +31688,22 @@ dbH fhv fRg hGj -tHd -tHd -kyD -kyD -tHd -fHx -kyD -kyD -kyD -kyD -kyD -kyD -kyD -kyD -kyD -tpg +aJt +aJt +hbY +hbY +aJt +kXM +hbY +hbY +hbY +hbY +hbY +hbY +hbY +hbY +hbY +wme exX qIr axJ @@ -31459,22 +31850,22 @@ aUA gIQ fRg hGj -kop -kop -kop -tHd -kyD -dyt -kyD -kyD -kyD -rNY -kyD -kyD -kyD -kyD -kyD -eSN +qDh +qDh +qDh +aJt +hbY +sWw +hbY +hbY +hbY +jMK +hbY +hbY +hbY +hbY +hbY +cbV akF alS aMW @@ -31621,22 +32012,22 @@ deV eVG fRg hGj -kop -tHd -tHd -kyD -kyD -dyt -kyD -tHd -kyD -kyD -kyD -kyD -kyD -kyD -kyD -tpg +qDh +aJt +aJt +hbY +hbY +sWw +hbY +aJt +hbY +hbY +hbY +hbY +hbY +hbY +hbY +wme exX qIr rdS @@ -31783,22 +32174,22 @@ dKR pvv fRg hGj -tHd -kyD -kyD -kyD -kyD -kyD -tHd -tHd -kop -tHd -kyD -kyD -kyD -kyD -kyD -tpg +aJt +hbY +hbY +hbY +hbY +hbY +aJt +aJt +qDh +aJt +hbY +hbY +hbY +hbY +hbY +wme exX qIr aut @@ -31945,22 +32336,22 @@ pvv pvv fRg hGj -kyD -kyD -kyD -kyD -kyD -kyD -tHd -ofw -tHd -kyD -kyD -kyD -kyD -kyD -kyD -kyD +hbY +hbY +hbY +hbY +hbY +hbY +aJt +dKD +aJt +hbY +hbY +hbY +hbY +hbY +hbY +hbY huz aut rdS @@ -32107,22 +32498,22 @@ pvv pvv fRg hGj -kyD -xvp -tHd -xvp -tHd -tHd -kyD -tHd -kyD -kyD -kyD -kyD -pKK -kyD -xvp -tHd +hbY +gdI +aJt +gdI +aJt +aJt +hbY +aJt +hbY +hbY +hbY +hbY +lel +hbY +gdI +aJt huz rdS axJ @@ -32269,17 +32660,17 @@ pvv pvv gqe uji -wNB -khx -jac -khx -iHu -jXD -tHd -kyD -kyD -tHd -tHd +eqm +dmv +sON +dmv +gDH +tSq +aJt +hbY +hbY +aJt +aJt huz huz huz @@ -32435,13 +32826,13 @@ iMA iMA iMA uKZ -ehV -ofw -aQJ -kyD -kyD -tHd -kop +uGs +dKD +pHd +hbY +hbY +aJt +qDh huz cio ieD @@ -32597,13 +32988,13 @@ ohq mKB cLq iMA -avx -voo -tHd -kyD -kyD -tHd -tpg +jUM +vou +aJt +hbY +hbY +aJt +wme exX qIr azS @@ -32759,13 +33150,13 @@ pvv fRg xQa iMA -avx -kop -tHd -kyD -kyD -tHd -tpg +jUM +qDh +aJt +hbY +hbY +aJt +wme exX alW arW @@ -32921,13 +33312,13 @@ pvv fRg uKZ uKZ -vqV -tHd -tHd -kyD -kyD -kyD -tHd +ecg +aJt +aJt +hbY +hbY +hbY +aJt huz pJM ayZ @@ -33083,13 +33474,13 @@ khz fRg iMA nIA -scp -tHd -kyD -kyD -tHd -kyD -kyD +tOX +aJt +hbY +hbY +aJt +hbY +hbY huz aQq axJ @@ -33245,13 +33636,13 @@ pvv oCG kjM oCG -kyD -kyD -kyD -tHd -ofw -tHd -kyD +hbY +hbY +hbY +aJt +dKD +aJt +hbY huz huz avz @@ -33407,14 +33798,14 @@ pvv oCG wRm oCG -kyD -kyD -kyD -szU -tHd -kyD -kyD -kop +hbY +hbY +hbY +qyQ +aJt +hbY +hbY +qDh ncS pTp pTp @@ -33569,14 +33960,14 @@ dZN fRg iMA tLC -hye -tHd -kyD -tHd -kyD -kyD -tHd -kop +ddF +aJt +hbY +aJt +hbY +hbY +aJt +qDh ncS mRc rdS @@ -33731,14 +34122,14 @@ iMA iMA uKZ uKZ -ehV -tHd -kyD -kyD -kyD -tHd -tHd -kop +uGs +aJt +hbY +hbY +hbY +aJt +aJt +qDh ncS bWB auh @@ -33893,13 +34284,13 @@ ftr obb vHX iMA -ehV -tHd -kyD -kyD -tHd -kop -kop +uGs +aJt +hbY +hbY +aJt +qDh +qDh huz huz auh @@ -34055,13 +34446,13 @@ bKV krm iXx iMA -ehV -kop -tHd -kyD -nAs -kop -ajE +uGs +qDh +aJt +hbY +gZn +qDh +qXQ huz qSW arZ @@ -34217,13 +34608,13 @@ iMA iMA iMA uKZ -ehV -kop -tHd -kyD -kyD -tHd -ajd +uGs +qDh +aJt +hbY +hbY +aJt +cWI huz fjS anJ @@ -34375,16 +34766,16 @@ pvv eGs fRg uji -xwo -jhm -bHC -bHC -iKW -tHd -kyD -kyD -kyD -kyD +fKR +orv +nKM +nKM +mMw +aJt +hbY +hbY +hbY +hbY qIr oWk qIr @@ -34537,16 +34928,16 @@ pvv pvv fRg hvZ -tHd -xvp -tHd -xvp -tHd -kyD -tHd -kyD -kyD -kyD +aJt +gdI +aJt +gdI +aJt +hbY +aJt +hbY +hbY +hbY qIr oWk qIr @@ -34699,16 +35090,16 @@ aSA pvv fRg hvZ -tHd -kyD -kyD -kyD -kyD -tHd -kyD -kyD -kyD -kyD +aJt +hbY +hbY +hbY +hbY +aJt +hbY +hbY +hbY +hbY qIr akF alS @@ -34861,16 +35252,16 @@ wTz pvv fRg hvZ -kyD -tHd -kyD -kyD -kyD -kyD -kyD -tHd -kyD -kyD +hbY +aJt +hbY +hbY +hbY +hbY +hbY +aJt +hbY +hbY qIr exX qIr @@ -35023,16 +35414,16 @@ dbH wvx fRg hvZ -tHd -kyD -tHd -kyD -kyD -kyD -tHd -rli -aQJ -kyD +aJt +hbY +aJt +hbY +hbY +hbY +aJt +dvw +pHd +hbY huz huz kLi @@ -35185,16 +35576,16 @@ dCS eoH fRg hvZ -kyD -kyD -tHd -kyD -kyD -tHd -qLS -ofw -jMf -tHd +hbY +hbY +aJt +hbY +hbY +aJt +eWF +dKD +saY +aJt huz huz dLi @@ -35347,16 +35738,16 @@ deV uyI fRg hvZ -kyD -kyD -kyD -kyD -kyD -kyD -tHd -ofw -kop -kyD +hbY +hbY +hbY +hbY +hbY +hbY +aJt +dKD +qDh +hbY huz huz huz @@ -35509,17 +35900,17 @@ pti pvv fRg hvZ -tHd -kyD -kyD -kyD -kyD -kyD -tHd -jMf -tHd -kyD -kyD +aJt +hbY +hbY +hbY +hbY +hbY +aJt +saY +aJt +hbY +hbY huz huz huz @@ -35671,19 +36062,19 @@ pvv pvv fRg hvZ -tHd -tHd -kyD -kyD -kyD -kyD -kyD -tHd -tHd -kyD -kyD -kyD -lXQ +aJt +aJt +hbY +hbY +hbY +hbY +hbY +aJt +aJt +hbY +hbY +hbY +bir cwZ kAw kAw @@ -35833,19 +36224,19 @@ pvv pvv fRg hvZ -tHd -xvp -tHd -xvp -tHd -tHd -kyD -tHd -kyD -kyD -tHd -kyD -jWh +aJt +gdI +aJt +gdI +aJt +aJt +hbY +aJt +hbY +hbY +aJt +hbY +vtD cwZ kAw kAw @@ -35995,19 +36386,19 @@ hZI pvv fWq uji -iOA -ofw -jMf -tHd -kop -kop -kyD -kyD -tHd -tHd -tHd -tHd -fpF +miG +dKD +saY +aJt +qDh +qDh +hbY +hbY +aJt +aJt +aJt +aJt +avR wSv kAw kAw @@ -36157,18 +36548,18 @@ bxL gGc rzR uji -qrY -qrY -qrY -hHR -hHR -xCz -uxZ -uxZ -uxZ -lWC -hHR -hHR +gWx +gWx +gWx +rhL +rhL +lZl +bLV +bLV +bLV +ocP +rhL +rhL sax sax sax @@ -36319,18 +36710,18 @@ uKZ uKZ uKZ uji -ofw -ofw -jMf -tHd -kop -kop -kyD -kyD -kyD -tHd -kop -gzb +dKD +dKD +saY +aJt +qDh +qDh +hbY +hbY +hbY +aJt +qDh +kLk sax sax sax @@ -36472,28 +36863,28 @@ uKZ jLX uKZ uji -tHd -rtZ -tHd -tHd -rtZ -kop -kop -xvp -tHd -jMf -xvp -kop -kop -kop -tHd -kyD -kyD -kyD -tHd -kop -bhN -fCs +aJt +gGq +aJt +aJt +gGq +qDh +qDh +gdI +aJt +saY +gdI +qDh +qDh +qDh +aJt +hbY +hbY +hbY +aJt +qDh +qcn +xpd sax sax rBk @@ -36634,28 +37025,28 @@ qnJ jOi qnJ mkC -kyD -kyD -kyD -kyD -kyD -kyD -kyD -kyD -tHd -iMC -kyD -kyD -tHd -tHd -kyD -tHd -kyD -kyD -tHd -kop -bhN -fCs +hbY +hbY +hbY +hbY +hbY +hbY +hbY +hbY +aJt +ulr +hbY +hbY +aJt +aJt +hbY +aJt +hbY +hbY +aJt +qDh +qcn +xpd sax sax sax @@ -36796,27 +37187,27 @@ ajy jOi ajy ppS -kyD -kyD -kyD -kyD -kyD -kyD -kyD -kyD -kyD -kyD -kyD -kyD -kyD -kyD -kyD -kyD -kyD -kyD -tHd -kop -lip +hbY +hbY +hbY +hbY +hbY +hbY +hbY +hbY +hbY +hbY +hbY +hbY +hbY +hbY +hbY +hbY +hbY +hbY +aJt +qDh +iub sax sax sax @@ -36958,27 +37349,27 @@ ajy jOi ajy ppS -kyD -kyD -kyD -kyD -kyD -kyD -tHd -tHd -kyD -tHd -tHd -kyD -kyD -kyD -kyD -kyD -kyD -kyD -kyD -tHd -ofw +hbY +hbY +hbY +hbY +hbY +hbY +aJt +aJt +hbY +aJt +aJt +hbY +hbY +hbY +hbY +hbY +hbY +hbY +hbY +aJt +dKD sax hrk llZ @@ -37120,28 +37511,28 @@ ajy jOi ajy ppS -tHd -tHd -tHd -kop -aQJ -kop -eyx -kop -tHd -kop -kop -tHd -kyD -kyD -kyD -kyD -kyD -kyD -kyD -kyD -kyD -grk +aJt +aJt +aJt +qDh +pHd +qDh +geQ +qDh +aJt +qDh +qDh +aJt +hbY +hbY +hbY +hbY +hbY +hbY +hbY +hbY +hbY +ryN hrk kAw qgP @@ -37282,28 +37673,28 @@ ajy jOi ajy lGT -jMf -tHd -kop -jMf -sJo -ofw -etl -fLi -gGT -kop -tHd -xvp -kyD -kyD -kyD -tHd -kyD -kyD -kyD -tHd -oDi -nRD +saY +aJt +qDh +saY +itu +dKD +tAe +rWN +urH +qDh +aJt +gdI +hbY +hbY +hbY +aJt +hbY +hbY +hbY +aJt +fna +daY kAw vPr kAw @@ -37444,28 +37835,28 @@ bni bni bni uir -ofw -jMf -tHd -kop -jMf -gGT -kop -rli -kop -kop -tHd -kyD -kyD -kyD -tHd -kyD -tHd -kyD -kyD -kyD -tHd -kjX +dKD +saY +aJt +qDh +saY +urH +qDh +dvw +qDh +qDh +aJt +hbY +hbY +hbY +aJt +hbY +aJt +hbY +hbY +hbY +aJt +xXf kAw vPr qgP @@ -37609,25 +38000,25 @@ kyD kyD kyD tHd -kyD -kyD -kyD -kyD -kyD -kop -kop -kop -tHd -tHd -jMf -jMf -qLS -ofw -ofw -kop -kyD -kop -hbp +hbY +hbY +hbY +hbY +hbY +qDh +qDh +qDh +aJt +aJt +saY +saY +eWF +dKD +dKD +qDh +hbY +qDh +xXf kAw llZ nZA @@ -37773,23 +38164,23 @@ fDH kyD tHd kyD -kyD -kyD -kop -kop -kop -kop -jMf -jMf -jMf -qLS -bRU -ofw -kop -mwE -ofw -kyD -hbp +hbY +hbY +qDh +qDh +qDh +qDh +saY +saY +saY +eWF +lMC +dKD +qDh +gKF +dKD +hbY +xXf kAw kAw jaT @@ -37936,22 +38327,22 @@ kyD kyD kyD kyD -kyD -kyD -kyD -kyD -jMf -ofw -jMf -jMf -jMf -ofw -qLS -kop -kyD -kop -kyD -mxr +hbY +hbY +hbY +hbY +saY +dKD +saY +saY +saY +dKD +eWF +qDh +hbY +qDh +hbY +pfj kAw vPr vPr @@ -38099,21 +38490,21 @@ kyD kyD kyD kyD -kyD -tHd -kyD -tHd -tHd -jMf -jMf -jMf -ofw -jMf -ofw -bhB -kop -kop -gss +hbY +aJt +hbY +aJt +aJt +saY +saY +saY +dKD +saY +dKD +rff +qDh +qDh +bSu sax sax sax @@ -38262,18 +38653,18 @@ kyD kyD kyD kyD -kyD -kyD -tHd -tHd -jMf -jMf -tHd -jMf -kop -jMf -ofw -ofw +hbY +hbY +aJt +aJt +saY +saY +aJt +saY +qDh +saY +dKD +dKD rgy jMf gss @@ -38425,16 +38816,16 @@ kyD kyD tHd kyD -kop -kop -kop -bnD -kop -kop -rgy -tHd -kop -ofw +qDh +qDh +qDh +sjA +qDh +qDh +uUb +aJt +qDh +dKD oxP ofw ofw @@ -38589,13 +38980,13 @@ kyD kyD kyD jMf -jMf -kop -kop -jMf -kop -kop -tHd +saY +qDh +qDh +saY +qDh +qDh +aJt jMf jMf jMf @@ -43680,10 +44071,10 @@ djn tfd aeA axz -pMs -bsp -bsp -icC +prU +jqY +jqY +cZb wag wag lJx @@ -43842,9 +44233,9 @@ axz hwJ axz aaY -hWh -bsp -bsp +ndR +jqY +jqY rAF oWG gzc @@ -44004,9 +44395,9 @@ axz ndR iwn axz -hWh -bsp -bsp +ndR +jqY +jqY rAF oWG stT @@ -44166,9 +44557,9 @@ vBg ndR iRh axz -hWh -bsp -bsp +ndR +jqY +jqY rAF eOM eOM @@ -44329,8 +44720,8 @@ ndR lHX axz xMH -bsp -bsp +jqY +jqY rAF eOM sYu @@ -44490,9 +44881,9 @@ vBg ndR fJw axz -hWh -bsp -bsp +ndR +jqY +jqY rAF eOM eOM @@ -44653,8 +45044,8 @@ ndR fKT axz mQs -bsp -bsp +jqY +jqY rAF eOM mtU @@ -44814,9 +45205,9 @@ vBg ndR ndR ord -bsp -bsp -bsp +jqY +jqY +jqY rAF eOM sYu @@ -44977,8 +45368,8 @@ ndR fcq axz mQs -bsp -bsp +jqY +jqY rAF eOM eOM @@ -45139,13 +45530,13 @@ ndR gcF axz sqy -bsp -bsp -mms +jqY +jqY +qrz bbw bbw bbw -kiS +cwG eOM sYu sYu @@ -45301,12 +45692,12 @@ ndR sII axz lNf -bsp -bsp -bsp -bsp -bsp -bsp +jqY +jqY +jqY +jqY +jqY +jqY rAF eOM sYu @@ -45464,11 +45855,11 @@ axz aaY sXr dMy -hWh -hWh -hWh -hWh -bsp +ndR +ndR +ndR +ndR +jqY rAF eOM sYu @@ -45629,8 +46020,8 @@ axz axz axz aaY -hWh -bsp +ndR +jqY rAF eOM sYu @@ -45791,8 +46182,8 @@ muN ivl ixo axz -hWh -bsp +ndR +jqY rAF sYu eOM @@ -45953,8 +46344,8 @@ kvB djn wFq axz -hWh -bsp +ndR +jqY rAF nOi rnB @@ -46115,10 +46506,10 @@ tfd djn djn gFe -bsp -bsp -mms -iWg +jqY +jqY +qrz +vph tDr sYu sYu @@ -46277,10 +46668,10 @@ jsn tfd hin axz -hWh -bsp +ndR +jqY pEs -uQy +cgN gkG sYu sYu @@ -46440,9 +46831,9 @@ axz axz aaY mQs -bsp +jqY pEs -sNi +tnw sYu sYu sYu @@ -46601,10 +46992,10 @@ muN ivl ixo axz -hWh -bsp +ndR +jqY pEs -sNi +tnw sYu sYu sYu @@ -46763,10 +47154,10 @@ kvB djn wFq axz -hWh -bsp +ndR +jqY pEs -hEa +uKm rnB sYu sYu @@ -46925,10 +47316,10 @@ tfd djn djn gFe -bsp -bsp -mms -iWg +jqY +jqY +qrz +vph tDr lwo sYu @@ -47087,8 +47478,8 @@ euZ tfd hin axz -hWh -bsp +ndR +jqY rAF gCW gkG @@ -47249,8 +47640,8 @@ axz axz axz aaY -hWh -bsp +ndR +jqY rAF sYu arX @@ -47409,10 +47800,10 @@ qrz ibN axz mQs -hWh -hWh -hWh -bsp +ndR +ndR +ndR +jqY rAF arX arX @@ -47570,11 +47961,11 @@ jqY jqY jqY czH -bsp -bsp -bsp -bsp -bsp +jqY +jqY +jqY +jqY +jqY rAF arX eOM @@ -47732,11 +48123,11 @@ jqY jqY jqY qrz -bsp -bsp -bsp -bsp -bsp +jqY +jqY +jqY +jqY +jqY rAF adZ adZ @@ -48056,12 +48447,12 @@ acT aht acT aDn -cKb -cKb -cKb -cKb -cKb -cKb +aaY +aaY +aaY +aaY +aaY +aaY hDs iXS sLs @@ -48136,10 +48527,10 @@ pLf asz asz asz -ndb -pCI -gmV -vTc +bBx +oIT +kLL +aXD asz asz asz @@ -48173,7 +48564,7 @@ gpz gpz bJj bJj -bJj +efO gpz bJj bJj @@ -48298,11 +48689,11 @@ pLf asz crF aXH -tHD +wli crF crF tHD -uEx +qKB crF fNE qud @@ -48329,7 +48720,7 @@ jrg jrg bJj bJj -gpz +cux gpz gpz gpz @@ -48500,7 +48891,7 @@ bJj bJj bJj bJj -sax +jrg puZ puZ puZ @@ -48511,7 +48902,7 @@ puZ (152,1,1) = {" acH acT -ajO +nrt ajO acT agt @@ -48622,10 +49013,10 @@ pLf asz asz asz -tpL -orO -orO -tJY +sNk +iNt +iNt +usQ asz asz asz @@ -48662,9 +49053,9 @@ bJj bJj gpz bJj -sax -sax -sax +jrg +jrg +jrg puZ puZ puZ @@ -48814,19 +49205,19 @@ jrg amu amu amu -bJj -fXX -gpz -bJj -bJj +ean +gWc +jMB +ean +oEA +jrg +jrg +ean +jMB +lsR +jrg jrg jrg -bJj -gpz -osE -sax -sax -sax puZ puZ puZ @@ -48986,9 +49377,9 @@ jrg bJj bJj bJj -sax -sax -sax +jrg +jrg +jrg puZ puZ puZ @@ -49094,9 +49485,9 @@ qbF gJo qbF daD -xHv -xHv -xHv +gJo +gJo +gJo wXs asz abn @@ -49140,17 +49531,17 @@ fXX fXX osE osE -gpz +cux gpz jrg jrg bJj bJj +dIE osE -osE -sax -sax -sax +jrg +jrg +jrg puZ puZ puZ @@ -49256,9 +49647,9 @@ qdH qdH qbF bIV -xHv -xHv -xHv +gJo +gJo +gJo wXs asz abp @@ -49270,17 +49661,17 @@ asz aUX aWB gTU -wnK +pCj wnK wnK aXH rZt -rZt +dAt rZt asz asz rZt -rZt +dAt hCY hCY fNE @@ -49310,10 +49701,10 @@ bJj bJj gpz osE -sax -sax -sax -sax +jrg +jrg +jrg +jrg puZ puZ puZ @@ -49418,9 +49809,9 @@ qdH qbF qbF gJo -xHv -xHv -xHv +gJo +gJo +gJo wXs asz abp @@ -49472,10 +49863,10 @@ bJj bJj gpz osE -sax -sax -sax -sax +jrg +jrg +jrg +jrg puZ puZ puZ @@ -49573,16 +49964,16 @@ bIV cZk cZk cZk -sFs -xHv -sFs -xHv -xHv -xHv -xHv -xHv -xHv -uLi +bIV +gJo +bIV +gJo +gJo +gJo +gJo +gJo +gJo +qbF wXs asz aNR @@ -49634,10 +50025,10 @@ bJj bJj bJj amu -sax -sax -sax -sax +jrg +jrg +jrg +jrg puZ puZ puZ @@ -49646,7 +50037,7 @@ puZ acH acT aQX -ajO +nrt acT agA aoK @@ -49735,16 +50126,16 @@ cZk cZk cZk cZk -tjL -xHv -xHv -gik -gik -gik +xvA +gJo +gJo +bFg +bFg +bFg dbv -kaC -xHv -xHv +aUd +gJo +gJo wXs asz aNP @@ -49785,20 +50176,20 @@ jrg jrg amu fXX -fXX +vtf amu jrg bJj gpz bJj bJj -bJj +efO osE bJj amu -sax -sax -sax +jrg +jrg +jrg puZ puZ puZ @@ -49811,7 +50202,7 @@ ajO ajO acT aoK -aoK +ifI aoK aoK apj @@ -49897,16 +50288,16 @@ bIV bFg cZk bIV -xHv -sFs -xHv -xHv -gik -xHv +gJo +bIV +gJo +gJo +bFg +gJo tmP -kaC -xHv -goe +aUd +gJo +bsV wXs asz abp @@ -49978,11 +50369,11 @@ aoK aoK acT iJY +aff agh agh agh -agh -kbJ +aqz agh agh xbP @@ -50059,16 +50450,16 @@ bIV fUZ bIV bIV -xHv -xHv -xHv -xHv -xHv -goe -kaC -kaC -kaC -xHv +gJo +gJo +gJo +gJo +gJo +bsV +aUd +aUd +aUd +gJo wXs asz abp @@ -50221,16 +50612,16 @@ bIV bFg bFg bFg -xHv -xHv -uLi -xHv +gJo +gJo +qbF +gJo qEH -kaC -kaC -kaC -xHv -xHv +aUd +aUd +aUd +gJo +gJo wXs asz abx @@ -50272,7 +50663,7 @@ amu lAb fXX fXX -fXX +vtf fXX fXX fXX @@ -50384,15 +50775,15 @@ bFg bFg bFg bIV -xHv -sFs -xHv -xHv -goe -kaC -xHv -gik -xHv +gJo +bIV +gJo +gJo +bsV +aUd +gJo +bFg +gJo wXs asz asz @@ -50404,7 +50795,7 @@ asz rZt rZt rZt -gGf +gCe bDx asz kXt @@ -50546,15 +50937,15 @@ bFg bFg bFg bFg -xHv -xHv -xHv -sFs -xHv -xHv -xHv -gik -gik +gJo +gJo +gJo +bIV +gJo +gJo +gJo +bFg +bFg wXs asz aNN @@ -50576,7 +50967,7 @@ rZt asz asz hLB -rZt +dAt rZt asz asz @@ -50617,7 +51008,7 @@ puZ (165,1,1) = {" acH acT -aKq +uFi ajO acT aim @@ -50708,15 +51099,15 @@ bFg bFg bFg bIV -xHv -xHv -xHv -uLi -xHv -xHv -xHv -gik -xHv +gJo +gJo +gJo +qbF +gJo +gJo +gJo +bFg +gJo wXs bXo kxx @@ -50788,7 +51179,7 @@ agh anR acT iJY -agh +aff agh axG aek @@ -50869,16 +51260,16 @@ bFg bFg bFg bIV -kaC -xHv -xHv -xHv -sFs -xHv -xHv -uLi -xHv -goe +aUd +gJo +gJo +gJo +bIV +gJo +gJo +qbF +gJo +bsV wXs lSU aNL @@ -50919,7 +51310,7 @@ rAH ukp kVd uzu -ukp +xUA ukp jrg amu @@ -51031,16 +51422,16 @@ gJo bFg bFg cZk -kaC -xHv -xHv -xHv -xHv -xHv -goe -xHv -xHv -xHv +aUd +gJo +gJo +gJo +gJo +gJo +bsV +gJo +gJo +gJo wXs lSU lSU @@ -51193,28 +51584,28 @@ oQl acI acI acI -kaC -kaC -kaC -kaC -kaC -kaC -xHv -xHv -xHv -xHv +aUd +aUd +aUd +aUd +aUd +aUd +gJo +gJo +lxD +gJo wXs lSU lSU tSI rZt gLv -rZt +dAt gLv afF wBf wnK -dTU +wFB wnK asz kbZ @@ -51253,7 +51644,7 @@ bJj bJj amu gpz -gpz +cux amu amu fXX @@ -51269,7 +51660,7 @@ ajO ajO aSa maW -maW +hdF agh nfg acT @@ -51436,7 +51827,7 @@ agh nfg acT iJY -agh +aff agh axG acT @@ -51572,7 +51963,7 @@ xgc bJj bJj bJj -bJj +efO bJj fXX osE @@ -51605,12 +51996,12 @@ acT ajO aDn cbt -agh +aff agh bFC umm agh -hqC +uIx hqC agh uXQ @@ -51726,7 +52117,7 @@ uzu ukp xgc ukp -ukp +xUA ukp pLf ukp @@ -51751,7 +52142,7 @@ puZ (172,1,1) = {" acH anq -bVS +xyi acT afx agh @@ -51779,13 +52170,13 @@ uXQ fkb agh agh -agh +aff agh agh fkb sYu sYu -sYu +alG sYu sYu sYu @@ -51855,7 +52246,7 @@ bme lSU twi flN -flN +pOn flN kEs kEs @@ -52017,7 +52408,7 @@ mIL uIE flN flN -flN +eSo flN flN eit @@ -52025,16 +52416,16 @@ kEs kEs flN rMI -dTU +wFB dTU rMI goj chU -goj +hFk chU chU chU -goj +hFk chU aiD asz @@ -52079,11 +52470,11 @@ ajV aDn aDn agh -maW +hdF maW ajO iJY -agh +aff agh agh axG @@ -52176,14 +52567,14 @@ oQl oQl mIL fQX -gaz +aRa uIE flN -flN -gCL +eSo +jQi flN kEs -flN +mEQ flN vTc rMI @@ -52217,7 +52608,7 @@ ukp bJj bJj bJj -gpz +cux bJj bJj bJj @@ -52226,7 +52617,7 @@ fXX osE fXX amu -sax +jrg puZ puZ puZ @@ -52249,7 +52640,7 @@ agh agh agh agh -agh +aff axG acT iEp @@ -52341,7 +52732,7 @@ ood mIL lqu flN -eit +lIA flN kEs kEs @@ -52364,7 +52755,7 @@ goj fNE aud miD -ptr +bIl ptr rZt aCB @@ -52388,9 +52779,9 @@ gpz bJj osE amu -sax -sax -sax +jrg +jrg +jrg puZ puZ puZ @@ -52503,7 +52894,7 @@ ood pqj vwn uIE -flN +pOn kEs flN flN @@ -52550,9 +52941,9 @@ rbq rbq rbq amu -sax -sax -sax +jrg +jrg +jrg puZ puZ puZ @@ -52568,9 +52959,9 @@ amh aly amh acT -bdT -maW -bdT +hvd +fgj +hvd acT acT acT @@ -52659,13 +53050,13 @@ jAL jAL mIL vJu -mIL +oiy ood fQX jAL mIL lSU -uIE +oaW flN kEs agw @@ -52678,11 +53069,11 @@ lSU wOO goj chU -goj +hFk lfk rZt uII -aiD +lJf chU goj fNE @@ -52712,7 +53103,7 @@ rbq rbq rbq amu -sax +jrg puZ puZ puZ @@ -52724,7 +53115,7 @@ puZ acH acT ajO -ajO +nrt aDn acT acT @@ -52874,7 +53265,7 @@ fXX fXX bJj amu -sax +jrg puZ puZ puZ @@ -52893,7 +53284,7 @@ ajO ajO aSa axG -maW +hdF axG aek vhG @@ -53036,7 +53427,7 @@ fXX bJj fXX amu -sax +jrg puZ puZ puZ @@ -53051,7 +53442,7 @@ cbW ajO ajO aQX -ajO +nrt ajO aDn axG @@ -53153,7 +53544,7 @@ oQl oQl lSU dwQ -eBG +tgJ dwQ dwQ elw @@ -53180,7 +53571,7 @@ asz jrg jrg jrg -osE +dIE bJj bJj bJj @@ -53191,14 +53582,14 @@ bJj bJj bJj bJj -bJj +efO gpz bJj bJj fXX fXX iTQ -sax +jrg puZ puZ puZ @@ -53216,14 +53607,14 @@ acT acT acT acT -tWv -axG -bdT +cwx +dEh +hvd aek cJy agh agh -agh +aff agh agh agh @@ -53232,7 +53623,7 @@ agh ahy agh agh -agh +aff uXQ acT agK @@ -53245,7 +53636,7 @@ agh uXQ ajw umm -agh +aff agh uXQ ajw @@ -53336,7 +53727,7 @@ oag asz aud rZt -rZt +dAt tiw asz jrg @@ -53360,8 +53751,8 @@ gpz fXX jrg iTQ -sax -sax +jrg +jrg puZ puZ puZ @@ -53481,7 +53872,7 @@ lSU lSU dwQ oaO -dwQ +fdo dwQ dwQ bXo @@ -53509,7 +53900,7 @@ bJj bJj bJj bJj -bJj +efO bJj bJj gpz @@ -53522,8 +53913,8 @@ gpz bJj jrg jrg -sax -sax +jrg +jrg puZ puZ puZ @@ -53563,7 +53954,7 @@ vKx cBe cBe cBe -mfr +rps agh agh uXQ @@ -53624,11 +54015,11 @@ fIT fQX iMb fQX -wMh -cQY -kSO -qBM -wMh +mIL +ndK +dij +uuC +mIL mIL mIL ood @@ -53650,11 +54041,11 @@ lSU lQm goj chU -goj +hFk dqH rZt sCl -onM +mdz chU goj fNE @@ -53681,10 +54072,10 @@ osE bJj bJj gpz -bJj +efO +jrg jrg jrg -sax puZ puZ puZ @@ -53703,7 +54094,7 @@ amP amU aoe bhS -amP +aeo amU aek scN @@ -53785,12 +54176,12 @@ tPz fIT fQX iMb -wMh -wMh -cQY -rJI -gso -pcY +mIL +mIL +ndK +cQL +feQ +oQl gaz mIL gaz @@ -53846,7 +54237,7 @@ gpz bJj bJj jrg -sax +jrg puZ puZ puZ @@ -53893,7 +54284,7 @@ agh feR acT aeh -agh +aff agh agh kdW @@ -53947,11 +54338,11 @@ aXZ fIT fQX iMb -wMh -wMh -cQY -aNy -xtc +mIL +mIL +ndK +dOn +xdo nKD mIL mIL @@ -54046,7 +54437,7 @@ agh uyJ acT aia -tCi +nSZ agh mah umm @@ -54110,11 +54501,11 @@ fIT iMb fQX fQX -wMh +mIL pXU -wMh -wMh -aFO +mIL +mIL +pqj gaz mIL mIL @@ -54293,7 +54684,7 @@ dwQ dwQ adI adj -dwQ +fdo adH lSU goj @@ -54491,7 +54882,7 @@ jrg jrg pxA flN -rZt +dAt dwQ pxA puZ @@ -54509,11 +54900,11 @@ adX bhS amP amP -amP +aeo amP aos amP -amP +aeo amP gBr aek @@ -54537,8 +54928,8 @@ acT acT acT kuM -jVp -jVp +cYa +cYa wMC ixX aDn @@ -54614,7 +55005,7 @@ ors lSU lSU dwQ -dwQ +fdo lSU ada ady @@ -54622,11 +55013,11 @@ adE lSU goj goj +hFk goj goj goj -goj -goj +hFk goj goj wnK @@ -54639,7 +55030,7 @@ bJj osE bJj bJj -gpz +cux gpz bJj bJj @@ -54686,7 +55077,7 @@ vOP mfr agh agh -agh +aff agh agh agh @@ -54698,11 +55089,11 @@ jVI kQF kzE acT -qOD +umm kTZ -iLS -mms -xjg +tCi +agh +uXQ aek vBl itG @@ -54791,7 +55182,7 @@ rZt kmO rZt rZt -rZt +dAt rZt rZt rZt @@ -54833,11 +55224,11 @@ adX bhS amP amP +aeo amP amP amP -amP -amP +aeo amP amU aek @@ -54860,11 +55251,11 @@ qbh ovc fMO pji -qOD -iLS -mms -mms -xjg +umm +tCi +agh +agh +uXQ aek iJY ylZ @@ -55022,11 +55413,11 @@ mLT ovc ovc aVQ -qOD -mms -mms -mms -xjg +umm +agh +aff +agh +uXQ nMZ ivy wFa @@ -55105,7 +55496,7 @@ fgK lSU chU gAV -gAV +lAP gAV gAV gAV @@ -55184,11 +55575,11 @@ hDw ovc fMO pcC -qOD -mms -mms -mms -xjg +umm +agh +agh +agh +uXQ aek vey txA @@ -55343,14 +55734,14 @@ eAZ qDT acT aoK -ovc +jbr ovc acT -qOD -mms -mms -mms -xjg +umm +agh +agh +agh +uXQ aDn uYg aDn @@ -55442,7 +55833,7 @@ asz asz rZt flN -rZt +dAt dwQ flN flN @@ -55497,7 +55888,7 @@ oYw oYw gQR agh -agh +aff agh agh gQR @@ -55508,15 +55899,15 @@ aoK ovc ovc gQR -ljM -dOf -mms -mms -rDn -jVp -joP -mms -mms +vKx +mfr +agh +agh +lXj +mxS +osh +agh +agh pfg pfg kiS @@ -55643,12 +56034,12 @@ acT axG maW axG -bhS +lmg qGq amP amP amP -amP +aeo amU knC aSi @@ -55670,18 +56061,18 @@ bVz pkp fuj acT -bjb -ljM -igN -igN -igN -igN -joP -mms -mms -mms -mms -mms +kzE +vKx +cBe +cBe +cBe +sxS +osh +agh +agh +agh +agh +agh iWg tDr sYu @@ -55780,14 +56171,14 @@ pxA mWE pJA wnK -mwF +fww mwF mwF mwF vKu bJi bJi -chU +rOL mwF pxA flN @@ -55801,7 +56192,7 @@ puZ (197,1,1) = {" acH axG -axG +tef axG iWa axG @@ -55814,7 +56205,7 @@ amP amU ajO aSi -aSi +oRc aSi aSi eAZ @@ -55839,11 +56230,11 @@ jQy acT acT acT -mms -mms -mms -mms -mms +agh +agh +agh +agh +agh uQy gkG sYu @@ -55914,7 +56305,7 @@ jDv oQl asz chU -gAV +lAP chU adT rZt @@ -56001,11 +56392,11 @@ apv qCa qEC acT -mms -mms -mms -mms -mms +agh +agh +aff +agh +agh sNi sYu sYu @@ -56030,7 +56421,7 @@ jAN asR atD auV -gxN +lvy gxN gxN axV @@ -56094,7 +56485,7 @@ bUe rZt chU rZt -chU +rOL dwQ wnK pxA @@ -56163,11 +56554,11 @@ amP amP amU knC -mms -mms -mms -mms -mms +agh +agh +agh +agh +agh hEa rnB sYu @@ -56291,12 +56682,12 @@ dbQ amP dbQ xBo -bhS +lmg amP sHc acT xoi -amP +aeo amU aek eAZ @@ -56313,23 +56704,23 @@ acT gWF amP iNS -amP +aeo amP amP gcP acT acT wxu -bhI -pNq +hst +kkw amP amU ajO -mms -mms -mms -mms -mms +agh +agh +agh +agh +agh iWg tDr sYu @@ -56412,7 +56803,7 @@ goj goj pxA vKu -wnK +pCj wnK cSn pxA @@ -56469,7 +56860,7 @@ oYw aDn aDn axG -axG +tef axG axG bhS @@ -56612,7 +57003,7 @@ puZ acH bhS amP -amP +aeo amP acT bhS @@ -56627,7 +57018,7 @@ eAZ eAZ oYw aSi -aSi +oRc aSi knC maW @@ -56724,13 +57115,13 @@ bgC rZt rZt chU -gAV +lAP chU rZt asz biM biM -biM +meQ goj lpA uWA @@ -56814,7 +57205,7 @@ acT wHZ amP amP -amP +aeo amP amj acT @@ -56907,7 +57298,7 @@ pxA pxA wnK wnK -wnK +pCj wnK wnK pxA @@ -56915,7 +57306,7 @@ rZt vKu vKu wnK -vKu +sQU wnK vKu wnK @@ -57226,7 +57617,7 @@ kQJ vKu wnK vKu -wnK +pCj vKu kap rZt @@ -57279,20 +57670,20 @@ aDn acT acT dWM -amP +aeo amU acT apO amP amP -amP +aeo amP amP amU nKc bhS mCg -pQt +hUS mhx aDn gXS @@ -57304,11 +57695,11 @@ alx amP amP acT -nSO -nSO -nSO -nSO -nSO +jLT +kqO +kqO +kqO +jLT puZ puZ puZ @@ -57401,7 +57792,7 @@ rZt vKu vKu wnK -vKu +sQU wnK vKu wnK @@ -57460,7 +57851,7 @@ aae gXS ajO ajO -ajO +nrt ajO ajO amP @@ -57468,7 +57859,7 @@ amP gXS wje nSO -kPl +fpp nSO nSO puZ @@ -57534,7 +57925,7 @@ eSt wFB dTU rZt -gAV +lAP rZt dTU asz @@ -57542,7 +57933,7 @@ asz asz asz asz -goj +hFk goj fNE chU @@ -57708,7 +58099,7 @@ biM biM fNE chU -vKu +sQU vQm pxA rZt @@ -57746,7 +58137,7 @@ puZ acH acT afm -amP +aeo amU axG axG @@ -57757,7 +58148,7 @@ tef axG okM axG -axG +tef axG axG axG @@ -57861,7 +58252,7 @@ goj goj djO goj -wnK +pCj rZt rZt fNE @@ -57874,7 +58265,7 @@ wnK vFX pxA iQe -qaF +nlt chU kyu drx @@ -58042,7 +58433,7 @@ gFb sfM oHF wnK -wnK +pCj wnK pxA lYG @@ -58116,7 +58507,7 @@ nSO nSO kPl kPl -nSO +bMW wje kPl puZ @@ -58269,7 +58660,7 @@ nSO aDw kPl kPl -kPl +fpp kPl nSO nSO @@ -58352,12 +58743,12 @@ rZt vKu vKu vKu -vKu +sQU vKu vKu vKu toN -vKu +sQU vKu dgF hEE @@ -58413,7 +58804,7 @@ axG mKf wje wje -nSO +bMW nSO kPl kPl @@ -58570,7 +58961,7 @@ amP amP gXS amU -amP +aeo gXS fjs aah @@ -58584,7 +58975,7 @@ aOu nSO kPl kPl -nSO +bMW nSO nSO nSO @@ -58598,7 +58989,7 @@ nSO kPl kPl kPl -nSO +bMW nSO nSO kPl @@ -58667,11 +59058,11 @@ oQl asz tqs rZt -goj +hFk rZt fHM goj -wnK +pCj rZt vKu wnK @@ -58859,13 +59250,13 @@ euA euA bJi euA -euA +tPu euA euA bJi bJi chU -mwF +fww rZt twi kue @@ -58880,7 +59271,7 @@ puZ acH acT aga -amP +aeo amU axG amP @@ -58891,7 +59282,7 @@ hms hms hms hms -cnk +vei amP bhI gXS @@ -59015,7 +59406,7 @@ pxA pxA bJi rZt -dTU +wFB dTU dTU dTU @@ -59066,7 +59457,7 @@ nSO nSO nSO nSO -nSO +bMW kPl kPl nSO diff --git a/maps/map_files/Kutjevo/Kutjevo.dmm b/maps/map_files/Kutjevo/Kutjevo.dmm index 1d66a6e0f75c..dd111dd4465b 100644 --- a/maps/map_files/Kutjevo/Kutjevo.dmm +++ b/maps/map_files/Kutjevo/Kutjevo.dmm @@ -317,6 +317,10 @@ }, /turf/open/floor/kutjevo/tan, /area/kutjevo/interior/colony_north) +"auz" = ( +/obj/effect/sentry_landmark/lz_1/top_right, +/turf/open/auto_turf/sand/layer0, +/area/kutjevo/exterior/lz_dunes) "avf" = ( /obj/structure/machinery/light{ dir = 4 @@ -554,9 +558,6 @@ }, /turf/closed/wall/kutjevo/colony, /area/kutjevo/interior/construction) -"aNn" = ( -/turf/open/auto_turf/sand/layer2, -/area/kutjevo/interior/power/comms) "aOh" = ( /obj/structure/largecrate/random/case/small, /turf/open/floor/kutjevo/colors/cyan, @@ -1259,7 +1260,7 @@ "bTa" = ( /obj/effect/landmark/hunter_secondary, /turf/open/auto_turf/sand/layer1, -/area/kutjevo/exterior/scrubland) +/area/kutjevo/exterior/scrubland/south) "bTt" = ( /obj/structure/bed/chair{ dir = 4 @@ -1672,7 +1673,7 @@ dir = 4 }, /turf/open/desert/desert_shore/desert_shore1/east, -/area/kutjevo/exterior/scrubland) +/area/kutjevo/exterior/scrubland/south) "cBq" = ( /obj/structure/flora/bush/ausbushes/ausbush{ icon_state = "pointybush_2"; @@ -1786,7 +1787,7 @@ /obj/structure/surface/rack, /obj/effect/landmark/objective_landmark/medium, /turf/open/floor/kutjevo/colors, -/area/kutjevo/interior/power) +/area/kutjevo/interior/power/comms) "cIZ" = ( /obj/structure/stairs/perspective/kutjevo{ dir = 8; @@ -2176,6 +2177,10 @@ }, /turf/open/auto_turf/sand/layer0, /area/kutjevo/exterior/scrubland) +"ddU" = ( +/obj/structure/platform/kutjevo, +/turf/open/auto_turf/sand/layer0, +/area/kutjevo/exterior/scrubland/south) "deo" = ( /obj/structure/bookcase{ icon_state = "book-5" @@ -2345,7 +2350,7 @@ /area/kutjevo/exterior/scrubland) "dsp" = ( /turf/open/desert/desert_shore/desert_shore1/north, -/area/kutjevo/exterior/scrubland) +/area/kutjevo/exterior/scrubland/south) "dsN" = ( /obj/structure/flora/grass/tallgrass/desert/corner{ dir = 5 @@ -2381,6 +2386,10 @@ }, /turf/open/floor/kutjevo/grey/plate, /area/kutjevo/interior/complex/botany/east_tech) +"dut" = ( +/obj/effect/sentry_landmark/lz_1/top_left, +/turf/open/auto_turf/sand/layer1, +/area/kutjevo/exterior/lz_dunes) "duu" = ( /obj/structure/machinery/door/poddoor/shutters/almayer{ name = "\improper South Power Shutters" @@ -2627,7 +2636,7 @@ /area/kutjevo/interior/complex/botany) "dJs" = ( /turf/open/gm/river/desert/shallow, -/area/kutjevo/exterior/scrubland) +/area/kutjevo/exterior/scrubland/south) "dJT" = ( /obj/structure/window/framed/kutjevo, /turf/open/floor/plating/kutjevo, @@ -2676,7 +2685,7 @@ dir = 1 }, /turf/open/auto_turf/sand/layer1, -/area/kutjevo/exterior/scrubland) +/area/kutjevo/exterior/scrubland/south) "dNI" = ( /obj/structure/platform/kutjevo/rock, /obj/effect/landmark/structure_spawner/setup/distress/xeno_weed_node, @@ -2700,7 +2709,7 @@ dir = 5 }, /turf/open/auto_turf/sand/layer1, -/area/kutjevo/exterior/scrubland) +/area/kutjevo/exterior/scrubland/south) "dQs" = ( /turf/open/floor/kutjevo/multi_tiles/east, /area/kutjevo/interior/complex/med/locks) @@ -2718,7 +2727,7 @@ "dQY" = ( /obj/effect/landmark/objective_landmark/close, /turf/open/floor/kutjevo/tan/multi_tiles, -/area/kutjevo/interior/power) +/area/kutjevo/interior/power/comms) "dRj" = ( /turf/open/floor/kutjevo/multi_tiles/east, /area/kutjevo/exterior/runoff_bridge) @@ -3244,6 +3253,10 @@ }, /turf/open/desert/desert_shore/shore_edge1/west, /area/kutjevo/exterior/runoff_bridge) +"exu" = ( +/obj/effect/sentry_landmark/lz_2/bottom_left, +/turf/open/floor/kutjevo/tan/alt_edge/north, +/area/kutjevo/exterior/lz_pad) "exD" = ( /obj/structure/blocker/forcefield/multitile_vehicles, /obj/structure/bed{ @@ -3356,7 +3369,7 @@ "eDS" = ( /obj/structure/prop/dam/boulder/boulder3, /turf/open/auto_turf/sand/layer0, -/area/kutjevo/exterior/scrubland) +/area/kutjevo/exterior/scrubland/south) "eEb" = ( /obj/structure/flora/grass/tallgrass/desert, /obj/structure/blocker/invisible_wall, @@ -3599,6 +3612,9 @@ /obj/structure/girder, /turf/open/floor/plating/kutjevo, /area/kutjevo/interior/construction) +"eTY" = ( +/turf/open/auto_turf/sand/layer1, +/area/kutjevo/exterior/scrubland/south) "eUA" = ( /turf/open/floor/kutjevo/tan/grey_edge/north, /area/kutjevo/interior/construction) @@ -3655,6 +3671,10 @@ /obj/structure/blocker/forcefield/multitile_vehicles, /turf/open/floor/kutjevo/grey/plate, /area/kutjevo/interior/construction) +"eZS" = ( +/obj/effect/sentry_landmark/lz_2/bottom_left, +/turf/open/auto_turf/sand/layer1, +/area/kutjevo/exterior/lz_pad) "eZT" = ( /obj/effect/landmark/monkey_spawn, /turf/open/auto_turf/sand/layer1, @@ -3756,7 +3776,7 @@ "ffu" = ( /obj/effect/landmark/objective_landmark/medium, /turf/open/floor/kutjevo/tan/multi_tiles, -/area/kutjevo/interior/power) +/area/kutjevo/interior/power/comms) "ffv" = ( /obj/structure/surface/table/almayer, /obj/item/device/defibrillator, @@ -3969,7 +3989,7 @@ /area/kutjevo/interior/power) "fui" = ( /turf/open/desert/desert_shore/shore_edge1/north, -/area/kutjevo/exterior/scrubland) +/area/kutjevo/exterior/scrubland/south) "fuz" = ( /turf/open/auto_turf/sand/layer1, /area/kutjevo/interior/power) @@ -4022,7 +4042,11 @@ dir = 1 }, /turf/open/auto_turf/sand/layer2, -/area/kutjevo/exterior/scrubland) +/area/kutjevo/exterior/scrubland/south) +"fCu" = ( +/obj/effect/sentry_landmark/lz_1/top_left, +/turf/open/auto_turf/sand/layer0, +/area/kutjevo/exterior/lz_dunes) "fDY" = ( /obj/structure/platform/kutjevo/smooth/stair_plate, /obj/structure/platform/kutjevo/smooth{ @@ -4216,7 +4240,7 @@ dir = 8 }, /turf/open/auto_turf/sand/layer0, -/area/kutjevo/exterior/scrubland) +/area/kutjevo/exterior/scrubland/south) "fRu" = ( /obj/structure/flora/grass/desert/lightgrass_2, /turf/open/auto_turf/sand/layer0, @@ -4253,6 +4277,12 @@ /obj/item/toy/handcard/aceofspades, /turf/open/auto_turf/sand/layer1, /area/kutjevo/exterior/lz_pad) +"fSU" = ( +/obj/structure/platform/kutjevo{ + dir = 8 + }, +/turf/open/auto_turf/sand/layer0, +/area/kutjevo/exterior/scrubland/south) "fTk" = ( /turf/open/floor/kutjevo/multi_tiles/east, /area/kutjevo/interior/colony_South/power2) @@ -4536,6 +4566,10 @@ /obj/effect/landmark/objective_landmark/science, /turf/open/floor/kutjevo/colors/cyan/inner_corner/north, /area/kutjevo/interior/complex/med) +"gtg" = ( +/obj/effect/sentry_landmark/lz_2/top_left, +/turf/open/auto_turf/sand/layer1, +/area/kutjevo/exterior/lz_pad) "gtr" = ( /obj/effect/landmark/structure_spawner/xvx_hive/xeno_door, /obj/effect/landmark/structure_spawner/setup/distress/xeno_door, @@ -4589,7 +4623,7 @@ /area/kutjevo/interior/complex/med) "gxs" = ( /turf/open/desert/desert_shore/shore_edge1/east, -/area/kutjevo/exterior/scrubland) +/area/kutjevo/exterior/scrubland/south) "gxD" = ( /obj/structure/stairs/perspective/kutjevo{ dir = 1; @@ -4615,7 +4649,7 @@ "gzv" = ( /obj/structure/platform/kutjevo, /turf/open/auto_turf/sand/layer1, -/area/kutjevo/exterior/scrubland) +/area/kutjevo/exterior/scrubland/south) "gzI" = ( /obj/structure/platform/kutjevo/rock{ dir = 8 @@ -4979,7 +5013,7 @@ dir = 4 }, /turf/open/auto_turf/sand/layer1, -/area/kutjevo/exterior/scrubland) +/area/kutjevo/exterior/scrubland/south) "gYr" = ( /obj/structure/surface/table/almayer, /obj/item/ammo_magazine/shotgun/buckshot{ @@ -5800,6 +5834,9 @@ "iyd" = ( /turf/open/floor/kutjevo/colors/cyan/inner_corner/north, /area/kutjevo/interior/complex/med/operating) +"iyz" = ( +/turf/closed/wall/kutjevo/rock, +/area/kutjevo/exterior/scrubland/south) "iyP" = ( /turf/open/floor/coagulation/icon7_8_2, /area/kutjevo/exterior/scrubland) @@ -6456,7 +6493,7 @@ /area/kutjevo/interior/power/comms) "jvt" = ( /turf/open/desert/desert_shore/desert_shore1, -/area/kutjevo/exterior/scrubland) +/area/kutjevo/exterior/scrubland/south) "jvQ" = ( /obj/structure/platform/kutjevo/smooth{ dir = 1 @@ -6785,9 +6822,12 @@ }, /turf/open/floor/kutjevo/tan/multi_tiles, /area/kutjevo/interior/complex/botany) +"kcX" = ( +/turf/open/floor/kutjevo/multi_tiles/east, +/area/kutjevo/interior/power/comms) "kdf" = ( /turf/open/floor/plating/kutjevo, -/area/kutjevo/exterior/scrubland) +/area/kutjevo/exterior/scrubland/south) "kdK" = ( /obj/structure/flora/bush/desert{ icon_state = "tree_4" @@ -6880,7 +6920,7 @@ "kjo" = ( /obj/structure/flora/bush/ausbushes/reedbush, /turf/open/desert/desert_shore/desert_shore1/east, -/area/kutjevo/exterior/scrubland) +/area/kutjevo/exterior/scrubland/south) "kkB" = ( /obj/structure/machinery/vending/cigarette/colony, /turf/open/floor/kutjevo/colors/cyan, @@ -7012,6 +7052,10 @@ /obj/effect/decal/cleanable/blood/drip, /turf/open/floor/kutjevo/colors/cyan/tile, /area/kutjevo/interior/complex/med/operating) +"ksL" = ( +/obj/effect/sentry_landmark/lz_1/top_right, +/turf/open/auto_turf/sand/layer1, +/area/kutjevo/exterior/lz_dunes) "ksN" = ( /obj/item/prop/helmetgarb/spent_buckshot, /turf/open/floor/kutjevo/tan, @@ -7034,7 +7078,7 @@ dir = 8 }, /turf/open/auto_turf/sand/layer1, -/area/kutjevo/exterior/scrubland) +/area/kutjevo/exterior/scrubland/south) "kut" = ( /obj/item/stack/sheet/wood, /turf/open/floor/kutjevo/tan/multi_tiles, @@ -8038,6 +8082,10 @@ /obj/structure/window/framed/kutjevo/reinforced, /turf/open/floor/plating/kutjevo, /area/kutjevo/interior/power) +"lUq" = ( +/obj/effect/sentry_landmark/lz_1/bottom_left, +/turf/open/auto_turf/sand/layer1, +/area/kutjevo/exterior/lz_dunes) "lUM" = ( /obj/structure/platform/kutjevo/rock{ dir = 1 @@ -8070,7 +8118,7 @@ /area/kutjevo/interior/power) "lVZ" = ( /turf/open/floor/kutjevo/tan/multi_tiles, -/area/kutjevo/exterior/scrubland) +/area/kutjevo/exterior/runoff_dunes) "lXe" = ( /obj/structure/platform/kutjevo/rock{ dir = 1 @@ -8131,7 +8179,7 @@ "mbh" = ( /obj/structure/flora/bush/ausbushes/reedbush, /turf/open/desert/desert_shore/shore_edge1/north, -/area/kutjevo/exterior/scrubland) +/area/kutjevo/exterior/scrubland/south) "mbp" = ( /obj/structure/barricade/wooden{ dir = 4; @@ -8260,7 +8308,7 @@ dir = 10 }, /turf/open/auto_turf/sand/layer1, -/area/kutjevo/exterior/scrubland) +/area/kutjevo/exterior/scrubland/south) "mhY" = ( /obj/item/device/camera, /obj/structure/blocker/invisible_wall, @@ -8352,7 +8400,7 @@ /obj/structure/surface/rack, /obj/effect/landmark/objective_landmark/far, /turf/open/floor/kutjevo/multi_tiles/north, -/area/kutjevo/interior/power) +/area/kutjevo/interior/power/comms) "msK" = ( /turf/open/auto_turf/sand/layer1, /area/kutjevo/exterior/complex_border/med_rec) @@ -8613,7 +8661,7 @@ dir = 1 }, /turf/open/auto_turf/sand/layer0, -/area/kutjevo/exterior/scrubland) +/area/kutjevo/exterior/scrubland/south) "mGb" = ( /obj/structure/platform/kutjevo/smooth, /turf/open/floor/plating/kutjevo, @@ -8679,7 +8727,7 @@ /area/kutjevo/interior/complex/botany/east) "mIA" = ( /turf/open/gm/river/desert/shallow_edge/east, -/area/kutjevo/exterior/scrubland) +/area/kutjevo/exterior/scrubland/south) "mIB" = ( /obj/structure/machinery/door/poddoor/shutters/almayer/open{ dir = 8; @@ -8880,6 +8928,10 @@ "naK" = ( /turf/open/floor/kutjevo/tan/multi_tiles, /area/kutjevo/interior/oob) +"nba" = ( +/obj/effect/sentry_landmark/lz_2/top_right, +/turf/open/auto_turf/sand/layer0, +/area/kutjevo/exterior/lz_pad) "nbp" = ( /obj/structure/flora/grass/tallgrass/desert, /turf/open/auto_turf/sand/layer0, @@ -8948,6 +9000,12 @@ }, /turf/open/floor/plating/kutjevo, /area/kutjevo/exterior/construction) +"nhl" = ( +/obj/structure/flora/grass/tallgrass/desert/corner{ + dir = 9 + }, +/turf/open/auto_turf/sand/layer1, +/area/kutjevo/exterior/scrubland/south) "nhT" = ( /obj/effect/decal/cleanable/blood/xeno{ icon_state = "xgibleg" @@ -9002,6 +9060,10 @@ /obj/structure/platform/kutjevo, /turf/open/auto_turf/sand/layer1, /area/kutjevo/interior/colony_central) +"nlY" = ( +/obj/effect/sentry_landmark/lz_1/bottom_left, +/turf/open/auto_turf/sand/layer2, +/area/kutjevo/exterior/lz_dunes) "nmw" = ( /obj/structure/surface/table/almayer, /obj/item/paper/janitor, @@ -9350,7 +9412,7 @@ /area/kutjevo/interior/complex/Northwest_Security_Checkpoint) "nJC" = ( /turf/open/floor/kutjevo/colors/orange, -/area/kutjevo/exterior/scrubland) +/area/kutjevo/exterior/scrubland/south) "nJY" = ( /obj/structure/machinery/light{ dir = 4 @@ -9423,6 +9485,12 @@ /obj/structure/reagent_dispensers/fueltank, /turf/open/floor/kutjevo/colors/orange/tile, /area/kutjevo/interior/power_pt2_electric_boogaloo) +"nMA" = ( +/obj/structure/flora/bush/desert{ + icon_state = "tree_3" + }, +/turf/open/auto_turf/sand/layer1, +/area/kutjevo/exterior/scrubland/south) "nOx" = ( /obj/structure/sign/safety/hazard{ pixel_x = 32 @@ -9495,6 +9563,7 @@ "nRd" = ( /obj/item/tool/wrench, /obj/item/prop/alien/hugger, +/obj/effect/sentry_landmark/lz_2/bottom_right, /turf/open/auto_turf/sand/layer0, /area/kutjevo/exterior/Northwest_Colony) "nRk" = ( @@ -9551,7 +9620,7 @@ dir = 8 }, /turf/open/desert/desert_shore/desert_shore1/east, -/area/kutjevo/exterior/scrubland) +/area/kutjevo/exterior/scrubland/south) "nWu" = ( /obj/structure/barricade/wooden{ dir = 4 @@ -10321,6 +10390,10 @@ /obj/item/device/analyzer/plant_analyzer, /turf/open/floor/kutjevo/tan, /area/kutjevo/interior/complex/botany) +"phg" = ( +/obj/effect/sentry_landmark/lz_2/top_left, +/turf/open/asphalt/cement_sunbleached, +/area/kutjevo/exterior/lz_pad) "phv" = ( /obj/structure/stairs/perspective/kutjevo{ dir = 1; @@ -11263,7 +11336,7 @@ "qAk" = ( /obj/effect/landmark/objective_landmark/close, /turf/open/floor/kutjevo/tan/multi_tiles/north, -/area/kutjevo/interior/power) +/area/kutjevo/interior/power/comms) "qAP" = ( /obj/structure/blocker/invisible_wall, /turf/open/gm/river/red_pool, @@ -11391,6 +11464,10 @@ "qJx" = ( /turf/open/floor/kutjevo/colors/orange/edge/southwest, /area/kutjevo/interior/power_pt2_electric_boogaloo) +"qJS" = ( +/obj/effect/sentry_landmark/lz_1/bottom_right, +/turf/open/auto_turf/sand/layer0, +/area/kutjevo/exterior/lz_dunes) "qKm" = ( /obj/structure/machinery/disposal, /obj/effect/decal/medical_decals{ @@ -11398,6 +11475,12 @@ }, /turf/open/floor/kutjevo/colors/cyan/tile, /area/kutjevo/interior/complex/med/operating) +"qKp" = ( +/obj/structure/flora/grass/tallgrass/desert/corner{ + dir = 9 + }, +/turf/open/auto_turf/sand/layer2, +/area/kutjevo/exterior/scrubland/south) "qLa" = ( /obj/structure/platform/kutjevo{ dir = 4 @@ -11405,6 +11488,9 @@ /obj/structure/platform/kutjevo, /turf/open/gm/river/desert/deep, /area/kutjevo/interior/complex/botany/east_tech) +"qLS" = ( +/turf/open/auto_turf/sand/layer2, +/area/kutjevo/exterior/scrubland/south) "qLV" = ( /obj/structure/tunnel, /turf/open/auto_turf/sand/layer0, @@ -11422,6 +11508,10 @@ /obj/structure/platform/kutjevo/smooth, /turf/open/floor/plating/kutjevo, /area/kutjevo/interior/power) +"qNS" = ( +/obj/effect/sentry_landmark/lz_2/bottom_right, +/turf/open/auto_turf/sand/layer2, +/area/kutjevo/exterior/Northwest_Colony) "qOw" = ( /turf/open/gm/river/desert/shallow_edge/southeast, /area/kutjevo/exterior/runoff_river) @@ -11788,7 +11878,7 @@ /area/kutjevo/interior/colony_South/power2) "rsV" = ( /turf/open/desert/desert_shore/desert_shore1/west, -/area/kutjevo/exterior/scrubland) +/area/kutjevo/exterior/scrubland/south) "rte" = ( /obj/structure/prop/dam/boulder/boulder2, /turf/open/auto_turf/sand/layer0, @@ -12239,6 +12329,12 @@ }, /turf/open/auto_turf/sand/layer0, /area/kutjevo/interior/colony_central) +"sbg" = ( +/obj/structure/flora/grass/tallgrass/desert/corner{ + dir = 8 + }, +/turf/open/auto_turf/sand/layer1, +/area/kutjevo/exterior/scrubland/south) "sbz" = ( /obj/structure/machinery/light/small, /turf/open/floor/plating/kutjevo, @@ -12452,7 +12548,7 @@ "sqr" = ( /obj/structure/platform/kutjevo, /turf/open/auto_turf/sand/layer2, -/area/kutjevo/exterior/scrubland) +/area/kutjevo/exterior/scrubland/south) "sqP" = ( /obj/structure/sign/safety/hazard{ pixel_x = 32 @@ -12511,7 +12607,7 @@ "swl" = ( /obj/structure/flora/grass/tallgrass/desert, /turf/open/auto_turf/sand/layer0, -/area/kutjevo/exterior/scrubland) +/area/kutjevo/exterior/scrubland/south) "swq" = ( /obj/item/stack/sheet/metal, /turf/open/floor/kutjevo/tan, @@ -12865,6 +12961,12 @@ /obj/effect/decal/cleanable/blood/xeno, /turf/open/asphalt/cement_sunbleached, /area/kutjevo/exterior/lz_pad) +"sXc" = ( +/obj/structure/flora/bush/desert{ + icon_state = "tree_4" + }, +/turf/open/auto_turf/sand/layer1, +/area/kutjevo/exterior/scrubland/south) "sXj" = ( /obj/structure/largecrate/random/case/small, /obj/effect/spawner/random/toolbox{ @@ -12920,7 +13022,7 @@ dir = 9 }, /turf/open/auto_turf/sand/layer0, -/area/kutjevo/exterior/scrubland) +/area/kutjevo/exterior/scrubland/south) "tax" = ( /turf/open/gm/river/desert/shallow_edge, /area/kutjevo/exterior/runoff_dunes) @@ -13765,7 +13867,7 @@ /area/kutjevo/interior/colony_central) "umQ" = ( /turf/open/desert/desert_shore/shore_edge1/west, -/area/kutjevo/exterior/scrubland) +/area/kutjevo/exterior/scrubland/south) "una" = ( /obj/structure/platform/kutjevo/rock{ dir = 1 @@ -14487,7 +14589,7 @@ "via" = ( /obj/effect/landmark/hunter_primary, /turf/open/auto_turf/sand/layer1, -/area/kutjevo/exterior/scrubland) +/area/kutjevo/exterior/scrubland/south) "vin" = ( /turf/open/floor/coagulation/icon2_0, /area/kutjevo/exterior/lz_river) @@ -14609,7 +14711,7 @@ "vvE" = ( /obj/structure/flora/grass/tallgrass/desert/corner, /turf/open/auto_turf/sand/layer1, -/area/kutjevo/exterior/scrubland) +/area/kutjevo/exterior/scrubland/south) "vxe" = ( /turf/open/floor/kutjevo/tan/alt_edge/west, /area/kutjevo/interior/colony_South) @@ -14644,6 +14746,10 @@ }, /turf/open/floor/plating/kutjevo, /area/kutjevo/exterior/complex_border/med_rec) +"vAL" = ( +/obj/effect/sentry_landmark/lz_2/bottom_right, +/turf/open/floor/almayer/research/containment/floor1, +/area/kutjevo/exterior/Northwest_Colony) "vBr" = ( /obj/structure/prop/dam/gravestone{ icon_state = "gravestone2" @@ -14949,6 +15055,10 @@ /obj/structure/platform_decoration/kutjevo, /turf/open/desert/desert_shore/desert_shore1/east, /area/kutjevo/exterior/runoff_river) +"vTp" = ( +/obj/effect/sentry_landmark/lz_2/top_right, +/turf/open/floor/kutjevo/tan/alt_edge/west, +/area/kutjevo/exterior/lz_pad) "vVr" = ( /turf/closed/wall/kutjevo/colony/reinforced, /area/kutjevo/interior/colony_S_East) @@ -14987,7 +15097,7 @@ /area/kutjevo/interior/colony_South/power2) "vYC" = ( /turf/open/desert/desert_shore/desert_shore1/east, -/area/kutjevo/exterior/scrubland) +/area/kutjevo/exterior/scrubland/south) "vYD" = ( /obj/effect/decal/cleanable/blood, /turf/open/floor/kutjevo/colors/cyan, @@ -15021,7 +15131,7 @@ dir = 6 }, /turf/open/auto_turf/sand/layer1, -/area/kutjevo/exterior/scrubland) +/area/kutjevo/exterior/scrubland/south) "wax" = ( /turf/closed/wall/kutjevo/colony, /area/kutjevo/exterior/lz_pad) @@ -15191,6 +15301,9 @@ }, /turf/open/floor/kutjevo/tan/grey_edge/east, /area/kutjevo/interior/complex/Northwest_Dorms) +"wph" = ( +/turf/open/auto_turf/sand/layer0, +/area/kutjevo/exterior/scrubland/south) "wpq" = ( /obj/structure/blocker/invisible_wall, /turf/open/gm/river/desert/shallow, @@ -15213,6 +15326,9 @@ /obj/structure/bed/chair, /turf/open/gm/dirtgrassborder2/east, /area/kutjevo/exterior/complex_border/med_park) +"wqU" = ( +/turf/closed/wall/kutjevo/colony/reinforced, +/area/kutjevo/exterior/scrubland/south) "wrk" = ( /obj/structure/machinery/landinglight/ds2/delayone{ dir = 4 @@ -15464,6 +15580,10 @@ /obj/effect/landmark/survivor_spawner, /turf/open/floor/kutjevo/multi_tiles, /area/kutjevo/interior/power) +"wJy" = ( +/obj/structure/flora/grass/tallgrass/desert, +/turf/open/auto_turf/sand/layer1, +/area/kutjevo/exterior/scrubland/south) "wJZ" = ( /obj/structure/flora/grass/desert/lightgrass_4, /obj/structure/blocker/invisible_wall, @@ -15498,6 +15618,10 @@ }, /turf/open/floor/kutjevo/multi_tiles/southwest, /area/kutjevo/interior/colony_South/power2) +"wMr" = ( +/obj/effect/sentry_landmark/lz_1/bottom_right, +/turf/open/auto_turf/sand/layer1, +/area/kutjevo/exterior/lz_dunes) "wMw" = ( /obj/structure/blocker/invisible_wall, /turf/open/floor/kutjevo/multi_tiles, @@ -15684,6 +15808,10 @@ /obj/item/clothing/accessory/storage/black_vest, /turf/open/floor/kutjevo/colors, /area/kutjevo/interior/power/comms) +"xeG" = ( +/obj/effect/sentry_landmark/lz_2/top_right, +/turf/open/auto_turf/sand/layer1, +/area/kutjevo/exterior/lz_pad) "xfW" = ( /obj/item/reagent_container/glass/bucket, /turf/open/auto_turf/sand/layer0, @@ -16023,7 +16151,7 @@ pixel_y = 14 }, /turf/open/desert/desert_shore/desert_shore1, -/area/kutjevo/exterior/scrubland) +/area/kutjevo/exterior/scrubland/south) "xIo" = ( /obj/structure/prop/dam/large_boulder/boulder2, /turf/open/auto_turf/sand/layer0, @@ -16081,6 +16209,12 @@ /obj/structure/barricade/wooden, /turf/open/floor/kutjevo/colors/red/tile, /area/kutjevo/interior/complex/botany) +"xOZ" = ( +/obj/structure/platform_decoration/kutjevo{ + dir = 4 + }, +/turf/open/auto_turf/sand/layer1, +/area/kutjevo/exterior/scrubland/south) "xPU" = ( /obj/effect/landmark/nightmare{ insert_tag = "communications" @@ -16180,7 +16314,7 @@ /area/kutjevo/exterior/scrubland) "xYt" = ( /turf/open/desert/desert_shore/shore_edge1, -/area/kutjevo/exterior/scrubland) +/area/kutjevo/exterior/scrubland/south) "xYR" = ( /obj/item/stack/sheet/wood, /obj/item/storage/belt/marine, @@ -18801,7 +18935,7 @@ kWX kWX lKk lKk -dmy +phg dmy jGF bEt @@ -19303,14 +19437,14 @@ lzD dBj dmy dmy -dmy -lKk -lKk +phg lKk lKk +gtg lKk lKk lKk +eZS lKk lKk lKk @@ -20146,7 +20280,7 @@ fmN fmN fmN jGF -qnd +exu lKk mAb ggC @@ -20980,7 +21114,7 @@ lKk lKk lKk lKk -lKk +eZS lKk cpD mAb @@ -21033,13 +21167,13 @@ mxB mxB tlN ozq -xzY -xzY -xzY -xzY -xzY +boR +boR +boR +boR +boR msF -pyp +tlN dxF dxF vei @@ -21710,7 +21844,7 @@ kMP pmu qzd ubV -wGH +dut vei vei prJ @@ -21745,7 +21879,7 @@ qZO wGH uQJ wGH -vei +nlY wGH wGH wGH @@ -21785,7 +21919,7 @@ rSU rSU lKk rSU -rSU +vTp lKk rSU rSU @@ -21855,7 +21989,7 @@ dxF dsp dJs xIk -bXl +wph tlN uKW moL @@ -21949,13 +22083,13 @@ lKk tHh lKk lKk +xeG lKk lKk lKk lKk lKk -lKk -tHh +nba lKk lKk tHh @@ -22022,7 +22156,7 @@ dxF gxs kjo umQ -bXl +wph fFH rwX boR @@ -22064,7 +22198,7 @@ jqt vei vei wGH -wGH +wMr wGH prJ prJ @@ -22072,10 +22206,10 @@ wGH wGH wGH wGH +lUq wGH wGH -wGH -wGH +lUq wGH wGH vei @@ -22186,10 +22320,10 @@ dxF dxF dxF dxF -sYd -sYd -sYd -sYd +eTY +eTY +eTY +eTY xjf aAe kMP @@ -22213,7 +22347,7 @@ dfa eRE prJ prJ -wGH +dut vei vei gPW @@ -22351,12 +22485,12 @@ dxF dxF dxF dxF -bXl -bXl -sYd -sYd -sYd -sYd +wph +wph +eTY +eTY +eTY +eTY qGQ bNN pPn @@ -22383,7 +22517,7 @@ prJ vei vei vei -prJ +fCu vei wGH wGH @@ -22401,7 +22535,7 @@ wGH szJ wGH wGH -prJ +qJS prJ prJ prJ @@ -22517,13 +22651,13 @@ dxF dxF dxF dxF -bXl -bXl -sYd -sYd -kIn -sYd -sYd +wph +wph +eTY +eTY +qLS +eTY +eTY nOx gTy boR @@ -22573,7 +22707,7 @@ prJ prJ prJ prJ -prJ +qJS prJ prJ wGH @@ -22684,13 +22818,13 @@ dxF dxF dxF dxF -bXl -bXl -sYd -sYd -bXl -sYd -bXl +wph +wph +eTY +eTY +wph +eTY +wph tlN bmk moL @@ -22721,7 +22855,7 @@ vei prJ prJ wGH -wGH +ksL prJ wGH wGH @@ -22851,13 +22985,13 @@ dxF dxF dxF dxF -bXl -kIn -sYd -sYd -bXl -bXl -bXl +wph +qLS +eTY +eTY +wph +wph +wph tlN tWM tWM @@ -22890,7 +23024,7 @@ prJ wGH wGH prJ -prJ +auz prJ prJ wGH @@ -23018,13 +23152,13 @@ dxF dxF dxF dxF -bXl -sYd -sYd -bXl -bXl -bEp -bXl +wph +eTY +eTY +wph +wph +iyz +wph tlN tWM tWM @@ -23185,13 +23319,13 @@ dxF dxF swl mFf -bXl -sYd -bXl -bXl -bXl -bXl -bXl +wph +eTY +wph +wph +wph +wph +wph tlN tWM tWM @@ -23352,13 +23486,13 @@ dxF dxF swl mFf -bXl -sYd -bXl -bXl -bEp -bEp -bEp +wph +eTY +wph +wph +iyz +iyz +iyz tlN tWM tWM @@ -23389,7 +23523,7 @@ wGH jqt jqt wGH -prJ +auz wGH wGH wGH @@ -23519,13 +23653,13 @@ dxF dxF swl mFf -bXl -bXl -bXl -sYd -bEp -bEp -bEp +wph +wph +wph +eTY +iyz +iyz +iyz tlN tlN tlN @@ -23683,16 +23817,16 @@ dxF dxF dxF dxF -dez -dez -hSC -bXl -kIn -kIn -bXl -sYd -kIn -bEp +sbg +sbg +qKp +wph +qLS +qLS +wph +eTY +qLS +iyz tlN tlN tlN @@ -23850,19 +23984,19 @@ hrz hrz dxF dxF -kIn -kIn -bXl -sYd -bXl -bXl -bXl -bXl -sYd -kIn +qLS +qLS +wph +eTY +wph +wph +wph +wph +eTY +qLS bfg bfg -aNn +qLS dSQ wWk mOe @@ -24014,28 +24148,28 @@ hrz hrz hrz hrz -kIn -kIn -bXl -sYd -bXl -bXl -bXl -bXl -bXl -bXl -bXl -bXl -sYd -bXl -bXl -sYd -sYd -sYd -sYd -kIn -sYd -sYd +qLS +qLS +wph +eTY +wph +wph +wph +wph +wph +wph +wph +wph +eTY +wph +wph +eTY +eTY +eTY +eTY +qLS +eTY +eTY gzv ezX mZE @@ -24181,28 +24315,28 @@ hrz hrz hrz hrz -kIn -kIn -pEJ -bXl -bXl -bXl -bXl -bXl -bXl -bXl -bXl -bXl -sYd -sYd -sYd -sYd -sYd -sYd -bXl -bXl -bXl -sYd +qLS +qLS +nMA +wph +wph +wph +wph +wph +wph +wph +wph +wph +eTY +eTY +eTY +eTY +eTY +eTY +wph +wph +wph +eTY gzv ezX mZE @@ -24347,29 +24481,29 @@ hrz hrz sVF hrz -bXl -sYd -sYd -bXl -bXl -bXl -bXl -kIn -sYd -sYd -sYd -bXl -sYd -sYd -sYd -sYd -sYd -sYd -bXl -kIn -kIn -sYd -sYd +wph +eTY +eTY +wph +wph +wph +wph +qLS +eTY +eTY +eTY +wph +eTY +eTY +eTY +eTY +eTY +eTY +wph +qLS +qLS +eTY +eTY gzv ezX aCo @@ -24477,12 +24611,12 @@ hrz hrz hrz hrz -iin +qNS huR huR huR lRy -dht +vAL dht dht dht @@ -24513,38 +24647,38 @@ dxF hrz sVF hrz -bXl -bXl -kIn -sYd -sYd -bXl -bXl -kIn -sYd -bXl -sYd -sYd -sYd -bXl -bXl -sYd -bXl -bXl -bXl -bEp -bEp -sYd -sYd -sYd -pBi +wph +wph +qLS +eTY +eTY +wph +wph +qLS +eTY +wph +eTY +eTY +eTY +wph +wph +eTY +wph +wph +wph +iyz +iyz +eTY +eTY +eTY +ddU tlN vlt lsy -kdY -kdY +kcX +kcX cIE -pBV +ezX kMx nWo cBi @@ -24678,32 +24812,32 @@ dxF dxF dxF sVF -kIn -bXl -sYd -kIn -sYd -bXl -bXl -sYd -bXl -kIn -bXl -bXl +qLS +wph +eTY +qLS +eTY +wph +wph +eTY +wph +qLS +wph +wph fui rsV xYt via -bEp -bXl -bEp -bEp -bEp -bEp -bEp -sYd -sYd -sYd +iyz +wph +iyz +iyz +iyz +iyz +iyz +eTY +eTY +eTY sqr tlN tlN @@ -24713,9 +24847,9 @@ ezX tlN tlN tlN -nrk -sYd -bXl +wqU +eTY +wph cTz goT goT @@ -24845,44 +24979,44 @@ dxF dxF kIn kIn -kIn -bXl -sYd -bXl -bXl -bEp -bEp -sYd -bXl -sYd -bXl -bEp +qLS +wph +eTY +wph +wph +iyz +iyz +eTY +wph +eTY +wph +iyz dsp dJs jvt bTa -bEp -bEp -bEp -bEp -bEp -bEp -bEp -bEp -sYd -sYd +iyz +iyz +iyz +iyz +iyz +iyz +iyz +iyz +eTY +eTY fBL -lCa +fSU ktP ktP ktP ktP ktP -ruM -sYd -sYd -sYd -sYd +xOZ +eTY +eTY +eTY +eTY ePx soe gCb @@ -25013,43 +25147,43 @@ kIn sYd aSu sYd -sYd -sYd -bXl -bXl -bEp -sYd -bXl -bXl -kIn -bEp -bEp +eTY +eTY +wph +wph +iyz +eTY +wph +wph +qLS +iyz +iyz gxs kjo umQ -bEp -bEp -bEp -bEp -bEp -bEp -bEp -bEp -bEp -kIn -sYd -bXl -sYd -sYd -sYd -sYd -sYd -sYd -sYd -sYd -sYd -sYd -sYd +iyz +iyz +iyz +iyz +iyz +iyz +iyz +iyz +iyz +qLS +eTY +wph +eTY +eTY +eTY +eTY +eTY +eTY +eTY +eTY +eTY +eTY +eTY cTz cTz cTz @@ -25181,42 +25315,42 @@ bXl sYd sYd sYd -sYd -sYd -bXl -bXl -bXl -bXl -sYd -kIn -bXl -bEp -bEp -bEp -bEp -bEp -bEp -bEp -bEp -bEp +eTY +eTY +wph +wph +wph +wph +eTY +qLS +wph +iyz +iyz +iyz +iyz +iyz +iyz +iyz +iyz +iyz swl swl mFf -kIn -sYd -sYd -sYd -bXl -bXl -bXl -bXl -bXl -bXl -bXl -bXl -bXl -sYd -bXl +qLS +eTY +eTY +eTY +wph +wph +wph +wph +wph +wph +wph +wph +wph +eTY +wph cTz cTz cTz @@ -25349,41 +25483,41 @@ sYd sYd sYd sYd -sYd -sYd -bXl -bXl -bXl -kIn -sYd -bXl -bEp -bEp -bEp -bEp -bEp -bEp -bEp +eTY +eTY +wph +wph +wph +qLS +eTY +wph +iyz +iyz +iyz +iyz +iyz +iyz +iyz swl swl -dez -dez -eLO -sYd -sYd -sYd -sYd -sYd -bXl -bXl -bXl -bXl -bXl -bXl -sYd -sYd -bXl -bXl +sbg +sbg +nhl +eTY +eTY +eTY +eTY +eTY +wph +wph +wph +wph +wph +wph +eTY +eTY +wph +wph ePx cTz cTz @@ -25516,41 +25650,41 @@ bXl bXl sYd bXl -sYd -sYd -sYd -sYd -bXl -bXl -kIn -kIn -bXl -bEp -bEp -bEp -bEp -bEp -voI +eTY +eTY +eTY +eTY +wph +wph +qLS +qLS +wph +iyz +iyz +iyz +iyz +iyz +wJy swl dNg -bXl -sYd -sYd -sYd -sYd -sYd -sYd -bXl -bXl -bXl -bXl -bXl -bXl -bXl -sYd -bXl -bXl -bXl +wph +eTY +eTY +eTY +eTY +eTY +eTY +wph +wph +wph +wph +wph +wph +wph +eTY +wph +wph +wph ePx cTz ePx @@ -25684,41 +25818,41 @@ bXl bXl bEp bEp -kIn -bXl -sYd -bXl -bXl -bXl -kIn -bXl -bXl -bEp -bEp -bEp -bEp +qLS +wph +eTY +wph +wph +wph +qLS +wph +wph +iyz +iyz +iyz +iyz swl -voI +wJy sZZ -sYd -sYd -sYd -sYd -sYd -sYd -bXl -bEp -bXl -bXl -bXl -sYd -sYd -sYd -bEp -bEp -bEp -bEp -bEp +eTY +eTY +eTY +eTY +eTY +eTY +wph +iyz +wph +wph +wph +eTY +eTY +cTz +iyz +iyz +iyz +iyz +iyz xXI cTz ePx @@ -25851,41 +25985,41 @@ bXl bEp bEp bEp -kIn -sYd -bXl -bXl -bXl -bXl -sYd -bXl -bXl -bXl -bEp -bEp -dez -fQJ -eLO -sYd -sYd -sYd -bXl -sYd -bXl -bEp -bEp -bEp -bEp -bEp -nrk -nJC -lVZ -wbV -nrk -bEp -bEp -bEp -bEp +qLS +eTY +wph +wph +wph +wph +eTY +wph +wph +wph +iyz +iyz +sbg +fQJ +nhl +eTY +eTY +eTY +wph +eTY +wph +iyz +iyz +iyz +iyz +iyz +wqU +nJC +lVZ +wbV +wqU +iyz +iyz +iyz +iyz niT ePx ePx @@ -26019,40 +26153,40 @@ bEp bEp bEp bEp -bXl -sYd -bXl -bXl -bXl -sYd -bXl -kIn -sYd -bXl -bXl -bXl -sYd -sYd -sYd -sYd -sYd -sYd -bXl -bEp -bEp -bEp -bEp -bEp -bEp -bEp -sYd +wph +eTY +wph +wph +wph +eTY +wph +qLS +eTY +wph +wph +wph +eTY +eTY +eTY +eTY +eTY +eTY +wph +iyz +iyz +iyz +iyz +iyz +iyz +iyz +cTz cTz cTz ePx ePx -bEp -bEp -bEp +iyz +iyz +iyz niT ePx cTz @@ -26187,39 +26321,39 @@ bEp bEp kIn bXl -sYd -sYd -bXl -sYd -sYd -sYd -bXl -bXl -kIn -kIn -sYd -sYd -sYd -sYd -kIn -bXl -bXl -bEp -bEp -bEp -bEp -bEp -bEp -bEp -bEp +eTY +eTY +wph +eTY +eTY +eTY +wph +wph +qLS +qLS +eTY +eTY +eTY +eTY +qLS +wph +wph +iyz +iyz +iyz +iyz +iyz +iyz +iyz +iyz ePx cTz ePx hii cTz -bEp -bEp -bEp +iyz +iyz +iyz gCb cTz ePx @@ -26355,29 +26489,29 @@ kIn bXl sYd bXl -bXl -sYd -sYd -sYd -bXl -sYd -kIn -sYd -sYd -sYd -sYd -sYd -kIn -kIn +wph +eTY +eTY +eTY +wph +eTY +qLS +eTY +eTY +eTY +eTY +eTY +qLS +qLS jhS jhS jhS -bEp -bEp +iyz +iyz ePx ePx -bEp -bEp +iyz +iyz ePx cTz cTz @@ -26523,19 +26657,19 @@ sYd sYd sYd bXl -bXl -bXl -bXl -sYd -jtJ -sYd -sYd -sYd -sYd -sYd -kIn -kIn -bXl +wph +wph +wph +eTY +sXc +eTY +eTY +eTY +eTY +eTY +qLS +qLS +wph jhS naK jhS @@ -26544,7 +26678,7 @@ prU cTz cTz ePx -bEp +iyz cTz ePx cTz @@ -26690,18 +26824,18 @@ sYd bXl bXl bXl -bXl -bXl -sYd -sYd -sYd -sYd -sYd +wph +wph +eTY +eTY +eTY +eTY +eTY wae gYa dQq -bXl -kIn +wph +qLS jhS jhS iSw @@ -26857,18 +26991,18 @@ bXl bXl bXl bXl -sYd -bEp -sYd -sYd -sYd -sYd -sYd +eTY +iyz +eTY +eTY +eTY +eTY +eTY vvE swl dNg -bXl -bXl +wph +wph uSG oOs naK @@ -27024,18 +27158,18 @@ bEp bEp bXl sYd -bEp -bEp -kIn -sYd -sYd -sYd -sYd +iyz +iyz +qLS +eTY +eTY +eTY +eTY vvE -bEp +iyz dNg -bXl -kIn +wph +qLS uSG trU uRm @@ -27192,17 +27326,17 @@ bEp bXl bXl sYd -bEp -sYd -sYd -sYd -sYd -sYd +iyz +eTY +eTY +eTY +eTY +eTY vvE -bEp +iyz dNg -bXl -sYd +wph +eTY uSG trU uRm @@ -27360,16 +27494,16 @@ bXl bXl bXl sYd -sYd -sYd -sYd -kIn -sYd +eTY +eTY +eTY +qLS +eTY mhN -dez -eLO -bXl -kIn +sbg +nhl +wph +qLS uSG trU uRm @@ -27527,16 +27661,16 @@ bXl bXl bXl sYd -sYd -bXl -sYd -kIn -kIn -sYd -bXl -sYd -bXl -bXl +eTY +wph +eTY +qLS +qLS +eTY +wph +eTY +wph +wph uSG ymc uRm @@ -27694,16 +27828,16 @@ sYd bXl sYd sYd -sYd -sYd -bXl -bXl -kIn +eTY +eTY +wph +wph +qLS eDS -bXl -bXl -bXl -bXl +wph +wph +wph +wph uSG trU uRm @@ -27862,15 +27996,15 @@ sYd sYd sYd bXl -bXl -sYd -bXl -bXl -sYd -bXl -bXl -sYd -bXl +wph +eTY +wph +wph +eTY +wph +wph +eTY +wph uSG lrO kPw @@ -28029,15 +28163,15 @@ sYd sYd bXl sYd -bXl -bEp -bEp -bEp -sYd -bXl -sYd -bXl -sYd +wph +iyz +iyz +iyz +eTY +wph +eTY +wph +eTY jhS jhS iSw @@ -28196,16 +28330,16 @@ sYd sYd sYd kIn -bXl -bEp -bEp -bEp -bEp -bXl -bXl -bXl -bXl -sYd +wph +iyz +iyz +iyz +iyz +wph +wph +wph +wph +eTY jhS naK naK @@ -28363,16 +28497,16 @@ sYd sYd sYd bXl -bEp -bEp -bEp -bEp -bEp -sYd -bXl -bXl -bXl -sYd +iyz +iyz +iyz +iyz +iyz +eTY +wph +wph +wph +eTY jhS naK naK @@ -28530,16 +28664,16 @@ sYd sYd kIn bXl -bEp -bEp -bEp -bEp -bEp -sYd -sYd -bXl -bXl -bXl +iyz +iyz +iyz +iyz +iyz +eTY +eTY +wph +wph +wph jhS jhS jhS @@ -28696,18 +28830,18 @@ sYd sYd pEJ bXl -bEp -bEp -bEp +iyz +iyz +iyz grx -bEp -bEp -bEp -bXl -sYd -bXl -bXl -sYd +iyz +iyz +iyz +wph +eTY +wph +wph +eTY raN raN dDj @@ -28863,18 +28997,18 @@ sYd sYd bXl bXl -bEp -bEp +iyz +iyz grx sXo grx -bEp -bEp -bEp -sYd -bXl -bXl -sYd +iyz +iyz +iyz +eTY +wph +wph +eTY raN raN dDj @@ -29030,19 +29164,19 @@ sYd bXl sYd bXl -bEp -bEp +iyz +iyz grx sXo dgs grx -bEp -bEp -sYd -bXl -bXl -bXl -sYd +iyz +iyz +eTY +wph +wph +wph +eTY ewL plf pIK @@ -29197,14 +29331,14 @@ bXl sYd bXl bXl -bEp -bEp -bEp +iyz +iyz +iyz grx sXo grx -bEp -bEp +iyz +iyz dic tKY tKY @@ -29365,13 +29499,13 @@ bXl bXl bXl sYd -bEp -bEp -bEp +iyz +iyz +iyz grx -bEp -bEp -bEp +iyz +iyz +iyz dKu lKV lKV @@ -29533,11 +29667,11 @@ mda sYd sYd sYd -bEp -bEp -bEp -bEp -bEp +iyz +iyz +iyz +iyz +iyz dKu qny sxy @@ -29701,9 +29835,9 @@ sbX dic dic dic -bEp -bEp -bEp +iyz +iyz +iyz dKu vmB dyz 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 ff2e3daf9b25..ac6672799f36 100644 --- a/maps/map_files/LV522_Chances_Claim/LV522_Chances_Claim.dmm +++ b/maps/map_files/LV522_Chances_Claim/LV522_Chances_Claim.dmm @@ -802,7 +802,7 @@ pixel_y = 6 }, /turf/open/auto_turf/sand_white/layer0, -/area/lv522/outdoors/colony_streets/north_east_street) +/area/lv522/outdoors/colony_streets/containers) "aCS" = ( /obj/structure/surface/rack, /obj/item/clothing/suit/storage/hazardvest, @@ -943,6 +943,9 @@ }, /turf/open/floor/plating, /area/lv522/landing_zone_1) +"aHA" = ( +/turf/open/auto_turf/shale/layer1, +/area/lv522/outdoors/colony_streets/containers) "aHH" = ( /obj/structure/platform{ dir = 1 @@ -3743,6 +3746,10 @@ /obj/structure/pipes/standard/simple/hidden/green, /turf/open/floor/corsat/marked, /area/lv522/indoors/c_block/cargo) +"cxN" = ( +/obj/item/prop/colony/used_flare, +/turf/open/auto_turf/shale/layer1, +/area/lv522/outdoors/colony_streets/containers) "cxT" = ( /obj/structure/bed/chair/comfy{ dir = 4 @@ -4893,7 +4900,7 @@ pixel_y = 1 }, /turf/open/auto_turf/sand_white/layer0, -/area/lv522/outdoors/colony_streets/north_east_street) +/area/lv522/outdoors/colony_streets/containers) "dbt" = ( /obj/item/prop/alien/hugger, /turf/open/floor/corsat/brown/southeast, @@ -5027,6 +5034,12 @@ /obj/structure/cargo_container/grant/right, /turf/open/auto_turf/sand_white/layer0, /area/lv522/outdoors/nw_rockies) +"ddd" = ( +/obj/structure/prop/invuln/ice_prefab/standalone{ + icon_state = "white" + }, +/turf/open/auto_turf/shale/layer1, +/area/lv522/outdoors/colony_streets/containers) "ddo" = ( /obj/structure/window/reinforced{ dir = 8 @@ -5582,6 +5595,9 @@ /obj/structure/pipes/standard/simple/hidden/green, /turf/open/floor/corsat/brown/west, /area/lv522/atmos/cargo_intake) +"dqy" = ( +/turf/open/auto_turf/sand_white/layer0, +/area/lv522/outdoors/colony_streets/containers) "dqB" = ( /turf/open/asphalt/cement/cement2, /area/lv522/outdoors/colony_streets/south_east_street) @@ -6650,6 +6666,15 @@ "dTv" = ( /turf/open/floor/corsat/brown, /area/lv522/oob/w_y_vault) +"dTD" = ( +/obj/structure/prop/invuln/ice_prefab/roof_greeble{ + icon_state = "flagpole"; + layer = 4.11; + pixel_x = 4; + pixel_y = 3 + }, +/turf/open/auto_turf/shale/layer1, +/area/lv522/outdoors/colony_streets/containers) "dTJ" = ( /obj/structure/prop/invuln/ice_prefab{ dir = 5 @@ -7451,7 +7476,7 @@ pixel_y = 1 }, /turf/open/auto_turf/sand_white/layer0, -/area/lv522/outdoors/colony_streets/north_east_street) +/area/lv522/outdoors/colony_streets/containers) "eoZ" = ( /obj/effect/landmark/structure_spawner/setup/distress/xeno_weed_node, /turf/open/floor/corsat/brown, @@ -7703,7 +7728,7 @@ dir = 4 }, /turf/open/auto_turf/sand_white/layer0, -/area/lv522/outdoors/colony_streets/north_east_street) +/area/lv522/outdoors/colony_streets/containers) "ewf" = ( /obj/structure/platform, /turf/open/asphalt/cement/cement4, @@ -7713,7 +7738,7 @@ layer = 2.5 }, /turf/open/auto_turf/sand_white/layer0, -/area/lv522/outdoors/colony_streets/north_east_street) +/area/lv522/outdoors/colony_streets/containers) "ewn" = ( /obj/structure/platform, /turf/open/asphalt/cement/cement4, @@ -7721,7 +7746,7 @@ "ewp" = ( /obj/item/weapon/twohanded/folded_metal_chair, /turf/open/auto_turf/sand_white/layer0, -/area/lv522/outdoors/colony_streets/north_east_street) +/area/lv522/outdoors/colony_streets/containers) "ewE" = ( /obj/structure/platform{ dir = 4 @@ -7755,7 +7780,7 @@ "exB" = ( /obj/effect/spawner/gibspawner/xeno, /turf/open/auto_turf/sand_white/layer0, -/area/lv522/outdoors/colony_streets/north_east_street) +/area/lv522/outdoors/colony_streets/containers) "exQ" = ( /obj/structure/machinery/light/small{ dir = 1 @@ -8120,7 +8145,7 @@ pixel_y = 14 }, /turf/open/auto_turf/sand_white/layer0, -/area/lv522/outdoors/colony_streets/north_east_street) +/area/lv522/outdoors/colony_streets/containers) "eIF" = ( /obj/structure/bed/alien, /obj/item/pipe{ @@ -8136,7 +8161,7 @@ }, /obj/item/prop/colony/used_flare, /turf/open/auto_turf/sand_white/layer0, -/area/lv522/outdoors/colony_streets/north_east_street) +/area/lv522/outdoors/colony_streets/containers) "eJc" = ( /obj/structure/surface/table/almayer, /obj/effect/landmark/objective_landmark/close, @@ -8172,7 +8197,7 @@ "eJq" = ( /obj/item/stack/sheet/metal, /turf/open/auto_turf/sand_white/layer0, -/area/lv522/outdoors/colony_streets/north_east_street) +/area/lv522/outdoors/colony_streets/containers) "eJw" = ( /obj/structure/pipes/vents/pump, /turf/open/floor/corsat/plate, @@ -8347,7 +8372,7 @@ pixel_y = 1 }, /turf/open/floor/prison/floor_plate, -/area/lv522/atmos/cargo_intake) +/area/lv522/outdoors/colony_streets/containers) "eOj" = ( /obj/structure/machinery/light{ dir = 8 @@ -8371,10 +8396,7 @@ pixel_y = 1 }, /turf/open/floor/prison/floor_plate, -/area/lv522/atmos/cargo_intake) -"eOA" = ( -/turf/closed/wall/shiva/prefabricated/reinforced, -/area/lv522/outdoors/colony_streets/north_east_street) +/area/lv522/outdoors/colony_streets/containers) "eOE" = ( /obj/effect/decal/warning_stripes{ icon_state = "W" @@ -8635,14 +8657,14 @@ "eXe" = ( /obj/effect/landmark/structure_spawner/setup/distress/xeno_weed_node, /turf/open/auto_turf/shale/layer1, -/area/lv522/outdoors/colony_streets/north_east_street) +/area/lv522/outdoors/colony_streets/containers) "eXG" = ( /turf/open/auto_turf/sand_white/layer0, /area/lv522/landing_zone_2) "eXO" = ( /obj/effect/spawner/gibspawner/xeno, /turf/open/floor/prison, -/area/lv522/atmos/cargo_intake) +/area/lv522/outdoors/colony_streets/containers) "eXU" = ( /obj/structure/pipes/standard/simple/hidden/green{ dir = 4 @@ -8656,7 +8678,7 @@ pixel_y = 1 }, /turf/open/auto_turf/sand_white/layer0, -/area/lv522/outdoors/colony_streets/north_east_street) +/area/lv522/outdoors/colony_streets/containers) "eYh" = ( /obj/structure/pipes/standard/simple/hidden/green{ dir = 4 @@ -8846,7 +8868,7 @@ req_access = null }, /turf/open/asphalt/cement/cement1, -/area/lv522/outdoors/colony_streets/north_east_street) +/area/lv522/outdoors/colony_streets/containers) "fdT" = ( /obj/structure/closet/crate, /turf/open/floor/prison/darkbrownfull2, @@ -8880,10 +8902,10 @@ pixel_x = 1 }, /turf/open/floor/prison/floor_plate, -/area/lv522/atmos/cargo_intake) +/area/lv522/outdoors/colony_streets/containers) "feZ" = ( /turf/open/floor/prison/floor_marked, -/area/lv522/atmos/cargo_intake) +/area/lv522/outdoors/colony_streets/containers) "ffb" = ( /turf/open/floor/prison/darkbrownfull2, /area/lv522/indoors/c_block/bridge) @@ -8907,7 +8929,7 @@ "ffr" = ( /obj/structure/cargo_container/wy/left, /turf/open/floor/prison/floor_marked, -/area/lv522/atmos/cargo_intake) +/area/lv522/outdoors/colony_streets/containers) "ffL" = ( /obj/item/clothing/mask/facehugger{ desc = "It has some sort of a tube at the end of its tail. What the hell is this thing?"; @@ -8982,11 +9004,11 @@ "fhY" = ( /obj/structure/cargo_container/wy/mid, /turf/open/floor/prison/floor_marked, -/area/lv522/atmos/cargo_intake) +/area/lv522/outdoors/colony_streets/containers) "fib" = ( /obj/structure/cargo_container/wy/right, /turf/open/floor/prison/floor_marked, -/area/lv522/atmos/cargo_intake) +/area/lv522/outdoors/colony_streets/containers) "fiu" = ( /obj/structure/pipes/standard/simple/hidden/green, /obj/structure/barricade/wooden{ @@ -8997,7 +9019,7 @@ "fiA" = ( /obj/structure/cargo_container/horizontal/blue/top, /turf/open/floor/prison/floor_marked, -/area/lv522/atmos/cargo_intake) +/area/lv522/outdoors/colony_streets/containers) "fiB" = ( /obj/structure/prop/invuln/ice_prefab{ dir = 9 @@ -9053,7 +9075,7 @@ "fkb" = ( /obj/item/prop/alien/hugger, /turf/open/floor/prison/floor_marked, -/area/lv522/atmos/cargo_intake) +/area/lv522/outdoors/colony_streets/containers) "fki" = ( /obj/structure/bed/chair{ dir = 1 @@ -9081,6 +9103,9 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/prison/greenfull/east, /area/lv522/indoors/b_block/bridge) +"fkW" = ( +/turf/open/asphalt/cement/cement1, +/area/lv522/outdoors/colony_streets/containers) "fld" = ( /mob/living/simple_animal/mouse, /turf/open/floor/prison, @@ -9622,7 +9647,7 @@ current_mag = null }, /turf/open/floor/prison, -/area/lv522/atmos/cargo_intake) +/area/lv522/outdoors/colony_streets/containers) "fAA" = ( /obj/structure/largecrate/random/barrel{ layer = 2.9 @@ -9636,7 +9661,7 @@ /obj/structure/bed/roller, /obj/effect/decal/cleanable/blood, /turf/open/floor/prison, -/area/lv522/atmos/cargo_intake) +/area/lv522/outdoors/colony_streets/containers) "fAH" = ( /obj/structure/pipes/standard/simple/hidden/green{ dir = 4 @@ -9670,7 +9695,7 @@ "fBP" = ( /obj/structure/machinery/iv_drip, /turf/open/floor/prison, -/area/lv522/atmos/cargo_intake) +/area/lv522/outdoors/colony_streets/containers) "fBR" = ( /obj/structure/pipes/standard/simple/hidden/green{ dir = 4 @@ -9680,7 +9705,7 @@ "fBU" = ( /obj/item/storage/belt/medical/lifesaver, /turf/open/floor/prison, -/area/lv522/atmos/cargo_intake) +/area/lv522/outdoors/colony_streets/containers) "fBY" = ( /obj/item/prop/colony/used_flare, /turf/open/floor/prison/floor_plate, @@ -9702,15 +9727,15 @@ dir = 1 }, /turf/open/floor/prison, -/area/lv522/atmos/cargo_intake) +/area/lv522/outdoors/colony_streets/containers) "fCN" = ( /obj/structure/cargo_container/horizontal/blue/middle, /turf/open/floor/prison, -/area/lv522/atmos/cargo_intake) +/area/lv522/outdoors/colony_streets/containers) "fCP" = ( /obj/item/prop/colony/used_flare, /turf/open/floor/prison, -/area/lv522/atmos/cargo_intake) +/area/lv522/outdoors/colony_streets/containers) "fCU" = ( /obj/effect/decal/cleanable/blood{ desc = "Watch your step."; @@ -9729,7 +9754,7 @@ "fDi" = ( /obj/structure/largecrate/random, /turf/open/floor/prison, -/area/lv522/atmos/cargo_intake) +/area/lv522/outdoors/colony_streets/containers) "fDj" = ( /obj/structure/surface/table/almayer, /obj/item/paper_bin{ @@ -9747,7 +9772,7 @@ }, /obj/item/prop/colony/used_flare, /turf/open/floor/prison/floor_marked, -/area/lv522/atmos/cargo_intake) +/area/lv522/outdoors/colony_streets/containers) "fDr" = ( /obj/structure/pipes/standard/simple/hidden/green{ dir = 6 @@ -9785,7 +9810,7 @@ current_mag = null }, /turf/open/floor/prison, -/area/lv522/atmos/cargo_intake) +/area/lv522/outdoors/colony_streets/containers) "fEe" = ( /obj/structure/platform, /obj/effect/decal/cleanable/dirt, @@ -9819,7 +9844,7 @@ pixel_x = 1 }, /turf/open/floor/prison/floor_plate, -/area/lv522/atmos/cargo_intake) +/area/lv522/outdoors/colony_streets/containers) "fFw" = ( /obj/structure/largecrate/random/barrel/white, /turf/open/floor/prison, @@ -10192,9 +10217,6 @@ "fSe" = ( /turf/open/floor/plating/plating_catwalk/prison, /area/lv522/atmos/filt) -"fSf" = ( -/turf/open/auto_turf/sand_white/layer0, -/area/lv522/atmos/cargo_intake) "fSo" = ( /obj/structure/machinery/landinglight/ds1, /turf/open/floor/prison/greenfull/east, @@ -10215,16 +10237,16 @@ dir = 8 }, /turf/open/floor/prison, -/area/lv522/atmos/cargo_intake) +/area/lv522/outdoors/colony_streets/containers) "fSX" = ( /obj/effect/landmark/objective_landmark/close, /obj/structure/bed/roller, /turf/open/floor/prison, -/area/lv522/atmos/cargo_intake) +/area/lv522/outdoors/colony_streets/containers) "fTi" = ( /obj/item/prop/alien/hugger, /turf/open/floor/prison, -/area/lv522/atmos/cargo_intake) +/area/lv522/outdoors/colony_streets/containers) "fTN" = ( /obj/effect/decal/warning_stripes{ icon_state = "W" @@ -10236,7 +10258,7 @@ current_rounds = 0 }, /turf/open/floor/prison, -/area/lv522/atmos/cargo_intake) +/area/lv522/outdoors/colony_streets/containers) "fTP" = ( /obj/effect/decal/cleanable/dirt, /turf/open/floor/prison, @@ -10291,7 +10313,7 @@ "fWD" = ( /obj/structure/cargo_container/horizontal/blue/bottom, /turf/open/floor/prison, -/area/lv522/atmos/cargo_intake) +/area/lv522/outdoors/colony_streets/containers) "fWG" = ( /turf/open/auto_turf/shale/layer1, /area/lv522/outdoors/colony_streets/south_east_street) @@ -10336,7 +10358,7 @@ current_rounds = 0 }, /turf/open/floor/prison/floor_marked, -/area/lv522/atmos/cargo_intake) +/area/lv522/outdoors/colony_streets/containers) "fXx" = ( /turf/open/asphalt/cement/cement4, /area/lv522/outdoors/colony_streets/central_streets) @@ -10359,9 +10381,6 @@ }, /turf/open/floor/corsat/plate, /area/lv522/indoors/c_block/mining) -"fXU" = ( -/turf/open/asphalt/cement/cement1, -/area/lv522/atmos/cargo_intake) "fXZ" = ( /obj/structure/curtain/medical, /turf/open/floor/strata/white_cyan4/east, @@ -10726,7 +10745,7 @@ /obj/effect/landmark/structure_spawner/setup/distress/xeno_weed_node, /obj/item/stack/rods, /turf/open/auto_turf/sand_white/layer0, -/area/lv522/outdoors/colony_streets/north_east_street) +/area/lv522/outdoors/colony_streets/containers) "ggO" = ( /obj/structure/surface/table/almayer, /obj/item/paper_bin{ @@ -10748,7 +10767,7 @@ "ghr" = ( /obj/effect/landmark/structure_spawner/setup/distress/xeno_weed_node, /turf/open/auto_turf/sand_white/layer0, -/area/lv522/outdoors/colony_streets/north_east_street) +/area/lv522/outdoors/colony_streets/containers) "ghu" = ( /obj/structure/pipes/vents/pump, /turf/open/floor/wood, @@ -10770,7 +10789,7 @@ pixel_x = 1 }, /turf/open/floor/prison/floor_plate, -/area/lv522/atmos/cargo_intake) +/area/lv522/outdoors/colony_streets/containers) "ghY" = ( /obj/structure/bed/chair/dropship/passenger{ dir = 4 @@ -10793,7 +10812,7 @@ "giF" = ( /obj/effect/decal/cleanable/blood, /turf/open/floor/prison, -/area/lv522/atmos/cargo_intake) +/area/lv522/outdoors/colony_streets/containers) "giX" = ( /obj/structure/curtain/red, /turf/open/floor/wood, @@ -10802,7 +10821,7 @@ /obj/vehicle/train/cargo/trolley, /obj/effect/landmark/objective_landmark/close, /turf/open/floor/prison, -/area/lv522/atmos/cargo_intake) +/area/lv522/outdoors/colony_streets/containers) "gjt" = ( /obj/structure/machinery/colony_floodlight{ density = 0; @@ -10831,7 +10850,7 @@ /obj/vehicle/train/cargo/trolley, /obj/effect/landmark/objective_landmark/medium, /turf/open/floor/prison, -/area/lv522/atmos/cargo_intake) +/area/lv522/outdoors/colony_streets/containers) "gkg" = ( /obj/structure/machinery/portable_atmospherics/hydroponics{ icon_state = "hydrotray4" @@ -10895,7 +10914,7 @@ "gmb" = ( /obj/vehicle/train/cargo/engine, /turf/open/floor/prison, -/area/lv522/atmos/cargo_intake) +/area/lv522/outdoors/colony_streets/containers) "gme" = ( /obj/structure/pipes/standard/simple/hidden/green{ dir = 6 @@ -10917,7 +10936,7 @@ pixel_x = 1 }, /turf/closed/wall/strata_ice/dirty, -/area/lv522/atmos/cargo_intake) +/area/lv522/outdoors/colony_streets/containers) "gmu" = ( /obj/structure/platform{ dir = 1 @@ -10926,7 +10945,7 @@ /area/lv522/outdoors/colony_streets/south_street) "gnd" = ( /turf/closed/wall/strata_ice/dirty, -/area/lv522/atmos/cargo_intake) +/area/lv522/outdoors/colony_streets/containers) "gnf" = ( /obj/structure/machinery/landinglight/ds1/delaythree{ dir = 1 @@ -10951,7 +10970,7 @@ pixel_x = 17 }, /turf/closed/wall/strata_ice/dirty, -/area/lv522/outdoors/colony_streets/north_east_street) +/area/lv522/outdoors/colony_streets/containers) "gok" = ( /obj/effect/decal/cleanable/dirt, /turf/open/floor/plating/plating_catwalk/prison, @@ -11800,7 +11819,7 @@ /obj/structure/barricade/deployable, /obj/effect/decal/cleanable/blood, /turf/open/auto_turf/sand_white/layer0, -/area/lv522/outdoors/colony_streets/north_east_street) +/area/lv522/outdoors/colony_streets/containers) "gLV" = ( /obj/structure/prop/server_equipment/yutani_server/broken{ density = 0; @@ -11822,7 +11841,7 @@ icon_state = "crawler_crate_alt" }, /turf/open/floor/prison, -/area/lv522/atmos/cargo_intake) +/area/lv522/outdoors/colony_streets/containers) "gMy" = ( /obj/structure/barricade/deployable{ dir = 8 @@ -11831,7 +11850,7 @@ current_mag = null }, /turf/open/floor/prison, -/area/lv522/atmos/cargo_intake) +/area/lv522/outdoors/colony_streets/containers) "gMG" = ( /obj/structure/platform_decoration{ dir = 1 @@ -11873,7 +11892,7 @@ pixel_x = 1 }, /turf/closed/wall/strata_ice/dirty, -/area/lv522/atmos/cargo_intake) +/area/lv522/outdoors/colony_streets/containers) "gNn" = ( /obj/structure/largecrate/supply/medicine/medkits{ pixel_x = -7 @@ -12152,7 +12171,7 @@ "gVd" = ( /obj/structure/cargo_container/wy/left, /turf/open/floor/prison, -/area/lv522/atmos/cargo_intake) +/area/lv522/outdoors/colony_streets/containers) "gVf" = ( /obj/structure/machinery/landinglight/ds2, /obj/effect/decal/cleanable/dirt, @@ -12208,7 +12227,7 @@ "gWg" = ( /obj/structure/cargo_container/wy/mid, /turf/open/floor/prison, -/area/lv522/atmos/cargo_intake) +/area/lv522/outdoors/colony_streets/containers) "gWh" = ( /obj/effect/decal/cleanable/dirt, /turf/open/floor/prison/darkpurple2, @@ -12271,14 +12290,14 @@ }, /obj/structure/barricade/deployable, /turf/open/floor/prison, -/area/lv522/atmos/cargo_intake) +/area/lv522/outdoors/colony_streets/containers) "gXE" = ( /obj/item/weapon/gun/pistol/m1911{ current_mag = null }, /obj/effect/decal/cleanable/blood, /turf/open/asphalt/cement/cement1, -/area/lv522/atmos/cargo_intake) +/area/lv522/outdoors/colony_streets/containers) "gXL" = ( /obj/item/prop/alien/hugger, /obj/effect/decal/cleanable/dirt, @@ -12429,7 +12448,7 @@ "haR" = ( /obj/structure/largecrate/random/barrel/true_random, /turf/open/asphalt/cement/cement1, -/area/lv522/outdoors/colony_streets/north_east_street) +/area/lv522/outdoors/colony_streets/containers) "haY" = ( /obj/effect/decal/warning_stripes{ icon_state = "S" @@ -12446,7 +12465,7 @@ "hbj" = ( /obj/effect/spawner/gibspawner/xeno, /turf/open/floor/prison/floor_marked, -/area/lv522/atmos/cargo_intake) +/area/lv522/outdoors/colony_streets/containers) "hbk" = ( /obj/effect/spawner/gibspawner/robot, /turf/open/floor/corsat/marked, @@ -12503,7 +12522,7 @@ layer = 3.1 }, /turf/open/floor/prison, -/area/lv522/atmos/cargo_intake) +/area/lv522/outdoors/colony_streets/containers) "hbN" = ( /obj/item/ammo_magazine/rifle/heap{ current_rounds = 0 @@ -12516,7 +12535,7 @@ pixel_x = 1 }, /turf/open/floor/prison/floor_plate, -/area/lv522/atmos/cargo_intake) +/area/lv522/outdoors/colony_streets/containers) "hcd" = ( /obj/effect/decal/warning_stripes{ icon_state = "S" @@ -12543,7 +12562,7 @@ current_rounds = 0 }, /turf/open/auto_turf/sand_white/layer0, -/area/lv522/outdoors/colony_streets/north_east_street) +/area/lv522/outdoors/colony_streets/containers) "hcE" = ( /obj/item/stack/sheet/metal, /obj/effect/decal/cleanable/generic, @@ -12558,7 +12577,7 @@ current_mag = null }, /turf/open/auto_turf/shale/layer1, -/area/lv522/outdoors/colony_streets/north_east_street) +/area/lv522/outdoors/colony_streets/containers) "hcZ" = ( /obj/structure/machinery/colony_floodlight, /turf/open/asphalt/cement, @@ -12877,11 +12896,11 @@ "hmz" = ( /obj/structure/largecrate/random/barrel/true_random, /turf/open/auto_turf/sand_white/layer0, -/area/lv522/outdoors/colony_streets/north_east_street) +/area/lv522/outdoors/colony_streets/containers) "hmD" = ( /obj/structure/barricade/deployable, /turf/open/floor/prison, -/area/lv522/atmos/cargo_intake) +/area/lv522/outdoors/colony_streets/containers) "hmJ" = ( /obj/structure/pipes/standard/simple/hidden/green{ dir = 4 @@ -12895,7 +12914,7 @@ current_mag = null }, /turf/open/floor/prison, -/area/lv522/atmos/cargo_intake) +/area/lv522/outdoors/colony_streets/containers) "hnk" = ( /obj/structure/pipes/standard/simple/hidden/green{ dir = 4 @@ -12916,7 +12935,7 @@ }, /obj/structure/barricade/deployable, /turf/open/auto_turf/sand_white/layer0, -/area/lv522/outdoors/colony_streets/north_east_street) +/area/lv522/outdoors/colony_streets/containers) "hoq" = ( /turf/open/asphalt/cement/cement14, /area/lv522/outdoors/nw_rockies) @@ -13462,7 +13481,7 @@ /area/lv522/indoors/c_block/mining) "hFu" = ( /turf/open/floor/prison/floor_plate, -/area/lv522/atmos/cargo_intake) +/area/lv522/outdoors/colony_streets/containers) "hFG" = ( /obj/structure/pipes/standard/simple/hidden/green, /turf/open/floor/prison/darkbrownfull2, @@ -13479,7 +13498,7 @@ "hFS" = ( /obj/item/prop/colony/used_flare, /turf/open/floor/prison/floor_marked, -/area/lv522/atmos/cargo_intake) +/area/lv522/outdoors/colony_streets/containers) "hFX" = ( /turf/open/auto_turf/shale/layer2, /area/lv522/outdoors/colony_streets/south_street) @@ -13496,11 +13515,11 @@ "hGJ" = ( /obj/structure/cargo_container/lockmart/left, /turf/open/floor/prison/floor_marked, -/area/lv522/atmos/cargo_intake) +/area/lv522/outdoors/colony_streets/containers) "hGU" = ( /obj/structure/cargo_container/lockmart/mid, /turf/open/floor/prison/floor_marked, -/area/lv522/atmos/cargo_intake) +/area/lv522/outdoors/colony_streets/containers) "hGX" = ( /obj/structure/bed/chair/comfy{ dir = 1 @@ -13527,7 +13546,7 @@ "hHN" = ( /obj/structure/cargo_container/lockmart/right, /turf/open/floor/prison/floor_marked, -/area/lv522/atmos/cargo_intake) +/area/lv522/outdoors/colony_streets/containers) "hHY" = ( /obj/item/prop/colony/used_flare, /obj/effect/decal/warning_stripes{ @@ -13538,7 +13557,7 @@ pixel_x = 1 }, /turf/open/floor/prison/floor_plate, -/area/lv522/atmos/cargo_intake) +/area/lv522/outdoors/colony_streets/containers) "hIf" = ( /turf/open/floor/prison/darkbrownfull2, /area/lv522/landing_zone_2) @@ -13906,6 +13925,10 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/corsat/plate, /area/lv522/atmos/east_reactor/south) +"hRb" = ( +/obj/structure/cargo_container/kelland/right, +/turf/open/auto_turf/sand_white/layer0, +/area/lv522/outdoors/colony_streets/containers) "hRj" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/landmark/structure_spawner/setup/distress/xeno_weed_node, @@ -13967,22 +13990,22 @@ /obj/effect/spawner/gibspawner/xeno, /obj/effect/decal/cleanable/blood/xeno, /turf/open/auto_turf/sand_white/layer0, -/area/lv522/outdoors/colony_streets/north_east_street) +/area/lv522/outdoors/colony_streets/containers) "hTh" = ( /obj/item/prop/colony/used_flare, /turf/open/auto_turf/sand_white/layer0, -/area/lv522/outdoors/colony_streets/north_east_street) +/area/lv522/outdoors/colony_streets/containers) "hTk" = ( /obj/structure/ore_box, /turf/open/floor/prison, -/area/lv522/atmos/cargo_intake) +/area/lv522/outdoors/colony_streets/containers) "hTo" = ( /obj/structure/barricade/deployable, /obj/structure/barricade/deployable{ dir = 4 }, /turf/open/floor/prison, -/area/lv522/atmos/cargo_intake) +/area/lv522/outdoors/colony_streets/containers) "hTA" = ( /obj/structure/machinery/door/airlock/almayer/engineering{ name = "\improper Cargo Bay Break Room"; @@ -14307,7 +14330,7 @@ "ier" = ( /obj/structure/cargo_container/arious/leftmid, /turf/open/floor/prison, -/area/lv522/outdoors/colony_streets/north_east_street) +/area/lv522/outdoors/colony_streets/containers) "ieE" = ( /obj/item/ammo_magazine/rifle/heap{ current_rounds = 0 @@ -14325,11 +14348,11 @@ "ieW" = ( /obj/structure/cargo_container/arious/rightmid, /turf/open/floor/prison, -/area/lv522/outdoors/colony_streets/north_east_street) +/area/lv522/outdoors/colony_streets/containers) "iff" = ( /obj/structure/cargo_container/arious/right, /turf/open/auto_turf/sand_white/layer0, -/area/lv522/outdoors/colony_streets/north_east_street) +/area/lv522/outdoors/colony_streets/containers) "ifg" = ( /obj/structure/stairs/perspective{ icon_state = "p_stair_full" @@ -14580,6 +14603,9 @@ /obj/structure/machinery/light, /turf/open/floor/corsat/marked, /area/lv522/indoors/c_block/mining) +"imF" = ( +/turf/open/asphalt/cement/cement3, +/area/lv522/outdoors/colony_streets/containers) "imJ" = ( /obj/structure/pipes/standard/simple/hidden/green{ dir = 4 @@ -14610,6 +14636,9 @@ /obj/structure/bed/sofa/south/grey/left, /turf/open/floor/prison, /area/lv522/indoors/a_block/dorms) +"inO" = ( +/turf/open/asphalt/cement/cement4, +/area/lv522/outdoors/colony_streets/containers) "inU" = ( /obj/structure/machinery/light{ dir = 1 @@ -15775,6 +15804,9 @@ /obj/structure/platform_decoration, /turf/open/asphalt/cement/cement2, /area/lv522/outdoors/colony_streets/south_street) +"iVX" = ( +/turf/open/asphalt/cement/cement2, +/area/lv522/outdoors/colony_streets/containers) "iVY" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/spider/spiderling/nogrow, @@ -17215,11 +17247,11 @@ "jEa" = ( /obj/structure/cargo_container/ferret/left, /turf/open/auto_turf/sand_white/layer0, -/area/lv522/outdoors/colony_streets/north_east_street) +/area/lv522/outdoors/colony_streets/containers) "jEk" = ( /obj/structure/cargo_container/ferret/mid, /turf/open/auto_turf/sand_white/layer0, -/area/lv522/outdoors/colony_streets/north_east_street) +/area/lv522/outdoors/colony_streets/containers) "jEq" = ( /obj/effect/landmark/structure_spawner/setup/distress/xeno_weed_node, /obj/structure/machinery/light{ @@ -17230,7 +17262,7 @@ "jEF" = ( /obj/structure/cargo_container/ferret/right, /turf/open/auto_turf/sand_white/layer0, -/area/lv522/outdoors/colony_streets/north_east_street) +/area/lv522/outdoors/colony_streets/containers) "jEW" = ( /obj/structure/bed/chair{ dir = 1 @@ -17551,7 +17583,7 @@ "jMJ" = ( /obj/item/prop/colony/used_flare, /turf/open/asphalt/cement/cement12, -/area/lv522/outdoors/colony_streets/north_east_street) +/area/lv522/outdoors/colony_streets/containers) "jMZ" = ( /obj/structure/surface/table/almayer, /obj/item/tool/pen/blue/clicky{ @@ -17591,12 +17623,9 @@ }, /turf/open/floor/prison/blue_plate/north, /area/lv522/indoors/a_block/admin) -"jNY" = ( -/turf/open/asphalt/cement/cement12, -/area/lv522/atmos/cargo_intake) "jOh" = ( /turf/open/asphalt/cement/cement15, -/area/lv522/atmos/cargo_intake) +/area/lv522/outdoors/colony_streets/containers) "jOr" = ( /obj/structure/prop/ice_colony/dense/planter_box{ dir = 9 @@ -19204,7 +19233,7 @@ "kBK" = ( /obj/structure/largecrate/random, /turf/open/auto_turf/shale/layer1, -/area/lv522/outdoors/colony_streets/north_east_street) +/area/lv522/outdoors/colony_streets/containers) "kBT" = ( /obj/structure/cargo_container/horizontal/blue/bottom, /turf/open/auto_turf/shale/layer1, @@ -21989,7 +22018,7 @@ "mee" = ( /obj/structure/largecrate/random/barrel/true_random, /turf/open/auto_turf/shale/layer1, -/area/lv522/outdoors/colony_streets/north_east_street) +/area/lv522/outdoors/colony_streets/containers) "men" = ( /turf/closed/wall/strata_outpost, /area/lv522/atmos/east_reactor/south) @@ -22376,6 +22405,10 @@ }, /turf/open/floor/prison/greenfull/east, /area/lv522/landing_zone_1/ceiling) +"moC" = ( +/obj/structure/barricade/deployable, +/turf/open/auto_turf/sand_white/layer0, +/area/lv522/outdoors/colony_streets/containers) "moI" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/filingcabinet{ @@ -24633,6 +24666,10 @@ }, /turf/open/floor/prison/floor_plate, /area/lv522/outdoors/colony_streets/north_street) +"nsL" = ( +/obj/structure/cargo_container/kelland/left, +/turf/open/auto_turf/sand_white/layer0, +/area/lv522/outdoors/colony_streets/containers) "nta" = ( /obj/structure/machinery/light{ dir = 8; @@ -24675,7 +24712,7 @@ icon_state = "S" }, /turf/open/floor/strata/floor3, -/area/lv522/outdoors/colony_streets/north_east_street) +/area/lv522/outdoors/colony_streets/containers) "ntQ" = ( /obj/structure/surface/table/reinforced/prison, /obj/effect/decal/cleanable/dirt, @@ -26518,7 +26555,7 @@ /area/lv522/indoors/a_block/bridges/corpo) "opp" = ( /turf/closed/wall/shiva/prefabricated/reinforced, -/area/lv522/atmos/cargo_intake) +/area/lv522/outdoors/colony_streets/containers) "opt" = ( /obj/item/storage/backpack/marine/satchel{ desc = "It's the heavy-duty black polymer kind. Time to take out the trash!"; @@ -26888,6 +26925,9 @@ }, /turf/open/floor/prison/blue_plate, /area/lv522/indoors/a_block/admin) +"oyG" = ( +/turf/open/asphalt/cement/cement12, +/area/lv522/outdoors/colony_streets/containers) "oyM" = ( /obj/structure/machinery/shower{ pixel_y = 16 @@ -35214,7 +35254,7 @@ "sBX" = ( /obj/structure/cargo_container/wy/right, /turf/open/floor/prison, -/area/lv522/outdoors/colony_streets/north_east_street) +/area/lv522/outdoors/colony_streets/containers) "sCb" = ( /obj/structure/platform_decoration{ dir = 8 @@ -46389,7 +46429,7 @@ "xSN" = ( /obj/structure/largecrate/random/secure, /turf/open/auto_turf/shale/layer1, -/area/lv522/outdoors/colony_streets/north_east_street) +/area/lv522/outdoors/colony_streets/containers) "xSP" = ( /obj/structure/surface/table/almayer, /obj/item/paper_bin{ @@ -46785,7 +46825,7 @@ /area/lv522/indoors/a_block/kitchen) "ycw" = ( /turf/open/floor/prison, -/area/lv522/atmos/cargo_intake) +/area/lv522/outdoors/colony_streets/containers) "ycE" = ( /turf/open/floor/carpet, /area/lv522/indoors/b_block/bar) @@ -76528,13 +76568,13 @@ cpy cpy cpy cpy -dHF +fkW fdS -dHF -dHF -dHF -dHF -dHF +fkW +fkW +fkW +fkW +fkW haR ien ien @@ -76735,13 +76775,13 @@ cpy cpy ien eXe -vGp -vGp -qSH -qSH +aHA +aHA +dqy +dqy eJq -qSH -qSH +dqy +dqy hmz ien cpy @@ -76941,13 +76981,13 @@ ien ien ien ien -vGp -vGp -qSH +aHA +aHA +dqy ggM -qSH -qSH -qSH +dqy +dqy +dqy hmz ien cpy @@ -77146,14 +77186,14 @@ ien kBK kBK ien -vGp -vGp -vGp -qSH -qSH -qSH -qSH -qSH +aHA +aHA +aHA +dqy +dqy +dqy +dqy +dqy ien ien ien @@ -77350,17 +77390,17 @@ cpy ien xSN kBK -vGp +aHA ntN -vGp -vGp -qSH -qSH -qSH -qSH -qSH -vGp -vGp +aHA +aHA +dqy +dqy +dqy +dqy +dqy +aHA +aHA ien cpy dRL @@ -77554,18 +77594,18 @@ cpy cpy cpy ien -vGp -vGp -vGp +aHA +aHA +aHA ntN -vGp -qSH -qSH -qSH +aHA +dqy +dqy +dqy ghr -qSH -qSH -vGp +dqy +dqy +aHA cpy ien cpy @@ -77761,16 +77801,16 @@ cpy ien ien ien -vGp -vGp +aHA +aHA ntN -qSH -qSH -qSH -qSH -qSH -qSH -vGp +dqy +dqy +dqy +dqy +dqy +dqy +aHA cpy ien ien @@ -77967,15 +78007,15 @@ cpy cpy ien kBK -vGp -vGp +aHA +aHA ntN -qSH -qSH -qSH -qSH -qSH -vGp +dqy +dqy +dqy +dqy +dqy +aHA cpy cpy cpy @@ -78174,15 +78214,15 @@ cpy ien xSN xSN -vGp +aHA ien -vGp +aHA eXe -qSH -qSH -qSH -vGp -vGp +dqy +dqy +dqy +aHA +aHA cpy cpy ien @@ -78383,13 +78423,13 @@ ien ien ien ien -vGp -vGp -qSH -qSH -qSH -vGp -vGp +aHA +aHA +dqy +dqy +dqy +aHA +aHA ien ien ien @@ -78586,16 +78626,16 @@ cpy ien xSN mee -vGp +aHA ien -vGp -vGp -qSH -qSH -qSH -qSH -qSH -vGp +aHA +aHA +dqy +dqy +dqy +dqy +dqy +aHA cpy ien cpy @@ -78791,18 +78831,18 @@ cpy cpy ien mee -vGp -vGp -vGp -vGp -qSH -qSH -qSH -qSH -qSH -qSH -qSH -vGp +aHA +aHA +aHA +aHA +dqy +dqy +dqy +dqy +dqy +dqy +dqy +aHA ien cpy dRL @@ -78998,16 +79038,16 @@ ien ien ien ewe -qSH -qSH -qSH -qSH -qSH -qSH -qSH -qSH -qSH -vGp +dqy +dqy +dqy +dqy +dqy +dqy +dqy +dqy +dqy +aHA ien ien gwC @@ -79204,27 +79244,27 @@ cpy ien eoH dbs -qSH -qSH -qSH -qSH -qSH -qSH -qSH -qSH -qSH -qSH -qSH -qSH +dqy +dqy +dqy +dqy +dqy +dqy +dqy +dqy +dqy +dqy +dqy +dqy ien ien ien ien ien -dHF -dHF -dHF -dHF +fkW +fkW +fkW +fkW ien ien whD @@ -79411,26 +79451,26 @@ ien aCJ ewm eIn -qSH -qSH -qSH -qSH -qSH -qSH -qSH -qSH -qSH -vGp -vGp -vGp -vGp -vGp +dqy +dqy +dqy +dqy +dqy +dqy +dqy +dqy +dqy +aHA +aHA +aHA +aHA +aHA ien -vGp -vGp -vGp -vGp -vGp +aHA +aHA +aHA +aHA +aHA ien lyP vGp @@ -79616,27 +79656,27 @@ ien ien ien ewp -qSH -qSH -qSH -qSH -qSH -qSH -qSH -qSH -qSH -vGp -vGp -vGp -vGp -vGp -vGp -vGp -vGp -vGp -vGp -vGp -vGp +dqy +dqy +dqy +dqy +dqy +dqy +dqy +dqy +dqy +aHA +aHA +aHA +aHA +aHA +aHA +aHA +aHA +aHA +aHA +aHA +aHA ien mbx vGp @@ -79820,28 +79860,28 @@ cpy cpy cpy ien -qSH -qSH -oiA -vTx -vTx -vTx -vTx -vTx -vTx -vTx -vTx -vTx -qSH +dqy +dqy +iVX +imF +imF +imF +imF +imF +imF +imF +imF +imF +dqy eXV hTg -qSH -vTx -vTx -vTx -vGp -vGp -vGp +dqy +imF +imF +imF +aHA +aHA +aHA ien ien ien @@ -80026,9 +80066,9 @@ cpy cpy cpy ien -qSH -qSH -uRb +dqy +dqy +inO opp opp feS @@ -80038,17 +80078,17 @@ ghy fFp feS feS -qSH -qSH -qSH -qSH +dqy +dqy +dqy +dqy eJq opp opp -vGp -vGp -vGp -vGp +aHA +aHA +aHA +aHA qBQ kyH fbA @@ -80233,8 +80273,8 @@ cpy ien ien ien -qSH -uRb +dqy +inO opp ycw ycw @@ -80245,16 +80285,16 @@ ycw ycw ycw eJq -qSH +dqy hTh eXV -qSH -qSH +dqy +dqy opp -qSH -qSH -vGp -vGp +dqy +dqy +aHA +aHA rdq saY vGp @@ -80438,28 +80478,28 @@ cpy cpy cpy ien -qSH -qSH -uRb +dqy +dqy +inO eOe ycw feZ feZ -fSf +dqy feZ feZ feZ hbj feZ feZ -qSH -qSH -qSH -qSH -qSH -qSH -qSH -vGp +dqy +dqy +dqy +dqy +dqy +dqy +dqy +aHA ien ien ien @@ -80644,9 +80684,9 @@ cpy cpy cpy ien -qSH -qSH -uRb +dqy +dqy +inO eOe eXO feZ @@ -80658,15 +80698,15 @@ ycw ycw ycw feZ -qSH -qSH -qSH -qSH -qSH -qSH -qSH -qSH -vGp +dqy +dqy +dqy +dqy +dqy +dqy +dqy +dqy +aHA ien rwo vGp @@ -80851,8 +80891,8 @@ cpy ien ien ien -qSH -uRb +dqy +inO eOe ycw ffr @@ -80865,14 +80905,14 @@ fBU ycw feZ eJq -qSH -qSH -qSH -qSH -ezj -qSH -qSH -qSH +dqy +dqy +dqy +dqy +oyG +dqy +dqy +dqy ien jvo vGp @@ -81056,9 +81096,9 @@ cpy cpy cpy ien -amc +nsL exB -uRb +inO eOe ycw fhY @@ -81071,13 +81111,13 @@ hbH ycw feZ ycw -qSH -qSH +dqy +dqy eXV -qSH -ezj -qSH -qSH +dqy +oyG +dqy +dqy ien ien ien @@ -81262,29 +81302,29 @@ cpy cpy cpy ien -poZ -qSH -uRb +hRb +dqy +inO eOn ycw fib fBU fTi -qSH -qSH +dqy +dqy sBX ycw ycw feZ ycw -qSH -qSH -qSH +dqy +dqy +dqy jEa jMJ -qSH -qSH -qSH +dqy +dqy +dqy ien amc qSH @@ -81469,28 +81509,28 @@ cpy ien ien ien -qSH -uRb +dqy +inO eOn ycw feZ fCE fTO -qSH +dqy gLK -qSH +dqy ycw ycw feZ ycw ycw -qSH -qSH +dqy +dqy jEk -qSH -qSH -qSH -qSH +dqy +dqy +dqy +dqy ien poZ qSH @@ -81674,9 +81714,9 @@ cpy cpy cpy ien -qSH -qSH -uRb +dqy +dqy +inO eOe ycw fiA @@ -81691,11 +81731,11 @@ hFu hFu hFu hFu -qSH +dqy jEF -qSH -qSH -qSH +dqy +dqy +dqy ien ien ien @@ -81880,9 +81920,9 @@ cpy cpy cpy ien -qSH -qSH -uRb +dqy +dqy +inO eOn ycw feZ @@ -81897,12 +81937,12 @@ hFS ycw ycw ycw -qSH -qSH +dqy +dqy eJq -qSH -qSH -qSH +dqy +dqy +dqy ien fjk qSH @@ -82087,9 +82127,9 @@ cpy ien ien ien -qSH -uRb -eOe +dqy +inO +lsR ycw fkb ycw @@ -82103,12 +82143,12 @@ feZ eXO ycw ycw -qSH -qSH -qSH -qSH -qSH -qSH +dqy +dqy +dqy +dqy +dqy +dqy ien igg rMR @@ -82292,9 +82332,9 @@ cpy cpy cpy ien -qSH -qSH -uRb +dqy +dqy +inO eOe ycw feZ @@ -82309,11 +82349,11 @@ hGJ ycw ier ycw -qSH -qSH -qSH -qSH -qSH +dqy +dqy +dqy +dqy +dqy ien ien ien @@ -82498,9 +82538,9 @@ cpy cpy cpy ien -qSH -qSH -uRb +dqy +dqy +inO eOe ycw feZ @@ -82515,12 +82555,12 @@ hGU ycw ieW ycw -qSH -qSH +dqy +dqy exB -qSH -qSH -qSH +dqy +dqy +dqy ntN qSH qSH @@ -82705,10 +82745,10 @@ cpy ien ien ien -qSH -uRb -qSH -qSH +dqy +inO +dqy +dqy eXV ycw ycw @@ -82721,12 +82761,12 @@ hHN ycw iff ycw -qSH +dqy eXV -qSH -qSH -qSH -qSH +dqy +dqy +dqy +dqy ntN qSH qSH @@ -82910,29 +82950,29 @@ cpy cpy cpy ien -vGp -qSH -qSH -qSH +aHA +dqy +dqy +dqy eJq -qSH -qSH +dqy +dqy ycw ycw ycw -fSf +dqy fTi ycw feZ ycw -qSH +dqy ycw -qSH -qSH +dqy +dqy ghr -qSH -qSH -qSH +dqy +dqy +dqy ntN qSH qSH @@ -83116,13 +83156,13 @@ cpy cpy cpy ien -vGp -vGp -qSH -qSH -qSH -qSH -qSH +aHA +aHA +dqy +dqy +dqy +dqy +dqy ycw ycw ycw @@ -83133,12 +83173,12 @@ feZ ycw ycw ycw -qSH -qSH -qSH -qSH -qSH -qSH +dqy +dqy +dqy +dqy +dqy +dqy ntN qSH qSH @@ -83323,12 +83363,12 @@ cpy ien ien ien -vGp +aHA eIT exB -qSH -qSH -qSH +dqy +dqy +dqy ycw gjm ycw @@ -83339,12 +83379,12 @@ hFu hFu hFu hFu -qSH -qSH -qSH -qSH -qSH -qSH +dqy +dqy +dqy +dqy +dqy +dqy ntN qSH qSH @@ -83528,12 +83568,12 @@ cpy cpy cpy enG -vGp -fbA -qSH -qSH -qSH -qSH +aHA +ddd +dqy +dqy +dqy +dqy ycw ycw gjV @@ -83544,13 +83584,13 @@ ycw feZ ycw ycw -qSH -qSH +dqy +dqy eXV exB -qSH -qSH -qSH +dqy +dqy +dqy ntN qSH qSH @@ -83734,12 +83774,12 @@ cpy cpy cpy ien -saY -vGp -qSH -qSH -qSH -qSH +dTD +aHA +dqy +dqy +dqy +dqy ycw ycw gjV @@ -83750,12 +83790,12 @@ fTO feZ hTk eXO -qSH -qSH -qSH -qSH -qSH -qSH +dqy +dqy +dqy +dqy +dqy +dqy ien ien ien @@ -83941,11 +83981,11 @@ cpy ien ien ien -vGp +aHA eJq -qSH +dqy eXV -qSH +dqy fDi ycw gmb @@ -83956,13 +83996,13 @@ ycw feZ hmO ycw -qSH -qSH -qSH -qSH -qSH -qSH -vGp +dqy +dqy +dqy +dqy +dqy +dqy +aHA ien qSH qSH @@ -84146,29 +84186,29 @@ cpy cpy cpy ien -vGp -vGp -qSH -qSH -qSH +aHA +aHA +dqy +dqy +dqy exB fDn fXs fkb feZ feZ -qSH +dqy feZ feZ hTo fCP -qSH -qSH -qSH -jNY -qSH -vGp -vGp +dqy +dqy +dqy +oyG +dqy +aHA +aHA ien qSH qSH @@ -84352,28 +84392,28 @@ cpy cpy cpy ien -vGp -vGp -qSH -eOA -qSH -qSH +aHA +aHA +dqy +opp +dqy +dqy fDH ycw ycw giF ycw -qSH +dqy ycw ycw ycw ycw eXV -qSH +dqy opp -jNY -vGp -vGp +oyG +aHA +aHA ien ien ien @@ -84559,11 +84599,11 @@ cpy ien ien ien -vGp -qSH -eOA -eOA -qSH +aHA +dqy +opp +opp +dqy fFp fFp gmt @@ -84574,13 +84614,13 @@ fFp hHY ghy fFp -qSH +dqy opp opp -jNY -vGp -vGp -vGp +oyG +aHA +aHA +aHA ien qSH qSH @@ -84765,26 +84805,26 @@ cpy cpy ien kBK -qSH -qSH -qSH -qSH -qSH -qSH -fXU +dqy +dqy +dqy +dqy +dqy +dqy +fkW gnd gnd gXE -fXU -fXU -qSH -vGp -fXU -fXU -fXU -fXU +fkW +fkW +dqy +aHA +fkW +fkW +fkW +fkW jOh -vGp +aHA cpy cpy ien @@ -84971,25 +85011,25 @@ cpy cpy ien xSN -vGp -vGp -vGp -qSH -qSH -qSH -qSH +aHA +aHA +aHA +dqy +dqy +dqy +dqy gnA -uwF -qSH +gnd +dqy hcx -rcr -qSH -qSH -vGp -vGp -vGp -vGp -vGp +moC +dqy +dqy +aHA +aHA +aHA +aHA +aHA cpy cpy ien @@ -85178,23 +85218,23 @@ ien ien ien xSN -vGp +aHA ien -vGp -qSH -vGp +aHA +dqy +aHA cpy cpy cpy cpy hcV hnD -qSH -qSH -vGp -mRs -vGp -vGp +dqy +dqy +aHA +cxN +aHA +aHA cpy cpy cpy @@ -85387,18 +85427,18 @@ ien ien ien ien -vGp +aHA cpy cpy cpy cpy cpy cpy -mRs -qSH -qSH -qSH -vGp +cxN +dqy +dqy +dqy +aHA cpy cpy cpy @@ -85602,8 +85642,8 @@ cpy cpy cpy cpy -qSH -qSH +dqy +dqy cpy cpy cpy diff --git a/maps/map_files/LV624/LV624.dmm b/maps/map_files/LV624/LV624.dmm index 1183e3e97051..14a0d7f584a7 100644 --- a/maps/map_files/LV624/LV624.dmm +++ b/maps/map_files/LV624/LV624.dmm @@ -3381,7 +3381,8 @@ }, /obj/item/clothing/mask/yautja_flavor{ anchored = 1; - unacidable = 0 + unacidable = 0; + pixel_y = 10 }, /obj/item/clothing/shoes/yautja_flavor{ anchored = 1 @@ -10336,7 +10337,8 @@ }, /obj/item/clothing/mask/yautja_flavor{ anchored = 1; - unacidable = 0 + unacidable = 0; + pixel_y = 10 }, /obj/item/clothing/shoes/yautja_flavor{ anchored = 1 @@ -11120,6 +11122,10 @@ /obj/structure/flora/jungle/vines/heavy, /turf/open/gm/grass/grass1, /area/lv624/ground/jungle/east_jungle) +"dkq" = ( +/obj/effect/sentry_landmark/lz_2/top_right, +/turf/open/gm/grass/grass1, +/area/lv624/lazarus/landing_zones/lz2) "dkN" = ( /obj/structure/blocker/forcefield/multitile_vehicles, /turf/closed/wall/rock/brown, @@ -11838,7 +11844,8 @@ }, /obj/item/clothing/mask/yautja_flavor{ anchored = 1; - unacidable = 0 + unacidable = 0; + pixel_y = 10 }, /obj/item/clothing/suit/armor/yautja_flavor{ anchored = 1 @@ -13720,6 +13727,10 @@ "iJJ" = ( /turf/open/gm/grass/grass2, /area/lv624/ground/barrens/south_eastern_jungle_barrens) +"iJK" = ( +/obj/effect/sentry_landmark/lz_2/top_left, +/turf/open/floor/plating/asteroidwarning/west, +/area/lv624/lazarus/landing_zones/lz2) "iKp" = ( /obj/structure/surface/rack, /turf/open/shuttle/bright_red, @@ -14314,7 +14325,8 @@ }, /obj/item/clothing/mask/yautja_flavor{ anchored = 1; - unacidable = 0 + unacidable = 0; + pixel_y = 10 }, /turf/open/floor/sandstone/runed, /area/lv624/ground/barrens/south_eastern_barrens) @@ -15485,6 +15497,10 @@ }, /turf/open/floor/whitebluefull, /area/lv624/lazarus/medbay) +"mpW" = ( +/obj/effect/sentry_landmark/lz_2/bottom_right, +/turf/open/gm/dirt, +/area/lv624/lazarus/landing_zones/lz2) "mqf" = ( /obj/item/tool/wrench, /turf/open/floor/plating, @@ -15812,6 +15828,10 @@ }, /turf/open/gm/dirt, /area/lv624/ground/caves/central_caves) +"nfi" = ( +/obj/effect/sentry_landmark/lz_2/top_right, +/turf/open/gm/dirt, +/area/lv624/lazarus/landing_zones/lz2) "nfD" = ( /obj/effect/landmark/survivor_spawner, /turf/open/gm/dirt, @@ -15996,7 +16016,8 @@ }, /obj/item/clothing/mask/yautja_flavor{ anchored = 1; - unacidable = 0 + unacidable = 0; + pixel_y = 10 }, /turf/open/floor/sandstone/runed, /area/lv624/ground/barrens/south_eastern_barrens) @@ -17501,6 +17522,10 @@ /obj/structure/flora/bush/ausbushes/var3/fernybush, /turf/open/gm/grass/grass1, /area/lv624/ground/jungle/south_east_jungle) +"qnh" = ( +/obj/effect/sentry_landmark/lz_2/top_left, +/turf/open/floor/plating, +/area/lv624/lazarus/landing_zones/lz2) "qns" = ( /obj/structure/machinery/colony_floodlight, /turf/open/gm/dirt, @@ -17566,7 +17591,8 @@ }, /obj/item/clothing/mask/yautja_flavor{ anchored = 1; - unacidable = 0 + unacidable = 0; + pixel_y = 10 }, /turf/open/floor/corsat/squareswood/north, /area/lv624/ground/caves/sand_temple) @@ -17815,6 +17841,10 @@ /obj/item/ammo_magazine/smg/mp5, /turf/open/floor/whiteblue/west, /area/lv624/lazarus/corporate_dome) +"qUL" = ( +/obj/effect/sentry_landmark/lz_2/bottom_left, +/turf/open/floor/plating/asteroidwarning, +/area/lv624/lazarus/landing_zones/lz2) "qUM" = ( /turf/open/gm/dirtgrassborder/north, /area/lv624/ground/jungle/west_central_jungle) @@ -18608,6 +18638,10 @@ }, /turf/open/floor/whiteblue/southeast, /area/lv624/lazarus/corporate_dome) +"sBp" = ( +/obj/effect/sentry_landmark/lz_2/bottom_right, +/turf/open/floor/plating/asteroidfloor/north, +/area/lv624/lazarus/landing_zones/lz2) "sBC" = ( /obj/structure/fence, /turf/open/gm/dirtgrassborder/grassdirt_corner/south_east, @@ -18844,7 +18878,8 @@ }, /obj/item/clothing/mask/yautja_flavor{ anchored = 1; - unacidable = 0 + unacidable = 0; + pixel_y = 10 }, /turf/open/floor/corsat/squareswood/north, /area/lv624/ground/caves/sand_temple) @@ -18964,7 +18999,8 @@ }, /obj/item/clothing/mask/yautja_flavor{ anchored = 1; - unacidable = 0 + unacidable = 0; + pixel_y = 10 }, /obj/item/clothing/suit/armor/yautja_flavor{ anchored = 1 @@ -19137,6 +19173,13 @@ /obj/structure/flora/bush/ausbushes/var3/sparsegrass, /turf/open/gm/grass/grass1, /area/lv624/lazarus/landing_zones/lz2) +"twz" = ( +/obj/structure/machinery/landinglight/ds2/delaythree{ + dir = 1 + }, +/obj/effect/sentry_landmark/lz_2/bottom_left, +/turf/open/floor/plating, +/area/lv624/lazarus/landing_zones/lz2) "twC" = ( /turf/open/gm/coast/beachcorner2/north_west, /area/lv624/ground/barrens/east_barrens) @@ -19246,7 +19289,8 @@ anchored = 1 }, /obj/item/clothing/mask/gas/yautja/damaged{ - anchored = 1 + anchored = 1; + pixel_y = 10 }, /turf/open/gm/dirt, /area/lv624/ground/caves/sand_temple) @@ -20025,6 +20069,10 @@ /obj/effect/decal/grass_overlay/grass1/inner, /turf/open/gm/dirt, /area/lv624/ground/caves/south_east_caves) +"viY" = ( +/obj/effect/sentry_landmark/lz_2/bottom_left, +/turf/open/gm/dirtgrassborder/west, +/area/lv624/lazarus/landing_zones/lz2) "vjH" = ( /obj/structure/flora/jungle/vines/light_3, /turf/open/gm/grass/grass1, @@ -27825,7 +27873,7 @@ aJF aJF uRE uRE -uRE +viY uRE uRE aJF @@ -28051,7 +28099,7 @@ uzH uzH uzH uzH -uzH +iJK uzH uzH uzH @@ -28513,7 +28561,7 @@ aRg aRg aCi aRg -odw +twz aRg wLz tZD @@ -28742,7 +28790,7 @@ aRg aKO aRg aEw -aRg +qnh wLz tZD aAp @@ -29655,7 +29703,7 @@ aRg aRg aEw aRg -wLz +qUL gef mxW oOf @@ -30110,7 +30158,7 @@ aRg aRg aRg aZT -aRg +qnh wLz lUb tZD @@ -31683,7 +31731,7 @@ aAp nmO aZP aDv -aDv +nfi aDv aRx aXX @@ -31701,7 +31749,7 @@ aDv aDv aDv aOB -wHp +sBp wLz aDv tZD @@ -32144,12 +32192,12 @@ aDv aRx aXX aXX -aXX +dkq aXX aXX azD aEs -aDv +mpW aDv aDv aRx @@ -32607,7 +32655,7 @@ aXX aZP aDv aCI -aDv +mpW aRx twg aXX @@ -32833,7 +32881,7 @@ ado aXX aXX aZP -aDv +nfi aDv aDv aRx diff --git a/maps/map_files/LV624/maintemple/1.intact.dmm b/maps/map_files/LV624/maintemple/1.intact.dmm index a0fdb0661ceb..ebe499e6427d 100644 --- a/maps/map_files/LV624/maintemple/1.intact.dmm +++ b/maps/map_files/LV624/maintemple/1.intact.dmm @@ -236,7 +236,8 @@ anchored = 1; color = "#FFE55C"; icon_state = "pred_mask_elder_n"; - name = "unsettling stone mask" + name = "unsettling stone mask"; + pixel_y = 10 }, /obj/item/clothing/suit/armor/yautja/hunter{ anchored = 1; @@ -440,7 +441,8 @@ name = "Eternal guardian" }, /obj/item/clothing/mask/yautja_flavor/map_random{ - anchored = 1 + anchored = 1; + pixel_y = 10 }, /obj/item/clothing/suit/armor/yautja_flavor{ anchored = 1 @@ -512,7 +514,8 @@ pixel_y = 31 }, /obj/item/clothing/mask/yautja_flavor/map_random{ - anchored = 1 + anchored = 1; + pixel_y = 10 }, /obj/item/clothing/suit/armor/yautja_flavor{ anchored = 1 @@ -600,7 +603,8 @@ name = "Eternal guardian" }, /obj/item/clothing/mask/yautja_flavor/map_random{ - anchored = 1 + anchored = 1; + pixel_y = 10 }, /obj/item/clothing/suit/armor/yautja_flavor{ anchored = 1 @@ -709,7 +713,8 @@ name = "Eternal guardian" }, /obj/item/clothing/mask/yautja_flavor/map_random{ - anchored = 1 + anchored = 1; + pixel_y = 10 }, /obj/item/clothing/suit/armor/yautja_flavor{ anchored = 1 @@ -816,7 +821,8 @@ pixel_y = 7 }, /obj/item/clothing/mask/yautja_flavor/map_random{ - anchored = 1 + anchored = 1; + pixel_y = 10 }, /obj/item/clothing/suit/armor/yautja_flavor{ anchored = 1 @@ -1012,7 +1018,8 @@ pixel_x = 6 }, /obj/item/clothing/mask/yautja_flavor/map_random{ - anchored = 1 + anchored = 1; + pixel_y = 10 }, /obj/item/clothing/suit/armor/yautja_flavor{ anchored = 1 @@ -1059,7 +1066,8 @@ name = "Eternal guardian" }, /obj/item/clothing/mask/yautja_flavor/map_random{ - anchored = 1 + anchored = 1; + pixel_y = 10 }, /obj/item/clothing/suit/armor/yautja_flavor{ anchored = 1 @@ -1127,7 +1135,8 @@ pixel_y = 7 }, /obj/item/clothing/mask/yautja_flavor/map_random{ - anchored = 1 + anchored = 1; + pixel_y = 10 }, /obj/item/clothing/suit/armor/yautja_flavor{ anchored = 1 @@ -1252,7 +1261,8 @@ pixel_x = -7 }, /obj/item/clothing/mask/yautja_flavor/map_random{ - anchored = 1 + anchored = 1; + pixel_y = 10 }, /obj/item/clothing/suit/armor/yautja_flavor{ anchored = 1 @@ -1385,7 +1395,8 @@ pixel_y = 31 }, /obj/item/clothing/mask/yautja_flavor/map_random{ - anchored = 1 + anchored = 1; + pixel_y = 10 }, /obj/item/clothing/suit/armor/yautja_flavor{ anchored = 1 @@ -1512,7 +1523,8 @@ anchored = 1 }, /obj/item/clothing/mask/gas/yautja/damaged{ - anchored = 1 + anchored = 1; + pixel_y = 10 }, /obj/item/clothing/shoes/yautja/hunter{ anchored = 1 @@ -1724,7 +1736,8 @@ name = "Eternal guardian" }, /obj/item/clothing/mask/yautja_flavor/map_random{ - anchored = 1 + anchored = 1; + pixel_y = 10 }, /obj/item/clothing/suit/armor/yautja_flavor{ anchored = 1 diff --git a/maps/map_files/LV624/maintemple/2.flooded.dmm b/maps/map_files/LV624/maintemple/2.flooded.dmm index 725a5b22aa13..a3577839cdf7 100644 --- a/maps/map_files/LV624/maintemple/2.flooded.dmm +++ b/maps/map_files/LV624/maintemple/2.flooded.dmm @@ -382,7 +382,8 @@ anchored = 1 }, /obj/item/clothing/mask/yautja_flavor/map_random{ - anchored = 1 + anchored = 1; + pixel_y = 10 }, /turf/open/floor/sandstone/runed, /area/lv624/ground/barrens/south_eastern_barrens) @@ -908,7 +909,8 @@ anchored = 1 }, /obj/item/clothing/mask/yautja_flavor/map_random{ - anchored = 1 + anchored = 1; + pixel_y = 10 }, /turf/open/floor/sandstone/runed, /area/lv624/ground/barrens/south_eastern_barrens) @@ -1035,7 +1037,8 @@ anchored = 1 }, /obj/item/clothing/mask/yautja_flavor/map_random{ - anchored = 1 + anchored = 1; + pixel_y = 10 }, /turf/open/floor/strata/grey_multi_tiles, /area/lv624/ground/caves/sand_temple) @@ -1095,7 +1098,8 @@ armor_rad = 0; desc = "A beautifully designed stone face mask, both ornate and functional."; name = "stone clan mask"; - unacidable = 0 + unacidable = 0; + pixel_y = 10 }, /obj/structure/flora/jungle/vines/heavy, /obj/item/clothing/suit/armor/yautja_flavor{ @@ -1216,7 +1220,8 @@ anchored = 1 }, /obj/item/clothing/mask/yautja_flavor/map_random{ - anchored = 1 + anchored = 1; + pixel_y = 10 }, /turf/open/floor/sandstone/runed, /area/lv624/ground/barrens/south_eastern_barrens) @@ -1406,7 +1411,8 @@ anchored = 1 }, /obj/item/clothing/mask/yautja_flavor/map_random{ - anchored = 1 + anchored = 1; + pixel_y = 10 }, /turf/open/floor/sandstone/runed, /area/lv624/ground/barrens/south_eastern_barrens) @@ -1507,7 +1513,8 @@ anchored = 1 }, /obj/item/clothing/mask/gas/yautja/damaged{ - anchored = 1 + anchored = 1; + pixel_y = 10 }, /turf/open/gm/dirt, /area/lv624/ground/caves/sand_temple) @@ -1741,7 +1748,8 @@ anchored = 1 }, /obj/item/clothing/mask/yautja_flavor/map_random{ - anchored = 1 + anchored = 1; + pixel_y = 10 }, /turf/open/floor/corsat/squareswood/north, /area/lv624/ground/caves/sand_temple) diff --git a/maps/map_files/New_Varadero/New_Varadero.dmm b/maps/map_files/New_Varadero/New_Varadero.dmm index 8da838c3cecc..58ab414b1411 100644 --- a/maps/map_files/New_Varadero/New_Varadero.dmm +++ b/maps/map_files/New_Varadero/New_Varadero.dmm @@ -56,7 +56,7 @@ req_one_access = null }, /turf/open/floor/plating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "abK" = ( /obj/structure/barricade/handrail/wire{ dir = 4 @@ -366,7 +366,7 @@ }, /obj/structure/flora/bush/ausbushes/var3/fullgrass, /turf/open/auto_turf/sand_white/layer1, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/north) "apt" = ( /obj/structure/platform/kutjevo/smooth{ climb_delay = 1; @@ -745,6 +745,10 @@ }, /turf/open/floor/plating/icefloor/asteroidplating, /area/varadero/interior_protected/maintenance/south) +"aCM" = ( +/obj/structure/surface/rack, +/turf/open/floor/plating/icefloor/asteroidplating, +/area/varadero/interior/maintenance/security/north) "aCW" = ( /obj/effect/overlay/palmtree_r{ icon_state = "palm2" @@ -1044,7 +1048,7 @@ pixel_y = 6 }, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "aKJ" = ( /obj/item/tool/warning_cone, /obj/structure/prop/invuln/lattice_prop{ @@ -1079,6 +1083,9 @@ /obj/effect/landmark/xeno_spawn, /turf/open/floor/plating/icefloor/asteroidplating, /area/varadero/interior_protected/maintenance/south) +"aNT" = ( +/turf/open/auto_turf/sand_white/layer1, +/area/varadero/interior/maintenance/security/north) "aOg" = ( /turf/open/gm/grass/grass1/weedable, /area/varadero/interior_protected/caves/central) @@ -2115,7 +2122,7 @@ pixel_y = 17 }, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/north) "bFV" = ( /obj/structure/machinery/light/small{ dir = 4 @@ -2313,7 +2320,7 @@ "bPk" = ( /obj/structure/window/framed/colony/reinforced, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "bPl" = ( /obj/structure/bed/chair{ dir = 1 @@ -2597,6 +2604,10 @@ }, /turf/open/gm/river/shallow_ocean_shallow_ocean, /area/varadero/exterior/pontoon_beach) +"caE" = ( +/obj/effect/sentry_landmark/lz_2/top_right, +/turf/open/floor/asteroidfloor/north, +/area/varadero/exterior/lz2_near) "cba" = ( /obj/structure/window/framed/colony/reinforced, /turf/open/floor/plating/icefloor/asteroidplating, @@ -2667,10 +2678,10 @@ dir = 4 }, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "cdb" = ( /turf/closed/wall, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "cdc" = ( /obj/effect/landmark/xeno_spawn, /turf/open/floor/strata/grey_multi_tiles, @@ -2986,7 +2997,7 @@ dir = 9 }, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "cpF" = ( /obj/structure/barricade/handrail{ desc = "Your platforms look pretty heavy king, let me support them for you."; @@ -3034,7 +3045,7 @@ "crC" = ( /obj/structure/machinery/power/apc/no_power/north, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/north) "csb" = ( /obj/structure/pipes/standard/simple/hidden/green, /obj/structure/bed/sofa/vert/grey/bot, @@ -3782,7 +3793,7 @@ "cYB" = ( /obj/structure/window_frame/colony/reinforced, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "cYC" = ( /obj/effect/landmark/structure_spawner/xvx_hive/xeno_core, /turf/open/gm/dirt, @@ -4550,7 +4561,7 @@ /obj/item/fuel_cell, /obj/item/fuel_cell, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/north) "dJX" = ( /obj/effect/decal/cleanable/blood/drip, /obj/effect/decal/cleanable/blood, @@ -4774,11 +4785,17 @@ }, /obj/structure/barricade/wooden, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/north) "dUS" = ( /obj/effect/landmark/xeno_spawn, /turf/open/shuttle/red, /area/varadero/interior_protected/vessel) +"dVh" = ( +/obj/structure/pipes/standard/simple/hidden/green{ + dir = 5 + }, +/turf/open/floor/plating/icefloor/asteroidplating, +/area/varadero/interior/maintenance/security/north) "dVq" = ( /obj/structure/pipes/standard/simple/hidden/green, /obj/structure/machinery/door/airlock/almayer/medical/glass{ @@ -4875,6 +4892,7 @@ /obj/item/reagent_container/glass/bucket/mopbucket{ pixel_x = 11 }, +/obj/effect/sentry_landmark/lz_2/bottom_left, /turf/open/floor/plating/icefloor/asteroidplating, /area/varadero/exterior/eastbeach) "dYX" = ( @@ -4995,6 +5013,12 @@ }, /turf/open/gm/river/shallow_ocean_shallow_ocean, /area/varadero/interior/caves/north_research) +"edM" = ( +/obj/structure/barricade/wooden{ + dir = 8 + }, +/turf/open/floor/plating/icefloor/asteroidplating, +/area/varadero/interior/maintenance/security/north) "eea" = ( /obj/vehicle/train/cargo/engine{ dir = 2 @@ -5006,6 +5030,15 @@ /obj/structure/disposalpipe/trunk, /turf/open/floor/shiva/yellow/northeast, /area/varadero/interior/technical_storage) +"eev" = ( +/obj/structure/prop/invuln/lattice_prop{ + icon_state = "lattice12"; + pixel_x = 16; + pixel_y = -8 + }, +/obj/effect/sentry_landmark/lz_2/bottom_left, +/turf/open/gm/dirt, +/area/varadero/exterior/eastbeach) "efw" = ( /turf/open/floor/plating/icefloor/asteroidplating, /area/varadero/interior/maintenance/research) @@ -5187,7 +5220,7 @@ /obj/structure/pipes/standard/simple/hidden/green, /obj/structure/barricade/wooden, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "elP" = ( /turf/open/gm/dirt/desert2, /area/varadero/exterior/monsoon) @@ -5236,7 +5269,7 @@ icon_state = "medium" }, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "eov" = ( /turf/open/gm/dirt, /area/varadero/interior_protected/caves/central) @@ -5720,7 +5753,7 @@ pixel_y = 5 }, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "eGd" = ( /obj/structure/machinery/power/reactor/colony, /obj/structure/machinery/light{ @@ -5818,6 +5851,7 @@ /obj/structure/barricade/handrail/wire{ dir = 4 }, +/obj/effect/sentry_landmark/lz_2/bottom_left, /turf/open/floor/asteroidfloor/north, /area/varadero/exterior/eastbeach) "eJS" = ( @@ -5840,7 +5874,7 @@ pixel_y = 9 }, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/north) "eKL" = ( /obj/effect/overlay/palmtree_r{ icon_state = "palm2" @@ -5972,7 +6006,7 @@ pixel_y = 16 }, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "eQm" = ( /obj/structure/window/framed/wood, /turf/open/floor/wood, @@ -6256,7 +6290,7 @@ "fbr" = ( /obj/effect/landmark/corpsespawner/miner, /turf/open/auto_turf/sand_white/layer1, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/north) "fbw" = ( /obj/structure/prop/ice_colony/dense/planter_box/hydro{ desc = "A high-power hydroelectric generator."; @@ -6384,7 +6418,7 @@ dir = 8 }, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "feV" = ( /obj/structure/surface/table, /obj/effect/spawner/random/attachment, @@ -6429,7 +6463,7 @@ /obj/structure/surface/rack, /obj/item/tool/wrench, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/north) "fgS" = ( /obj/structure/closet/crate/secure, /obj/effect/landmark/objective_landmark/close, @@ -6513,6 +6547,10 @@ /obj/structure/prop/rock/brown, /turf/open/gm/river/ocean/deep_ocean, /area/varadero/exterior/farocean) +"fjw" = ( +/obj/effect/sentry_landmark/lz_2/bottom_right, +/turf/open/floor/plating/icefloor/asteroidplating, +/area/varadero/exterior/lz2_near) "fjx" = ( /obj/structure/bed/chair{ dir = 1 @@ -6848,6 +6886,17 @@ /obj/structure/catwalk, /turf/open/gm/river/desert/deep/no_slowdown, /area/varadero/interior/maintenance/north) +"fyz" = ( +/obj/structure/prop/ice_colony/dense/planter_box/plated{ + dir = 9; + icon_state = "planter_box_soil" + }, +/obj/structure/flora/bush/ausbushes/pointybush{ + icon_state = "pointybush_3"; + pixel_y = 11 + }, +/turf/open/floor/plating/icefloor/asteroidplating, +/area/varadero/interior/maintenance/security/north) "fyH" = ( /obj/structure/pipes/standard/simple/hidden/green{ dir = 4 @@ -6951,7 +7000,7 @@ dir = 4 }, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "fEI" = ( /obj/structure/bedsheetbin{ icon_state = "linenbin-empty" @@ -7628,7 +7677,7 @@ /obj/effect/landmark/structure_spawner/setup/distress/xeno_door, /obj/effect/landmark/structure_spawner/setup/distress/xeno_weed_node, /turf/open/auto_turf/sand_white/layer1, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "geK" = ( /obj/structure/platform/kutjevo/smooth{ dir = 1; @@ -7677,7 +7726,7 @@ dir = 4 }, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "gfk" = ( /obj/structure/girder/displaced, /turf/open/gm/dirt, @@ -7720,7 +7769,7 @@ "gfu" = ( /obj/item/device/flashlight/lamp/tripod, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/north) "gfA" = ( /obj/structure/desertdam/decals/road_edge{ icon_state = "road_edge_decal3" @@ -7734,7 +7783,7 @@ "gfG" = ( /obj/structure/closet/crate/trashcart, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/north) "ggk" = ( /turf/closed/wall/r_wall/elevator{ dir = 8 @@ -7754,7 +7803,7 @@ "gha" = ( /obj/structure/surface/table, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "ghb" = ( /obj/item/tool/crowbar, /turf/open/floor/shiva/red, @@ -7836,7 +7885,7 @@ pixel_y = 8 }, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "gjC" = ( /obj/effect/overlay/palmtree_r, /turf/open/gm/dirt, @@ -8065,7 +8114,7 @@ dir = 4 }, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/north) "gun" = ( /obj/structure/largecrate/random/case/double, /turf/open/floor/shiva/purple/east, @@ -8224,7 +8273,7 @@ dir = 1 }, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/north) "gBi" = ( /obj/item/stool{ icon_state = "stool_alt" @@ -8328,7 +8377,7 @@ "gDh" = ( /obj/structure/largecrate/random, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "gDr" = ( /obj/item/tool/warning_cone, /turf/open/gm/dirt, @@ -8863,7 +8912,7 @@ pixel_y = 6 }, /turf/open/auto_turf/sand_white/layer1, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/north) "hds" = ( /turf/open/gm/coast/north, /area/varadero/exterior/eastocean) @@ -8898,7 +8947,7 @@ }, /obj/structure/barricade/wooden, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "hfo" = ( /obj/structure/pipes/standard/simple/hidden/green, /obj/structure/disposalpipe/segment, @@ -9406,6 +9455,10 @@ }, /turf/open/gm/dirt, /area/varadero/exterior/lz1_near) +"hCK" = ( +/obj/effect/sentry_landmark/lz_2/bottom_right, +/turf/open/auto_turf/sand_white/layer1, +/area/varadero/exterior/eastbeach) "hCZ" = ( /obj/structure/pipes/standard/manifold/hidden/green{ dir = 4 @@ -9500,6 +9553,10 @@ /obj/effect/landmark/hunter_secondary, /turf/open/gm/dirt, /area/varadero/exterior/lz2_near) +"hHz" = ( +/obj/effect/sentry_landmark/lz_1/bottom_right, +/turf/open/floor/asteroidfloor/north, +/area/varadero/exterior/lz1_near) "hHE" = ( /obj/structure/pipes/standard/simple/hidden/green{ dir = 4 @@ -9535,6 +9592,10 @@ }, /turf/open/floor/wood/wood_broken, /area/varadero/interior/court) +"hIt" = ( +/obj/effect/sentry_landmark/lz_2/top_left, +/turf/open/gm/dirt/desert0, +/area/varadero/exterior/lz2_near) "hJl" = ( /obj/structure/machinery/firealarm{ pixel_y = 24 @@ -10048,7 +10109,7 @@ pixel_y = -6 }, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "icM" = ( /obj/structure/bed/chair{ dir = 8 @@ -10250,7 +10311,7 @@ pixel_y = 16 }, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/north) "imz" = ( /turf/closed/wall/r_wall/elevator/gears, /area/varadero/interior/records) @@ -10776,7 +10837,7 @@ dir = 5 }, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "iGm" = ( /turf/open/floor/wood/wood_broken6, /area/varadero/interior/court) @@ -10785,7 +10846,7 @@ dir = 1 }, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "iGS" = ( /obj/effect/landmark/corpsespawner/engineer, /turf/open/floor/shiva/multi_tiles/north, @@ -10873,7 +10934,7 @@ "iLc" = ( /obj/structure/surface/table/woodentable, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/north) "iLd" = ( /obj/structure/window/reinforced{ dir = 4; @@ -11199,7 +11260,7 @@ pixel_y = 11 }, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "iXX" = ( /obj/structure/pipes/standard/simple/hidden/green{ dir = 5 @@ -11303,6 +11364,12 @@ }, /turf/open/shuttle/red, /area/varadero/interior_protected/vessel) +"jcl" = ( +/obj/structure/pipes/standard/simple/hidden/green{ + dir = 4 + }, +/turf/open/floor/plating/icefloor/asteroidplating, +/area/varadero/interior/maintenance/security/north) "jcr" = ( /turf/closed/wall/rock/brown, /area/varadero/interior_protected/caves/swcaves) @@ -11358,7 +11425,7 @@ pixel_y = 3 }, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "jeO" = ( /obj/structure/machinery/conveyor, /obj/structure/plasticflaps, @@ -11386,7 +11453,7 @@ "jeW" = ( /obj/item/device/flashlight/lamp/tripod, /turf/open/auto_turf/sand_white/layer1, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/north) "jfn" = ( /obj/structure/desertdam/decals/road_edge{ pixel_x = -12 @@ -11412,7 +11479,7 @@ pixel_x = 3 }, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "jfA" = ( /obj/item/device/motiondetector/hacked, /turf/open/floor/carpet, @@ -11638,7 +11705,7 @@ "joV" = ( /obj/structure/flora/bush/ausbushes/var3/fullgrass, /turf/open/auto_turf/sand_white/layer1, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/north) "jpm" = ( /obj/structure/machinery/door/airlock/almayer/maint{ name = "\improper Underground Maintenance"; @@ -12301,7 +12368,7 @@ dir = 1 }, /turf/open/auto_turf/sand_white/layer1, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/north) "jQa" = ( /turf/open/auto_turf/sand_white/layer1, /area/varadero/interior_protected/caves/swcaves) @@ -12622,7 +12689,7 @@ "keY" = ( /obj/structure/flora/bush/ausbushes/var3/stalkybush, /turf/open/auto_turf/sand_white/layer1, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "kfc" = ( /obj/structure/machinery/storm_siren{ pixel_y = 5 @@ -12765,12 +12832,15 @@ "kkF" = ( /turf/closed/wall/r_wall/unmeltable, /area/varadero/exterior/farocean) +"kkT" = ( +/turf/open/floor/plating/icefloor/asteroidplating, +/area/varadero/interior/maintenance/security/north) "klf" = ( /obj/structure/barricade/wooden{ dir = 4 }, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/north) "kli" = ( /obj/structure/platform/kutjevo/smooth{ dir = 1; @@ -12861,6 +12931,10 @@ /obj/structure/machinery/light/small, /turf/open/floor/plating/icefloor/asteroidplating, /area/varadero/interior/maintenance/research) +"knR" = ( +/obj/effect/sentry_landmark/lz_2/top_left, +/turf/open/gm/dirt, +/area/varadero/exterior/lz2_near) "kof" = ( /obj/structure/filingcabinet, /turf/open/floor/shiva/red/northwest, @@ -12917,7 +12991,7 @@ /obj/structure/surface/rack, /obj/effect/landmark/objective_landmark/far, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "kqN" = ( /obj/item/device/flashlight/lamp/tripod, /turf/open/gm/dirt, @@ -13156,16 +13230,16 @@ /obj/structure/machinery/vending/coffee, /turf/open/floor/wood, /area/varadero/interior/hall_SE) +"kAz" = ( +/obj/structure/flora/bush/ausbushes/var3/stalkybush, +/turf/open/auto_turf/sand_white/layer1, +/area/varadero/interior/maintenance/security/north) "kAH" = ( /obj/structure/flora/bush/ausbushes/var3/sparsegrass{ icon_state = "sparsegrass_2" }, /turf/open/gm/dirt, /area/varadero/exterior/lz2_near) -"kAL" = ( -/obj/effect/decal/cleanable/blood, -/turf/open/auto_turf/sand_white/layer1, -/area/varadero/interior/caves/north_research) "kAN" = ( /obj/structure/prop/invuln/lattice_prop{ icon_state = "lattice3"; @@ -13192,7 +13266,7 @@ /area/varadero/interior/library) "kBZ" = ( /turf/closed/wall/rock/brown, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/north) "kCb" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/stack/sheet/mineral/phoron/medium_stack, @@ -13806,7 +13880,7 @@ dir = 10 }, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "lat" = ( /obj/item/device/camera, /turf/open/floor/plating/icefloor/asteroidplating, @@ -14098,6 +14172,10 @@ }, /turf/open/gm/river/shallow_ocean_shallow_ocean, /area/varadero/exterior/pontoon_beach) +"lni" = ( +/obj/effect/sentry_landmark/lz_1/bottom_left, +/turf/open/floor/asteroidfloor/north, +/area/varadero/exterior/lz1_near) "lnw" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/device/flashlight/lamp/green{ @@ -14480,7 +14558,7 @@ }, /obj/structure/reagent_dispensers/fueltank, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/north) "lDz" = ( /obj/effect/landmark/queen_spawn, /turf/open/floor/corsat/squareswood/north, @@ -14936,7 +15014,7 @@ "lVc" = ( /obj/structure/pipes/standard/simple/hidden/green, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "lVf" = ( /obj/item/tool/warning_cone{ pixel_x = -9 @@ -15237,7 +15315,7 @@ "mdj" = ( /obj/item/clothing/head/helmet, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "mdy" = ( /obj/structure/platform/kutjevo/smooth{ dir = 1; @@ -15696,7 +15774,7 @@ }, /obj/effect/decal/cleanable/blood/oil, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/north) "mvI" = ( /turf/open/floor/shiva/green/east, /area/varadero/interior/hall_SE) @@ -15887,7 +15965,7 @@ /obj/structure/pipes/standard/simple/hidden/green, /obj/effect/decal/cleanable/blood/xeno, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "mCx" = ( /obj/structure/pipes/standard/simple/hidden/green{ dir = 4 @@ -15992,7 +16070,7 @@ "mHh" = ( /obj/structure/machinery/light/small, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "mHM" = ( /obj/structure/prop/invuln/minecart_tracks{ dir = 8 @@ -16146,7 +16224,7 @@ pixel_y = 11 }, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "mOx" = ( /obj/structure/machinery/light/small{ dir = 8 @@ -16449,7 +16527,7 @@ /obj/structure/closet/crate, /obj/item/prop/magazine/dirty/torn/alt, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/north) "mZC" = ( /obj/structure/surface/table/woodentable{ icon_state = "reinf_table" @@ -16524,7 +16602,7 @@ /obj/structure/pipes/standard/simple/hidden/green, /obj/effect/decal/cleanable/blood/oil, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "ncn" = ( /obj/item/trash/cheesie, /obj/effect/decal/cleanable/blood, @@ -16994,6 +17072,12 @@ }, /turf/open/floor/asteroidfloor/north, /area/varadero/interior/comms1) +"nAM" = ( +/obj/structure/machinery/light/small{ + dir = 8 + }, +/turf/open/floor/plating/icefloor/asteroidplating, +/area/varadero/interior/maintenance/security/north) "nBc" = ( /turf/open/gm/coast/beachcorner2/south_west, /area/varadero/exterior/lz2_near) @@ -17753,7 +17837,7 @@ icon_state = "warning_s" }, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "oep" = ( /obj/structure/platform/kutjevo/smooth{ climb_delay = 1; @@ -17910,13 +17994,13 @@ /obj/structure/surface/rack, /obj/item/implantpad, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "okJ" = ( /obj/structure/pipes/standard/manifold/hidden/green{ dir = 8 }, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "ola" = ( /obj/structure/machinery/power/apc/no_power/north, /turf/open/floor/plating/icefloor/asteroidplating, @@ -18104,7 +18188,7 @@ "ouP" = ( /obj/effect/decal/cleanable/blood, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "ouV" = ( /obj/effect/spawner/random/bomb_supply, /turf/open/floor/shiva/yellow/north, @@ -18412,7 +18496,7 @@ /area/varadero/exterior/lz1_near) "oET" = ( /turf/closed/wall/r_wall/unmeltable, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/north) "oEX" = ( /obj/structure/closet/crate, /obj/item/clothing/head/helmet, @@ -18486,7 +18570,7 @@ "oJW" = ( /obj/structure/closet/firecloset/full, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "oJX" = ( /obj/item/stack/sheet/metal, /obj/structure/shuttle/engine/heater{ @@ -18629,7 +18713,7 @@ /area/varadero/interior/caves/north_research) "oPV" = ( /turf/open/floor/plating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/north) "oRx" = ( /obj/structure/closet/crate/secure, /obj/item/trash/eat, @@ -18918,7 +19002,7 @@ req_one_access = null }, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "pbM" = ( /obj/structure/machinery/door/airlock/multi_tile/almayer/generic{ dir = 1; @@ -19005,6 +19089,12 @@ }, /turf/open/floor/shiva/multi_tiles/west, /area/varadero/interior/medical) +"peY" = ( +/obj/structure/machinery/light/small{ + dir = 4 + }, +/turf/open/floor/plating/icefloor/asteroidplating, +/area/varadero/interior/maintenance/security/north) "pfd" = ( /turf/open/gm/coast/beachcorner/north_east, /area/varadero/exterior/pontoon_beach) @@ -19013,7 +19103,7 @@ dir = 4 }, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "pfL" = ( /obj/structure/surface/table/reinforced/prison{ color = "#6b675e" @@ -19166,6 +19256,7 @@ /area/varadero/exterior/eastbeach) "plm" = ( /obj/effect/decal/cleanable/blood/gibs/xeno, +/obj/effect/sentry_landmark/lz_1/bottom_right, /turf/open/floor/asteroidfloor/north, /area/varadero/exterior/lz1_near) "plq" = ( @@ -19566,7 +19657,7 @@ /obj/structure/surface/rack, /obj/item/ammo_magazine/shotgun/buckshot, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "pCa" = ( /obj/structure/blocker/invisible_wall/water, /obj/structure/flora/bush/ausbushes/var3/stalkybush, @@ -19715,7 +19806,7 @@ dir = 8 }, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "pIz" = ( /obj/structure/surface/table, /obj/item/trash/plate{ @@ -19923,7 +20014,7 @@ pixel_x = 3 }, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "pOz" = ( /obj/structure/machinery/computer/card{ dir = 8 @@ -20494,7 +20585,7 @@ /obj/structure/pipes/standard/simple/hidden/green, /obj/effect/decal/remains/human, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "qjU" = ( /obj/effect/overlay/palmtree_r{ icon_state = "palm2" @@ -20547,6 +20638,12 @@ /obj/structure/disposalpipe/junction, /turf/open/floor/shiva/floor3, /area/varadero/interior/administration) +"qnl" = ( +/obj/structure/pipes/standard/simple/hidden/green{ + dir = 4 + }, +/turf/open/auto_turf/sand_white/layer1, +/area/varadero/interior/maintenance/security/north) "qnm" = ( /obj/structure/closet/emcloset, /turf/open/floor/shiva/yellowfull/west, @@ -20716,7 +20813,7 @@ "quP" = ( /obj/effect/landmark/static_comms/net_two, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/north) "quR" = ( /obj/item/stack/sheet/metal, /turf/open/floor/wood, @@ -20735,7 +20832,7 @@ }, /obj/structure/surface/rack, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "qvQ" = ( /obj/structure/bed/chair{ dir = 1 @@ -21356,7 +21453,7 @@ "qQd" = ( /obj/structure/closet/secure_closet/engineering_electrical, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "qQe" = ( /obj/structure/pipes/standard/simple/hidden/green{ dir = 4 @@ -21428,7 +21525,7 @@ "qRP" = ( /obj/structure/pipes/standard/manifold/hidden/green, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/north) "qSj" = ( /obj/structure/pipes/standard/simple/hidden/green, /turf/open/floor/shiva/yellow, @@ -22008,7 +22105,7 @@ "rpd" = ( /obj/structure/bed/chair, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "rpu" = ( /turf/closed/wall, /area/varadero/interior/oob) @@ -22236,6 +22333,10 @@ /obj/structure/machinery/light, /turf/open/floor/shiva/redfull/west, /area/varadero/interior/security) +"rwO" = ( +/obj/effect/sentry_landmark/lz_1/top_right, +/turf/open/floor/asteroidfloor/north, +/area/varadero/exterior/lz1_near) "rwP" = ( /obj/structure/closet/crate/ammo/alt/flame, /obj/item/ammo_magazine/shotgun/buckshot, @@ -22271,7 +22372,7 @@ /area/varadero/interior/maintenance/research) "ryD" = ( /turf/open/auto_turf/sand_white/layer1, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "ryG" = ( /obj/structure/surface/rack, /obj/item/clothing/under/shorts/red{ @@ -22377,7 +22478,7 @@ dir = 1 }, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "rDK" = ( /obj/effect/landmark/structure_spawner/setup/distress/xeno_weed_node, /obj/item/stack/sheet/metal, @@ -22671,7 +22772,7 @@ "rRq" = ( /obj/structure/reagent_dispensers/fueltank, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "rRz" = ( /obj/structure/pipes/standard/simple/hidden/green, /turf/open/floor/shiva/blue/north, @@ -22817,6 +22918,9 @@ }, /turf/open/gm/dirt, /area/varadero/exterior/lz1_console/two) +"rVG" = ( +/turf/closed/wall/r_wall, +/area/varadero/interior/maintenance/security/north) "rVI" = ( /obj/structure/pipes/standard/simple/hidden/green, /obj/structure/disposalpipe/segment, @@ -22868,7 +22972,7 @@ pixel_y = 11 }, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "rXf" = ( /obj/item/stack/cable_coil/cut, /turf/open/floor/shiva/redcorners, @@ -23243,7 +23347,7 @@ pixel_x = 7 }, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/north) "slB" = ( /obj/structure/filingcabinet{ density = 0; @@ -23274,7 +23378,7 @@ }, /obj/structure/reagent_dispensers/watertank, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/north) "smO" = ( /obj/structure/surface/table/reinforced/prison, /obj/structure/machinery/faxmachine, @@ -23295,7 +23399,7 @@ dir = 4 }, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "snE" = ( /obj/structure/pipes/standard/manifold/hidden/green{ dir = 8 @@ -23430,7 +23534,7 @@ pixel_y = -3 }, /turf/open/gm/river/shallow_ocean_shallow_ocean, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/north) "stK" = ( /obj/structure/blocker/invisible_wall/water, /turf/open/floor/plating/icefloor/asteroidplating, @@ -23555,7 +23659,7 @@ "sxY" = ( /obj/effect/decal/cleanable/blood/oil, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "syb" = ( /obj/structure/surface/rack, /obj/item/ammo_magazine/pistol/mod88, @@ -23711,7 +23815,7 @@ "sCA" = ( /obj/structure/surface/table/reinforced/prison, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "sCJ" = ( /obj/vehicle/train/cargo/trolley, /turf/open/floor/shiva/north, @@ -23824,7 +23928,7 @@ pixel_y = 16 }, /turf/open/auto_turf/sand_white/layer1, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/north) "sHV" = ( /obj/structure/machinery/landinglight/ds2/delaytwo, /turf/open/floor/asteroidfloor/north, @@ -23927,7 +24031,7 @@ dir = 8 }, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "sKz" = ( /obj/structure/closet/crate/supply, /obj/item/storage/box/wy_mre, @@ -24193,7 +24297,7 @@ pixel_y = 6 }, /turf/open/auto_turf/sand_white/layer1, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/north) "sVH" = ( /obj/structure/prop/invuln/lattice_prop{ icon_state = "lattice1"; @@ -24408,7 +24512,8 @@ }, /obj/item/clothing/mask/yautja_flavor{ anchored = 1; - unacidable = 0 + unacidable = 0; + pixel_y = 10 }, /turf/open/floor/corsat/squareswood/north, /area/varadero/interior_protected/caves/digsite) @@ -24554,7 +24659,7 @@ "tkF" = ( /obj/structure/prop/rock/brown, /turf/open/auto_turf/sand_white/layer1, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/north) "tkT" = ( /obj/structure/pipes/vents/pump{ dir = 8 @@ -24584,6 +24689,10 @@ }, /turf/open/gm/river/shallow_ocean_shallow_ocean, /area/varadero/exterior/pontoon_beach/lz) +"tkY" = ( +/obj/effect/sentry_landmark/lz_1/top_left, +/turf/open/floor/asteroidfloor/north, +/area/varadero/exterior/lz1_near) "tlq" = ( /obj/item/lightstick/red/spoke/planted{ pixel_x = -10; @@ -24611,7 +24720,7 @@ /obj/structure/pipes/standard/simple/hidden/green, /obj/effect/decal/cleanable/blood, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "tlT" = ( /turf/open/floor/shiva/multi_tiles, /area/varadero/interior/electrical) @@ -24918,7 +25027,7 @@ /obj/structure/surface/rack, /obj/effect/spawner/random/toolbox, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/north) "tCl" = ( /obj/structure/window/framed/colony, /turf/open/floor/plating, @@ -24998,7 +25107,7 @@ /obj/effect/landmark/structure_spawner/setup/distress/xeno_door, /obj/effect/landmark/structure_spawner/setup/distress/xeno_door, /turf/open/auto_turf/sand_white/layer1, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "tFX" = ( /obj/structure/closet/secure_closet/security_empty, /obj/item/ammo_box/magazine/shotgun/buckshot, @@ -25093,7 +25202,7 @@ "tLu" = ( /obj/structure/window/framed/colony/reinforced, /turf/open/floor/plating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "tLS" = ( /obj/structure/flora/bush/ausbushes/var3/fullgrass, /turf/open/gm/dirt, @@ -25386,7 +25495,7 @@ "tWA" = ( /obj/effect/landmark/structure_spawner/setup/distress/xeno_door, /turf/open/auto_turf/sand_white/layer1, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "tWT" = ( /obj/structure/blocker/invisible_wall/water, /turf/open/gm/coast/west, @@ -25439,7 +25548,7 @@ dir = 8 }, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "tYP" = ( /obj/structure/pipes/standard/simple/hidden/green{ dir = 4 @@ -25849,7 +25958,7 @@ /obj/structure/surface/rack, /obj/item/reagent_container/blood/OMinus, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "uqx" = ( /obj/structure/pipes/standard/simple/hidden/green{ dir = 4 @@ -25896,7 +26005,7 @@ }, /obj/structure/machinery/light/small, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "usQ" = ( /obj/item/facepaint/sunscreen_stick, /turf/open/gm/dirt, @@ -25947,7 +26056,7 @@ "uvr" = ( /obj/effect/landmark/structure_spawner/setup/distress/xeno_door, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "uvw" = ( /obj/structure/pipes/standard/simple/hidden/green{ dir = 4 @@ -25980,7 +26089,7 @@ /obj/structure/surface/rack, /obj/item/tool/screwdriver, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/north) "uwN" = ( /obj/structure/pipes/standard/simple/hidden/green{ dir = 4 @@ -26081,6 +26190,10 @@ "uCe" = ( /turf/open/floor/prison/chapel_carpet, /area/varadero/interior/chapel) +"uCG" = ( +/obj/effect/landmark/monkey_spawn, +/turf/open/auto_turf/sand_white/layer1, +/area/varadero/interior_protected/caves/swcaves) "uCJ" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/device/flashlight/lamp/green, @@ -26104,7 +26217,7 @@ dir = 8 }, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "uEz" = ( /obj/structure/disposalpipe/segment{ dir = 4; @@ -26415,10 +26528,16 @@ /obj/structure/pipes/standard/simple/hidden/green, /obj/item/device/flashlight/lamp/tripod, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/north) "uTu" = ( /turf/open/gm/coast/beachcorner/south_east, /area/varadero/exterior/pontoon_beach) +"uTy" = ( +/obj/structure/pipes/standard/manifold/hidden/green{ + dir = 4 + }, +/turf/open/floor/plating/icefloor/asteroidplating, +/area/varadero/interior/maintenance/security/north) "uTA" = ( /obj/effect/landmark/xeno_spawn, /turf/open/floor/corsat/squareswood/north, @@ -26579,6 +26698,10 @@ }, /turf/open/floor/wood, /area/varadero/interior/hall_SE) +"uYT" = ( +/obj/structure/pipes/standard/simple/hidden/green, +/turf/open/floor/plating/icefloor/asteroidplating, +/area/varadero/interior/maintenance/security/north) "uZa" = ( /obj/structure/machinery/light{ dir = 4 @@ -26637,6 +26760,11 @@ }, /turf/open/gm/dirt, /area/varadero/exterior/eastbeach) +"vbK" = ( +/obj/effect/decal/cleanable/blood/drip, +/obj/effect/sentry_landmark/lz_2/top_right, +/turf/open/gm/dirt, +/area/varadero/exterior/lz2_near) "vbS" = ( /obj/effect/overlay/palmtree_r{ icon_state = "palm2"; @@ -26866,7 +26994,7 @@ dir = 4 }, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "viP" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -26949,7 +27077,7 @@ "vlw" = ( /obj/structure/barricade/wooden, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "vlB" = ( /obj/structure/largecrate/random/barrel/white, /turf/open/gm/dirt, @@ -26971,6 +27099,13 @@ /obj/structure/flora/bush/ausbushes/var3/sparsegrass, /turf/open/gm/dirt, /area/varadero/exterior/lz1_near) +"vmC" = ( +/obj/structure/prop/structure_lattice{ + dir = 1; + health = 300 + }, +/turf/open/floor/plating/icefloor/asteroidplating, +/area/varadero/interior_protected/caves/swcaves) "vmY" = ( /obj/item/stack/rods, /obj/item/shard{ @@ -27341,6 +27476,10 @@ /obj/structure/surface/table/reinforced/prison, /turf/open/floor/shiva/redfull/west, /area/varadero/interior/hall_SE) +"vAU" = ( +/obj/structure/largecrate/random, +/turf/open/floor/plating/icefloor/asteroidplating, +/area/varadero/interior/maintenance/security/north) "vAZ" = ( /obj/item/facepaint/sunscreen_stick, /turf/open/gm/dirt/desert0, @@ -27583,6 +27722,10 @@ "vHs" = ( /turf/closed/wall/r_wall, /area/varadero/interior/records) +"vHV" = ( +/obj/effect/landmark/corpsespawner/colonist/burst, +/turf/open/auto_turf/sand_white/layer1, +/area/varadero/interior/maintenance/security/north) "vHY" = ( /obj/structure/pipes/standard/simple/hidden/green{ dir = 4 @@ -27615,7 +27758,7 @@ /obj/structure/pipes/standard/simple/hidden/green, /obj/structure/largecrate/supply/supplies/mre, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "vKv" = ( /obj/structure/window/framed/colony/reinforced/hull{ explo_proof = 1 @@ -28010,7 +28153,7 @@ "vXx" = ( /obj/effect/decal/cleanable/blood/xeno, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "vXG" = ( /obj/structure/closet/crate/construction, /obj/item/grown/log, @@ -28394,7 +28537,7 @@ "wjV" = ( /obj/structure/window/framed/colony, /turf/open/floor/plating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "wkp" = ( /obj/structure/platform/kutjevo/smooth{ dir = 1; @@ -28441,6 +28584,12 @@ }, /turf/open/floor/shiva/multi_tiles, /area/varadero/interior/technical_storage) +"wkL" = ( +/obj/structure/machinery/light/small{ + dir = 1 + }, +/turf/open/floor/plating/icefloor/asteroidplating, +/area/varadero/interior/maintenance/security/north) "wkM" = ( /obj/structure/window/reinforced{ dir = 4; @@ -28520,7 +28669,7 @@ dir = 1 }, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "wno" = ( /turf/open/floor/shiva/green/north, /area/varadero/interior/mess) @@ -28645,7 +28794,7 @@ /area/varadero/interior/bunks) "wqb" = ( /turf/closed/wall/r_wall, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "wqc" = ( /obj/structure/prop/invuln/minecart_tracks{ dir = 1 @@ -29079,7 +29228,7 @@ "wMn" = ( /obj/structure/reagent_dispensers/watertank, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "wMw" = ( /turf/open/floor/asteroidfloor/north, /area/varadero/exterior/lz1_near) @@ -29361,11 +29510,11 @@ dir = 4 }, /turf/open/auto_turf/sand_white/layer1, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "wXu" = ( /obj/structure/surface/rack, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "wXC" = ( /obj/item/device/flashlight/lamp/tripod, /turf/open/floor/plating/icefloor/asteroidplating, @@ -29593,6 +29742,10 @@ /obj/item/storage/belt/utility, /turf/open/floor/shiva/floor3, /area/varadero/interior/cargo) +"xju" = ( +/obj/effect/sentry_landmark/lz_2/bottom_right, +/turf/open/gm/dirt, +/area/varadero/exterior/eastbeach) "xka" = ( /obj/structure/window/framed/colony/reinforced{ color = "#aba9a9" @@ -29681,7 +29834,7 @@ pixel_y = 16 }, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "xpw" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/circuitboard/computer/crew{ @@ -29899,7 +30052,7 @@ "xxs" = ( /obj/structure/closet/crate, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "xxE" = ( /obj/structure/pipes/standard/simple/hidden/green{ dir = 4 @@ -29969,7 +30122,7 @@ "xza" = ( /obj/structure/pipes/standard/simple/hidden/green, /turf/open/auto_turf/sand_white/layer1, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "xzc" = ( /obj/structure/flora/bush/ausbushes/var3/ywflowers, /turf/open/gm/dirt/desert0, @@ -30195,7 +30348,7 @@ /obj/structure/surface/table, /obj/effect/spawner/random/toolbox, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "xJx" = ( /obj/structure/machinery/photocopier, /obj/structure/machinery/light{ @@ -30209,7 +30362,7 @@ /area/varadero/exterior/lz2_near) "xJZ" = ( /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "xKo" = ( /obj/structure/surface/table, /obj/item/storage/wallet/random{ @@ -30320,6 +30473,10 @@ }, /turf/open/floor/shiva/multi_tiles, /area/varadero/interior/hall_SE) +"xNc" = ( +/obj/structure/machinery/power/apc/no_power/north, +/turf/open/floor/plating/icefloor/asteroidplating, +/area/varadero/interior/maintenance/security/south) "xNw" = ( /obj/effect/decal/cleanable/blood/drip, /turf/open/floor/carpet, @@ -30656,7 +30813,7 @@ pixel_y = 11 }, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "ybY" = ( /obj/structure/surface/table, /obj/item/paper_bin, @@ -30726,7 +30883,7 @@ /obj/item/reagent_container/glass/bucket/mopbucket, /obj/item/tool/mop, /turf/open/floor/plating/icefloor/asteroidplating, -/area/varadero/interior/maintenance/security) +/area/varadero/interior/maintenance/security/south) "yeG" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/frame/camera, @@ -31989,9 +32146,9 @@ xCn oPQ xCn cBI -xCn -xCn -ljt +jQa +jQa +vmC pGs pGs pGs @@ -32171,10 +32328,10 @@ xCn oPQ xCn cBI -xCn -oPQ -oPQ -xCn +jQa +rgz +rgz +jQa pGs pGs pGs @@ -32353,12 +32510,12 @@ xCn srg xCn cBI -xCn -xCn -oPQ -kAL -xCn -fHk +jQa +jQa +rgz +qwE +jQa +abL jQa jQa jQa @@ -32535,12 +32692,12 @@ srg srg xCn fzc -xCn -oVt -xCn -xCn -kAL -xCn +jQa +uCG +jQa +jQa +qwE +jQa gxQ jQa jQa @@ -32717,12 +32874,12 @@ tqh tqh tqh uJT -srg -xCn -xCn -xCn -xCn -xCn +geo +jQa +jQa +jQa +jQa +jQa jQa jQa jQa @@ -32899,12 +33056,12 @@ mEA sBk ksn pGc -srg -xCn -xCn -xCn -xCn -xCn +geo +jQa +jQa +jQa +jQa +jQa jQa jQa jQa @@ -33081,12 +33238,12 @@ aJc hDA xrA pGc -srg -xCn -xCn -xCn -xCn -xCn +geo +jQa +jQa +jQa +jQa +jQa jQa jQa jQa @@ -33263,17 +33420,17 @@ gwC hDA tMx tqh -dxK -xCn -xCn -xCn -xCn -xCn -vYW -vYW -vYW -vYW -hto +xZa +jQa +jQa +jQa +jQa +jQa +jQa +jQa +jQa +jQa +gxQ pGs jQa jQa @@ -33445,12 +33602,12 @@ gwC odD rjE fay -qul -qul -uHY -xCn -xCn -srg +pGs +pGs +gxQ +jQa +vYW +neq vYW vYW vYW @@ -33628,8 +33785,8 @@ ftA fay fay fay -ebr -ebr +pGs +pGs pKK vYW loA @@ -33810,8 +33967,8 @@ hBX eEY xhx fay -ebr -ebr +pGs +pGs vYW vYW hto @@ -33992,9 +34149,9 @@ eWR oXi gEy fay -ebr -ebr -ebr +pGs +pGs +pGs vYW vYW vYW @@ -34174,9 +34331,9 @@ izs oyi wvI fay -ebr -ebr -ebr +pGs +pGs +pGs vYW vYW uQa @@ -34356,8 +34513,8 @@ ltW qQF okB fay -ebr -ebr +pGs +pGs vYW vYW uQa @@ -34538,7 +34695,7 @@ ltW qQF eXr fay -ebr +pGs vYW neq vYW @@ -41564,11 +41721,11 @@ wMw wMw wMw wMw +tkY wMw wMw wMw -wMw -wMw +tkY wMw kME wMw @@ -41931,15 +42088,15 @@ wMw wMw wMw wMw -wMw +tkY wMw wMw nFB wMw sIQ +lni wMw -wMw -wMw +lni wMw oJm hyr @@ -42303,7 +42460,7 @@ wMw wMw wMw wMw -wMw +lni sTT bgE jTL @@ -44668,7 +44825,7 @@ miF mrC wMw wMw -wMw +hHz wMw xVQ kyz @@ -45189,15 +45346,18 @@ fZB asx wMw wMw +rwO wMw wMw wMw wMw +rwO wMw wMw wMw wMw wMw +rwO wMw wMw wMw @@ -45206,10 +45366,7 @@ wMw wMw wMw wMw -wMw -wMw -wMw -wMw +hHz wMw wMw mrC @@ -50155,19 +50312,19 @@ ftF bEX pnL juW -gDh -xJZ -xJZ -xJZ -xJZ -xJZ -xJZ -gDh -uEc -viK +vAU +kkT +kkT +kkT +kkT +kkT +kkT +vAU +nAM +jcl gAV -xJZ -wqb +kkT +rVG kBZ hPj wVf @@ -50337,19 +50494,19 @@ eFJ trh qdk wUj -xJZ -xJZ -xJZ -xJZ -xJZ -xJZ -xJZ -xJZ -xJZ -viK +kkT +kkT +kkT +kkT +kkT +kkT +kkT +kkT +kkT +jcl gAV -xJZ -wqb +kkT +rVG kBZ hPj wVf @@ -50519,19 +50676,19 @@ hus wuR rVS kSN -lVc -lVc -lVc -lVc -lVc +uYT +uYT +uYT +uYT +uYT uTq -lVc -lVc -lVc +uYT +uYT +uYT qRP -xJZ -xJZ -wqb +kkT +kkT +rVG kBZ wVf wVf @@ -50702,18 +50859,18 @@ trh qdk wUj gtz -sKu -xJZ -xJZ -xJZ -xJZ -xJZ -xJZ -xJZ +edM +kkT +kkT +kkT +kkT +kkT +kkT +kkT mvA -xJZ -xJZ -wqb +kkT +kkT +rVG kBZ wVf swj @@ -50883,19 +51040,19 @@ ktN che qdk juW -wqb +rVG crC -xJZ -ryD -xJZ -ryD +kkT +aNT +kkT +aNT joV -wqb -wqb -viK -xJZ +rVG +rVG +jcl +kkT tBm -wqb +rVG kBZ wVf unw @@ -51068,16 +51225,16 @@ juW kBZ kBZ joV -keY -xJZ -ryD -ryD -ryD -ryD -viK -xJZ -wXu -wqb +kAz +kkT +aNT +aNT +aNT +aNT +jcl +kkT +aCM +rVG kBZ wVf wVf @@ -51250,16 +51407,16 @@ juW kBZ kBZ kBZ -xJZ +kkT quP -ryD +aNT fbr -ryD -ryD -viK +aNT +aNT +jcl sHO -ryD -wqb +aNT +rVG kBZ hPj wVf @@ -51432,16 +51589,16 @@ juW kBZ kBZ kBZ -xJZ -xJZ -ryD -ryD -ryD -ryD -viK -xJZ -ryD -ryD +kkT +kkT +aNT +aNT +aNT +aNT +jcl +kkT +aNT +aNT kBZ hPj hHR @@ -51616,14 +51773,14 @@ wOO wOO kBZ kBZ -ryD -ryD -ryD -ryD +aNT +aNT +aNT +aNT lDm -xJZ +kkT joV -ryD +aNT kBZ hPj wVf @@ -51799,12 +51956,12 @@ wOO kBZ kBZ kBZ -ryD +aNT kBZ -wqb +rVG smE -xJZ -ryD +kkT +aNT jeW joV hPj @@ -51983,12 +52140,12 @@ kBZ kBZ kBZ kBZ -wqb -viK -xJZ -ryD -ryD -ryD +rVG +jcl +kkT +aNT +aNT +aNT wVf wVf rpT @@ -52165,12 +52322,12 @@ hlp kBZ kBZ kBZ -wqb -viK -xJZ -ryD -ryD -ryD +rVG +jcl +kkT +aNT +aNT +aNT sPs cYa lVB @@ -52346,13 +52503,13 @@ tlT mQh kBZ kBZ -ryD +aNT hcI -wXs -xJZ -ryD -ryD -ryD +qnl +kkT +aNT +aNT +aNT sPs etE swi @@ -52527,14 +52684,14 @@ cuc tlT mrT kBZ -ryD -ryD -ryD -wXs -xJZ -ryD -ryD -ryD +aNT +aNT +aNT +qnl +kkT +aNT +aNT +aNT wVf wVf pIC @@ -52710,20 +52867,20 @@ eGL mrT kBZ tkF -ryD -ryD -wXs -xJZ -ryD -ryD +aNT +aNT +qnl +kkT +aNT +aNT eyt eyt -wVf +ouy wVf wVf wVf eyt -wqb +ouy wXu viK xJZ @@ -52892,20 +53049,20 @@ sdZ hwZ kBZ kBZ -ryD -ryD +aNT +aNT apj -xJZ -ryD -ryD -kbQ +kkT +aNT +aNT +aNT kbQ eyt eyt eyt eyt eyt -wqb +ouy xJZ viK xJZ @@ -53077,17 +53234,17 @@ wOO oSX wOO jPM -xJZ -xJZ -ryD -lFk +kkT +kkT +aNT +vHV kbQ kbQ eyt eyt jqw eyt -wqb +ouy xJZ viK xJZ @@ -53258,18 +53415,18 @@ eGd pkT pAZ wOO -rWY -xJZ -xJZ -ryD -kbQ +fyz +kkT +kkT +aNT +aNT kbQ kbQ kbQ jqw kbQ eyt -wqb +ouy rDD wng lVc @@ -53440,18 +53597,18 @@ fEu fEu pCO oSX -viK -xJZ -xJZ -wqb -tVj +jcl +kkT +kkT +rVG +kkT kbQ kbQ kbQ kbQ kbQ lFk -bPk +lFE xJZ viK xJZ @@ -53622,18 +53779,18 @@ lur fEu thp oSX -viK -xJZ -ryD -ryD -tVj +jcl +kkT +aNT +aNT +kkT kbQ jqw kbQ kbQ kbQ ofC -uvr +nZP xJZ viK xJZ @@ -53805,17 +53962,17 @@ fEu thp oSX mZk -xJZ -xJZ +kkT +kkT imu +kkT tVj tVj tVj tVj tVj tVj -tVj -uvr +nZP xJZ viK xJZ @@ -53986,18 +54143,18 @@ cbg fEu swM wOO -viK -xJZ -xJZ -wqb -tVj +jcl +kkT +kkT +rVG +kkT tVj qIF kbQ qIF tTU kbQ -uvr +nZP xJZ viK gDh @@ -54168,18 +54325,18 @@ osr aDZ aDZ nOg -pfr -lVc -lVc -iFZ -kbQ +uTy +uYT +uYT +dVh +aNT kbQ kbQ kbQ kbQ sgk eyt -wqb +ouy xJZ viK xJZ @@ -54352,16 +54509,16 @@ rrr wOO fga uwJ -xJZ -viK -kbQ +kkT +jcl +aNT kbQ qIF kbQ qIF uet eyt -wqb +ouy rpd viK xJZ @@ -54533,17 +54690,17 @@ mEB mEB oSX dJI -xJZ -xJZ -viK -ryD +kkT +kkT +jcl +aNT ouy ofC qIF jJf cFz eyt -wqb +ouy xJZ viK xJZ @@ -54571,7 +54728,7 @@ eyt eyt eyt wqb -xJZ +xNc viK xJZ xJZ @@ -54714,18 +54871,18 @@ wOO wOO wOO wOO -wqb -xJZ -xJZ -viK -xJZ +rVG +kkT +kkT +jcl +kkT tCA kbQ kbQ vcR eyt eyt -wqb +ouy xJZ viK xJZ @@ -54847,10 +55004,10 @@ wlB aQN wlB wlB -bbK +vbK wlB iQr -iQr +caE bSQ qNu wlB @@ -54896,18 +55053,18 @@ kBZ kBZ kBZ kBZ -wqb -gDh -xJZ -viK -xJZ +rVG +vAU +kkT +jcl +kkT tCA kbQ kbQ eyt eyt eyt -wqb +ouy xJZ viK wXu @@ -55078,10 +55235,10 @@ kBZ kBZ kBZ kBZ -wqb -rDD -xJZ -viK +rVG +wkL +kkT +jcl stw ouy kbQ @@ -55089,7 +55246,7 @@ kbQ kbQ eyt eyt -wqb +ouy rDD viK gha @@ -55196,7 +55353,7 @@ wlB wlB lTg wlB -wlB +knR wlB wlB jwX @@ -55260,18 +55417,18 @@ kBZ kBZ kBZ kBZ -wqb +rVG bFD -xJZ -viK -xJZ +kkT +jcl +kkT lFE kbQ kbQ kbQ eyt eyt -wqb +ouy xJZ viK xJZ @@ -55372,7 +55529,7 @@ dYd wlB kAH lTg -wlB +knR wlB wlB wlB @@ -55382,7 +55539,7 @@ wlB lTg wlB wlB -mdg +hIt wlB beK cVq @@ -55442,18 +55599,18 @@ kBZ kBZ kBZ kBZ -wqb -wqb -xJZ -viK -sKu +rVG +rVG +kkT +jcl +edM ouy kbQ kbQ kbQ eyt eyt -wqb +ouy rWY viK xJZ @@ -55625,17 +55782,17 @@ kBZ kBZ kBZ kBZ -wqb -xJZ -viK -gDh +rVG +kkT +jcl +vAU ouy sgk kbQ qIF eyt eyt -wqb +ouy oJW viK xJZ @@ -55760,7 +55917,7 @@ wlB wlB tfc tCV -iQr +caE wlB ghW wlB @@ -55801,23 +55958,23 @@ apH iQS vVH kBZ -wqb -wqb -wqb -wqb +vVH +vVH +vVH +vVH kBZ kBZ -wqb -xJZ -viK -gDh +rVG +kkT +jcl +vAU lFE sgk kbQ jqw eyt eyt -wqb +ouy xJZ viK xJZ @@ -55949,7 +56106,7 @@ wlB wlB nCl wlB -xmL +eev cFw cFw cFw @@ -55987,18 +56144,18 @@ rql qcD kAl vVH -wqb +vVH kBZ -wqb -xJZ -viK +rVG +kkT +jcl klf ouy kbQ sgk kbQ eyt -wqb +ouy xxs xJZ viK @@ -56170,17 +56327,17 @@ iQS iQS tkr imu -xJZ -xJZ -xJZ -viK -xJZ +kkT +kkT +kkT +jcl +kkT ouy tCA kbQ tCA -wqb -wqb +ouy +ouy xJZ xJZ viK @@ -56351,17 +56508,17 @@ pDW pDW pDW pDW -lVc -lVc -lVc -lVc -pfr -lVc -lVc -lVc -lVc -lVc -lVc +uYT +uYT +uYT +uYT +uTy +uYT +uYT +uYT +uYT +uYT +uYT pbw lVc lVc @@ -56533,16 +56690,16 @@ iQS axs iQS iQS -xJZ -xJZ -xJZ -xJZ -xJZ -ryD -ryD +kkT +kkT +kkT +kkT +kkT +aNT +aNT oPV -xJZ -xJZ +kkT +kkT eKF bPk xJZ @@ -56716,14 +56873,14 @@ vVH vVH vVH gfu -xJZ -xJZ +kkT +kkT gfu -sny +peY sVr -ryD -ryD -xJZ +aNT +aNT +kkT iLc dUL bPk @@ -57951,7 +58108,7 @@ kgp kgp kgp wlB -cFw +xju cFw xmL cFw @@ -58861,7 +59018,7 @@ hPq kgp nCl wlB -nwq +hCK cFw ihY ihY @@ -59405,7 +59562,7 @@ aQN tMZ pvQ lTg -aQN +fjw wlB kyp cFh diff --git a/maps/map_files/Sorokyne_Strata/Sorokyne_Strata.dmm b/maps/map_files/Sorokyne_Strata/Sorokyne_Strata.dmm index 886f1ee7c1b9..44400af47d79 100644 --- a/maps/map_files/Sorokyne_Strata/Sorokyne_Strata.dmm +++ b/maps/map_files/Sorokyne_Strata/Sorokyne_Strata.dmm @@ -751,10 +751,6 @@ }, /turf/open/floor/strata/floor3, /area/strata/ag/interior/outside/bball) -"acM" = ( -/obj/structure/machinery/light/small, -/turf/open/floor/strata/floor3, -/area/strata/ag/interior/outpost/canteen/personal_storage) "acO" = ( /obj/structure/flora/grass/tallgrass/ice/corner{ dir = 8 @@ -1681,7 +1677,7 @@ dir = 4 }, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/admin) "agn" = ( /obj/structure/barricade/handrail/strata, /turf/open/floor/plating, @@ -2366,10 +2362,6 @@ /obj/structure/machinery/weather_siren, /turf/closed/wall/strata_outpost, /area/strata/ag/interior/outside/bball) -"aiM" = ( -/obj/structure/window/framed/strata/reinforced, -/turf/open/floor/strata/multi_tiles/southeast, -/area/strata/ag/interior/outpost/canteen/personal_storage) "aiP" = ( /obj/effect/particle_effect/steam, /obj/effect/blocker/sorokyne_cold_water, @@ -2532,16 +2524,16 @@ "ajx" = ( /obj/structure/closet/secure_closet/personal, /turf/open/floor/strata/blue1, -/area/strata/ag/interior/outpost/canteen/personal_storage) +/area/strata/ag/interior/outpost/canteen) "ajy" = ( /obj/structure/closet/secure_closet/personal, /turf/open/floor/prison/darkyellowfull2, -/area/strata/ag/interior/outpost/canteen/personal_storage) +/area/strata/ag/interior/outpost/canteen) "ajz" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/device/lightreplacer, /turf/open/floor/strata/multi_tiles/southwest, -/area/strata/ag/interior/outpost/canteen/personal_storage) +/area/strata/ag/interior/outpost/canteen) "ajC" = ( /obj/effect/decal/cleanable/blood{ icon_state = "gib6" @@ -2649,25 +2641,21 @@ "ajV" = ( /obj/structure/machinery/washing_machine, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/outpost/canteen/personal_storage) -"ajW" = ( -/obj/item/stack/rods, -/turf/open/floor/strata, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/canteen) "ajX" = ( /obj/structure/closet/wardrobe/suit, /turf/open/floor/strata/blue1, -/area/strata/ag/interior/outpost/canteen/personal_storage) +/area/strata/ag/interior/outpost/canteen) "ajY" = ( /obj/structure/closet/wardrobe/red, /obj/item/clothing/suit/imperium_monk, /turf/open/floor/strata/red1, -/area/strata/ag/interior/outpost/canteen/personal_storage) +/area/strata/ag/interior/outpost/canteen) "ajZ" = ( /obj/structure/closet/secure_closet/personal, /obj/item/clothing/suit/storage/bomber, /turf/open/floor/strata/red1, -/area/strata/ag/interior/outpost/canteen/personal_storage) +/area/strata/ag/interior/outpost/canteen) "aka" = ( /obj/structure/flora/grass/tallgrass/ice/corner, /turf/open/auto_turf/snow/brown_base/layer3, @@ -2676,7 +2664,7 @@ /obj/structure/surface/table/reinforced/prison, /obj/item/device/mass_spectrometer, /turf/open/floor/strata/multi_tiles/southwest, -/area/strata/ag/interior/outpost/canteen/personal_storage) +/area/strata/ag/interior/outpost/canteen) "akf" = ( /obj/structure/bed/chair/office/dark{ dir = 8 @@ -2777,13 +2765,13 @@ "aku" = ( /obj/structure/bed/chair, /turf/open/floor/strata/white_cyan2/west, -/area/strata/ag/interior/mining_outpost/hallways) +/area/strata/ag/interior/mining_outpost/canteen) "akv" = ( /obj/structure/pipes/standard/manifold/hidden/cyan{ dir = 8 }, /turf/open/floor/strata/white_cyan2/west, -/area/strata/ag/interior/mining_outpost/hallways) +/area/strata/ag/interior/mining_outpost/canteen) "akw" = ( /obj/item/stack/sandbags, /turf/open/floor/strata/white_cyan1/east, @@ -2820,16 +2808,16 @@ "akC" = ( /obj/structure/closet/wardrobe/engineering_yellow, /turf/open/floor/prison/darkyellowfull2, -/area/strata/ag/interior/outpost/canteen/personal_storage) +/area/strata/ag/interior/outpost/canteen) "akD" = ( /obj/structure/closet/secure_closet/personal, /obj/item/clothing/suit/storage/apron/overalls, /turf/open/floor/strata/red1, -/area/strata/ag/interior/outpost/canteen/personal_storage) +/area/strata/ag/interior/outpost/canteen) "akE" = ( /obj/structure/sign/nosmoking_1, /turf/closed/wall/strata_outpost, -/area/strata/ag/interior/outpost/canteen/personal_storage) +/area/strata/ag/interior/outpost/canteen) "akG" = ( /obj/structure/barricade/snow{ dir = 1 @@ -2908,34 +2896,31 @@ dir = 4 }, /turf/open/floor/strata/white_cyan2/west, -/area/strata/ag/interior/mining_outpost/hallways) +/area/strata/ag/interior/mining_outpost/canteen) "akY" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/reagent_container/food/snacks/cubancarp, /obj/effect/landmark/item_pool_spawner/survivor_ammo/buckshot, /turf/open/floor/strata/cyan1/east, -/area/strata/ag/interior/mining_outpost/hallways) +/area/strata/ag/interior/mining_outpost/canteen) "ala" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/reagent_container/food/snacks/fishfingers, /obj/effect/landmark/item_pool_spawner/survivor_ammo/buckshot, /turf/open/floor/strata/cyan1/east, -/area/strata/ag/interior/mining_outpost/hallways) +/area/strata/ag/interior/mining_outpost/canteen) "alb" = ( /obj/structure/bed/chair{ dir = 8 }, /turf/open/floor/strata/white_cyan2/west, -/area/strata/ag/interior/mining_outpost/hallways) +/area/strata/ag/interior/mining_outpost/canteen) "alc" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/reagent_container/food/snacks/meatballspagetti, /obj/effect/landmark/objective_landmark/science, /turf/open/floor/strata/cyan1/east, -/area/strata/ag/interior/mining_outpost/hallways) -"ald" = ( -/turf/closed/wall/strata_outpost/reinforced, -/area/strata/ag/interior/outpost/canteen/personal_storage) +/area/strata/ag/interior/mining_outpost/canteen) "ale" = ( /obj/structure/surface/table/reinforced/almayer_B, /obj/item/reagent_container/food/snacks/toastedsandwich, @@ -2970,19 +2955,19 @@ "alk" = ( /obj/structure/closet/wardrobe/medic_white, /turf/open/floor/strata/cyan1/east, -/area/strata/ag/interior/outpost/canteen/personal_storage) +/area/strata/ag/interior/outpost/canteen) "alm" = ( /obj/structure/closet/secure_closet/personal, /turf/open/floor/strata/red1, -/area/strata/ag/interior/outpost/canteen/personal_storage) +/area/strata/ag/interior/outpost/canteen) "aln" = ( /obj/structure/pipes/vents/pump, /turf/open/floor/strata/multi_tiles/southwest, -/area/strata/ag/interior/outpost/canteen/personal_storage) +/area/strata/ag/interior/outpost/canteen) "alo" = ( /obj/effect/decal/strata_decals/catwalk/prison, /turf/open/floor/strata/white_cyan2/west, -/area/strata/ag/interior/outpost/canteen/personal_storage) +/area/strata/ag/interior/outpost/canteen) "alp" = ( /obj/structure/machinery/door/airlock/almayer/medical/glass/colony{ name = "\improper Chunkeez Diner door" @@ -2998,11 +2983,11 @@ dir = 1 }, /turf/open/floor/strata/blue1, -/area/strata/ag/interior/outpost/canteen/personal_storage) +/area/strata/ag/interior/outpost/canteen) "als" = ( /obj/structure/closet/secure_closet/personal, /turf/open/floor/strata/multi_tiles/southwest, -/area/strata/ag/interior/outpost/canteen/personal_storage) +/area/strata/ag/interior/outpost/canteen) "alu" = ( /obj/structure/reagent_dispensers/watertank, /turf/open/floor/strata/floor3/east, @@ -3062,19 +3047,19 @@ /obj/structure/surface/table/reinforced/prison, /obj/item/reagent_container/food/snacks/mushroompizzaslice, /turf/open/floor/strata/cyan1/east, -/area/strata/ag/interior/mining_outpost/hallways) +/area/strata/ag/interior/mining_outpost/canteen) "alJ" = ( /obj/structure/bed/chair{ dir = 8 }, /obj/structure/pipes/standard/simple/hidden/cyan, /turf/open/floor/strata/white_cyan2/west, -/area/strata/ag/interior/mining_outpost/hallways) +/area/strata/ag/interior/mining_outpost/canteen) "alK" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/reagent_container/food/snacks/omelette, /turf/open/floor/strata/cyan1/east, -/area/strata/ag/interior/mining_outpost/hallways) +/area/strata/ag/interior/mining_outpost/canteen) "alL" = ( /obj/structure/machinery/camera/autoname{ dir = 8 @@ -3109,10 +3094,6 @@ /obj/structure/barricade/snow, /turf/open/auto_turf/snow/brown_base/layer1, /area/strata/ag/exterior/paths/far_north_outpost) -"alT" = ( -/obj/structure/surface/table/reinforced/prison, -/turf/open/floor/strata/orange_cover, -/area/strata/ag/interior/outpost/canteen/personal_storage) "alV" = ( /obj/structure/flora/pottedplant{ icon_state = "pottedplant_22" @@ -3127,23 +3108,23 @@ /obj/effect/decal/strata_decals/catwalk/prison, /obj/structure/curtain/open/shower, /turf/open/floor/strata/white_cyan2/west, -/area/strata/ag/interior/outpost/canteen/personal_storage) +/area/strata/ag/interior/outpost/canteen) "alX" = ( /obj/structure/pipes/standard/simple/hidden/cyan, /turf/open/floor/strata/multi_tiles/southwest, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/canteen) "alY" = ( /obj/effect/decal/strata_decals/catwalk/prison, /obj/effect/landmark/survivor_spawner, /turf/open/floor/strata/white_cyan2/west, -/area/strata/ag/interior/outpost/canteen/personal_storage) +/area/strata/ag/interior/outpost/canteen) "alZ" = ( /obj/structure/closet/secure_closet/personal, /obj/structure/machinery/light{ dir = 4 }, /turf/open/floor/strata/multi_tiles/southwest, -/area/strata/ag/interior/outpost/canteen/personal_storage) +/area/strata/ag/interior/outpost/canteen) "amc" = ( /obj/effect/decal/cleanable/blood{ layer = 3 @@ -3215,13 +3196,13 @@ "ams" = ( /obj/structure/pipes/standard/simple/hidden/cyan, /turf/open/floor/strata/white_cyan2/west, -/area/strata/ag/interior/mining_outpost/hallways) +/area/strata/ag/interior/mining_outpost/canteen) "amt" = ( /obj/structure/bed/chair{ dir = 1 }, /turf/open/floor/strata/white_cyan2/west, -/area/strata/ag/interior/mining_outpost/hallways) +/area/strata/ag/interior/mining_outpost/canteen) "amu" = ( /obj/structure/prop/almayer/computers/sensor_computer1, /obj/structure/blocker/invisible_wall, @@ -3271,9 +3252,8 @@ /area/strata/ag/exterior/marsh/river) "amM" = ( /obj/structure/bedsheetbin, -/obj/structure/machinery/power/apc/no_power/north, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/outpost/canteen/personal_storage) +/area/strata/ag/interior/outpost/canteen) "amN" = ( /obj/effect/decal/cleanable/blood, /obj/structure/machinery/light{ @@ -3283,13 +3263,13 @@ /area/strata/ag/interior/outpost/canteen) "amO" = ( /turf/open/floor/strata/blue1, -/area/strata/ag/interior/outpost/canteen/personal_storage) +/area/strata/ag/interior/outpost/canteen) "amP" = ( /obj/structure/machinery/shower{ dir = 1 }, /turf/open/floor/interior/plastic, -/area/strata/ag/interior/outpost/canteen/personal_storage) +/area/strata/ag/interior/outpost/canteen) "amU" = ( /obj/structure/platform_decoration/strata/metal{ dir = 8 @@ -3371,7 +3351,7 @@ "ank" = ( /obj/structure/pipes/standard/manifold/fourway/hidden/cyan, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/mining_outpost/hallways) +/area/strata/ag/interior/mining_outpost/central) "anl" = ( /obj/structure/window/framed/strata/reinforced, /turf/open/floor/strata/white_cyan1, @@ -3379,7 +3359,7 @@ "anm" = ( /obj/structure/pipes/standard/manifold/hidden/cyan, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/mining_outpost/hallways) +/area/strata/ag/interior/mining_outpost/central) "ano" = ( /obj/structure/pipes/standard/simple/hidden/cyan{ dir = 4 @@ -3388,7 +3368,7 @@ dir = 1 }, /turf/open/floor/strata/cyan2/east, -/area/strata/ag/interior/mining_outpost/hallways) +/area/strata/ag/interior/mining_outpost/canteen) "anp" = ( /obj/structure/machinery/light{ dir = 1 @@ -3495,9 +3475,6 @@ }, /turf/open/floor/prison/darkredfull2, /area/strata/ag/interior/mining_outpost/canteen) -"anG" = ( -/turf/closed/wall/strata_outpost/reinforced/hull, -/area/strata/ag/interior/outpost/canteen/personal_storage) "anI" = ( /obj/structure/machinery/vending/snack, /turf/open/floor/strata/fake_wood, @@ -3510,17 +3487,13 @@ /obj/structure/machinery/washing_machine, /obj/item/facepaint/skull, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/outpost/canteen/personal_storage) -"anL" = ( -/obj/structure/pipes/standard/simple/hidden/cyan, -/turf/open/floor/strata/white_cyan2/west, -/area/strata/ag/interior/outpost/canteen/personal_storage) +/area/strata/ag/interior/outpost/canteen) "anM" = ( /obj/effect/decal/strata_decals/catwalk/prison, /obj/structure/pipes/standard/simple/hidden/cyan, /obj/structure/curtain/open/shower, /turf/open/floor/strata/white_cyan2/west, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/canteen) "anN" = ( /obj/structure/platform/strata/metal{ dir = 1 @@ -3531,11 +3504,11 @@ /obj/structure/bedsheetbin, /obj/item/device/binoculars/range, /turf/open/floor/strata/blue1, -/area/strata/ag/interior/outpost/canteen/personal_storage) +/area/strata/ag/interior/outpost/canteen) "anR" = ( /obj/structure/machinery/cm_vending/sorted/medical/wall_med/limited, /turf/closed/wall/strata_outpost, -/area/strata/ag/interior/outpost/canteen/personal_storage) +/area/strata/ag/interior/outpost/canteen) "anS" = ( /obj/structure/barricade/snow, /turf/open/auto_turf/snow/brown_base/layer1, @@ -3543,16 +3516,16 @@ "anU" = ( /obj/structure/sign/safety/medical, /turf/closed/wall/strata_outpost, -/area/strata/ag/interior/outpost/canteen/personal_storage) +/area/strata/ag/interior/outpost/canteen) "anV" = ( /obj/structure/curtain/open/shower, /turf/open/floor/strata/blue1, -/area/strata/ag/interior/outpost/canteen/personal_storage) +/area/strata/ag/interior/outpost/canteen) "anW" = ( /obj/structure/pipes/standard/simple/hidden/cyan, /obj/structure/curtain/open/shower, /turf/open/floor/strata/blue1, -/area/strata/ag/interior/outpost/canteen/personal_storage) +/area/strata/ag/interior/outpost/canteen) "aoa" = ( /obj/structure/flora/bush/ausbushes/grassybush{ icon_state = "pointybush_1" @@ -3669,18 +3642,18 @@ "aoI" = ( /obj/structure/window/framed/strata/reinforced, /turf/open/floor/strata/multi_tiles/southeast, -/area/strata/ag/interior/outpost/canteen/lower_cafeteria) +/area/strata/ag/interior/outpost/canteen) "aoJ" = ( /obj/structure/machinery/washing_machine, /obj/structure/machinery/camera/autoname{ dir = 4 }, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/outpost/canteen/personal_storage) +/area/strata/ag/interior/outpost/canteen) "aoL" = ( /obj/structure/pipes/standard/manifold/hidden/cyan, /turf/open/floor/strata/white_cyan2/west, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/canteen) "aoM" = ( /obj/structure/pipes/standard/simple/hidden/cyan{ dir = 4 @@ -3689,13 +3662,13 @@ dir = 1 }, /turf/open/floor/strata/white_cyan2/west, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/canteen) "aoO" = ( /obj/structure/pipes/standard/simple/hidden/cyan{ dir = 9 }, /turf/open/floor/strata/white_cyan2/west, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/canteen) "aoP" = ( /obj/structure/stairs/perspective{ color = "#6e6e6e"; @@ -3869,26 +3842,26 @@ /obj/structure/closet/secure_closet/personal, /obj/item/clothing/suit/radiation, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/outpost/canteen/lower_cafeteria) +/area/strata/ag/interior/outpost/canteen) "apD" = ( /obj/structure/machinery/light/small{ dir = 1 }, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/outpost/canteen/lower_cafeteria) +/area/strata/ag/interior/outpost/canteen) "apE" = ( /obj/structure/machinery/washing_machine, /obj/item/clothing/suit/bluetag, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/outpost/canteen/personal_storage) +/area/strata/ag/interior/outpost/canteen) "apF" = ( /obj/structure/machinery/light, /turf/open/floor/strata/white_cyan2/west, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/canteen) "apI" = ( /obj/structure/curtain/open/shower, /turf/open/floor/interior/plastic, -/area/strata/ag/interior/outpost/canteen/personal_storage) +/area/strata/ag/interior/outpost/canteen) "apJ" = ( /obj/structure/stairs/perspective{ color = "#6e6e6e"; @@ -3897,11 +3870,11 @@ }, /obj/structure/platform/strata/metal, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/admin) "apK" = ( /obj/effect/decal/cleanable/greenglow, /turf/open/floor/strata/white_cyan2/west, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/canteen) "apL" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/toy/deck, @@ -4124,29 +4097,29 @@ /obj/structure/closet/secure_closet/personal, /obj/effect/landmark/objective_landmark/close, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/outpost/canteen/lower_cafeteria) +/area/strata/ag/interior/outpost/canteen) "aqG" = ( /obj/structure/machinery/computer/communications{ dir = 4 }, /obj/structure/surface/table/reinforced/prison, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/outpost/canteen/personal_storage) +/area/strata/ag/interior/outpost/canteen) "aqI" = ( /obj/structure/bed/chair{ dir = 8 }, /obj/structure/pipes/standard/simple/hidden/cyan, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/canteen) "aqJ" = ( /obj/structure/closet/secure_closet/personal, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/outpost/canteen/personal_storage) +/area/strata/ag/interior/outpost/canteen) "aqK" = ( /obj/item/stool, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/outpost/canteen/personal_storage) +/area/strata/ag/interior/outpost/canteen) "aqL" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/toy/deck, @@ -4164,11 +4137,11 @@ "aqP" = ( /obj/item/device/aicard, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/outpost/canteen/personal_storage) +/area/strata/ag/interior/outpost/canteen) "aqQ" = ( /obj/item/stack/sandbags/large_stack, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/outpost/canteen/personal_storage) +/area/strata/ag/interior/outpost/canteen) "aqR" = ( /obj/structure/stairs/perspective{ color = "#6e6e6e"; @@ -4629,7 +4602,7 @@ dir = 4 }, /turf/open/floor/strata/red1, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/security) "asF" = ( /obj/structure/machinery/light/small{ dir = 4 @@ -4649,28 +4622,24 @@ dir = 1 }, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/outpost/canteen/lower_cafeteria) +/area/strata/ag/interior/outpost/canteen) "asK" = ( /obj/structure/barricade/deployable{ dir = 1 }, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/canteen) "asL" = ( /turf/open/floor/strata/floor3, -/area/strata/ag/interior/outpost/canteen/lower_cafeteria) -"asM" = ( -/obj/structure/machinery/power/apc/no_power/north, -/turf/open/floor/strata/floor3, -/area/strata/ag/interior/outpost/canteen/lower_cafeteria) +/area/strata/ag/interior/outpost/canteen) "asN" = ( /obj/structure/largecrate/random, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/outpost/canteen/lower_cafeteria) +/area/strata/ag/interior/outpost/canteen) "asO" = ( /obj/effect/decal/cleanable/blood, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/outpost/canteen/lower_cafeteria) +/area/strata/ag/interior/outpost/canteen) "asP" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/phone{ @@ -4682,26 +4651,22 @@ dir = 1 }, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/outpost/canteen/lower_cafeteria) +/area/strata/ag/interior/outpost/canteen) "asR" = ( /obj/structure/reagent_dispensers/water_cooler, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/outpost/canteen/lower_cafeteria) +/area/strata/ag/interior/outpost/canteen) "asS" = ( /obj/structure/machinery/vending/cigarette/colony, /obj/structure/machinery/light{ dir = 1 }, /turf/open/floor/strata/white_cyan1/east, -/area/strata/ag/interior/outpost/canteen/lower_cafeteria) +/area/strata/ag/interior/outpost/canteen) "asT" = ( /obj/structure/machinery/vending/snack, /turf/open/floor/strata/white_cyan1/east, -/area/strata/ag/interior/outpost/canteen/lower_cafeteria) -"asU" = ( -/obj/structure/machinery/vending/coffee, -/turf/open/floor/strata/white_cyan1/east, -/area/strata/ag/interior/outpost/canteen/lower_cafeteria) +/area/strata/ag/interior/outpost/canteen) "asV" = ( /obj/structure/surface/table/woodentable, /obj/item/device/defibrillator, @@ -4939,7 +4904,7 @@ "atL" = ( /obj/effect/landmark/survivor_spawner, /turf/open/floor/strata/red1, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/security) "atO" = ( /obj/structure/surface/table/reinforced/prison, /obj/structure/machinery/computer/cameras{ @@ -4951,20 +4916,20 @@ /obj/effect/decal/cleanable/blood, /obj/structure/coatrack, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/outpost/canteen/lower_cafeteria) +/area/strata/ag/interior/outpost/canteen) "atQ" = ( /obj/structure/barricade/deployable{ dir = 1 }, /turf/open/floor/strata, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/canteen) "atR" = ( /obj/item/stack/rods, /obj/structure/barricade/deployable{ dir = 1 }, /turf/open/floor/strata, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/canteen) "atS" = ( /obj/item/stack/nanopaste, /turf/open/floor/interior/tatami, @@ -5099,7 +5064,7 @@ /obj/structure/pipes/standard/simple/hidden/cyan, /obj/structure/machinery/door/airlock/multi_tile/almayer/generic, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/mining_outpost/hallways) +/area/strata/ag/interior/mining_outpost/central) "auv" = ( /obj/structure/sign/safety/restrictedarea, /turf/closed/wall/strata_outpost/reinforced, @@ -5163,12 +5128,6 @@ /obj/item/paper_bin, /turf/open/floor/strata/multi_tiles/southeast, /area/strata/ag/interior/outpost/security) -"auK" = ( -/obj/structure/pipes/standard/manifold/hidden/cyan{ - dir = 8 - }, -/turf/open/floor/strata/red1, -/area/strata/ag/interior/outpost/hallways/north) "auL" = ( /obj/structure/pipes/vents/pump{ dir = 8; @@ -5193,32 +5152,32 @@ "auP" = ( /obj/structure/machinery/vending/cigarette/colony, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/outpost/canteen/lower_cafeteria) +/area/strata/ag/interior/outpost/canteen) "auQ" = ( /obj/structure/bed/chair, /turf/open/floor/strata, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/canteen) "auR" = ( /obj/structure/pipes/vents/pump{ dir = 4 }, /turf/open/floor/strata/white_cyan1/east, -/area/strata/ag/interior/outpost/canteen/lower_cafeteria) +/area/strata/ag/interior/outpost/canteen) "auU" = ( /obj/effect/decal/cleanable/blood/gibs/down, /obj/item/dogtag, /turf/open/floor/strata/white_cyan1/east, -/area/strata/ag/interior/outpost/canteen/lower_cafeteria) +/area/strata/ag/interior/outpost/canteen) "auV" = ( /obj/item/clothing/gloves/white, /turf/open/floor/strata/white_cyan1/east, -/area/strata/ag/interior/outpost/canteen/lower_cafeteria) +/area/strata/ag/interior/outpost/canteen) "auX" = ( /obj/structure/pipes/vents/pump{ dir = 8 }, /turf/open/floor/strata/white_cyan1/east, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/canteen) "auY" = ( /obj/effect/decal/cleanable/blood/gibs/limb, /turf/open/floor/strata/fake_wood, @@ -5316,24 +5275,24 @@ /obj/item/weapon/wirerod, /obj/effect/decal/strata_decals/catwalk/prison, /turf/open/floor/greengrid, -/area/strata/ag/interior/mining_outpost/hallways) +/area/strata/ag/interior/mining_outpost/central) "avs" = ( /obj/effect/decal/cleanable/blood, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/mining_outpost/hallways) +/area/strata/ag/interior/mining_outpost/central) "avt" = ( /obj/structure/machinery/light/small{ dir = 1 }, /obj/item/stack/cable_coil/random, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/mining_outpost/hallways) +/area/strata/ag/interior/mining_outpost/central) "avu" = ( /obj/effect/decal/strata_decals/catwalk/prison, /obj/effect/decal/cleanable/blood, /obj/structure/pipes/standard/simple/hidden/cyan, /turf/open/floor/greengrid, -/area/strata/ag/interior/mining_outpost/hallways) +/area/strata/ag/interior/mining_outpost/central) "avv" = ( /obj/structure/machinery/door/airlock/almayer/maint/colony, /turf/open/floor/prison/darkredfull2, @@ -5399,7 +5358,7 @@ dir = 4 }, /turf/open/floor/strata/multi_tiles/southwest, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/canteen) "avJ" = ( /obj/effect/decal/strata_decals/catwalk/prison, /obj/structure/disposalpipe/segment{ @@ -5538,7 +5497,7 @@ "awi" = ( /obj/structure/machinery/vending/snack, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/outpost/canteen/lower_cafeteria) +/area/strata/ag/interior/outpost/canteen) "awj" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/trash/plate{ @@ -5546,24 +5505,12 @@ pixel_y = 3 }, /turf/open/floor/strata/blue1, -/area/strata/ag/interior/outpost/canteen/lower_cafeteria) -"awk" = ( -/obj/structure/bed/chair{ - dir = 8 - }, -/turf/open/floor/strata/white_cyan2/west, -/area/strata/ag/interior/outpost/canteen/lower_cafeteria) +/area/strata/ag/interior/outpost/canteen) "awl" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/reagent_container/food/drinks/cans/space_mountain_wind, /turf/open/floor/strata/red1, -/area/strata/ag/interior/outpost/hallways/north) -"awm" = ( -/obj/structure/bed/chair{ - dir = 8 - }, -/turf/open/floor/strata/white_cyan1/east, -/area/strata/ag/interior/outpost/canteen/lower_cafeteria) +/area/strata/ag/interior/outpost/canteen) "awo" = ( /obj/structure/machinery/door/airlock/almayer/maint/colony{ dir = 2 @@ -5656,7 +5603,7 @@ /obj/structure/pipes/standard/simple/hidden/cyan, /obj/effect/decal/strata_decals/catwalk/prison, /turf/open/floor/greengrid, -/area/strata/ag/interior/mining_outpost/hallways) +/area/strata/ag/interior/mining_outpost/central) "awI" = ( /obj/effect/decal/strata_decals/catwalk/prison, /obj/effect/decal/cleanable/blood{ @@ -5664,7 +5611,7 @@ icon_state = "gib6" }, /turf/open/floor/greengrid, -/area/strata/ag/interior/mining_outpost/hallways) +/area/strata/ag/interior/mining_outpost/central) "awJ" = ( /turf/open/auto_turf/snow/brown_base/layer1, /area/strata/ag/exterior/paths/north_outpost) @@ -5677,7 +5624,7 @@ dir = 4 }, /turf/open/floor/strata, -/area/strata/ag/interior/mining_outpost/hallways) +/area/strata/ag/interior/mining_outpost/central) "awL" = ( /obj/structure/pipes/standard/simple/hidden/cyan{ dir = 4 @@ -5686,7 +5633,7 @@ dir = 1 }, /turf/open/floor/strata/multi_tiles/west, -/area/strata/ag/interior/mining_outpost/hallways) +/area/strata/ag/interior/mining_outpost/central) "awM" = ( /obj/structure/pipes/standard/simple/hidden/cyan{ dir = 4 @@ -5834,7 +5781,7 @@ icon_state = "p_stair_sn_full_cap" }, /turf/open/floor/strata/multi_tiles/southwest, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/engi) "axj" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/device/flashlight/lamp/green, @@ -5928,13 +5875,13 @@ dir = 4 }, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/outpost/canteen/lower_cafeteria) +/area/strata/ag/interior/outpost/canteen) "axF" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/reagent_container/food/drinks/bottle/vodka, /obj/item/reagent_container/food/condiment/peppermill, /turf/open/floor/strata/blue1, -/area/strata/ag/interior/outpost/canteen/lower_cafeteria) +/area/strata/ag/interior/outpost/canteen) "axG" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/trash/plate{ @@ -5944,19 +5891,19 @@ /obj/item/reagent_container/food/condiment/peppermill, /obj/structure/bed/chair, /turf/open/floor/strata/red1, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/canteen) "axH" = ( /obj/structure/pipes/standard/manifold/hidden/cyan{ dir = 8 }, /turf/open/floor/strata, -/area/strata/ag/interior/outpost/canteen/lower_cafeteria) +/area/strata/ag/interior/outpost/canteen) "axI" = ( /obj/structure/pipes/standard/simple/hidden/cyan{ dir = 10 }, /turf/open/floor/strata/white_cyan2/west, -/area/strata/ag/interior/outpost/canteen/lower_cafeteria) +/area/strata/ag/interior/outpost/canteen) "axJ" = ( /obj/item/device/t_scanner, /turf/open/floor/strata/fake_wood, @@ -6113,7 +6060,7 @@ "ayn" = ( /obj/effect/decal/cleanable/blood, /turf/open/floor/strata, -/area/strata/ag/interior/mining_outpost/hallways) +/area/strata/ag/interior/mining_outpost/central) "ayo" = ( /obj/structure/pipes/standard/simple/hidden/cyan, /turf/closed/wall/strata_outpost, @@ -6229,7 +6176,7 @@ /obj/item/stack/rods, /obj/structure/pipes/vents/pump/on, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/engi) "ayM" = ( /obj/structure/machinery/light{ dir = 8 @@ -6262,7 +6209,7 @@ name = "Security Barracks" }, /turf/open/floor/strata, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/security) "ayX" = ( /obj/structure/flora/grass/tallgrass/ice/corner{ dir = 1 @@ -6285,12 +6232,12 @@ "aze" = ( /obj/effect/decal/cleanable/blood, /turf/open/floor/strata, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/canteen) "azf" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/reagent_container/food/condiment/saltshaker, /turf/open/floor/strata/blue1, -/area/strata/ag/interior/outpost/canteen/lower_cafeteria) +/area/strata/ag/interior/outpost/canteen) "azg" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/trash/plate{ @@ -6299,7 +6246,7 @@ }, /obj/item/reagent_container/food/condiment/saltshaker, /turf/open/floor/strata/red1, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/canteen) "azh" = ( /obj/structure/flora/grass/tallgrass/ice/corner{ dir = 9 @@ -6313,14 +6260,7 @@ /obj/effect/decal/cleanable/blood, /obj/effect/decal/cleanable/blood/gibs/core, /turf/open/floor/strata/white_cyan1/east, -/area/strata/ag/interior/outpost/hallways/north) -"azj" = ( -/obj/structure/pipes/standard/simple/hidden/cyan, -/obj/structure/machinery/light{ - dir = 4 - }, -/turf/open/floor/strata, -/area/strata/ag/interior/outpost/canteen/lower_cafeteria) +/area/strata/ag/interior/outpost/canteen) "azl" = ( /obj/item/reagent_container/glass/bucket/janibucket, /obj/structure/machinery/light/small, @@ -6567,7 +6507,7 @@ dir = 5 }, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/engi) "aAs" = ( /obj/structure/barricade/handrail/strata, /obj/structure/pipes/standard/simple/hidden/cyan{ @@ -6654,18 +6594,14 @@ dir = 8 }, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/outpost/canteen/lower_cafeteria) +/area/strata/ag/interior/outpost/canteen) "aAK" = ( /obj/effect/decal/cleanable/blood, /obj/structure/pipes/standard/simple/hidden/cyan{ dir = 4 }, /turf/open/floor/strata/white_cyan1/east, -/area/strata/ag/interior/outpost/canteen/lower_cafeteria) -"aAL" = ( -/obj/structure/pipes/standard/simple/hidden/cyan, -/turf/open/floor/strata, -/area/strata/ag/interior/outpost/canteen/lower_cafeteria) +/area/strata/ag/interior/outpost/canteen) "aAM" = ( /obj/structure/machinery/cm_vending/sorted/marine_food, /turf/open/floor/strata/multi_tiles/southwest, @@ -6788,7 +6724,7 @@ dir = 8 }, /turf/open/floor/strata, -/area/strata/ag/interior/mining_outpost/hallways) +/area/strata/ag/interior/mining_outpost/central) "aBm" = ( /obj/effect/decal/cleanable/blood{ dir = 4; @@ -7004,12 +6940,12 @@ dir = 4 }, /turf/open/floor/strata, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/canteen) "aCj" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/reagent_container/food/drinks/cans/ale, /turf/open/floor/strata/cyan1/east, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/canteen) "aCl" = ( /turf/closed/wall/strata_outpost/reinforced/hull, /area/strata/ag/interior/mining_outpost/central) @@ -7104,7 +7040,7 @@ /obj/structure/pipes/standard/simple/hidden/cyan, /obj/effect/decal/cleanable/blood/gibs/core, /turf/open/floor/strata, -/area/strata/ag/interior/mining_outpost/hallways) +/area/strata/ag/interior/mining_outpost/central) "aCH" = ( /obj/effect/decal/cleanable/blood, /obj/structure/pipes/vents/pump{ @@ -7170,19 +7106,19 @@ "aCU" = ( /obj/structure/machinery/door/airlock/almayer/engineering/colony, /turf/open/floor/strata/multi_tiles/west, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/engi) "aCV" = ( /obj/item/stack/rods, /obj/structure/pipes/standard/simple/hidden/cyan{ dir = 4 }, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/engi) "aCW" = ( /obj/item/stack/sheet/metal/medium_stack, /obj/structure/pipes/standard/manifold/hidden/cyan, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/engi) "aCY" = ( /obj/structure/platform/strata/metal{ dir = 8 @@ -7191,7 +7127,7 @@ dir = 4 }, /turf/open/floor/prison/darkyellowfull2, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/engi) "aDa" = ( /obj/structure/barricade/handrail/strata, /turf/open/auto_turf/snow/brown_base/layer2, @@ -7240,7 +7176,7 @@ }, /obj/effect/decal/cleanable/blood, /turf/open/floor/strata/white_cyan1/east, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/canteen) "aDl" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/trash/plate{ @@ -7249,19 +7185,19 @@ }, /obj/item/reagent_container/food/condiment/peppermill, /turf/open/floor/strata/blue1, -/area/strata/ag/interior/outpost/canteen/lower_cafeteria) +/area/strata/ag/interior/outpost/canteen) "aDn" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/reagent_container/food/condiment/saltshaker, /turf/open/floor/strata/cyan1/east, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/canteen) "aDo" = ( /obj/structure/bed/chair{ dir = 8 }, /obj/effect/decal/cleanable/blood, /turf/open/floor/strata/white_cyan1/east, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/canteen) "aDp" = ( /obj/effect/decal/cleanable/blood{ layer = 3 @@ -7315,9 +7251,6 @@ /obj/effect/landmark/objective_landmark/close, /turf/open/floor/strata/multi_tiles, /area/strata/ag/interior/mining_outpost/central) -"aDE" = ( -/turf/closed/wall/strata_outpost/reinforced/hull, -/area/strata/ag/interior/outpost/canteen/lower_cafeteria) "aDF" = ( /obj/structure/sign/double/maltesefalcon/left, /turf/closed/wall/strata_outpost, @@ -7325,11 +7258,11 @@ "aDG" = ( /obj/structure/machinery/door/airlock/multi_tile/almayer/generic, /turf/open/floor/strata/orange_cover, -/area/strata/ag/interior/mining_outpost/hallways) +/area/strata/ag/interior/mining_outpost/central) "aDH" = ( /obj/structure/pipes/standard/simple/hidden/cyan, /turf/open/floor/strata/orange_cover, -/area/strata/ag/interior/mining_outpost/hallways) +/area/strata/ag/interior/mining_outpost/central) "aDI" = ( /obj/structure/machinery/medical_pod/bodyscanner, /obj/structure/machinery/light/small{ @@ -7459,32 +7392,25 @@ icon_state = "xgib6" }, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/outpost/canteen/lower_cafeteria) +/area/strata/ag/interior/outpost/canteen) "aEh" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/reagent_container/food/snacks/carrotfries, /turf/open/floor/strata/blue1, -/area/strata/ag/interior/outpost/canteen/lower_cafeteria) +/area/strata/ag/interior/outpost/canteen) "aEi" = ( /obj/structure/bed/chair{ dir = 8 }, /obj/effect/decal/cleanable/blood, /turf/open/floor/strata/white_cyan2/west, -/area/strata/ag/interior/outpost/canteen/lower_cafeteria) -"aEj" = ( -/obj/structure/bed/chair{ - dir = 4 - }, -/obj/effect/decal/cleanable/blood, -/turf/open/floor/strata/white_cyan2/west, -/area/strata/ag/interior/outpost/canteen/lower_cafeteria) +/area/strata/ag/interior/outpost/canteen) "aEk" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/reagent_container/food/condiment/peppermill, /obj/item/device/encryptionkey/dutch, /turf/open/floor/strata/cyan1/east, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/canteen) "aEm" = ( /obj/structure/flora/pottedplant{ icon_state = "pottedplant_22" @@ -7693,7 +7619,7 @@ layer = 3.5 }, /turf/open/floor/prison/darkyellowfull2, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/engi) "aFj" = ( /obj/item/lightstick/red/spoke/planted{ layer = 3.1; @@ -7722,7 +7648,7 @@ dir = 1 }, /turf/open/floor/strata/red1, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/security) "aFm" = ( /obj/structure/pipes/standard/manifold/hidden/cyan{ dir = 1 @@ -7731,7 +7657,7 @@ dir = 1 }, /turf/open/floor/strata/red1, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/security) "aFn" = ( /obj/effect/decal/cleanable/blood{ layer = 3 @@ -7740,7 +7666,7 @@ dir = 4 }, /turf/open/floor/strata/red1, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/security) "aFo" = ( /obj/structure/pipes/standard/simple/hidden/cyan{ dir = 4 @@ -7751,7 +7677,7 @@ icon_state = "p_stair_full" }, /turf/open/floor/strata/red1, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/security) "aFp" = ( /obj/effect/decal/cleanable/blood{ icon_state = "xgib2" @@ -7765,7 +7691,7 @@ icon_state = "p_stair_full" }, /turf/open/floor/strata/red1, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/security) "aFq" = ( /obj/effect/decal/cleanable/blood{ icon_state = "gibarm_flesh" @@ -7774,7 +7700,7 @@ dir = 1 }, /turf/open/floor/strata/red1, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/security) "aFr" = ( /obj/effect/decal/cleanable/blood{ icon_state = "xgib6" @@ -7786,7 +7712,7 @@ dir = 4 }, /turf/open/floor/strata/red1, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/security) "aFs" = ( /obj/effect/decal/cleanable/blood{ layer = 3 @@ -7795,7 +7721,7 @@ dir = 4 }, /turf/open/floor/strata, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/canteen) "aFt" = ( /obj/structure/barricade/deployable{ dir = 8 @@ -7807,7 +7733,7 @@ dir = 8 }, /turf/open/floor/strata, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/canteen) "aFu" = ( /obj/structure/pipes/standard/simple/hidden/cyan{ dir = 4 @@ -7817,7 +7743,7 @@ }, /obj/effect/landmark/survivor_spawner, /turf/open/floor/strata/white_cyan1/east, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/canteen) "aFv" = ( /obj/structure/machinery/light, /turf/open/auto_turf/snow/brown_base/layer0, @@ -7825,7 +7751,7 @@ "aFw" = ( /obj/structure/pipes/standard/manifold/fourway/hidden/cyan, /turf/open/floor/strata/white_cyan1/east, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/canteen) "aFx" = ( /obj/structure/bed/chair{ dir = 1 @@ -7837,7 +7763,7 @@ dir = 4 }, /turf/open/floor/strata, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/canteen) "aFz" = ( /obj/structure/machinery/light{ dir = 8 @@ -8013,14 +7939,14 @@ dir = 2 }, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/engi) "aGn" = ( /obj/structure/pipes/standard/simple/hidden/cyan, /obj/structure/machinery/door/airlock/almayer/engineering/colony{ dir = 2 }, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/engi) "aGp" = ( /obj/structure/sign/safety/laser, /turf/closed/wall/strata_outpost/reinforced, @@ -8047,14 +7973,14 @@ dir = 1 }, /turf/open/floor/strata, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/engi) "aGx" = ( /obj/effect/decal/strata_decals/catwalk/prison, /obj/structure/disposalpipe/segment{ dir = 4 }, /turf/open/floor/strata/multi_tiles/southwest, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/engi) "aGy" = ( /obj/effect/decal/strata_decals/catwalk/prison, /obj/structure/disposalpipe/segment{ @@ -8062,7 +7988,7 @@ }, /obj/structure/machinery/light, /turf/open/floor/strata/multi_tiles/southwest, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/engi) "aGz" = ( /obj/structure/stairs/perspective{ color = "#6e6e6e"; @@ -8070,7 +7996,7 @@ icon_state = "p_stair_full" }, /turf/open/floor/strata/multi_tiles/southwest, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/engi) "aGA" = ( /obj/structure/machinery/light{ dir = 4 @@ -8084,11 +8010,11 @@ icon_state = "p_stair_full" }, /turf/open/floor/strata/red1, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/security) "aGC" = ( /obj/structure/machinery/light, /turf/open/floor/strata, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/security) "aGD" = ( /obj/structure/stairs/perspective{ color = "#6e6e6e"; @@ -8096,11 +8022,11 @@ icon_state = "p_stair_full" }, /turf/open/floor/strata, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/security) "aGE" = ( /obj/item/stack/sheet/wood, /turf/open/floor/strata/red1, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/security) "aGF" = ( /obj/effect/decal/cleanable/blood{ icon_state = "xtracks" @@ -8109,13 +8035,13 @@ dir = 8 }, /turf/open/floor/strata, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/canteen) "aGG" = ( /obj/effect/decal/cleanable/blood{ icon_state = "xtracks" }, /turf/open/floor/strata, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/canteen) "aGH" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/trash/plate{ @@ -8124,7 +8050,7 @@ }, /obj/item/reagent_container/food/condiment/saltshaker, /turf/open/floor/strata/orange_cover, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/canteen) "aGI" = ( /obj/structure/bed/chair{ dir = 8 @@ -8132,12 +8058,12 @@ /obj/effect/decal/cleanable/blood, /obj/effect/decal/cleanable/blood/gibs/core, /turf/open/floor/strata/white_cyan2/west, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/canteen) "aGJ" = ( /obj/item/stack/rods, /obj/structure/pipes/standard/simple/hidden/cyan, /turf/open/floor/strata/white_cyan2/west, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/canteen) "aGK" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/trash/plate{ @@ -8146,7 +8072,7 @@ }, /obj/item/reagent_container/food/condiment/saltshaker, /turf/open/floor/prison/darkyellowfull2, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/canteen) "aGM" = ( /obj/item/stack/sandbags, /obj/structure/barricade/handrail/strata{ @@ -8298,13 +8224,13 @@ dir = 4 }, /turf/open/floor/prison/darkyellowfull2, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/engi) "aHs" = ( /obj/structure/pipes/standard/manifold/hidden/cyan{ dir = 4 }, /turf/open/floor/prison/darkyellowfull2, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/engi) "aHt" = ( /obj/structure/flora/pottedplant{ icon_state = "pottedplant_21" @@ -8354,7 +8280,7 @@ "aHD" = ( /obj/structure/platform_decoration/strata/metal, /turf/open/floor/strata, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/admin) "aHJ" = ( /obj/effect/decal/cleanable/blood{ icon_state = "xgibdown1" @@ -8365,28 +8291,28 @@ icon_state = "p_stair_full" }, /turf/open/floor/strata/red1, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/security) "aHK" = ( /obj/structure/pipes/standard/simple/hidden/cyan, /obj/item/stack/sheet/wood, /turf/open/floor/strata/red1, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/security) "aHL" = ( /obj/structure/barricade/wooden{ dir = 8 }, /turf/open/floor/strata/red1, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/security) "aHM" = ( /obj/item/stool, /turf/open/floor/strata, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/canteen) "aHN" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/reagent_container/food/drinks/bottle/vodka, /obj/item/reagent_container/food/condiment/peppermill, /turf/open/floor/prison/darkyellowfull2, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/canteen) "aHO" = ( /obj/structure/machinery/door/airlock/almayer/maint/colony, /turf/open/floor/strata/multi_tiles/west, @@ -8458,7 +8384,7 @@ /obj/effect/landmark/xeno_hive_spawn, /obj/effect/landmark/ert_spawns/groundside_xeno, /turf/open/floor/strata/white_cyan2/west, -/area/strata/ag/interior/mining_outpost/hallways) +/area/strata/ag/interior/mining_outpost/canteen) "aIj" = ( /obj/structure/bed/chair{ dir = 8 @@ -8500,7 +8426,7 @@ dir = 4 }, /turf/open/floor/strata, -/area/strata/ag/interior/mining_outpost/hallways) +/area/strata/ag/interior/mining_outpost/central) "aIp" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/pizzabox/mushroom, @@ -8614,7 +8540,7 @@ "aJc" = ( /obj/structure/pipes/standard/simple/hidden/cyan, /turf/open/floor/strata/blue3/southwest, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/admin) "aJd" = ( /obj/structure/sign/safety/terminal, /turf/closed/wall/strata_outpost, @@ -8622,13 +8548,13 @@ "aJf" = ( /obj/structure/bed/sofa/vert/grey/top, /turf/open/floor/strata/blue1, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/admin) "aJl" = ( /obj/structure/platform/strata/metal{ dir = 4 }, /turf/open/floor/strata, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/admin) "aJm" = ( /obj/structure/surface/table/reinforced/prison, /obj/structure/barricade/handrail/strata{ @@ -8713,23 +8639,23 @@ dir = 8 }, /turf/open/floor/strata, -/area/strata/ag/interior/outpost/canteen/lower_cafeteria) +/area/strata/ag/interior/outpost/canteen) "aJD" = ( /obj/structure/surface/table/reinforced/prison, /turf/open/floor/strata/orange_cover, -/area/strata/ag/interior/outpost/canteen/lower_cafeteria) +/area/strata/ag/interior/outpost/canteen) "aJE" = ( /obj/structure/bed/chair{ dir = 8 }, /obj/effect/decal/cleanable/blood/gibs/core, /turf/open/floor/strata/white_cyan2/west, -/area/strata/ag/interior/outpost/canteen/lower_cafeteria) +/area/strata/ag/interior/outpost/canteen) "aJF" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/reagent_container/food/snacks/cheesecakeslice, /turf/open/floor/prison/darkyellowfull2, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/canteen) "aJG" = ( /obj/structure/machinery/door/airlock/almayer/maint/colony, /turf/open/floor/strata/multi_tiles/southwest, @@ -8778,7 +8704,7 @@ /obj/effect/decal/cleanable/blood/gibs/core, /obj/structure/pipes/standard/simple/hidden/cyan, /turf/open/floor/strata/orange_edge/east, -/area/strata/ag/interior/mining_outpost/hallways) +/area/strata/ag/interior/mining_outpost/central) "aJT" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/reagent_container/food/drinks/bottle/vodka, @@ -8971,7 +8897,7 @@ "aKC" = ( /obj/structure/bed/sofa/vert/grey/bot, /turf/open/floor/strata/blue1, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/admin) "aKD" = ( /obj/structure/surface/table/reinforced/prison, /obj/structure/machinery/computer/communications{ @@ -9029,9 +8955,6 @@ }, /turf/open/floor/strata/multi_tiles/southeast, /area/strata/ag/interior/outpost/admin) -"aKP" = ( -/turf/open/floor/strata/white_cyan1/east, -/area/strata/ag/interior/outpost/hallways/north) "aKQ" = ( /obj/structure/machinery/chem_dispenser/soda/beer, /obj/structure/surface/table/reinforced/prison, @@ -9068,7 +8991,7 @@ dir = 4 }, /turf/open/floor/strata/white_cyan1/east, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/canteen) "aKX" = ( /obj/structure/bed/chair/comfy{ dir = 1 @@ -9137,7 +9060,7 @@ /obj/effect/decal/cleanable/blood, /obj/structure/pipes/standard/simple/hidden/cyan, /turf/open/floor/strata/orange_edge/east, -/area/strata/ag/interior/mining_outpost/hallways) +/area/strata/ag/interior/mining_outpost/central) "aLk" = ( /obj/item/clothing/shoes/snow, /obj/structure/surface/rack, @@ -9170,7 +9093,7 @@ /area/strata/ag/exterior/paths/mining_outpost_exterior) "aLp" = ( /turf/open/floor/strata/multi_tiles/west, -/area/strata/ag/interior/mining_outpost/hallways) +/area/strata/ag/interior/mining_outpost/south_dormitories) "aLq" = ( /turf/open/floor/strata, /area/strata/ag/interior/mining_outpost/south_dormitories) @@ -9351,10 +9274,10 @@ dir = 4 }, /turf/open/floor/strata/blue3/north, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/admin) "aMh" = ( /turf/open/floor/strata/blue4/north, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/admin) "aMi" = ( /obj/structure/machinery/cm_vending/sorted/boozeomat, /turf/open/floor/strata/white_cyan1/east, @@ -9395,12 +9318,12 @@ dir = 4 }, /turf/open/floor/strata/orange_cover, -/area/strata/ag/interior/outpost/canteen/lower_cafeteria) +/area/strata/ag/interior/outpost/canteen) "aMp" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/reagent_container/food/condiment/saltshaker, /turf/open/floor/prison/darkyellowfull2, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/canteen) "aMq" = ( /obj/item/stack/sandbags, /turf/open/floor/strata/white_cyan2/west, @@ -9516,7 +9439,7 @@ dir = 4 }, /turf/open/floor/strata, -/area/strata/ag/interior/mining_outpost/hallways) +/area/strata/ag/interior/mining_outpost/south_dormitories) "aMM" = ( /obj/structure/machinery/computer/station_alert{ dir = 4; @@ -9593,7 +9516,7 @@ "aMY" = ( /obj/structure/pipes/standard/manifold/fourway/hidden/cyan, /turf/open/floor/prison/darkyellowfull2, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/engi) "aMZ" = ( /obj/structure/pipes/standard/simple/hidden/cyan{ dir = 4 @@ -9662,10 +9585,10 @@ "aNs" = ( /obj/structure/pipes/standard/simple/hidden/cyan, /turf/open/floor/strata/blue3/west, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/admin) "aNt" = ( /turf/open/floor/strata/blue3/east, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/admin) "aNu" = ( /turf/closed/wall/strata_outpost/reinforced/hull, /area/strata/ag/interior/outpost/engi) @@ -9678,7 +9601,7 @@ "aNw" = ( /obj/item/stool, /turf/open/floor/strata/white_cyan1/east, -/area/strata/ag/interior/outpost/canteen/lower_cafeteria) +/area/strata/ag/interior/outpost/canteen) "aNx" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/trash/plate{ @@ -9690,7 +9613,7 @@ dir = 4 }, /turf/open/floor/strata/orange_cover, -/area/strata/ag/interior/outpost/canteen/lower_cafeteria) +/area/strata/ag/interior/outpost/canteen) "aNy" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/trash/plate{ @@ -9699,7 +9622,7 @@ }, /obj/item/reagent_container/food/condiment/peppermill, /turf/open/floor/prison/darkyellowfull2, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/canteen) "aNz" = ( /obj/structure/platform_decoration/strata{ dir = 4 @@ -9792,7 +9715,7 @@ }, /obj/structure/pipes/vents/pump, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/mining_outpost/hallways) +/area/strata/ag/interior/mining_outpost/south_dormitories) "aNQ" = ( /obj/item/explosive/grenade/phosphorus, /obj/structure/surface/rack, @@ -9881,12 +9804,12 @@ dir = 1 }, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/engi) "aOf" = ( /obj/structure/pipes/standard/simple/hidden/cyan, /obj/structure/platform_decoration/strata/metal, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/engi) "aOg" = ( /obj/structure/pipes/vents/pump{ dir = 1 @@ -9976,7 +9899,7 @@ dir = 4 }, /turf/open/floor/strata/blue3/west, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/admin) "aOy" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/reagent_container/food/drinks/cans/aspen, @@ -9984,7 +9907,7 @@ dir = 8 }, /turf/open/floor/strata/orange_cover, -/area/strata/ag/interior/outpost/canteen/lower_cafeteria) +/area/strata/ag/interior/outpost/canteen) "aOz" = ( /obj/item/lightstick/red/planted, /obj/structure/platform/strata/metal, @@ -9993,7 +9916,7 @@ "aOA" = ( /obj/effect/decal/cleanable/vomit, /turf/open/floor/strata/white_cyan2/west, -/area/strata/ag/interior/outpost/canteen/lower_cafeteria) +/area/strata/ag/interior/outpost/canteen) "aOB" = ( /obj/structure/platform/strata/metal, /turf/open/auto_turf/snow/brown_base/layer1, @@ -10016,7 +9939,7 @@ /obj/item/reagent_container/food/drinks/cans/sodawater, /obj/effect/landmark/objective_landmark/science, /turf/open/floor/prison/darkyellowfull2, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/canteen) "aOJ" = ( /obj/structure/pipes/standard/simple/hidden/cyan, /turf/open/floor/strata/white_cyan1/east, @@ -10094,12 +10017,12 @@ "aPa" = ( /obj/structure/pipes/standard/simple/hidden/cyan, /turf/open/floor/strata, -/area/strata/ag/interior/mining_outpost/hallways) +/area/strata/ag/interior/mining_outpost/south_dormitories) "aPb" = ( /obj/structure/filingcabinet, /obj/effect/landmark/objective_landmark/close, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/mining_outpost/hallways) +/area/strata/ag/interior/mining_outpost/south_dormitories) "aPc" = ( /obj/structure/platform/strata/metal{ dir = 8 @@ -10145,7 +10068,7 @@ }, /obj/structure/pipes/standard/simple/hidden/cyan, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/mining_outpost/hallways) +/area/strata/ag/interior/mining_outpost/south_dormitories) "aPm" = ( /turf/closed/wall/strata_outpost/reinforced/hull, /area/strata/ag/interior/outpost/admin) @@ -10245,14 +10168,14 @@ dir = 8 }, /turf/open/floor/strata/fake_wood, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/engi) "aPF" = ( /obj/structure/pipes/standard/simple/hidden/cyan, /obj/structure/platform/strata/metal{ dir = 4 }, /turf/open/floor/strata/fake_wood, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/engi) "aPG" = ( /obj/structure/flora/pottedplant{ icon_state = "pottedplant_22" @@ -10357,7 +10280,7 @@ dir = 1 }, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/engi/drome) "aPX" = ( /obj/structure/platform/strata/metal, /turf/open/auto_turf/snow/brown_base/layer4, @@ -10382,7 +10305,7 @@ dir = 4 }, /turf/open/floor/strata/blue1, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/admin) "aQc" = ( /obj/structure/barricade/wooden{ dir = 1 @@ -10398,15 +10321,15 @@ dir = 8 }, /turf/open/floor/strata, -/area/strata/ag/interior/outpost/canteen/lower_cafeteria) +/area/strata/ag/interior/outpost/canteen) "aQe" = ( /obj/structure/bed/chair, /turf/open/floor/strata/white_cyan1/east, -/area/strata/ag/interior/outpost/canteen/lower_cafeteria) +/area/strata/ag/interior/outpost/canteen) "aQf" = ( /obj/effect/landmark/survivor_spawner, /turf/open/floor/strata/white_cyan1/east, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/canteen) "aQg" = ( /obj/structure/platform/strata/metal{ dir = 8 @@ -10428,7 +10351,7 @@ }, /obj/structure/barricade/deployable, /turf/open/floor/strata, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/canteen) "aQj" = ( /obj/structure/pipes/standard/simple/hidden/cyan{ dir = 4 @@ -10614,7 +10537,7 @@ }, /obj/structure/machinery/light, /turf/open/floor/strata/white_cyan1/east, -/area/strata/ag/interior/mining_outpost/hallways) +/area/strata/ag/interior/mining_outpost/canteen) "aQY" = ( /obj/structure/barricade/handrail/strata{ dir = 8 @@ -10687,7 +10610,7 @@ dir = 8 }, /turf/open/floor/strata/blue1, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/admin) "aRn" = ( /obj/structure/barricade/wooden{ dir = 8 @@ -10698,7 +10621,7 @@ "aRo" = ( /obj/structure/largecrate/random, /turf/open/floor/strata, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/canteen) "aRp" = ( /obj/structure/flora/grass/tallgrass/ice/corner{ dir = 1 @@ -10709,7 +10632,7 @@ /obj/structure/barricade/deployable, /obj/structure/machinery/m56d_hmg, /turf/open/floor/strata, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/canteen) "aRr" = ( /obj/structure/machinery/door/airlock/almayer/maint/colony, /turf/open/floor/strata/multi_tiles/west, @@ -10769,13 +10692,13 @@ "aRF" = ( /obj/structure/pipes/standard/manifold/hidden/cyan, /turf/open/floor/strata, -/area/strata/ag/interior/mining_outpost/hallways) +/area/strata/ag/interior/mining_outpost/south_dormitories) "aRG" = ( /obj/structure/pipes/standard/manifold/hidden/cyan{ dir = 1 }, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/mining_outpost/hallways) +/area/strata/ag/interior/mining_outpost/south_dormitories) "aRI" = ( /obj/structure/noticeboard{ pixel_y = 32 @@ -10784,19 +10707,19 @@ dir = 4 }, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/mining_outpost/hallways) +/area/strata/ag/interior/mining_outpost/south_dormitories) "aRJ" = ( /obj/structure/pipes/standard/manifold/hidden/cyan{ dir = 1 }, /turf/open/floor/strata/fake_wood, -/area/strata/ag/interior/mining_outpost/hallways) +/area/strata/ag/interior/mining_outpost/south_dormitories) "aRK" = ( /obj/structure/pipes/standard/simple/hidden/cyan{ dir = 4 }, /turf/open/floor/strata/fake_wood, -/area/strata/ag/interior/mining_outpost/hallways) +/area/strata/ag/interior/mining_outpost/south_dormitories) "aRL" = ( /obj/structure/pipes/standard/simple/hidden/cyan{ dir = 4 @@ -10843,14 +10766,14 @@ dir = 4 }, /turf/open/floor/strata/fake_wood, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/engi) "aSb" = ( /obj/structure/pipes/standard/simple/hidden/cyan, /obj/structure/platform_decoration/strata/metal{ dir = 8 }, /turf/open/floor/strata/fake_wood, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/engi) "aSc" = ( /obj/structure/pipes/standard/simple/hidden/cyan{ dir = 6 @@ -10902,7 +10825,7 @@ /obj/item/paper_bin, /obj/item/tool/pen/blue, /turf/open/floor/strata/blue1, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/admin) "aSn" = ( /obj/item/reagent_container/spray/cleaner, /obj/structure/surface/rack, @@ -10931,10 +10854,6 @@ /obj/item/reagent_container/food/snacks/chawanmushi, /turf/open/floor/strata/multi_tiles/southeast, /area/strata/ag/interior/outpost/canteen/bar) -"aSr" = ( -/obj/structure/pipes/standard/simple/hidden/cyan, -/turf/open/floor/strata/multi_tiles/southeast, -/area/strata/ag/interior/outpost/hallways/north) "aSs" = ( /obj/structure/machinery/light/small{ dir = 1 @@ -11041,7 +10960,7 @@ "aSS" = ( /obj/structure/machinery/door/airlock/multi_tile/almayer/generic, /turf/open/floor/strata/multi_tiles/southeast, -/area/strata/ag/interior/mining_outpost/hallways) +/area/strata/ag/interior/mining_outpost/south_dormitories) "aST" = ( /turf/open/floor/strata/multi_tiles/southeast, /area/strata/ag/interior/landing_zones/near_lz1) @@ -11054,13 +10973,13 @@ "aSV" = ( /obj/structure/machinery/light/small, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/mining_outpost/hallways) +/area/strata/ag/interior/mining_outpost/south_dormitories) "aSW" = ( /obj/structure/pipes/vents/pump{ dir = 1 }, /turf/open/floor/strata, -/area/strata/ag/interior/mining_outpost/hallways) +/area/strata/ag/interior/mining_outpost/south_dormitories) "aSX" = ( /obj/effect/decal/cleanable/blood/oil, /obj/structure/machinery/landinglight/ds2{ @@ -11071,7 +10990,7 @@ "aSY" = ( /obj/structure/largecrate/random/case/double, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/mining_outpost/hallways) +/area/strata/ag/interior/mining_outpost/south_dormitories) "aSZ" = ( /obj/structure/surface/rack, /obj/item/inflatable, @@ -11242,7 +11161,7 @@ dir = 8 }, /turf/open/floor/strata/blue3/west, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/admin) "aTR" = ( /obj/effect/blocker/sorokyne_cold_water, /obj/structure/platform/strata{ @@ -11255,7 +11174,7 @@ dir = 8 }, /turf/open/floor/strata/blue3/east, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/admin) "aTU" = ( /obj/structure/machinery/light{ dir = 4 @@ -11300,7 +11219,7 @@ dir = 4 }, /turf/open/floor/strata/orange_cover, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/canteen) "aUc" = ( /obj/structure/sign/safety/galley, /turf/closed/wall/strata_outpost, @@ -11630,7 +11549,7 @@ icon_state = "p_stair_sn_full_cap" }, /turf/open/floor/strata, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/canteen) "aVE" = ( /obj/structure/surface/rack, /obj/item/book/manual/barman_recipes, @@ -11643,7 +11562,7 @@ icon_state = "p_stair_sn_full_cap" }, /turf/open/floor/strata/multi_tiles/west, -/area/strata/ag/interior/outpost/canteen) +/area/strata/ag/interior/outpost/engi/drome) "aVH" = ( /obj/effect/decal/strata_decals/catwalk/prison, /turf/open/floor/strata/orange_cover, @@ -11818,7 +11737,7 @@ "aWH" = ( /obj/structure/pipes/standard/simple/hidden/cyan, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/canteen) "aWK" = ( /obj/structure/stairs/perspective{ color = "#6e6e6e"; @@ -11838,12 +11757,6 @@ /obj/structure/pipes/vents/pump, /turf/open/floor/strata, /area/strata/ag/interior/outpost/admin) -"aWQ" = ( -/obj/structure/platform_decoration/strata/metal{ - dir = 8 - }, -/turf/open/floor/strata, -/area/strata/ag/interior/outpost/hallways/north) "aWR" = ( /obj/structure/platform/strata/metal{ dir = 1 @@ -12161,7 +12074,7 @@ /area/strata/ug/interior/jungle/structures/research) "aYB" = ( /turf/open/floor/strata/multi_tiles, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/foyer) "aYD" = ( /obj/structure/stairs/perspective{ color = "#6e6e6e"; @@ -12170,18 +12083,18 @@ layer = 3.5 }, /turf/open/floor/strata/multi_tiles, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/foyer) "aYE" = ( /obj/structure/pipes/standard/simple/hidden/cyan, /turf/open/floor/strata/multi_tiles, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/foyer) "aYH" = ( /obj/effect/decal/cleanable/blood{ icon_state = "gib6" }, /obj/structure/pipes/standard/simple/hidden/cyan, /turf/open/floor/strata/blue1, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/admin) "aYO" = ( /obj/structure/pipes/vents/pump, /turf/open/floor/strata/floor3, @@ -12195,7 +12108,7 @@ dir = 9 }, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/admin) "aYT" = ( /obj/structure/stairs/perspective{ color = "#6e6e6e"; @@ -12203,7 +12116,7 @@ icon_state = "p_stair_full" }, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/admin) "aYW" = ( /obj/item/stack/rods, /obj/structure/pipes/standard/simple/hidden/cyan{ @@ -12527,7 +12440,7 @@ name = "\improper Airlock" }, /turf/open/floor/strata/multi_tiles/west, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/foyer) "bap" = ( /obj/structure/bed/chair{ dir = 4 @@ -12539,13 +12452,13 @@ dir = 4 }, /turf/open/floor/strata/cyan2/east, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/med) "bar" = ( /obj/structure/pipes/standard/simple/hidden/cyan{ dir = 4 }, /turf/open/floor/strata/multi_tiles, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/foyer) "bas" = ( /obj/structure/machinery/light{ dir = 1 @@ -12560,7 +12473,7 @@ dir = 1 }, /turf/open/floor/strata/multi_tiles/west, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/foyer) "bau" = ( /obj/structure/stairs/perspective{ color = "#6e6e6e"; @@ -12571,7 +12484,7 @@ dir = 4 }, /turf/open/floor/strata/multi_tiles, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/foyer) "bav" = ( /obj/item/lightstick/red/planted, /turf/open/auto_turf/snow/brown_base/layer1, @@ -12637,17 +12550,17 @@ "baN" = ( /obj/structure/pipes/standard/manifold/hidden/cyan, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/foyer) "baQ" = ( /obj/structure/pipes/standard/manifold/fourway/hidden/cyan, /turf/open/floor/strata/multi_tiles, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/foyer) "baR" = ( /obj/structure/pipes/standard/manifold/hidden/cyan{ dir = 1 }, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/foyer) "baS" = ( /obj/effect/decal/cleanable/blood{ icon_state = "gib6" @@ -12656,7 +12569,7 @@ dir = 4 }, /turf/open/floor/strata/fake_wood, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/foyer) "baT" = ( /obj/structure/platform/strata/metal{ dir = 1 @@ -12674,7 +12587,7 @@ dir = 4 }, /turf/open/floor/strata/fake_wood, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/foyer) "baX" = ( /obj/structure/barricade/handrail/strata{ dir = 8 @@ -12695,23 +12608,19 @@ "bbc" = ( /obj/structure/pipes/standard/manifold/fourway/hidden/cyan, /turf/open/floor/strata, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/foyer) "bbd" = ( /obj/structure/pipes/standard/simple/hidden/cyan{ dir = 4 }, /turf/open/floor/strata/blue1, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/foyer) "bbe" = ( /obj/structure/barricade/handrail/strata{ dir = 4 }, /turf/open/auto_turf/snow/brown_base/layer2, /area/strata/ag/interior/outpost/engi/drome) -"bbf" = ( -/obj/structure/pipes/standard/manifold/hidden/cyan, -/turf/open/floor/strata/blue1, -/area/strata/ag/interior/outpost/hallways/north) "bbh" = ( /obj/structure/flora/grass/tallgrass/ice/corner{ dir = 1 @@ -12739,7 +12648,7 @@ dir = 4 }, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/admin) "bbn" = ( /obj/structure/curtain/medical, /turf/open/floor/strata/floor2, @@ -13250,7 +13159,7 @@ /obj/structure/surface/table/reinforced/prison, /obj/item/toy/deck, /turf/open/floor/strata, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/admin) "bdK" = ( /obj/structure/barricade/handrail/strata, /obj/structure/bed/chair/comfy{ @@ -13260,7 +13169,7 @@ dir = 4 }, /turf/open/floor/strata, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/admin) "bdL" = ( /turf/open/auto_turf/snow/brown_base/layer0, /area/strata/ag/exterior/marsh/island_marshes) @@ -13337,7 +13246,7 @@ dir = 8 }, /turf/open/floor/strata, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/admin) "bdZ" = ( /obj/structure/platform/strata{ dir = 1 @@ -13376,7 +13285,7 @@ icon_state = "p_stair_full" }, /turf/open/floor/strata/orange_cover, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/admin) "beh" = ( /obj/structure/stairs/perspective{ color = "#6e6e6e"; @@ -13387,7 +13296,7 @@ dir = 4 }, /turf/open/floor/strata/orange_cover, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/admin) "bei" = ( /obj/effect/decal/cleanable/blood/oil, /obj/structure/machinery/power/apc/no_power/north, @@ -13414,7 +13323,7 @@ icon_state = "pottedplant_21" }, /turf/open/floor/strata, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/admin) "ben" = ( /turf/open/auto_turf/snow/brown_base/layer1, /area/strata/ag/exterior/marsh/island_marshes) @@ -13753,7 +13662,7 @@ "bfD" = ( /obj/structure/pipes/standard/simple/hidden/cyan, /turf/open/floor/strata/fake_wood, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/med) "bfE" = ( /obj/structure/platform/strata/metal{ dir = 8 @@ -13827,26 +13736,26 @@ dir = 1 }, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/engi/drome) "bgb" = ( /obj/structure/platform_decoration/strata/metal{ dir = 4 }, /obj/structure/pipes/standard/simple/hidden/cyan, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/engi/drome) "bgc" = ( /obj/structure/platform_decoration/strata/metal{ dir = 8 }, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/engi/drome) "bge" = ( /obj/structure/platform_decoration/strata/metal{ dir = 4 }, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/engi/drome) "bgf" = ( /obj/structure/machinery/light{ dir = 8 @@ -13856,7 +13765,7 @@ "bgg" = ( /obj/structure/pipes/standard/manifold/hidden/cyan, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/engi/drome) "bgh" = ( /turf/open/auto_turf/snow/brown_base/layer4, /area/strata/ag/exterior/paths/flight_control_exterior) @@ -13940,18 +13849,12 @@ }, /turf/open/auto_turf/snow/brown_base/layer0, /area/strata/ag/exterior/marsh/spring_marshes) -"bgz" = ( -/obj/structure/pipes/standard/simple/hidden/cyan{ - dir = 4 - }, -/turf/open/floor/strata/floor3/east, -/area/strata/ag/interior/outpost/canteen) "bgA" = ( /obj/structure/pipes/standard/simple/hidden/cyan{ dir = 10 }, /turf/open/floor/strata/floor3/east, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/engi/drome) "bgB" = ( /obj/structure/platform/strata, /turf/open/auto_turf/snow/brown_base/layer2, @@ -14288,7 +14191,7 @@ "bib" = ( /obj/structure/inflatable/popped, /turf/open/floor/strata/multi_tiles, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/foyer) "bic" = ( /obj/item/lightstick/red/planted, /turf/open/auto_turf/snow/brown_base/layer1, @@ -14311,7 +14214,7 @@ /obj/structure/pipes/standard/simple/hidden/cyan, /obj/structure/inflatable/popped, /turf/open/floor/strata/multi_tiles, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/foyer) "bij" = ( /obj/structure/machinery/space_heater, /obj/structure/machinery/light{ @@ -14547,7 +14450,7 @@ dir = 6 }, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/engi/drome) "bjj" = ( /turf/open/auto_turf/ice/layer0, /area/strata/ag/exterior/marsh/river) @@ -14580,7 +14483,7 @@ name = "\improper Airlock" }, /turf/open/floor/strata/floor3/east, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/engi/drome) "bjr" = ( /turf/open/asphalt/cement, /area/strata/ug/interior/outpost/platform) @@ -14930,10 +14833,7 @@ "bkY" = ( /obj/structure/pipes/standard/simple/hidden/cyan, /turf/open/floor/strata/multi_tiles/southeast, -/area/strata/ag/interior/outpost/hallways/south) -"bkZ" = ( -/turf/open/floor/strata/white_cyan2/west, -/area/strata/ag/interior/outpost/canteen/personal_storage) +/area/strata/ag/interior/outpost/med) "bla" = ( /obj/item/lightstick/red/planted, /turf/open/auto_turf/snow/brown_base/layer3, @@ -15140,7 +15040,7 @@ /obj/item/tool/pen/blue, /obj/structure/pipes/standard/simple/hidden/cyan, /turf/open/floor/strata/fake_wood, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/admin) "blS" = ( /obj/structure/pipes/standard/simple/hidden/cyan, /turf/open/floor/strata/floor3, @@ -15176,9 +15076,6 @@ /obj/structure/largecrate/random/barrel/red, /turf/open/auto_turf/snow/brown_base/layer1, /area/strata/ag/exterior/marsh/crash) -"bmb" = ( -/turf/open/floor/strata/orange_cover, -/area/strata/ag/interior/outpost/canteen) "bmc" = ( /obj/effect/decal/cleanable/blood/oil, /obj/structure/machinery/light/small, @@ -15191,13 +15088,6 @@ /obj/structure/machinery/door/airlock/almayer/engineering/colony, /turf/open/floor/strata/multi_tiles/southwest, /area/strata/ag/interior/outpost/admin) -"bmk" = ( -/obj/effect/decal/strata_decals/catwalk/prison, -/obj/structure/disposalpipe/segment{ - dir = 8 - }, -/turf/open/floor/strata/multi_tiles/southwest, -/area/strata/ag/interior/outpost/hallways/south) "bml" = ( /obj/structure/machinery/door/airlock/almayer/maint/colony{ dir = 2 @@ -15231,7 +15121,7 @@ dir = 8 }, /turf/open/floor/strata/floor3/east, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/engi/drome) "bmt" = ( /obj/structure/machinery/light/small{ dir = 8 @@ -15344,7 +15234,7 @@ "bmX" = ( /obj/structure/bedsheetbin, /turf/open/floor/strata/blue1, -/area/strata/ag/interior/outpost/canteen/personal_storage) +/area/strata/ag/interior/outpost/canteen) "bmY" = ( /obj/structure/flora/grass/tallgrass/ice/corner{ dir = 10 @@ -15976,7 +15866,7 @@ dir = 8 }, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/engi/drome) "bpy" = ( /obj/effect/decal/cleanable/blood/oil, /turf/open/auto_turf/snow/brown_base/layer1, @@ -16001,7 +15891,7 @@ "bpE" = ( /obj/item/storage/briefcase, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/admin) "bpF" = ( /obj/structure/closet/secure_closet/medical3{ req_access = null @@ -16049,7 +15939,7 @@ }, /obj/structure/pipes/standard/simple/hidden/cyan, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/engi/drome) "bpN" = ( /obj/structure/stairs/perspective{ color = "#6e6e6e"; @@ -16057,7 +15947,7 @@ icon_state = "p_stair_full" }, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/engi/drome) "bpO" = ( /obj/structure/stairs/perspective{ color = "#6e6e6e"; @@ -16068,7 +15958,7 @@ dir = 4 }, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/engi/drome) "bpP" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/paper_bin, @@ -16148,12 +16038,6 @@ /obj/item/stack/medical/splint, /turf/open/auto_turf/snow/brown_base/layer2, /area/strata/ag/exterior/paths/south_outpost) -"bqh" = ( -/obj/structure/bed/chair{ - dir = 4 - }, -/turf/open/floor/strata/floor3/east, -/area/strata/ag/interior/outpost/canteen) "bqo" = ( /obj/structure/pipes/standard/simple/hidden/cyan, /turf/open/auto_turf/snow/brown_base/layer3, @@ -16572,11 +16456,11 @@ /area/strata/ag/exterior/paths/south_outpost) "bsv" = ( /turf/open/floor/strata/white_cyan3/west, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/med) "bsw" = ( /obj/structure/pipes/standard/simple/hidden/cyan, /turf/open/floor/strata/white_cyan3/east, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/med) "bsx" = ( /obj/structure/machinery/cm_vending/sorted/medical/wall_med/limited, /turf/closed/wall/strata_outpost, @@ -16607,7 +16491,10 @@ "bsD" = ( /obj/effect/decal/cleanable/blood, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/admin) +"bsF" = ( +/turf/open/floor/strata/floor3, +/area/strata/ag/interior/outpost/engi/drome) "bsG" = ( /obj/structure/bookcase{ icon_state = "book-5" @@ -16714,7 +16601,7 @@ dir = 4 }, /turf/open/floor/strata/orange_cover, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/engi/drome) "bsZ" = ( /obj/structure/platform_decoration/strata{ dir = 4 @@ -17364,7 +17251,7 @@ "bwf" = ( /obj/structure/machinery/light/small, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/outpost/canteen/lower_cafeteria) +/area/strata/ag/interior/outpost/canteen) "bwg" = ( /obj/structure/platform_decoration/strata{ dir = 4 @@ -17395,7 +17282,7 @@ icon_state = "pottedplant_22" }, /turf/open/floor/strata, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/engi/drome) "bwm" = ( /obj/structure/platform_decoration/strata{ dir = 8 @@ -17422,7 +17309,7 @@ icon_state = "pottedplant_22" }, /turf/open/floor/strata/floor3/east, -/area/strata/ag/interior/outpost/canteen) +/area/strata/ag/interior/outpost/engi/drome) "bwr" = ( /obj/structure/platform/strata{ dir = 1 @@ -17765,7 +17652,7 @@ dir = 4 }, /turf/open/floor/strata/white_cyan3/west, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/med) "bxW" = ( /obj/structure/platform/strata{ dir = 1 @@ -17778,7 +17665,7 @@ "bxX" = ( /obj/structure/pipes/standard/manifold/hidden/cyan, /turf/open/floor/strata/white_cyan3/northeast, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/med) "bxY" = ( /obj/structure/flora/grass/tallgrass/ice/corner{ dir = 10 @@ -17981,7 +17868,7 @@ "bzm" = ( /obj/structure/pipes/standard/simple/hidden/cyan, /turf/open/floor/strata/floor3/east, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/engi/drome) "bzn" = ( /obj/effect/spawner/random/toolbox, /obj/structure/surface/rack, @@ -18009,7 +17896,7 @@ dir = 8 }, /turf/open/floor/strata/multi_tiles/southwest, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/engi/drome) "bzs" = ( /obj/structure/pipes/standard/simple/hidden/cyan{ dir = 4 @@ -18191,7 +18078,7 @@ dir = 4 }, /turf/open/floor/strata/fake_wood, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/med) "bBg" = ( /obj/effect/decal/strata_decals/catwalk/prison, /turf/open/floor/strata/red1, @@ -18206,7 +18093,7 @@ dir = 4 }, /turf/open/floor/strata/white_cyan4/east, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/med) "bBN" = ( /obj/structure/flora/bush/ausbushes/grassybush{ icon_state = "leafybush_2" @@ -18227,14 +18114,14 @@ /area/strata/ug/interior/jungle/structures/research) "bBT" = ( /turf/open/floor/strata/white_cyan3, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/med) "bBU" = ( /obj/structure/pipes/standard/simple/hidden/cyan, /turf/open/floor/strata/white_cyan3/southwest, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/med) "bBV" = ( /turf/open/floor/strata/white_cyan3/east, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/med) "bBX" = ( /obj/structure/surface/table/reinforced/prison, /obj/structure/machinery/computer/communications{ @@ -18276,7 +18163,7 @@ }, /obj/structure/machinery/light, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/mining_outpost/hallways) +/area/strata/ag/interior/mining_outpost/central) "bCm" = ( /obj/structure/filingcabinet, /obj/structure/machinery/light/small{ @@ -18307,14 +18194,14 @@ /area/strata/ag/interior/outpost/med) "bCp" = ( /turf/open/floor/strata/floor3, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/med) "bCq" = ( /turf/open/floor/strata/fake_wood, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/med) "bCt" = ( /obj/structure/pipes/standard/simple/hidden/cyan, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/engi/drome) "bCv" = ( /obj/structure/machinery/door/airlock/almayer/medical/colony{ dir = 1; @@ -18393,7 +18280,7 @@ dir = 1 }, /turf/open/floor/strata/orange_cover, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/engi/drome) "bDl" = ( /obj/structure/prop/ice_colony/surveying_device/measuring_device{ dir = 8; @@ -18415,7 +18302,7 @@ dir = 9 }, /turf/open/floor/strata/multi_tiles/southwest, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/engi/drome) "bDq" = ( /obj/structure/barricade/handrail/strata, /turf/open/floor/strata/floor3/east, @@ -18458,7 +18345,7 @@ "bDA" = ( /obj/structure/surface/table/reinforced/prison, /turf/open/floor/strata/floor3/east, -/area/strata/ag/interior/outpost/canteen) +/area/strata/ag/interior/outpost/engi/drome) "bDB" = ( /obj/item/trash/plate{ pixel_x = 1; @@ -18663,7 +18550,7 @@ id_tag = "mining_outpost_pump" }, /turf/open/floor/strata/cyan3/west, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/med) "bGg" = ( /obj/structure/platform/strata{ dir = 8 @@ -18693,7 +18580,7 @@ "bGs" = ( /obj/structure/pipes/standard/simple/hidden/cyan, /turf/open/floor/strata/white_cyan3/west, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/med) "bGx" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/phone{ @@ -18755,7 +18642,7 @@ dir = 4 }, /turf/open/floor/strata/fake_wood, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/med) "bHr" = ( /obj/structure/surface/table/reinforced/prison, /obj/effect/landmark/item_pool_spawner/survivor_ammo/buckshot, @@ -18833,7 +18720,7 @@ dir = 8 }, /turf/open/floor/strata/floor3/east, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/engi/drome) "bHS" = ( /obj/effect/decal/warning_stripes{ icon_state = "S" @@ -18867,7 +18754,7 @@ /obj/structure/surface/rack, /obj/item/stack/sheet/glass, /turf/open/floor/strata/floor3/east, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/engi/drome) "bHY" = ( /obj/structure/closet/secure_closet/personal, /turf/open/floor/strata/blue1, @@ -18875,7 +18762,7 @@ "bIb" = ( /obj/effect/decal/cleanable/ash, /turf/open/floor/strata/floor3/east, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/engi/drome) "bIp" = ( /obj/structure/pipes/vents/pump{ dir = 4 @@ -18997,12 +18884,6 @@ }, /turf/open/floor/strata/floor3/east, /area/strata/ag/interior/outside/administration) -"bJz" = ( -/obj/structure/machinery/light{ - dir = 4 - }, -/turf/open/floor/strata/white_cyan2/west, -/area/strata/ag/interior/outpost/canteen/personal_storage) "bJC" = ( /obj/effect/decal/cleanable/cobweb, /turf/open/floor/strata/fake_wood, @@ -19062,7 +18943,7 @@ "bKa" = ( /obj/item/clipboard, /turf/open/floor/strata/floor3/east, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/med) "bKb" = ( /obj/effect/landmark/structure_spawner/setup/distress/xeno_weed_node, /turf/open/floor/strata/multi_tiles, @@ -19185,7 +19066,7 @@ }, /obj/structure/pipes/standard/simple/hidden/cyan, /turf/open/floor/strata/multi_tiles/southwest, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/engi/drome) "bLo" = ( /turf/open/floor/strata/multi_tiles/southeast, /area/strata/ag/interior/outpost/engi/drome) @@ -19201,7 +19082,7 @@ /obj/item/device/radio, /obj/structure/pipes/standard/simple/hidden/cyan, /turf/open/floor/strata/orange_cover, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/engi/drome) "bLB" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/paper_bin, @@ -19247,7 +19128,7 @@ "bMF" = ( /obj/structure/window/framed/strata/reinforced, /turf/open/floor/strata/multi_tiles/west, -/area/strata/ag/interior/outpost/canteen/personal_storage) +/area/strata/ag/interior/outpost/canteen) "bMG" = ( /obj/structure/reagent_dispensers/fueltank, /turf/open/asphalt/cement/cement4, @@ -19280,7 +19161,7 @@ /obj/item/reagent_container/food/snacks/meatballsoup, /obj/effect/landmark/item_pool_spawner/survivor_ammo/buckshot, /turf/open/floor/strata/cyan1/east, -/area/strata/ag/interior/mining_outpost/hallways) +/area/strata/ag/interior/mining_outpost/canteen) "bNa" = ( /obj/structure/machinery/door/airlock/almayer/generic, /turf/open/floor/strata/cyan2/east, @@ -19427,9 +19308,6 @@ /obj/structure/machinery/vending/coffee, /turf/open/floor/strata/orange_cover, /area/strata/ag/interior/outpost/engi/drome) -"bPf" = ( -/turf/closed/wall/strata_outpost, -/area/strata/ag/interior/outpost/canteen/personal_storage) "bPn" = ( /obj/structure/bed/chair/office/dark{ dir = 1 @@ -19490,17 +19368,14 @@ dir = 1 }, /turf/open/floor/strata/blue1, -/area/strata/ag/interior/outpost/canteen/personal_storage) +/area/strata/ag/interior/outpost/canteen) "bPY" = ( /obj/structure/closet/secure_closet/personal, /obj/structure/machinery/light{ dir = 1 }, /turf/open/floor/prison/darkyellowfull2, -/area/strata/ag/interior/outpost/canteen/personal_storage) -"bPZ" = ( -/turf/open/floor/strata/multi_tiles/southwest, -/area/strata/ag/interior/outpost/canteen/personal_storage) +/area/strata/ag/interior/outpost/canteen) "bQa" = ( /obj/structure/pipes/standard/manifold/hidden/cyan{ dir = 1 @@ -19567,14 +19442,11 @@ "bQS" = ( /obj/item/stool, /turf/open/floor/strata/white_cyan2/west, -/area/strata/ag/interior/outpost/canteen/personal_storage) +/area/strata/ag/interior/outpost/canteen) "bQT" = ( /obj/effect/decal/cleanable/blood, /turf/open/floor/strata/multi_tiles/southwest, -/area/strata/ag/interior/outpost/hallways/north) -"bQU" = ( -/turf/open/floor/strata/floor3, -/area/strata/ag/interior/outpost/canteen/personal_storage) +/area/strata/ag/interior/outpost/canteen) "bRb" = ( /obj/effect/blocker/sorokyne_cold_water, /obj/structure/platform/strata{ @@ -19751,12 +19623,6 @@ /obj/effect/landmark/yautja_teleport, /turf/open/auto_turf/ice/layer1, /area/strata/ag/exterior/paths/south_outpost) -"bUb" = ( -/obj/structure/machinery/light{ - dir = 4 - }, -/turf/open/floor/strata/blue1, -/area/strata/ag/interior/outpost/hallways/north) "bUd" = ( /obj/structure/barricade/handrail/strata{ dir = 1 @@ -19783,12 +19649,6 @@ "bUo" = ( /turf/open/floor/strata/floor3/east, /area/strata/ug/interior/jungle/structures/research) -"bUp" = ( -/obj/structure/flora/pottedplant{ - icon_state = "pottedplant_21" - }, -/turf/open/floor/strata/floor2, -/area/strata/ag/interior/outpost/hallways/south) "bUs" = ( /obj/structure/pipes/standard/simple/hidden/cyan{ dir = 4 @@ -19798,19 +19658,19 @@ "bUt" = ( /obj/structure/pipes/standard/manifold/hidden/cyan, /turf/open/floor/strata/white_cyan1/east, -/area/strata/ag/interior/mining_outpost/hallways) +/area/strata/ag/interior/mining_outpost/canteen) "bUu" = ( /obj/structure/pipes/standard/manifold/hidden/cyan{ dir = 1 }, /turf/open/floor/strata/white_cyan1/east, -/area/strata/ag/interior/mining_outpost/hallways) +/area/strata/ag/interior/mining_outpost/canteen) "bUv" = ( /obj/structure/pipes/standard/simple/hidden/cyan{ dir = 4 }, /turf/open/floor/strata/floor2, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/med) "bUx" = ( /obj/structure/pipes/standard/simple/hidden/cyan, /obj/structure/platform/strata/metal{ @@ -19918,17 +19778,14 @@ name = "\improper Airlock" }, /turf/open/floor/strata/multi_tiles/southeast, -/area/strata/ag/interior/outpost/hallways/north) -"bVs" = ( -/turf/open/floor/strata/multi_tiles/southeast, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/canteen) "bVw" = ( /obj/structure/pipes/standard/simple/hidden/cyan{ dir = 4 }, /obj/structure/curtain/open/shower, /turf/open/floor/interior/plastic, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/canteen) "bVx" = ( /obj/structure/blocker/invisible_wall, /turf/open/auto_turf/ice/layer1, @@ -19971,23 +19828,16 @@ }, /turf/closed/wall/strata_outpost/reinforced, /area/strata/ag/interior/outpost/security) -"bVX" = ( -/turf/closed/wall/strata_outpost/reinforced, -/area/strata/ag/interior/outpost/canteen/lower_cafeteria) "bWa" = ( /turf/open/auto_turf/ice/layer1, /area/strata/ag/exterior/caves/lz_caves) -"bWc" = ( -/obj/item/stack/sandbags, -/turf/open/floor/strata/white_cyan2/west, -/area/strata/ag/interior/outpost/hallways/north) "bWd" = ( /obj/structure/machinery/door/airlock/multi_tile/almayer/comdoor/colony{ dir = 1; name = "\improper Airlock" }, /turf/open/floor/strata/multi_tiles/southwest, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/canteen) "bWe" = ( /obj/item/lightstick/red/spoke/planted{ layer = 3.1; @@ -20052,7 +19902,7 @@ dir = 8 }, /turf/open/floor/strata, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/admin) "bWH" = ( /obj/structure/platform_decoration/strata/metal{ dir = 8 @@ -20074,9 +19924,6 @@ }, /turf/open/floor/strata/multi_tiles/southeast, /area/strata/ag/interior/outpost/security) -"bWN" = ( -/turf/closed/wall/strata_outpost, -/area/strata/ag/interior/outpost/canteen/lower_cafeteria) "bWZ" = ( /turf/open/floor/strata/multi_tiles/west, /area/strata/ag/interior/outpost/engi/drome) @@ -20285,7 +20132,7 @@ "bZB" = ( /obj/structure/pipes/standard/simple/hidden/cyan, /turf/open/floor/strata/white_cyan2/west, -/area/strata/ag/interior/outpost/canteen/lower_cafeteria) +/area/strata/ag/interior/outpost/canteen) "bZC" = ( /obj/structure/machinery/light/small, /turf/open/floor/strata/white_cyan2/west, @@ -20299,13 +20146,13 @@ }, /obj/effect/landmark/survivor_spawner, /turf/open/floor/strata/white_cyan2/west, -/area/strata/ag/interior/outpost/canteen/lower_cafeteria) +/area/strata/ag/interior/outpost/canteen) "bZG" = ( /obj/structure/machinery/light{ dir = 4 }, /turf/open/floor/strata/white_cyan2/west, -/area/strata/ag/interior/outpost/canteen/lower_cafeteria) +/area/strata/ag/interior/outpost/canteen) "bZH" = ( /obj/structure/sign/safety/galley, /turf/closed/wall/strata_outpost, @@ -20360,7 +20207,7 @@ "cad" = ( /obj/structure/pipes/standard/manifold/fourway/hidden/cyan, /turf/open/floor/strata/red1, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/security) "caf" = ( /obj/structure/pipes/standard/simple/hidden/cyan{ dir = 4 @@ -20387,7 +20234,7 @@ dir = 4 }, /turf/open/floor/strata/white_cyan2/west, -/area/strata/ag/interior/outpost/canteen/lower_cafeteria) +/area/strata/ag/interior/outpost/canteen) "cao" = ( /obj/structure/machinery/cm_vending/sorted/marine_food, /turf/open/floor/interior/plastic, @@ -20396,6 +20243,10 @@ /obj/structure/surface/table/woodentable, /turf/open/floor/interior/plastic, /area/strata/ag/interior/outpost/canteen) +"caw" = ( +/obj/effect/sentry_landmark/lz_2/bottom_left, +/turf/open/auto_turf/snow/brown_base/layer0, +/area/strata/ag/exterior/landing_zones/near_lz2) "cay" = ( /obj/structure/flora/grass/tallgrass/jungle/corner{ dir = 6 @@ -20422,7 +20273,7 @@ dir = 1 }, /turf/open/floor/strata/white_cyan2/west, -/area/strata/ag/interior/outpost/canteen/lower_cafeteria) +/area/strata/ag/interior/outpost/canteen) "caM" = ( /obj/structure/machinery/door/airlock/multi_tile/almayer/generic, /turf/open/floor/strata/multi_tiles/southeast, @@ -20469,7 +20320,7 @@ "cbz" = ( /obj/structure/pipes/standard/manifold/hidden/cyan, /turf/open/floor/strata/white_cyan1/east, -/area/strata/ag/interior/outpost/canteen/lower_cafeteria) +/area/strata/ag/interior/outpost/canteen) "cbE" = ( /obj/structure/flora/pottedplant{ icon_state = "pottedplant_22" @@ -20542,9 +20393,6 @@ /obj/structure/window/framed/strata/reinforced, /turf/open/floor/strata/multi_tiles/west, /area/strata/ag/interior/outpost/security) -"ccp" = ( -/turf/open/floor/strata/white_cyan1/east, -/area/strata/ag/interior/outpost/canteen/lower_cafeteria) "ccq" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/trash/plate{ @@ -20553,10 +20401,7 @@ }, /obj/item/reagent_container/food/condiment/saltshaker, /turf/open/floor/strata/blue1, -/area/strata/ag/interior/outpost/canteen/lower_cafeteria) -"ccr" = ( -/turf/open/floor/strata/white_cyan2/west, -/area/strata/ag/interior/outpost/canteen/lower_cafeteria) +/area/strata/ag/interior/outpost/canteen) "ccs" = ( /turf/open/floor/strata, /area/strata/ag/exterior/paths/flight_control_exterior) @@ -20645,9 +20490,6 @@ }, /turf/open/floor/strata/red1, /area/strata/ag/interior/outpost/security) -"cdh" = ( -/turf/open/floor/strata, -/area/strata/ag/interior/outpost/canteen/lower_cafeteria) "cdj" = ( /obj/structure/bed/chair{ dir = 4 @@ -20778,7 +20620,7 @@ /obj/item/tool/match, /obj/structure/pipes/standard/simple/hidden/cyan, /turf/open/floor/strata/orange_cover, -/area/strata/ag/interior/mining_outpost/hallways) +/area/strata/ag/interior/mining_outpost/central) "cew" = ( /obj/structure/window/framed/strata/reinforced, /obj/structure/machinery/door/poddoor/shutters/almayer, @@ -20802,11 +20644,11 @@ dir = 1 }, /turf/open/floor/strata/red1, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/security) "ceL" = ( /obj/structure/pipes/standard/manifold/hidden/cyan, /turf/open/floor/strata/red1, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/security) "ceM" = ( /obj/structure/pipes/standard/simple/hidden/cyan, /turf/open/floor/strata/multi_tiles/southeast, @@ -20824,7 +20666,7 @@ dir = 4 }, /turf/open/floor/strata/orange_edge/east, -/area/strata/ag/interior/mining_outpost/hallways) +/area/strata/ag/interior/mining_outpost/central) "ceW" = ( /obj/effect/decal/strata_decals/catwalk/prison, /obj/structure/machinery/vending/cola, @@ -20886,19 +20728,19 @@ "cfz" = ( /obj/item/reagent_container/food/drinks/cans/waterbottle, /turf/open/floor/strata, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/security) "cfB" = ( /obj/effect/decal/cleanable/blood{ icon_state = "xgibdown1" }, /turf/open/floor/strata, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/security) "cfC" = ( /obj/structure/bed/chair{ dir = 4 }, /turf/open/floor/strata/white_cyan2/west, -/area/strata/ag/interior/outpost/canteen/lower_cafeteria) +/area/strata/ag/interior/outpost/canteen) "cfD" = ( /obj/structure/machinery/vending/snack, /obj/structure/machinery/light/small{ @@ -20956,28 +20798,21 @@ icon_state = "pottedplant_22" }, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/outpost/admin) +/area/strata/ag/interior/outpost/security) "cgg" = ( /obj/structure/window/reinforced/tinted, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/outpost/admin) +/area/strata/ag/interior/outpost/security) "cgm" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/reagent_container/food/condiment/peppermill, /obj/effect/decal/cleanable/blood/gibs/down, /turf/open/floor/strata/orange_cover, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/canteen) "cgn" = ( /obj/effect/decal/cleanable/blood, /turf/open/floor/strata/white_cyan2/west, -/area/strata/ag/interior/outpost/hallways/north) -"cgo" = ( -/obj/structure/bed/chair{ - dir = 8 - }, -/obj/structure/pipes/standard/simple/hidden/cyan, -/turf/open/floor/strata/white_cyan2/west, -/area/strata/ag/interior/outpost/canteen/lower_cafeteria) +/area/strata/ag/interior/outpost/canteen) "cgp" = ( /obj/structure/bed/chair/comfy, /obj/structure/barricade/handrail/strata{ @@ -21043,7 +20878,7 @@ /obj/effect/decal/cleanable/blood, /obj/structure/pipes/standard/simple/hidden/cyan, /turf/open/floor/strata/white_cyan2/west, -/area/strata/ag/interior/outpost/canteen/lower_cafeteria) +/area/strata/ag/interior/outpost/canteen) "cgX" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/reagent_container/food/drinks/coffee, @@ -21244,10 +21079,6 @@ }, /turf/open/floor/strata/white_cyan1/east, /area/strata/ag/interior/outpost/canteen/bar) -"cjl" = ( -/obj/structure/bed/chair, -/turf/open/floor/strata/white_cyan1/east, -/area/strata/ag/interior/outpost/hallways/north) "cjn" = ( /turf/closed/wall/strata_outpost, /area/strata/ag/interior/outpost/canteen) @@ -21283,7 +21114,7 @@ dir = 1 }, /turf/open/floor/strata/multi_tiles/west, -/area/strata/ag/interior/mining_outpost/hallways) +/area/strata/ag/interior/mining_outpost/south_dormitories) "cjA" = ( /obj/structure/pipes/standard/simple/hidden/cyan{ dir = 4 @@ -21355,11 +21186,11 @@ dir = 4 }, /turf/open/floor/strata/white_cyan3/north, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/med) "cjV" = ( /obj/structure/pipes/standard/manifold/hidden/cyan, /turf/open/floor/strata/white_cyan3/north, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/med) "cjW" = ( /obj/structure/pipes/standard/simple/hidden/cyan{ dir = 4 @@ -21368,7 +21199,7 @@ dir = 1 }, /turf/open/floor/strata/white_cyan3/north, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/med) "cjZ" = ( /obj/structure/window/framed/strata, /turf/open/floor/strata/multi_tiles/west, @@ -21400,13 +21231,13 @@ dir = 8 }, /turf/open/floor/strata, -/area/strata/ag/interior/outpost/canteen/lower_cafeteria) +/area/strata/ag/interior/outpost/canteen) "ckx" = ( /obj/structure/pipes/standard/simple/hidden/cyan{ dir = 10 }, /turf/open/floor/strata/white_cyan3/north, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/med) "ckz" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/paper_bin, @@ -21416,7 +21247,7 @@ pixel_y = 6 }, /turf/open/floor/strata/white_cyan4/north, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/med) "ckA" = ( /obj/structure/surface/rack, /obj/item/paper_bin, @@ -21474,12 +21305,6 @@ /obj/structure/machinery/light_switch, /turf/closed/wall/strata_outpost, /area/strata/ag/interior/outpost/canteen/bar) -"ckM" = ( -/obj/structure/pipes/standard/simple/hidden/cyan{ - dir = 4 - }, -/turf/open/floor/strata/white_cyan1/east, -/area/strata/ag/interior/outpost/canteen/lower_cafeteria) "ckN" = ( /obj/structure/pipes/standard/simple/hidden/cyan{ dir = 4 @@ -21524,7 +21349,7 @@ dir = 4 }, /turf/open/floor/strata/multi_tiles/southwest, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/engi/drome) "clg" = ( /turf/closed/shuttle/ert{ icon_state = "upp22" @@ -21535,7 +21360,7 @@ dir = 9 }, /turf/open/floor/strata/orange_cover, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/engi/drome) "clo" = ( /obj/structure/surface/table/reinforced/prison, /turf/open/floor/almayer/plate, @@ -21561,7 +21386,7 @@ dir = 4 }, /turf/open/floor/strata/orange_cover, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/engi/drome) "clw" = ( /obj/structure/pipes/standard/simple/hidden/cyan, /obj/structure/machinery/camera/autoname{ @@ -21602,7 +21427,7 @@ "clI" = ( /obj/structure/machinery/vending/dinnerware, /turf/open/floor/strata, -/area/strata/ag/interior/outpost/canteen/lower_cafeteria) +/area/strata/ag/interior/outpost/canteen) "clK" = ( /obj/structure/curtain/shower, /turf/open/floor/strata/blue1, @@ -21672,19 +21497,19 @@ "cmC" = ( /obj/structure/machinery/light/small, /turf/open/floor/strata, -/area/strata/ag/interior/mining_outpost/hallways) +/area/strata/ag/interior/mining_outpost/south_dormitories) "cmD" = ( /obj/effect/decal/strata_decals/grime/grime3{ dir = 8 }, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/mining_outpost/hallways) +/area/strata/ag/interior/mining_outpost/south_dormitories) "cmE" = ( /obj/structure/pipes/vents/pump{ dir = 1 }, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/mining_outpost/hallways) +/area/strata/ag/interior/mining_outpost/south_dormitories) "cmF" = ( /obj/structure/surface/rack, /obj/item/inflatable/door, @@ -21735,29 +21560,29 @@ dir = 4 }, /turf/open/floor/strata/white_cyan4/east, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/med) "cnf" = ( /obj/effect/decal/cleanable/greenglow, /turf/open/floor/strata/white_cyan3, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/med) "cng" = ( /obj/structure/pipes/standard/simple/hidden/cyan, /turf/open/floor/strata/white_cyan3, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/med) "cnh" = ( /obj/structure/machinery/light, /turf/open/floor/strata/white_cyan3, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/med) "cni" = ( /obj/structure/bed/roller, /turf/open/floor/strata/white_cyan3, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/med) "cnk" = ( /obj/structure/bed/chair{ dir = 8 }, /turf/open/floor/strata/white_cyan3/east, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/med) "cnm" = ( /obj/structure/pipes/standard/simple/hidden/cyan{ dir = 10 @@ -21868,7 +21693,7 @@ icon_state = "p_stair_sn_full_cap" }, /turf/open/floor/strata, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/canteen) "cor" = ( /turf/open/gm/coast/west, /area/strata/ug/interior/jungle/carplake/north) @@ -22078,11 +21903,7 @@ dir = 8 }, /turf/open/floor/strata/orange_cover, -/area/strata/ag/interior/outpost/hallways/south) -"crf" = ( -/obj/effect/decal/strata_decals/catwalk/prison, -/turf/open/floor/strata/orange_cover, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/canteen) "crk" = ( /obj/effect/glowshroom/single, /turf/open/asphalt/cement/cement12, @@ -22121,13 +21942,13 @@ "crF" = ( /obj/structure/pipes/vents/pump, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/engi/drome) "crG" = ( /obj/structure/pipes/standard/simple/hidden/cyan{ dir = 4 }, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/engi/drome) "crN" = ( /turf/open/auto_turf/ice/layer1, /area/strata/ag/exterior/marsh/river) @@ -22164,9 +21985,6 @@ "crY" = ( /turf/closed/wall/strata_outpost/reinforced, /area/strata/ag/interior/mining_outpost/central) -"csi" = ( -/turf/open/floor/strata/floor3/east, -/area/strata/ag/interior/outpost/canteen) "csj" = ( /obj/structure/bed{ icon_state = "abed" @@ -22197,7 +22015,7 @@ dir = 4 }, /turf/open/floor/strata/floor3/east, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/engi/drome) "csA" = ( /obj/structure/bed/chair/office/light{ dir = 8 @@ -22254,10 +22072,6 @@ /obj/effect/landmark/objective_landmark/medium, /turf/open/floor/strata/fake_wood, /area/strata/ag/interior/outpost/engi/drome) -"csV" = ( -/obj/structure/pipes/standard/simple/hidden/cyan, -/turf/open/floor/strata/floor3/east, -/area/strata/ag/interior/outpost/canteen) "csW" = ( /obj/structure/bed/chair/comfy{ dir = 1 @@ -22322,7 +22136,7 @@ dir = 8 }, /turf/open/floor/strata/floor2, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/engi/drome) "ctx" = ( /turf/open/floor/strata/orange_cover, /area/strata/ag/exterior/marsh/river) @@ -22501,7 +22315,7 @@ "cvl" = ( /obj/structure/machinery/door/airlock/multi_tile/almayer/medidoor, /turf/open/floor/strata/multi_tiles/southeast, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/med) "cvn" = ( /turf/open/auto_turf/ice/layer0, /area/strata/ag/interior/outside/engineering/parts_storage_cave) @@ -22510,7 +22324,7 @@ dir = 8 }, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/med) "cvC" = ( /obj/structure/closet/firecloset/full, /turf/open/floor/strata/orange_cover, @@ -22570,9 +22384,6 @@ "cwT" = ( /turf/closed/wall/strata_outpost/reinforced, /area/strata/ag/interior/outside/checkpoints/south) -"cxa" = ( -/turf/open/floor/strata/multi_tiles/west, -/area/strata/ag/interior/outpost/hallways/north) "cxf" = ( /obj/structure/machinery/vending/cigarette/colony, /turf/open/floor/strata/red1, @@ -22587,10 +22398,6 @@ }, /turf/open/asphalt/cement/cement14, /area/strata/ag/exterior/marsh/spring_marshes) -"cxx" = ( -/obj/structure/pipes/standard/manifold/hidden/cyan, -/turf/open/floor/strata/orange_cover, -/area/strata/ag/interior/outpost/hallways/south) "cxA" = ( /turf/open/gm/coast/beachcorner/south_west, /area/strata/ag/exterior/jungle/carplake_center) @@ -22665,7 +22472,7 @@ dir = 8 }, /turf/open/floor/strata, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/engi) "cAK" = ( /obj/structure/flora/bush/ausbushes/var3/fullgrass, /turf/open/auto_turf/strata_grass/layer0, @@ -22690,10 +22497,6 @@ /obj/item/lightstick/red/planted, /turf/open/auto_turf/ice/layer1, /area/strata/ag/exterior/marsh/spring_marshes) -"cEa" = ( -/obj/effect/decal/cleanable/blood/oil, -/turf/open/floor/strata, -/area/strata/ag/interior/outpost/hallways/north) "cEu" = ( /obj/structure/bed/nest, /obj/effect/decal/cleanable/blood/gibs/core, @@ -22728,7 +22531,7 @@ "cHm" = ( /obj/item/weapon/gun/pistol/t73, /turf/open/floor/strata/white_cyan1/east, -/area/strata/ag/interior/outpost/canteen/lower_cafeteria) +/area/strata/ag/interior/outpost/canteen) "cHK" = ( /obj/structure/flora/pottedplant/random, /obj/structure/barricade/handrail/strata{ @@ -22807,7 +22610,7 @@ dir = 4 }, /turf/open/floor/strata/white_cyan3/west, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/med) "cOV" = ( /obj/structure/toilet{ dir = 8 @@ -22833,9 +22636,6 @@ /obj/structure/machinery/vending/coffee, /turf/open/floor/strata/orange_cover, /area/strata/ag/interior/outpost/engi/drome) -"cSx" = ( -/turf/open/floor/strata/cyan2/east, -/area/strata/ag/interior/outpost/hallways/south) "cSP" = ( /obj/structure/prop/almayer/hangar_stencil, /obj/structure/pipes/standard/simple/hidden/cyan{ @@ -22903,21 +22703,11 @@ /obj/item/tool/pen/blue, /turf/open/floor/strata/orange_cover, /area/strata/ag/interior/outpost/engi/drome) -"cXm" = ( -/obj/structure/pipes/standard/simple/hidden/cyan{ - dir = 4 - }, -/turf/open/floor/strata/white_cyan1/east, -/area/strata/ag/interior/outpost/hallways/north) "cXU" = ( /turf/closed/shuttle/ert{ icon_state = "upp2" }, /area/strata/ag/exterior/marsh/crash) -"cYw" = ( -/obj/structure/pipes/standard/simple/hidden/cyan, -/turf/open/floor/strata, -/area/strata/ag/interior/outpost/hallways/south) "cYx" = ( /obj/structure/barricade/handrail/strata{ dir = 1 @@ -22987,7 +22777,7 @@ dir = 4 }, /turf/open/floor/strata/orange_cover, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/engi/drome) "ddK" = ( /obj/structure/pipes/standard/simple/hidden/cyan{ dir = 4 @@ -23070,9 +22860,6 @@ }, /turf/open/gm/river, /area/strata/ag/exterior/marsh/spring_marshes) -"dmK" = ( -/turf/open/floor/strata/cyan2/east, -/area/strata/ag/interior/mining_outpost/hallways) "dnz" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/clothing/mask/cigarette/cigar/cohiba, @@ -23148,7 +22935,7 @@ /obj/effect/decal/strata_decals/catwalk/prison, /obj/structure/pipes/standard/simple/hidden/cyan, /turf/open/floor/strata/white_cyan2/west, -/area/strata/ag/interior/outpost/canteen/personal_storage) +/area/strata/ag/interior/outpost/canteen) "dsx" = ( /obj/item/tool/wrench, /turf/open/floor/almayer/test_floor5, @@ -23237,9 +23024,6 @@ }, /turf/open/auto_turf/strata_grass/layer1, /area/strata/ug/interior/outpost/platform) -"dBO" = ( -/turf/open/floor/strata/floor3, -/area/strata/ag/interior/outpost/hallways/north) "dBV" = ( /obj/structure/largecrate/random/case/double, /obj/structure/pipes/standard/simple/hidden/cyan, @@ -23270,7 +23054,7 @@ /obj/structure/bed/chair, /obj/effect/landmark/objective_landmark/close, /turf/open/floor/strata/white_cyan1/east, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/canteen) "dDU" = ( /obj/structure/inflatable/popped/door, /obj/structure/pipes/standard/simple/hidden/cyan{ @@ -23372,7 +23156,7 @@ dir = 4 }, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/mining_outpost/hallways) +/area/strata/ag/interior/mining_outpost/central) "dLT" = ( /obj/structure/reagent_dispensers/watertank, /turf/open/floor/strata/multi_tiles/southwest, @@ -23387,6 +23171,12 @@ "dNq" = ( /turf/open/gm/coast/north, /area/strata/ug/interior/jungle/platform/east) +"dNB" = ( +/obj/structure/machinery/light{ + dir = 1 + }, +/turf/open/floor/strata/floor3, +/area/strata/ag/interior/mining_outpost/central) "dND" = ( /obj/structure/flora/bush/ausbushes/grassybush{ icon_state = "fullgrass_1" @@ -23532,7 +23322,7 @@ dir = 4 }, /turf/open/floor/strata/floor3/east, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/med) "eai" = ( /obj/structure/stairs/perspective{ color = "#6e6e6e"; @@ -23550,6 +23340,10 @@ /obj/structure/machinery/power/port_gen/pacman/super, /turf/open/floor/strata/multi_tiles/southwest, /area/strata/ag/interior/outside/bball/cave) +"ecR" = ( +/obj/structure/pipes/standard/simple/hidden/cyan, +/turf/open/floor/strata/fake_wood, +/area/strata/ag/interior/outpost/admin) "eek" = ( /obj/structure/closet/secure_closet/personal, /obj/effect/decal/cleanable/blood, @@ -23681,6 +23475,10 @@ }, /turf/open/floor/plating, /area/strata/ag/interior/outside/engineering/parts_storage) +"epz" = ( +/obj/effect/sentry_landmark/lz_2/bottom_left, +/turf/open/auto_turf/snow/brown_base/layer2, +/area/strata/ag/exterior/landing_zones/near_lz2) "eqO" = ( /obj/structure/barricade/handrail/strata{ dir = 1 @@ -23715,9 +23513,6 @@ /obj/effect/landmark/structure_spawner/setup/distress/xeno_weed_node, /turf/open/auto_turf/strata_grass/layer0_mud, /area/strata/ug/interior/jungle/tearlake) -"evI" = ( -/turf/open/floor/strata/floor2, -/area/strata/ag/interior/outpost/hallways/south) "ewk" = ( /obj/structure/machinery/camera/autoname/lz_camera, /turf/open/floor/plating, @@ -23727,7 +23522,7 @@ dir = 4 }, /turf/open/floor/strata/floor3/east, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/med) "exx" = ( /obj/effect/landmark/objective_landmark/medium, /turf/open/floor/strata/multi_tiles/southwest, @@ -23860,10 +23655,6 @@ }, /turf/open/auto_turf/ice/layer1, /area/strata/ag/exterior/landing_zones/near_lz2) -"eHZ" = ( -/obj/effect/decal/strata_decals/catwalk/prison, -/turf/open/floor/greengrid, -/area/strata/ag/interior/mining_outpost/hallways) "eIB" = ( /obj/structure/flora/grass/tallgrass/jungle, /obj/structure/flora/grass/tallgrass/jungle/corner{ @@ -23918,7 +23709,7 @@ dir = 8 }, /turf/open/floor/strata/cyan3/west, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/med) "eMZ" = ( /obj/structure/machinery/weather_siren{ dir = 8; @@ -23990,6 +23781,10 @@ }, /turf/open/floor/strata, /area/strata/ag/exterior/outpost_decks) +"eRp" = ( +/obj/structure/pipes/standard/simple/hidden/cyan, +/turf/open/floor/strata, +/area/strata/ag/interior/outpost/security) "eRJ" = ( /obj/structure/machinery/cm_vending/sorted/medical/wall_med/limited{ name = "Emergency NanoMed"; @@ -24060,7 +23855,7 @@ dir = 8 }, /turf/open/floor/strata/white_cyan2/west, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/canteen) "eYE" = ( /turf/closed/wall/strata_outpost, /area/strata/ag/interior/outside/checkpoints/north) @@ -24083,12 +23878,6 @@ /obj/effect/landmark/monkey_spawn, /turf/open/auto_turf/strata_grass/layer1, /area/strata/ug/interior/jungle/platform/east) -"fbd" = ( -/obj/structure/pipes/standard/simple/hidden/cyan{ - dir = 4 - }, -/turf/open/floor/strata/red1, -/area/strata/ag/interior/outpost/hallways/north) "fbG" = ( /obj/effect/landmark/objective_landmark/science, /turf/open/floor/strata/floor2, @@ -24124,7 +23913,7 @@ dir = 4 }, /turf/open/floor/strata, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/engi/drome) "fiD" = ( /obj/structure/fence, /turf/open/asphalt/cement/cement4, @@ -24439,7 +24228,7 @@ "fHp" = ( /obj/structure/pipes/standard/simple/hidden/cyan, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/mining_outpost/hallways) +/area/strata/ag/interior/mining_outpost/central) "fHW" = ( /obj/structure/platform_decoration/strata/metal{ dir = 4 @@ -24487,12 +24276,6 @@ "fKT" = ( /turf/open/gm/river, /area/strata/ug/interior/jungle/structures/monitoring/south) -"fLc" = ( -/obj/structure/pipes/standard/simple/hidden/cyan{ - dir = 4 - }, -/turf/open/floor/strata/multi_tiles/southwest, -/area/strata/ag/interior/outpost/hallways/north) "fLl" = ( /obj/structure/bed/chair{ dir = 4 @@ -24666,10 +24449,6 @@ /obj/structure/machinery/power/apc/no_power/north, /turf/open/floor/strata/orange_cover, /area/strata/ag/exterior/marsh/water_marshes) -"fZD" = ( -/obj/structure/pipes/standard/simple/hidden/cyan, -/turf/open/floor/strata/floor2, -/area/strata/ag/interior/outpost/hallways/south) "gab" = ( /turf/closed/shuttle/ert{ icon_state = "leftengine_1"; @@ -24718,6 +24497,12 @@ }, /turf/open/floor/strata/multi_tiles/southeast, /area/strata/ug/interior/jungle/structures/monitoring) +"gea" = ( +/obj/structure/pipes/vents/pump{ + dir = 1 + }, +/turf/open/floor/strata, +/area/strata/ag/interior/outpost/security) "gfd" = ( /obj/structure/barricade/handrail/wire{ layer = 3.5 @@ -24744,7 +24529,7 @@ dir = 4 }, /turf/open/floor/strata/white_cyan3/east, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/med) "ggr" = ( /obj/structure/filingcabinet, /obj/effect/landmark/objective_landmark/close, @@ -24914,7 +24699,7 @@ dir = 4 }, /turf/open/floor/strata/orange_cover, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/engi/drome) "grd" = ( /obj/structure/machinery/camera/autoname{ dir = 8 @@ -25037,15 +24822,11 @@ dir = 4 }, /turf/open/floor/strata/orange_edge/east, -/area/strata/ag/interior/mining_outpost/hallways) +/area/strata/ag/interior/mining_outpost/central) "gDg" = ( /obj/structure/prop/almayer/computers/sensor_computer2, /turf/closed/wall/strata_outpost/reinforced, /area/strata/ag/interior/restricted) -"gDS" = ( -/obj/structure/pipes/standard/simple/hidden/cyan, -/turf/open/floor/prison/darkyellowfull2, -/area/strata/ag/interior/outpost/hallways/north) "gEo" = ( /obj/structure/flora/grass/tallgrass/ice, /obj/structure/platform/strata{ @@ -25123,18 +24904,6 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/plating, /area/strata/ag/interior/outpost/engi/drome/shuttle) -"gNQ" = ( -/obj/structure/pipes/standard/simple/hidden/cyan{ - dir = 4 - }, -/turf/open/floor/strata, -/area/strata/ag/interior/outpost/hallways/north) -"gOe" = ( -/obj/structure/barricade/handrail/strata{ - dir = 4 - }, -/turf/open/floor/strata/floor3, -/area/strata/ag/interior/outpost/hallways/north) "gOi" = ( /obj/item/lightstick/red/planted, /obj/structure/pipes/standard/simple/hidden/cyan{ @@ -25304,15 +25073,12 @@ }, /turf/open/floor/strata/orange_cover, /area/strata/ag/interior/outpost/engi/drome) -"gYn" = ( -/turf/open/floor/strata, -/area/strata/ag/interior/outpost/hallways/north) "gYr" = ( /obj/structure/pipes/standard/manifold/hidden/cyan{ dir = 1 }, /turf/open/floor/strata/white_cyan1/east, -/area/strata/ag/interior/outpost/canteen/lower_cafeteria) +/area/strata/ag/interior/outpost/canteen) "gZp" = ( /obj/item/tank/emergency_oxygen/engi, /turf/open/floor/almayer/plate, @@ -25411,6 +25177,10 @@ /obj/structure/pipes/standard/simple/hidden/cyan, /turf/open/floor/strata/orange_cover, /area/strata/ag/interior/outpost/engi/drome) +"hgN" = ( +/obj/structure/pipes/vents/pump/on, +/turf/open/floor/strata/floor3, +/area/strata/ag/interior/mining_outpost/central) "hhj" = ( /obj/structure/sign/safety/ladder, /turf/closed/wall/strata_outpost/reinforced, @@ -25459,9 +25229,6 @@ /obj/structure/barricade/handrail/strata, /turf/open/floor/strata/floor3/east, /area/strata/ag/exterior/outpost_decks) -"hmh" = ( -/turf/open/floor/strata/multi_tiles/west, -/area/strata/ag/interior/outpost/hallways/south) "hms" = ( /obj/structure/flora/grass/tallgrass/ice/corner{ dir = 8 @@ -25556,19 +25323,13 @@ dir = 4 }, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/med) "hvj" = ( /obj/structure/machinery/light/small{ dir = 1 }, /turf/open/floor/strata/cyan3/west, -/area/strata/ag/interior/outpost/hallways/south) -"hvz" = ( -/obj/structure/pipes/standard/simple/hidden/cyan{ - dir = 4 - }, -/turf/open/floor/prison/darkyellowfull2, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/med) "hwD" = ( /obj/structure/platform/strata/metal{ dir = 1 @@ -25586,7 +25347,7 @@ icon_state = "p_stair_sn_full_cap" }, /turf/open/floor/strata/multi_tiles/west, -/area/strata/ag/interior/outpost/canteen) +/area/strata/ag/interior/outpost/engi/drome) "hyu" = ( /obj/effect/landmark/corpsespawner/russian, /turf/open/auto_turf/strata_grass/layer0_mud, @@ -25634,9 +25395,6 @@ }, /turf/open/floor/strata/multi_tiles/southeast, /area/strata/ug/interior/jungle/tearlake) -"hFK" = ( -/turf/open/floor/strata/orange_cover, -/area/strata/ag/interior/outpost/hallways/south) "hGd" = ( /obj/structure/platform/strata/metal{ dir = 1 @@ -25695,9 +25453,6 @@ "hIt" = ( /turf/open/floor/strata/white_cyan2/west, /area/strata/ug/interior/outpost/underground_dorms/med1) -"hJg" = ( -/turf/open/floor/strata/red1, -/area/strata/ag/interior/outpost/hallways/north) "hJv" = ( /obj/structure/flora/grass/tallgrass/jungle/corner{ dir = 10 @@ -25919,13 +25674,16 @@ "idW" = ( /turf/closed/wall/strata_outpost/reinforced/hull, /area/strata/ug/interior/outpost/underground_dorms/sec1) +"ify" = ( +/turf/open/floor/strata/orange_cover, +/area/strata/ag/interior/mining_outpost/central) "igm" = ( /obj/structure/bed/chair{ dir = 4 }, /obj/structure/pipes/standard/simple/hidden/cyan, /turf/open/floor/strata/orange_edge/east, -/area/strata/ag/interior/mining_outpost/hallways) +/area/strata/ag/interior/mining_outpost/central) "ihd" = ( /obj/structure/bookcase{ icon_state = "book-5" @@ -26013,12 +25771,6 @@ }, /turf/open/floor/strata, /area/strata/ug/interior/outpost/underground_dorms/sec1) -"iqy" = ( -/obj/structure/pipes/standard/simple/hidden/cyan{ - dir = 4 - }, -/turf/open/floor/strata/floor3, -/area/strata/ag/interior/outpost/hallways/north) "iqD" = ( /obj/structure/reagent_dispensers/fueltank, /turf/open/floor/strata/multi_tiles/southeast, @@ -26228,7 +25980,7 @@ dir = 1 }, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/mining_outpost/hallways) +/area/strata/ag/interior/mining_outpost/south_dormitories) "iGp" = ( /obj/structure/machinery/power/reactor/colony, /obj/structure/machinery/camera/autoname, @@ -26643,6 +26395,10 @@ /obj/structure/prop/dam/drill, /turf/open/floor/plating, /area/strata/ag/exterior/marsh/crash) +"jpC" = ( +/obj/effect/sentry_landmark/lz_2/top_left, +/turf/open/auto_turf/snow/brown_base/layer1, +/area/strata/ag/exterior/landing_zones/near_lz2) "jqg" = ( /obj/structure/surface/rack, /obj/item/book/manual/detective, @@ -26719,6 +26475,10 @@ /obj/effect/landmark/monkey_spawn, /turf/open/auto_turf/snow/brown_base/layer3, /area/strata/ag/exterior/paths/far_north_outpost) +"juw" = ( +/obj/structure/pipes/standard/manifold/hidden/cyan, +/turf/open/floor/strata/floor3, +/area/strata/ag/interior/outpost/admin) "juL" = ( /turf/open/auto_turf/snow/brown_base/layer4, /area/strata/ag/exterior/caves/lz_caves) @@ -26751,9 +26511,6 @@ /obj/structure/window/framed/strata, /turf/open/floor/strata/multi_tiles/west, /area/strata/ag/interior/mining_outpost/south_dormitories) -"jyw" = ( -/turf/open/floor/strata/multi_tiles/southwest, -/area/strata/ag/interior/outpost/hallways/north) "jyE" = ( /obj/structure/machinery/cm_vending/sorted/marine_food, /obj/structure/machinery/light, @@ -26785,7 +26542,7 @@ dir = 4 }, /turf/open/floor/strata/white_cyan3/east, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/med) "jBc" = ( /turf/open/auto_turf/snow/brown_base/layer0, /area/strata/ag/interior/outside/engineering/parts_storage_cave) @@ -26825,9 +26582,6 @@ }, /turf/open/floor/strata/multi_tiles/southwest, /area/strata/ug/interior/outpost/platform) -"jEt" = ( -/turf/closed/wall/strata_outpost, -/area/strata/ag/interior/outpost/hallways/north) "jEB" = ( /obj/structure/pipes/standard/simple/hidden/cyan{ dir = 4 @@ -26922,9 +26676,6 @@ /obj/structure/machinery/disposal, /turf/open/floor/strata/purp2, /area/strata/ug/interior/jungle/structures/monitoring) -"jNO" = ( -/turf/open/floor/strata, -/area/strata/ag/interior/outpost/hallways/south) "jOl" = ( /turf/closed/wall/strata_outpost/reinforced, /area/strata/ag/interior/mining_outpost/canteen) @@ -26932,7 +26683,7 @@ /obj/item/stool, /obj/structure/machinery/light, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/outpost/canteen/personal_storage) +/area/strata/ag/interior/outpost/canteen) "jOV" = ( /obj/structure/platform_decoration/strata/metal{ dir = 8 @@ -27049,6 +26800,10 @@ /obj/structure/window/framed/strata, /turf/open/floor/strata/multi_tiles/southeast, /area/strata/ag/interior/outside/bball) +"jYl" = ( +/obj/structure/platform_decoration/strata/metal, +/turf/open/floor/strata, +/area/strata/ag/interior/outpost/engi) "jZF" = ( /obj/structure/machinery/weather_siren{ pixel_y = -8 @@ -27075,7 +26830,7 @@ dir = 4 }, /turf/open/floor/strata/cyan2/east, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/med) "kbU" = ( /obj/effect/decal/cleanable/blood, /obj/effect/decal/cleanable/blood{ @@ -27117,7 +26872,7 @@ dir = 4 }, /turf/open/floor/strata/orange_cover, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/engi/drome) "kew" = ( /turf/open/floor/strata/floor3/east, /area/strata/ug/interior/jungle/tearlake) @@ -27224,13 +26979,6 @@ }, /turf/open/floor/strata/multi_tiles/southeast, /area/strata/ug/interior/outpost/underground_dorms/sec1) -"koH" = ( -/obj/effect/decal/strata_decals/catwalk/prison, -/obj/structure/machinery/light{ - dir = 8 - }, -/turf/open/floor/strata/orange_cover, -/area/strata/ag/interior/outpost/hallways/north) "kqt" = ( /obj/structure/machinery/door/airlock/prison{ dir = 1; @@ -27250,13 +26998,6 @@ /obj/structure/platform_decoration/strata, /turf/open/gm/river, /area/strata/ag/exterior/landing_zones/near_lz2) -"ktH" = ( -/obj/effect/decal/cleanable/blood{ - dir = 4; - icon_state = "gib6" - }, -/turf/open/floor/strata/floor3, -/area/strata/ag/interior/mining_outpost/hallways) "kuB" = ( /obj/structure/bed/chair/office/light{ dir = 4 @@ -27314,7 +27055,7 @@ dir = 2 }, /turf/open/floor/strata, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/engi) "kyW" = ( /obj/structure/flora/bush/ausbushes/grassybush, /turf/open/auto_turf/strata_grass/layer1, @@ -27332,24 +27073,10 @@ /obj/effect/decal/cleanable/blood/gibs/core, /turf/open/floor/strata/floor3/east, /area/strata/ag/interior/outside/engineering/parts_storage) -"kzE" = ( -/obj/structure/pipes/standard/simple/hidden/cyan, -/obj/structure/machinery/door/airlock/almayer/medical/colony{ - dir = 2; - name = "Medical Airlock" - }, -/turf/open/floor/strata/multi_tiles/southeast, -/area/strata/ag/interior/outpost/hallways/south) "kAn" = ( /obj/structure/machinery/cm_vending/sorted/tech/tool_storage, /turf/open/floor/strata/orange_cover, /area/strata/ag/interior/outpost/engi/drome) -"kAY" = ( -/obj/structure/flora/pottedplant{ - icon_state = "pottedplant_22" - }, -/turf/open/floor/strata/blue1, -/area/strata/ag/interior/outpost/hallways/north) "kBL" = ( /obj/structure/flora/grass/ice/brown/snowgrassbb_1, /turf/open/auto_turf/snow/brown_base/layer2, @@ -27389,6 +27116,13 @@ /obj/effect/landmark/objective_landmark/close, /turf/open/floor/strata/blue1, /area/strata/ug/interior/outpost/underground_dorms/admin2) +"kFz" = ( +/obj/structure/machinery/door/airlock/multi_tile/almayer/comdoor/colony{ + dir = 1; + name = "\improper Airlock" + }, +/turf/open/floor/strata/multi_tiles/west, +/area/strata/ag/interior/outpost/engi/drome) "kHg" = ( /obj/structure/machinery/camera/autoname, /obj/structure/bed/chair{ @@ -27461,7 +27195,7 @@ dir = 9 }, /turf/open/floor/strata, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/engi) "kNJ" = ( /turf/open/gm/coast/beachcorner/south_west, /area/strata/ug/interior/jungle/structures/monitoring/south) @@ -27479,10 +27213,6 @@ /obj/structure/largecrate/random/case/double, /turf/open/floor/strata, /area/strata/ag/interior/outside/engineering/parts_storage) -"kOu" = ( -/obj/structure/pipes/standard/simple/hidden/cyan, -/turf/open/floor/strata/orange_cover, -/area/strata/ag/interior/outpost/hallways/south) "kPl" = ( /obj/structure/surface/table/reinforced/prison, /turf/open/floor/strata/floor3/east, @@ -27510,10 +27240,6 @@ /obj/effect/decal/cleanable/blood/gibs/core, /turf/open/floor/strata/multi_tiles, /area/strata/ag/interior/mining_outpost/hive) -"kRg" = ( -/obj/structure/pipes/vents/pump, -/turf/open/floor/strata/multi_tiles/southwest, -/area/strata/ag/interior/outpost/hallways/north) "kRI" = ( /obj/structure/flora/bush/ausbushes/grassybush{ icon_state = "fernybush_3" @@ -27573,7 +27299,7 @@ /obj/structure/pipes/standard/simple/hidden/cyan, /obj/structure/machinery/power/apc/no_power/east, /turf/open/floor/strata, -/area/strata/ag/interior/mining_outpost/hallways) +/area/strata/ag/interior/mining_outpost/central) "kWS" = ( /obj/structure/flora/grass/ice/brown/snowgrassbb_3, /turf/open/auto_turf/snow/brown_base/layer2, @@ -27592,7 +27318,7 @@ "kXR" = ( /obj/effect/landmark/corpsespawner/doctor, /turf/open/floor/strata/white_cyan2/west, -/area/strata/ag/interior/outpost/canteen/lower_cafeteria) +/area/strata/ag/interior/outpost/canteen) "kYe" = ( /obj/structure/flora/grass/tallgrass/ice/corner{ dir = 4 @@ -27748,9 +27474,6 @@ /obj/structure/closet/bodybag/tarp, /turf/open/floor/prison/darkyellowfull2, /area/strata/ug/interior/outpost/underground_dorms/admin3) -"ljn" = ( -/turf/open/floor/strata/multi_tiles/southwest, -/area/strata/ag/interior/outpost/hallways/south) "lkl" = ( /obj/structure/filingcabinet, /obj/effect/landmark/objective_landmark/far, @@ -27760,12 +27483,6 @@ /obj/structure/blocker/forcefield/multitile_vehicles, /turf/closed/wall/wood, /area/strata/ug/interior/jungle/structures/research/old_tunnels) -"lkI" = ( -/obj/structure/bed/chair{ - dir = 4 - }, -/turf/open/floor/strata/white_cyan2/west, -/area/strata/ag/interior/outpost/hallways/north) "llC" = ( /obj/structure/machinery/shower{ dir = 1 @@ -27788,13 +27505,10 @@ "lmF" = ( /obj/structure/pipes/vents/pump/on, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/mining_outpost/hallways) +/area/strata/ag/interior/mining_outpost/south_dormitories) "lno" = ( /turf/closed/wall/strata_outpost, /area/strata/ug/interior/jungle/structures/monitoring/south) -"lou" = ( -/turf/open/floor/strata/blue1, -/area/strata/ag/interior/outpost/hallways/south) "loN" = ( /obj/effect/landmark/objective_landmark/close, /turf/open/floor/strata/fake_wood, @@ -27918,14 +27632,6 @@ /obj/structure/machinery/photocopier, /turf/open/floor/strata, /area/strata/ug/interior/outpost/underground_dorms/admin1) -"lxZ" = ( -/obj/structure/pipes/standard/simple/hidden/cyan, -/obj/effect/decal/strata_decals/catwalk/prison, -/obj/structure/machinery/light{ - dir = 4 - }, -/turf/open/floor/strata/orange_cover, -/area/strata/ag/interior/outpost/hallways/north) "lyv" = ( /obj/structure/bookcase{ icon_state = "book-5" @@ -28061,14 +27767,11 @@ }, /obj/structure/pipes/standard/simple/hidden/cyan, /turf/open/floor/strata/white_cyan2/west, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/canteen) "lLD" = ( /obj/structure/machinery/colony_floodlight, /turf/open/auto_turf/snow/brown_base/layer1, /area/strata/ag/interior/outside/engineering/parts_storage_cave) -"lLN" = ( -/turf/open/floor/strata/white_cyan1/east, -/area/strata/ag/interior/mining_outpost/hallways) "lMB" = ( /obj/structure/bed/chair/comfy{ dir = 8 @@ -28107,10 +27810,6 @@ /obj/effect/landmark/item_pool_spawner/survivor_ammo/buckshot, /turf/open/floor/strata/red1, /area/strata/ag/interior/outside/checkpoints/north) -"lOB" = ( -/obj/structure/pipes/standard/simple/hidden/cyan, -/turf/open/floor/strata/blue1, -/area/strata/ag/interior/outpost/hallways/north) "lOI" = ( /obj/structure/sign/safety/security, /turf/closed/wall/strata_outpost/reinforced, @@ -28172,11 +27871,6 @@ /obj/effect/decal/strata_decals/catwalk/prison, /turf/open/floor/greengrid, /area/strata/ag/interior/outside/engineering/parts_storage) -"lTe" = ( -/obj/structure/disposalpipe/segment, -/obj/effect/decal/strata_decals/catwalk/prison, -/turf/open/floor/strata/multi_tiles/southwest, -/area/strata/ag/interior/outpost/hallways/south) "lTG" = ( /obj/structure/sign/safety/biohazard, /turf/closed/wall/strata_outpost/reinforced, @@ -28227,7 +27921,7 @@ dir = 8 }, /turf/open/floor/strata/white_cyan1/east, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/canteen) "lWu" = ( /obj/structure/pipes/standard/simple/hidden/cyan{ dir = 10 @@ -28285,14 +27979,14 @@ dir = 8 }, /turf/open/floor/strata/multi_tiles/southwest, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/med) "maX" = ( /obj/effect/decal/cleanable/blood/oil, /obj/structure/pipes/standard/simple/hidden/cyan{ dir = 4 }, /turf/open/floor/strata/orange_cover, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/engi/drome) "mce" = ( /obj/structure/bed/chair, /turf/open/floor/strata/red1, @@ -28300,7 +27994,7 @@ "mcv" = ( /obj/structure/machinery/power/apc/no_power/south, /turf/open/floor/strata/white_cyan3, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/med) "mcD" = ( /obj/structure/surface/rack, /obj/item/weapon/gun/pistol/t73, @@ -28350,7 +28044,7 @@ dir = 8 }, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/engi/drome) "meu" = ( /obj/effect/decal/warning_stripes{ icon_state = "N" @@ -28372,7 +28066,7 @@ dir = 8 }, /turf/open/floor/strata/cyan2/east, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/med) "mfP" = ( /obj/structure/flora/grass/tallgrass/jungle/corner{ dir = 9 @@ -28417,7 +28111,7 @@ /area/strata/ug/interior/jungle/tearlake) "miI" = ( /turf/open/floor/strata/multi_tiles/southeast, -/area/strata/ag/interior/mining_outpost/hallways) +/area/strata/ag/interior/mining_outpost/south_dormitories) "miL" = ( /obj/structure/stairs/perspective{ color = "#6e6e6e"; @@ -28474,7 +28168,7 @@ dir = 4 }, /turf/open/floor/strata/floor3/east, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/engi/drome) "mlq" = ( /obj/structure/pipes/standard/simple/hidden/cyan{ dir = 4 @@ -28484,7 +28178,7 @@ /area/strata/ag/interior/outpost/med) "mlS" = ( /turf/open/floor/strata/blue1, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/foyer) "mms" = ( /obj/effect/glowshroom, /obj/structure/barricade/handrail/strata{ @@ -28524,25 +28218,23 @@ dir = 5 }, /turf/open/floor/strata/multi_tiles/southwest, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/med) "mpr" = ( /obj/structure/sign/safety/maint, /turf/closed/wall/strata_outpost, /area/strata/ag/interior/outside/engineering/parts_storage) +"mpU" = ( +/obj/effect/sentry_landmark/lz_2/bottom_right, +/turf/open/auto_turf/snow/brown_base/layer0, +/area/strata/ag/exterior/landing_zones/near_lz2) "mqs" = ( /obj/structure/pipes/standard/simple/hidden/cyan, /turf/open/floor/strata/multi_tiles/southwest, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/med) "mrp" = ( /obj/effect/decal/cleanable/blood/oil, /turf/open/floor/strata/floor3/east, /area/strata/ag/interior/outside/engineering/parts_storage) -"mrv" = ( -/obj/structure/flora/pottedplant{ - icon_state = "pottedplant_22" - }, -/turf/open/floor/strata/floor3/east, -/area/strata/ag/interior/outpost/hallways/south) "mrz" = ( /obj/structure/closet/secure_closet/personal, /obj/effect/landmark/crap_item, @@ -28597,7 +28289,7 @@ /obj/structure/machinery/power/apc/no_power/west, /obj/structure/pipes/standard/simple/hidden/cyan, /turf/open/floor/strata/red1, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/security) "muf" = ( /obj/structure/flora/grass/tallgrass/jungle/corner, /turf/open/auto_turf/strata_grass/layer1, @@ -28641,7 +28333,7 @@ /area/strata/ag/interior/outside/engineering/parts_storage) "myV" = ( /turf/open/floor/strata/floor3, -/area/strata/ag/interior/mining_outpost/hallways) +/area/strata/ag/interior/mining_outpost/canteen) "mzp" = ( /obj/effect/decal/warning_stripes{ icon_state = "E" @@ -28739,10 +28431,6 @@ "mII" = ( /turf/closed/wall/strata_outpost/reinforced/hull, /area/strata/ag/exterior/caves/shed_five_caves) -"mJq" = ( -/obj/structure/pipes/standard/simple/hidden/cyan, -/turf/open/floor/strata/blue1, -/area/strata/ag/interior/outpost/hallways/south) "mKv" = ( /obj/structure/window/framed/strata, /turf/open/floor/strata/multi_tiles/west, @@ -28756,7 +28444,7 @@ dir = 4 }, /turf/open/floor/strata/orange_cover, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/engi/drome) "mKX" = ( /obj/effect/decal/cleanable/blood, /turf/open/floor/almayer/plate, @@ -28882,13 +28570,6 @@ "mWm" = ( /turf/closed/wall/strata_outpost/reinforced/hull, /area/strata/ug/interior) -"mWA" = ( -/obj/structure/machinery/door/airlock/almayer/security/colony{ - dir = 2; - name = "Security Barracks" - }, -/turf/open/floor/strata, -/area/strata/ag/interior/outpost/hallways/north) "mWF" = ( /obj/structure/largecrate/random, /obj/structure/machinery/light{ @@ -28956,7 +28637,7 @@ dir = 6 }, /turf/open/floor/strata/floor3/east, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/engi/drome) "ndS" = ( /obj/structure/pipes/standard/simple/hidden/cyan{ dir = 4 @@ -28982,7 +28663,7 @@ dir = 1 }, /turf/open/floor/strata/orange_cover, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/engi/drome) "njW" = ( /obj/structure/pipes/standard/simple/hidden/cyan, /turf/open/auto_turf/ice/layer1, @@ -29033,7 +28714,7 @@ dir = 1 }, /turf/open/floor/strata/white_cyan3/north, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/med) "nog" = ( /turf/closed/wall/strata_outpost/reinforced, /area/strata/ag/interior/landing_zones/near_lz1) @@ -29130,6 +28811,10 @@ /obj/structure/machinery/power/apc/no_power/south, /turf/open/floor/plating, /area/strata/ug/interior/jungle/carplake/north) +"nxc" = ( +/obj/effect/sentry_landmark/lz_2/top_left, +/turf/open/auto_turf/ice/layer1, +/area/strata/ag/exterior/marsh/water_marshes) "nxh" = ( /obj/structure/surface/rack, /obj/item/paper_bin, @@ -29167,6 +28852,13 @@ "nAZ" = ( /turf/open/gm/river, /area/strata/ug/interior/jungle/carplake/east) +"nBT" = ( +/obj/effect/decal/strata_decals/catwalk/prison, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/strata/multi_tiles/southwest, +/area/strata/ag/interior/outpost/security) "nCD" = ( /obj/effect/blocker/sorokyne_cold_water, /obj/effect/blocker/sorokyne_cold_water, @@ -29211,12 +28903,6 @@ }, /turf/open/auto_turf/ice/layer1, /area/strata/ag/exterior/marsh/relay_marshes) -"nHE" = ( -/obj/effect/decal/cleanable/blood, -/obj/effect/decal/cleanable/blood/gibs/core, -/obj/structure/pipes/standard/manifold/hidden/cyan, -/turf/open/floor/strata, -/area/strata/ag/interior/mining_outpost/hallways) "nIS" = ( /obj/structure/bed/chair/office/light{ dir = 8 @@ -29231,7 +28917,13 @@ "nJO" = ( /obj/structure/machinery/shower, /turf/open/floor/interior/plastic, -/area/strata/ag/interior/outpost/canteen/personal_storage) +/area/strata/ag/interior/outpost/canteen) +"nLe" = ( +/obj/structure/pipes/standard/simple/hidden/cyan{ + dir = 4 + }, +/turf/open/floor/strata/floor2, +/area/strata/ag/interior/outpost/engi/drome) "nLG" = ( /obj/structure/bed/chair{ dir = 4 @@ -29247,19 +28939,13 @@ /obj/item/book/manual/research_and_development, /turf/open/floor/strata/orange_cover, /area/strata/ag/interior/outpost/maint) -"nOA" = ( -/obj/structure/pipes/standard/simple/hidden/cyan{ - dir = 4 - }, -/turf/open/floor/strata/orange_cover, -/area/strata/ag/interior/outpost/hallways/south) "nOE" = ( /obj/structure/pipes/standard/simple/hidden/cyan, /obj/structure/machinery/light{ dir = 4 }, /turf/open/floor/strata/white_cyan3/east, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/med) "nOW" = ( /obj/effect/decal/cleanable/generic, /turf/open/auto_turf/snow/brown_base/layer2, @@ -29451,12 +29137,6 @@ "oeA" = ( /turf/open/floor/almayer/plate, /area/strata/ag/exterior/marsh/crash) -"oeG" = ( -/obj/structure/pipes/standard/simple/hidden/cyan{ - dir = 4 - }, -/turf/open/floor/strata/orange_cover, -/area/strata/ag/interior/mining_outpost/hallways) "oeH" = ( /obj/structure/surface/table/reinforced/prison, /obj/effect/landmark/item_pool_spawner/survivor_ammo/buckshot, @@ -29734,10 +29414,6 @@ }, /turf/open/auto_turf/strata_grass/layer0, /area/strata/ug/interior/jungle/structures/monitoring/west) -"oJk" = ( -/obj/structure/pipes/standard/simple/hidden/cyan, -/turf/open/floor/strata/red1, -/area/strata/ag/interior/outpost/hallways/north) "oJD" = ( /obj/item/stack/rods, /turf/open/asphalt/cement/cement12, @@ -29747,13 +29423,13 @@ dir = 5 }, /turf/open/floor/strata, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/canteen) "oKd" = ( /obj/structure/pipes/standard/manifold/hidden/cyan{ dir = 4 }, /turf/open/floor/strata, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/admin) "oKl" = ( /obj/structure/flora/grass/ice/brown/snowgrassbb_3, /turf/open/auto_turf/snow/brown_base/layer2, @@ -29761,6 +29437,10 @@ "oKo" = ( /turf/closed/wall/strata_outpost, /area/strata/ag/interior/outpost/engi) +"oKr" = ( +/obj/effect/sentry_landmark/lz_2/top_left, +/turf/open/auto_turf/ice/layer1, +/area/strata/ag/exterior/landing_zones/near_lz2) "oKV" = ( /obj/structure/machinery/light{ dir = 1 @@ -29793,6 +29473,12 @@ }, /turf/open/auto_turf/snow/brown_base/layer2, /area/strata/ag/exterior/paths/flight_control_exterior) +"oMA" = ( +/obj/structure/machinery/door/airlock/multi_tile/almayer/comdoor/colony{ + name = "\improper Airlock" + }, +/turf/open/floor/strata/multi_tiles/southeast, +/area/strata/ag/interior/outpost/med) "oMZ" = ( /obj/structure/toilet{ dir = 8 @@ -29818,10 +29504,6 @@ }, /turf/open/floor/strata/floor3/east, /area/strata/ag/exterior/outpost_decks) -"oOS" = ( -/obj/effect/decal/strata_decals/catwalk/prison, -/turf/open/floor/strata/orange_cover, -/area/strata/ag/interior/outpost/hallways/north) "oOX" = ( /obj/structure/reagent_dispensers/water_cooler, /obj/effect/decal/strata_decals/grime/grime4, @@ -29906,12 +29588,6 @@ }, /turf/open/floor/plating, /area/strata/ag/interior/outside/engineering/parts_storage) -"oVZ" = ( -/obj/structure/pipes/standard/simple/hidden/cyan{ - dir = 4 - }, -/turf/open/floor/strata/white_cyan2/west, -/area/strata/ag/interior/outpost/hallways/north) "oWt" = ( /obj/structure/pipes/vents/pump{ dir = 8 @@ -30006,10 +29682,6 @@ /obj/structure/pipes/standard/simple/hidden/cyan, /turf/open/floor/strata/orange_cover, /area/strata/ag/interior/landing_zones/near_lz1) -"pfS" = ( -/obj/structure/curtain/medical, -/turf/open/floor/strata/floor2, -/area/strata/ag/interior/outpost/hallways/south) "pge" = ( /obj/structure/flora/grass/tallgrass/jungle/corner{ dir = 4 @@ -30019,7 +29691,7 @@ "pgW" = ( /obj/effect/decal/strata_decals/grime/grime3, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/mining_outpost/hallways) +/area/strata/ag/interior/mining_outpost/central) "phD" = ( /obj/structure/machinery/power/apc/no_power/west, /turf/open/floor/strata, @@ -30071,11 +29743,11 @@ dir = 5 }, /turf/open/floor/strata/white_cyan2/west, -/area/strata/ag/interior/outpost/canteen/personal_storage) +/area/strata/ag/interior/outpost/canteen) "pkG" = ( /obj/structure/pipes/standard/manifold/hidden/cyan, /turf/open/floor/strata/cyan1/east, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/med) "pkO" = ( /obj/structure/flora/grass/tallgrass/ice/corner{ dir = 5 @@ -30087,7 +29759,7 @@ dir = 4 }, /turf/open/floor/strata/cyan1/east, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/med) "plI" = ( /obj/structure/flora/grass/tallgrass/ice/corner{ dir = 4 @@ -30124,7 +29796,7 @@ }, /obj/structure/machinery/light, /turf/open/floor/strata/multi_tiles, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/foyer) "pnP" = ( /obj/structure/machinery/shower{ dir = 8 @@ -30163,7 +29835,7 @@ "ppC" = ( /obj/structure/pipes/standard/manifold/fourway/hidden/cyan, /turf/open/floor/strata/white_cyan3/west, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/med) "pqy" = ( /obj/effect/blocker/sorokyne_cold_water, /obj/structure/platform/strata{ @@ -30199,7 +29871,7 @@ name = "\improper Airlock" }, /turf/open/floor/strata/multi_tiles/west, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/engi/drome) "prN" = ( /obj/structure/sign/safety/security, /turf/closed/wall/strata_outpost, @@ -30259,7 +29931,7 @@ dir = 4 }, /turf/open/floor/strata/multi_tiles/west, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/med) "ptT" = ( /obj/structure/machinery/light/small{ dir = 8 @@ -30304,7 +29976,7 @@ "pvY" = ( /obj/structure/pipes/standard/manifold/hidden/cyan, /turf/open/floor/strata/floor3/east, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/engi/drome) "pwn" = ( /obj/structure/largecrate/guns/russian, /obj/structure/barricade/handrail/strata{ @@ -30320,11 +29992,7 @@ dir = 4 }, /turf/open/floor/strata/floor3/east, -/area/strata/ag/interior/outpost/hallways/south) -"pwQ" = ( -/obj/structure/pipes/standard/simple/hidden/cyan, -/turf/open/floor/strata/white_cyan2/west, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/engi/drome) "pwW" = ( /obj/structure/flora/bush/ausbushes/grassybush{ icon_state = "fullgrass_1" @@ -30355,7 +30023,7 @@ dir = 4 }, /turf/open/floor/strata/orange_cover, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/engi/drome) "pAR" = ( /obj/effect/landmark/structure_spawner/setup/distress/xeno_weed_node, /obj/structure/machinery/light/small, @@ -30367,6 +30035,10 @@ }, /turf/open/floor/strata/floor2, /area/strata/ug/interior/jungle/structures/research) +"pAZ" = ( +/obj/effect/sentry_landmark/lz_2/top_right, +/turf/open/auto_turf/snow/brown_base/layer1, +/area/strata/ag/exterior/landing_zones/near_lz2) "pDb" = ( /obj/structure/dropship_equipment/sentry_holder, /turf/open/floor/strata/floor3/east, @@ -30526,14 +30198,14 @@ pixel_y = 16 }, /turf/open/floor/strata/multi_tiles/southwest, -/area/strata/ag/interior/outpost/canteen/personal_storage) +/area/strata/ag/interior/outpost/canteen) "pNL" = ( /obj/structure/stairs/perspective{ color = "#6e6e6e"; icon_state = "p_stair_full" }, /turf/open/floor/strata, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/canteen) "pNT" = ( /obj/structure/flora/grass/tallgrass/jungle, /turf/open/auto_turf/strata_grass/layer1, @@ -30568,7 +30240,7 @@ dir = 4 }, /turf/open/floor/strata/white_cyan3/east, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/med) "pPi" = ( /obj/effect/landmark/structure_spawner/setup/distress/xeno_weed_node, /turf/open/auto_turf/strata_grass/layer0, @@ -30671,7 +30343,7 @@ dir = 6 }, /turf/open/floor/strata, -/area/strata/ag/interior/mining_outpost/hallways) +/area/strata/ag/interior/mining_outpost/central) "pYI" = ( /turf/open/floor/strata/floor3/east, /area/strata/ug/interior/outpost/underground_dorms/admin1) @@ -30845,6 +30517,10 @@ /obj/effect/landmark/item_pool_spawner/survivor_ammo/buckshot, /turf/open/floor/strata/floor3/east, /area/strata/ag/exterior/outpost_decks) +"qnh" = ( +/obj/structure/pipes/standard/simple/hidden/cyan, +/turf/open/floor/strata, +/area/strata/ag/interior/mining_outpost/central) "qns" = ( /obj/structure/machinery/light/small{ dir = 1 @@ -30900,7 +30576,7 @@ "quT" = ( /obj/structure/inflatable/popped/door, /turf/open/floor/strata/multi_tiles/southwest, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/med) "qvy" = ( /obj/structure/flora/grass/ice/brown/snowgrassbb_2, /turf/open/auto_turf/snow/brown_base/layer2, @@ -30936,7 +30612,7 @@ "qxt" = ( /obj/structure/machinery/cm_vending/sorted/medical/no_access, /turf/open/floor/strata/white_cyan3/east, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/med) "qxD" = ( /obj/structure/machinery/weather_siren{ dir = 4; @@ -30965,10 +30641,7 @@ "qzv" = ( /obj/structure/pipes/standard/simple/hidden/cyan, /turf/open/floor/strata/white_cyan3/northeast, -/area/strata/ag/interior/outpost/hallways/south) -"qAd" = ( -/turf/open/floor/strata/cyan1/east, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/med) "qAr" = ( /obj/structure/machinery/power/apc/no_power/north, /turf/open/floor/strata/floor2, @@ -31018,10 +30691,6 @@ /obj/structure/reagent_dispensers/watertank, /turf/open/asphalt/cement/cement1, /area/strata/ug/interior/outpost/platform) -"qHc" = ( -/obj/structure/curtain/open/shower, -/turf/open/floor/interior/plastic, -/area/strata/ag/interior/outpost/hallways/north) "qIt" = ( /obj/structure/barricade/handrail/strata{ dir = 4 @@ -31035,7 +30704,7 @@ dir = 8 }, /turf/open/floor/strata/blue1, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/admin) "qJi" = ( /obj/effect/decal/cleanable/blood/oil, /turf/open/floor/prison/darkyellowfull2, @@ -31129,6 +30798,12 @@ /obj/structure/machinery/light/small, /turf/open/asphalt/cement/cement15, /area/strata/ug/interior/outpost/platform) +"qQH" = ( +/obj/structure/pipes/standard/manifold/hidden/cyan{ + dir = 1 + }, +/turf/open/floor/strata/floor3, +/area/strata/ag/interior/outpost/admin) "qQN" = ( /obj/structure/closet/bodybag, /obj/effect/decal/cleanable/blood/gibs/down, @@ -31150,7 +30825,7 @@ dir = 4 }, /turf/open/floor/strata/white_cyan3/southwest, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/med) "qSo" = ( /turf/closed/shuttle/ert{ icon_state = "upp4" @@ -31211,7 +30886,7 @@ "qVb" = ( /obj/structure/pipes/standard/simple/hidden/cyan, /turf/open/floor/strata, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/canteen) "qVc" = ( /obj/structure/pipes/standard/simple/hidden/cyan{ dir = 10 @@ -31323,7 +30998,7 @@ dir = 8 }, /turf/open/floor/strata/white_cyan1/east, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/canteen) "rgt" = ( /obj/structure/stairs/perspective{ color = "#6e6e6e"; @@ -31383,7 +31058,7 @@ name = "\improper Airlock" }, /turf/open/floor/strata/multi_tiles/west, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/med) "riY" = ( /obj/structure/pipes/vents/pump{ dir = 8; @@ -31459,9 +31134,6 @@ "rpX" = ( /turf/open/asphalt/cement/cement4, /area/strata/ug/interior/outpost/platform) -"rqr" = ( -/turf/open/floor/strata/fake_wood, -/area/strata/ag/interior/outpost/hallways/north) "rqL" = ( /obj/item/tool/wrench, /turf/open/floor/strata, @@ -31618,7 +31290,7 @@ }, /obj/structure/inflatable/popped, /turf/open/floor/strata/cyan4/east, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/med) "rLn" = ( /obj/effect/landmark/survivor_spawner, /turf/open/floor/plating/warnplate, @@ -31708,12 +31380,6 @@ /obj/structure/blocker/forcefield/multitile_vehicles, /turf/open/auto_turf/strata_grass/layer1, /area/strata/ug/interior/jungle/platform/south) -"rSB" = ( -/obj/structure/pipes/standard/simple/hidden/cyan{ - dir = 4 - }, -/turf/open/floor/strata/white_cyan1/east, -/area/strata/ag/interior/mining_outpost/hallways) "rSE" = ( /obj/structure/pipes/standard/simple/hidden/cyan{ dir = 4 @@ -31729,7 +31395,7 @@ dir = 4 }, /turf/open/floor/strata/floor3/east, -/area/strata/ag/interior/outpost/canteen) +/area/strata/ag/interior/outpost/engi/drome) "rTC" = ( /obj/structure/pipes/standard/manifold/fourway/hidden/cyan, /turf/open/floor/strata/orange_cover, @@ -31771,10 +31437,6 @@ }, /turf/open/floor/strata/white_cyan2/west, /area/strata/ug/interior/outpost/underground_dorms/sec2) -"rXk" = ( -/obj/structure/pipes/vents/pump, -/turf/open/floor/strata/floor3, -/area/strata/ag/interior/outpost/hallways/north) "rXy" = ( /obj/structure/largecrate/random/barrel/yellow, /obj/effect/decal/cleanable/blood/oil, @@ -31794,7 +31456,7 @@ "rZD" = ( /obj/structure/pipes/standard/manifold/hidden/cyan, /turf/open/floor/strata/white_cyan3, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/med) "rZF" = ( /turf/closed/wall/strata_outpost/reinforced/hull, /area/strata/ag/exterior/paths/flight_control_exterior) @@ -31802,6 +31464,10 @@ /obj/item/storage/briefcase, /turf/open/floor/strata/red1, /area/strata/ag/interior/landing_zones/near_lz1) +"sad" = ( +/obj/effect/decal/cleanable/blood, +/turf/open/floor/strata/floor3, +/area/strata/ag/interior/outpost/foyer) "sah" = ( /obj/item/weapon/gun/pistol/t73, /turf/open/auto_turf/strata_grass/layer1, @@ -31847,7 +31513,7 @@ "scM" = ( /obj/structure/pipes/standard/manifold/hidden/cyan, /turf/open/floor/prison/darkyellowfull2, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/engi) "seb" = ( /obj/effect/landmark/structure_spawner/setup/distress/xeno_wall, /turf/open/auto_turf/snow/brown_base/layer0, @@ -31859,7 +31525,7 @@ icon_state = "p_stair_sn_full_cap" }, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/engi/drome) "sgq" = ( /obj/structure/bed{ icon_state = "abed" @@ -31906,12 +31572,6 @@ }, /turf/open/floor/strata/floor3/east, /area/strata/ag/interior/outpost/engi/drome) -"sjS" = ( -/obj/structure/pipes/vents/pump{ - dir = 8 - }, -/turf/open/floor/strata/floor3/east, -/area/strata/ag/interior/outpost/hallways/south) "ski" = ( /obj/structure/surface/table/reinforced/prison, /obj/item/storage/toolbox/mechanical, @@ -31923,7 +31583,7 @@ name = "\improper Airlock" }, /turf/open/floor/strata/multi_tiles/southeast, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/engi/drome) "skJ" = ( /obj/effect/decal/cleanable/blood/oil, /obj/structure/machinery/landinglight/ds2{ @@ -31938,12 +31598,6 @@ }, /turf/open/floor/plating, /area/strata/ag/interior/outside/engineering/parts_storage) -"slL" = ( -/obj/structure/bed/chair{ - dir = 4 - }, -/turf/open/floor/strata/white_cyan1/east, -/area/strata/ag/interior/outpost/hallways/north) "smd" = ( /obj/structure/flora/bush/ausbushes/grassybush{ icon_state = "brflowers_1" @@ -32121,7 +31775,7 @@ dir = 6 }, /turf/open/floor/prison/darkyellowfull2, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/engi) "sDs" = ( /obj/structure/flora/pottedplant{ icon_state = "pottedplant_22" @@ -32212,12 +31866,6 @@ /obj/effect/landmark/item_pool_spawner/survivor_ammo/buckshot, /turf/open/floor/almayer/test_floor5, /area/strata/ag/exterior/marsh/crash) -"sNz" = ( -/obj/structure/pipes/standard/simple/hidden/cyan{ - dir = 4 - }, -/turf/open/floor/strata, -/area/strata/ag/interior/outpost/hallways/south) "sOB" = ( /obj/effect/decal/cleanable/blood/gibs/limb, /turf/open/floor/strata/multi_tiles/southwest, @@ -32401,9 +32049,6 @@ }, /turf/open/auto_turf/ice/layer1, /area/strata/ag/exterior/paths/south_outpost) -"tfy" = ( -/turf/open/floor/strata/white_cyan2/west, -/area/strata/ag/interior/outpost/hallways/north) "tfB" = ( /obj/structure/closet/secure_closet/engineering_electrical, /obj/effect/landmark/objective_landmark/medium, @@ -32446,16 +32091,12 @@ /obj/item/weapon/gun/pistol/t73, /turf/open/floor/greengrid, /area/strata/ag/exterior/outpost_decks) -"thD" = ( -/obj/effect/decal/cleanable/blood/oil, -/turf/open/floor/strata/floor3/east, -/area/strata/ag/interior/outpost/hallways/south) "tio" = ( /obj/structure/pipes/standard/manifold/hidden/cyan{ dir = 4 }, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/mining_outpost/hallways) +/area/strata/ag/interior/mining_outpost/central) "tiE" = ( /obj/structure/barricade/handrail/strata{ dir = 8 @@ -32486,6 +32127,12 @@ }, /turf/open/auto_turf/strata_grass/layer0, /area/strata/ug/interior/outpost/platform) +"tky" = ( +/obj/structure/pipes/standard/manifold/hidden/cyan{ + dir = 1 + }, +/turf/open/floor/strata/floor3, +/area/strata/ag/interior/mining_outpost/central) "tlc" = ( /obj/structure/surface/rack, /obj/item/storage/box/beakers, @@ -32708,7 +32355,7 @@ dir = 10 }, /turf/open/floor/strata, -/area/strata/ag/interior/outpost/canteen/lower_cafeteria) +/area/strata/ag/interior/outpost/canteen) "tGR" = ( /obj/structure/machinery/light{ dir = 1 @@ -32738,7 +32385,7 @@ "tIw" = ( /obj/structure/pipes/vents/pump, /turf/open/floor/strata/white_cyan2/west, -/area/strata/ag/interior/outpost/canteen/personal_storage) +/area/strata/ag/interior/outpost/canteen) "tJu" = ( /obj/item/ammo_magazine/rifle/type71, /turf/open/floor/strata/multi_tiles/southwest, @@ -32765,7 +32412,7 @@ dir = 4 }, /turf/open/floor/strata, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/canteen) "tJX" = ( /obj/structure/flora/grass/tallgrass/ice/corner{ dir = 5 @@ -32994,6 +32641,10 @@ }, /turf/open/auto_turf/ice/layer0, /area/strata/ag/exterior/marsh/center) +"tZm" = ( +/obj/structure/pipes/standard/simple/hidden/cyan, +/turf/open/floor/strata/fake_wood, +/area/strata/ag/interior/outpost/foyer) "tZF" = ( /obj/structure/machinery/light/small{ dir = 1 @@ -33066,6 +32717,10 @@ }, /turf/open/asphalt/cement, /area/strata/ag/exterior/outpost_decks) +"udS" = ( +/obj/effect/decal/strata_decals/catwalk/prison, +/turf/open/floor/strata/orange_cover, +/area/strata/ag/interior/outpost/engi/drome) "ueD" = ( /obj/structure/window/reinforced/tinted{ dir = 4 @@ -33101,7 +32756,7 @@ icon_state = "p_stair_sn_full_cap" }, /turf/open/floor/strata/multi_tiles/southwest, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/engi) "ufI" = ( /obj/structure/stairs/perspective{ color = "#6e6e6e"; @@ -33145,9 +32800,6 @@ "uiE" = ( /turf/open/auto_turf/ice/layer1, /area/strata/ag/exterior/paths/south_outpost) -"uiM" = ( -/turf/open/floor/strata/white_cyan2/west, -/area/strata/ag/interior/mining_outpost/hallways) "ujl" = ( /obj/structure/pipes/standard/simple/hidden/cyan{ dir = 4 @@ -33165,11 +32817,6 @@ }, /turf/open/floor/strata, /area/strata/ag/exterior/outpost_decks) -"uls" = ( -/obj/effect/decal/strata_decals/catwalk/prison, -/obj/structure/disposalpipe/segment, -/turf/open/floor/strata/multi_tiles/southwest, -/area/strata/ag/interior/outpost/hallways/south) "ulL" = ( /obj/structure/platform/strata/metal{ dir = 1 @@ -33192,12 +32839,6 @@ }, /turf/open/floor/strata/multi_tiles/west, /area/strata/ag/interior/outpost/security) -"unh" = ( -/obj/structure/machinery/light{ - dir = 4 - }, -/turf/open/floor/strata/floor3, -/area/strata/ag/interior/outpost/hallways/north) "unE" = ( /obj/structure/machinery/door/airlock/almayer/engineering/colony, /turf/open/floor/strata/multi_tiles/west, @@ -33231,12 +32872,6 @@ /obj/effect/landmark/objective_landmark/close, /turf/open/floor/strata/white_cyan2/west, /area/strata/ug/interior/outpost/underground_dorms/med2) -"urL" = ( -/obj/structure/pipes/standard/manifold/hidden/cyan{ - dir = 1 - }, -/turf/open/floor/prison/darkyellowfull2, -/area/strata/ag/interior/outpost/hallways/north) "urM" = ( /obj/structure/pipes/standard/manifold/hidden/cyan, /turf/open/floor/strata, @@ -33266,7 +32901,7 @@ dir = 8 }, /turf/open/floor/strata/fake_wood, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/admin) "utn" = ( /obj/structure/pipes/standard/simple/hidden/cyan{ dir = 4 @@ -33320,7 +32955,7 @@ "uyp" = ( /obj/structure/pipes/standard/manifold/hidden/cyan, /turf/open/floor/strata, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/engi/drome) "uyQ" = ( /obj/structure/barricade/handrail/strata{ dir = 1 @@ -33447,6 +33082,11 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/plating, /area/strata/ag/interior/outside/engineering/parts_storage) +"uML" = ( +/obj/structure/pipes/standard/simple/hidden/cyan, +/obj/structure/machinery/door/airlock/multi_tile/almayer/generic, +/turf/open/floor/strata/floor3, +/area/strata/ag/interior/mining_outpost/canteen) "uNi" = ( /obj/effect/decal/cleanable/dirt, /turf/open/floor/carpet, @@ -33495,6 +33135,9 @@ /obj/structure/pipes/standard/simple/hidden/cyan, /turf/open/floor/strata, /area/strata/ag/exterior/outpost_decks) +"uSI" = ( +/turf/open/floor/strata/multi_tiles/west, +/area/strata/ag/interior/mining_outpost/central) "uSR" = ( /obj/effect/landmark/xeno_hive_spawn, /obj/effect/landmark/ert_spawns/groundside_xeno, @@ -33510,10 +33153,6 @@ "uTv" = ( /turf/open/floor/strata/white_cyan2/west, /area/strata/ug/interior/outpost/underground_dorms/admin3) -"uTK" = ( -/obj/structure/pipes/standard/simple/hidden/cyan, -/turf/open/floor/strata/fake_wood, -/area/strata/ag/interior/outpost/hallways/north) "uTL" = ( /obj/structure/bed/chair/dropship/passenger{ dir = 8 @@ -33736,7 +33375,7 @@ /obj/structure/curtain/open/medical, /obj/structure/pipes/standard/simple/hidden/cyan, /turf/open/floor/strata/floor2, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/med) "vnV" = ( /obj/structure/stairs/perspective{ color = "#6e6e6e"; @@ -33791,9 +33430,6 @@ }, /turf/open/floor/strata/floor3/east, /area/strata/ag/interior/outside/engineering/parts_storage) -"vrL" = ( -/turf/open/floor/strata, -/area/strata/ag/interior/mining_outpost/hallways) "vsc" = ( /turf/open/auto_turf/strata_grass/layer0, /area/strata/ug/interior/jungle/tearlake) @@ -33962,7 +33598,7 @@ "vCN" = ( /obj/structure/pipes/standard/simple/hidden/cyan, /turf/open/floor/strata/cyan2/east, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/med) "vDm" = ( /obj/structure/blocker/forcefield/multitile_vehicles, /turf/open/floor/strata/multi_tiles/southwest, @@ -34009,17 +33645,15 @@ /obj/effect/decal/cleanable/blood, /turf/open/auto_turf/strata_grass/layer1, /area/strata/ug/interior/jungle/structures/monitoring/east) -"vHg" = ( -/obj/structure/pipes/standard/simple/hidden/cyan{ - dir = 4 - }, -/turf/open/floor/strata/white_cyan2/west, -/area/strata/ag/interior/mining_outpost/hallways) "vHj" = ( /obj/structure/flora/grass/tallgrass/jungle, /obj/effect/landmark/monkey_spawn, /turf/open/auto_turf/strata_grass/layer1, /area/strata/ug/interior/jungle/structures/research/south) +"vHI" = ( +/obj/structure/pipes/standard/manifold/hidden/cyan, +/turf/open/floor/strata, +/area/strata/ag/interior/mining_outpost/central) "vId" = ( /obj/structure/machinery/space_heater, /obj/structure/barricade/handrail/strata, @@ -34066,9 +33700,6 @@ /obj/effect/landmark/objective_landmark/medium, /turf/open/floor/strata/red1, /area/strata/ag/interior/mining_outpost/flight_control) -"vMM" = ( -/turf/open/floor/prison/darkyellowfull2, -/area/strata/ag/interior/outpost/hallways/north) "vNG" = ( /obj/structure/reagent_dispensers/watertank, /turf/open/floor/strata/multi_tiles, @@ -34135,9 +33766,6 @@ "vVK" = ( /turf/open/auto_turf/strata_grass/layer1, /area/strata/ug/interior/jungle/structures/research/old_tunnels) -"vXc" = ( -/turf/open/floor/strata/floor3/east, -/area/strata/ag/interior/outpost/hallways/south) "vXt" = ( /obj/structure/flora/grass/ice/brown/snowgrassbb_2, /obj/structure/pipes/standard/simple/hidden/cyan{ @@ -34196,12 +33824,6 @@ /obj/structure/pipes/standard/simple/hidden/cyan, /turf/open/auto_turf/ice/layer0, /area/strata/ag/exterior/marsh/spring_marshes) -"wch" = ( -/obj/structure/pipes/vents/pump{ - dir = 1 - }, -/turf/open/floor/strata, -/area/strata/ag/interior/outpost/hallways/south) "wdf" = ( /obj/structure/bookcase{ icon_state = "book-5" @@ -34261,9 +33883,6 @@ /obj/structure/flora/bush/ausbushes/grassybush, /turf/open/auto_turf/strata_grass/layer1, /area/strata/ug/interior/outpost/platform) -"wim" = ( -/turf/open/floor/strata/multi_tiles/southeast, -/area/strata/ag/interior/outpost/hallways/south) "wjv" = ( /obj/structure/flora/grass/ice/brown/snowgrassbb_2, /turf/open/auto_turf/snow/brown_base/layer2, @@ -34271,7 +33890,7 @@ "wjF" = ( /obj/structure/pipes/vents/pump, /turf/open/floor/strata/red1, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/security) "wkv" = ( /obj/structure/flora/bush/ausbushes/genericbush, /turf/open/auto_turf/strata_grass/layer1, @@ -34412,7 +34031,7 @@ dir = 8 }, /turf/open/floor/strata/white_cyan3/west, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/med) "wxU" = ( /obj/structure/bed{ icon_state = "abed" @@ -34609,7 +34228,7 @@ dir = 8 }, /turf/open/floor/strata/orange_cover, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/engi/drome) "wSb" = ( /turf/open/auto_turf/snow/brown_base/layer0, /area/strata/ag/exterior/marsh/spring_marshes) @@ -34633,7 +34252,7 @@ }, /obj/effect/decal/cleanable/blood, /turf/open/floor/strata/white_cyan2/west, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/canteen) "wVf" = ( /obj/structure/bed/chair/office/dark{ dir = 8 @@ -34683,7 +34302,7 @@ "wXL" = ( /obj/effect/decal/cleanable/blood/oil, /turf/open/floor/strata/floor3, -/area/strata/ag/interior/mining_outpost/hallways) +/area/strata/ag/interior/mining_outpost/south_dormitories) "wYx" = ( /turf/open/floor/carpet, /area/strata/ag/interior/restricted) @@ -34760,6 +34379,10 @@ }, /turf/open/floor/strata/purp2, /area/strata/ug/interior/jungle/structures/monitoring) +"xgU" = ( +/obj/effect/sentry_landmark/lz_2/top_right, +/turf/open/auto_turf/snow/brown_base/layer0, +/area/strata/ag/exterior/landing_zones/near_lz2) "xhA" = ( /obj/structure/machinery/power/apc/no_power/south, /turf/open/floor/strata/orange_cover, @@ -34777,7 +34400,7 @@ /area/strata/ag/interior/outside/engineering/parts_storage_exterior) "xjp" = ( /turf/open/floor/strata/orange_cover, -/area/strata/ag/interior/mining_outpost/hallways) +/area/strata/ag/interior/mining_outpost/south_dormitories) "xjr" = ( /turf/open/auto_turf/strata_grass/layer0, /area/strata/ug/interior/jungle/platform/east) @@ -34802,7 +34425,7 @@ /area/strata/ag/interior/outpost/med) "xlP" = ( /turf/open/floor/strata/cyan3/west, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/med) "xlQ" = ( /obj/structure/machinery/door/airlock/almayer/command{ dir = 2 @@ -34874,12 +34497,6 @@ }, /turf/open/floor/strata/multi_tiles/southwest, /area/strata/ag/interior/outside/engineering/parts_storage) -"xrW" = ( -/obj/structure/pipes/standard/simple/hidden/cyan{ - dir = 4 - }, -/turf/open/floor/strata/cyan2/east, -/area/strata/ag/interior/outpost/hallways/south) "xst" = ( /obj/structure/machinery/cryobag_recycler, /obj/structure/surface/table/reinforced/prison, @@ -34897,10 +34514,6 @@ }, /turf/open/floor/strata, /area/strata/ug/interior/outpost/underground_dorms/admin3) -"xuc" = ( -/obj/effect/decal/cleanable/blood, -/turf/open/floor/strata/white_cyan2/west, -/area/strata/ag/interior/outpost/canteen/lower_cafeteria) "xuq" = ( /obj/item/trash/plate{ pixel_x = 1; @@ -35097,6 +34710,10 @@ /obj/effect/landmark/objective_landmark/science, /turf/open/floor/strata/floor3/east, /area/strata/ag/exterior/vanyard) +"xJr" = ( +/obj/structure/pipes/standard/simple/hidden/cyan, +/turf/open/floor/strata/floor3, +/area/strata/ag/interior/outpost/foyer) "xJD" = ( /obj/structure/closet/bodybag, /obj/effect/decal/cleanable/blood/gibs/core, @@ -35160,7 +34777,7 @@ dir = 1 }, /turf/open/floor/strata/white_cyan2/west, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/canteen) "xLB" = ( /obj/effect/decal/cleanable/blood, /obj/item/stack/sheet/wood, @@ -35233,11 +34850,6 @@ }, /turf/open/floor/strata/multi_tiles/southeast, /area/strata/ag/interior/outside/checkpoints/north_armor) -"xQu" = ( -/obj/effect/decal/strata_decals/catwalk/prison, -/obj/structure/pipes/standard/simple/hidden/cyan, -/turf/open/floor/greengrid, -/area/strata/ag/interior/mining_outpost/hallways) "xRl" = ( /obj/structure/bed/chair/dropship/passenger{ dir = 8 @@ -35317,12 +34929,6 @@ /obj/effect/decal/cleanable/blood/gibs/limb, /turf/open/floor/strata, /area/strata/ag/exterior/outpost_decks) -"xWS" = ( -/obj/structure/pipes/standard/simple/hidden/cyan{ - dir = 4 - }, -/turf/open/floor/strata, -/area/strata/ag/interior/mining_outpost/hallways) "xXi" = ( /obj/effect/decal/cleanable/blood/gibs/body, /obj/effect/decal/cleanable/blood/gibs/core, @@ -35356,7 +34962,7 @@ dir = 8 }, /turf/open/floor/strata/orange_cover, -/area/strata/ag/interior/outpost/hallways/south) +/area/strata/ag/interior/outpost/engi/drome) "ybh" = ( /obj/structure/surface/rack, /turf/open/floor/strata/multi_tiles, @@ -35369,9 +34975,6 @@ /obj/effect/landmark/structure_spawner/setup/distress/xeno_weed_node, /turf/open/floor/strata/fake_wood, /area/strata/ug/interior/jungle/structures/monitoring) -"ycy" = ( -/turf/closed/wall/strata_outpost, -/area/strata/ag/interior/outpost/hallways/south) "yde" = ( /obj/structure/machinery/power/apc/no_power/north, /turf/open/floor/strata, @@ -35426,7 +35029,7 @@ dir = 1 }, /turf/open/floor/strata, -/area/strata/ag/interior/outpost/hallways/north) +/area/strata/ag/interior/outpost/engi) "yhJ" = ( /obj/structure/largecrate/random, /turf/open/floor/strata/floor3/east, @@ -39919,7 +39522,7 @@ aMB aJP ctC iGm -eHZ +aPh pWz aSR aUu @@ -40069,7 +39672,7 @@ qKU exO ddp crY -iGm +dNB dLx ctC eOI @@ -40078,8 +39681,8 @@ ctC arX atr auo -eHZ -ktH +cbj +aLh ayj ctK atr @@ -40094,8 +39697,8 @@ aLf aMB aNJ xjp -eHZ -oeG +aPh +clW aSS ctx cty @@ -40244,7 +39847,7 @@ kRb cnO ddp bXW -myV +bWy dLx ctC afW @@ -40253,7 +39856,7 @@ ctC arY arY caE -myV +bWy awI caE arY @@ -40268,9 +39871,9 @@ chq aLf aMB fno -myV -eHZ -dLx +ckX +aPh +cov miI spJ cty @@ -40419,7 +40022,7 @@ jPT cnO ddp alG -lmF +hgN anm ctC afW @@ -40428,8 +40031,8 @@ ctC arX atr auo -eHZ -myV +cbj +bWy ayj ctK atr @@ -40443,7 +40046,7 @@ chr bWy aMB cjv -myV +ckX lmF aRD aSR @@ -40594,7 +40197,7 @@ ddp ddp ddp bXW -myV +bWy dLx ctC afW @@ -40603,8 +40206,8 @@ ctC arY arY ctD -myV -eHZ +bWy +cbj caE azB azB @@ -40618,8 +40221,8 @@ fWV aLg aMB cjv -myV -eHZ +ckX +aPh cov aac aac @@ -40769,7 +40372,7 @@ cnO ajQ ddp crY -myV +bWy bCh ctC ctC @@ -40779,7 +40382,7 @@ ctC ctC jqg avr -myV +bWy bPs azC azC @@ -40794,7 +40397,7 @@ aLh aMB cjv xjp -eHZ +aPh clW cnB aac @@ -40865,7 +40468,7 @@ aac wXw qPu uhM -wXw +nxc rNI rNI bvE @@ -40953,8 +40556,8 @@ fno dVh ctC aup -myV -eHZ +bWy +cbj bPs azD azD @@ -40969,7 +40572,7 @@ aLi aMD crY iGm -eHZ +aPh cov cjw aac @@ -41042,7 +40645,7 @@ uTt tJX bvE rNI -bvE +jpC rNI bxh aac @@ -41119,7 +40722,7 @@ vNG akt ddp fno -myV +bWy dLx bXW ctC @@ -41128,23 +40731,23 @@ ojB iqD ctC auq -eHZ +cbj pgW -myV -eHZ -myV -myV +bWy +cbj +bWy +bWy aDG -xjp -xWS -vrL +ify +bZV +bPs aIo -vrL -vrL -xjp +bPs +bPs +ify aDG -myV -myV +ckX +ckX cov aSU cnB @@ -41294,8 +40897,8 @@ ddp ddp ddp crY -iGm -aRG +dNB +tky aoo aHa aqc @@ -41306,7 +40909,7 @@ ctF avs pYG kUN -aPa +qnh aBl aCG aDH @@ -41321,7 +40924,7 @@ aDH aPa aPa aRF -myV +ckX cnA aWl bXV @@ -41391,7 +40994,7 @@ aac aac bwA rNI -rNI +oKr bvE bvE bwv @@ -41469,7 +41072,7 @@ bRs bRs bRs jOl -dmK +bOs ano crY crY @@ -41479,7 +41082,7 @@ pAR ctC ctC avt -xWS +bZV aCl pYZ aBm @@ -41494,8 +41097,8 @@ aMB oOX ctC aPb -myV -dLx +ckX +cov aSV cnB bXd @@ -41644,8 +41247,8 @@ qUW qUW qUW qUW -lLN -rSB +qUW +bUs crY ybh aeD @@ -41654,7 +41257,7 @@ aeM aeM aCE avu -nHE +sJd cew azG aBn @@ -41670,8 +41273,8 @@ aMF ctC cjw cnB -dLx -vrL +cov +aLq cnC aWm aXC @@ -41757,7 +41360,7 @@ bvE bvD mcX rxL -bvD +caw bvE rNI bvE @@ -41816,10 +41419,10 @@ cnO ddp ajn hCp -uiM +xSJ akX akX -uiM +xSJ aQX crY eOI @@ -41828,7 +41431,7 @@ lMC jIv ydR ctC -myV +bWy awK cew azH @@ -41928,7 +41531,7 @@ bxC bvD bvD bvD -bvD +caw bvM mcX rxL @@ -41994,8 +41597,8 @@ bQs aku akY alI -uiM -rSB +xSJ +bUs aHa afW wWx @@ -42003,8 +41606,8 @@ afW asb jfh bYE -eHZ -xWS +cbj +bZV cew azI oXH @@ -42020,8 +41623,8 @@ aPT aNL aPh cjw -dLx -vrL +cov +aLq cnA clU aXD @@ -42110,7 +41713,7 @@ bwt bwb jLc bwt -bwt +epz bwt aac aac @@ -42178,7 +41781,7 @@ afg ctC ctC ctC -aLp +uSI awL ctC ctC @@ -42195,7 +41798,7 @@ tNr cjw aPi cwd -dLx +cov cmC cnB bXd @@ -42341,11 +41944,11 @@ ahU xSJ ajp qUW -vHg -uiM +ahU +xSJ akX -uiM -rSB +xSJ +bUs ctB apr aqe @@ -42353,8 +41956,8 @@ cbj asc bXW ctC -myV -xWS +bWy +bZV alV ctC ciA @@ -42519,19 +42122,19 @@ qUW aIi ala bMZ -uiM +xSJ bUu -aus +uML fHp fHp fHp tio fHp aus -xQu -aRF +aEI +vHI ayn -aSS +aNJ ciA ciA aDK @@ -42691,22 +42294,22 @@ ahV aiF vjD qUW -uiM +xSJ alb alb -uiM -rSB -myV -myV -myV -myV -myV -myV +xSJ +bUs myV -eHZ -xWS -vrL -miI +bWy +bWy +bWy +bWy +bWy +bWy +cbj +bZV +bPs +fno ciA ciA aDL @@ -42721,7 +42324,7 @@ vnh aPk ckX aRK -myV +ckX cnA clU aXH @@ -42866,9 +42469,9 @@ ahW xSJ ajr qUW -uiM +xSJ akX -uiM +xSJ amt bUs ctB @@ -42878,8 +42481,8 @@ cbj aqf bXW ctC -iGm -xWS +dNB +bZV aym ctC ciA @@ -43041,10 +42644,10 @@ bOs aiG bPv qUW -uiM +xSJ alc alK -uiM +xSJ anq aCl crY @@ -43053,7 +42656,7 @@ crY crY crY crY -aLp +uSI awL ctC aHb @@ -43071,7 +42674,7 @@ aOt cnA aQz aRK -myV +ckX cnC aWn aXI @@ -43216,10 +42819,10 @@ bNa aiH jOl bQv -uiM +xSJ alb alb -uiM +xSJ bUs axK crY @@ -43421,7 +43024,7 @@ ciA aQu aQA aRK -myV +ckX cnA whO aXJ @@ -43771,7 +43374,7 @@ aNN cnA aQD aRK -myV +ckX cnC aLq aXK @@ -43945,8 +43548,8 @@ cjz cjw cnB aQF -dLx -myV +cov +ckX cnB cjw cjw @@ -44006,7 +43609,7 @@ buK tFA wSb wSb -bvE +pAZ bvD bvD bvD @@ -44115,13 +43718,13 @@ aMU aNo aOz vnh -myV -myV +ckX +ckX aNO aPl aPa aRF -vrL +aLq cjw aac aac @@ -44290,12 +43893,12 @@ aMS aNo aOB vnh -vrL +aLq aML -vrL -myV -myV -dLx +aLq +ckX +ckX +cov aSY cjw aac @@ -44707,7 +44310,7 @@ wSb tFA rni bvD -bvE +pAZ bvE bvE xTU @@ -45059,7 +44662,7 @@ wSb bvD bvD bvD -bvD +xgU bvD xTU bwt @@ -45946,7 +45549,7 @@ kBL bwt bvE bvE -bvD +mpU bvD bwI bxH @@ -46126,7 +45729,7 @@ bvD bvD bvD bvE -bvD +mpU bvD bvE bvE @@ -46298,7 +45901,7 @@ naw bvE bvE bvD -bvD +mpU bvD bvE bvE @@ -51649,7 +51252,7 @@ blb blb bfv blb -cxa +aYw bao blb bfv @@ -51659,7 +51262,7 @@ blb blb blb vlm -hmh +mGA riS mKv itw @@ -51835,7 +51438,7 @@ brB blb bJV exi -mrv +rUn bJV vmI oOB @@ -52349,7 +51952,7 @@ oKo blb bbq blb -cxa +aYw bat blb aac @@ -52361,8 +51964,8 @@ buU bxO bAT bCq -vXc -skl +mCx +oMA foN iLJ oHN @@ -52537,7 +52140,7 @@ bxP bAT bCq bKa -wim +bOE foN foN foN @@ -52699,7 +52302,7 @@ oKo aTt aUN aUN -rqr +aUN baV aUN aUN @@ -52710,7 +52313,7 @@ vtz vlm bxT dZp -vXc +mCx rUn vlm vlm @@ -52874,7 +52477,7 @@ oKo aTt aUN aWF -aWH +xJr baN bdd aUN @@ -52885,7 +52488,7 @@ bst vlm kHg bUv -evI +bTF mCx aNa vlm @@ -53033,26 +52636,26 @@ axd dgB dgB roI -gYn -gYn -gYn +dgB +dgB +dgB aGm aHr -vMM -gYn -dBO -hvz +aUV +dgB +aIV +aMX aOe aPE aPE aRZ -rqr -rqr -dBO +aUN +aUN +aWG aYB bar -bsD -bCq +sad +aUN bib cvl bsv @@ -53060,7 +52663,7 @@ bsv bsv bsv bBB -evI +bTF dzG mzC vlm @@ -53209,25 +52812,25 @@ ayF ouB aBM cAw -qVb -qVb +ouB +ouB aGn aHs -gDS -qVb -aWH +aJb +ouB +aLO aMY aOf aPF aPF aSb -uTK -uTK -aWH +tZm +tZm +xJr aYE baQ -bCt -bfD +xJr +tZm bii bkY bsw @@ -53235,7 +52838,7 @@ nOE bsw qzv rZD -evI +bTF bTF bGr vlm @@ -53383,8 +52986,8 @@ axe wsj qJi dgB -gNQ -gYn +aMZ +dgB aEY aGp aHt @@ -53399,7 +53002,7 @@ oKo axm aUN aWG -dBO +aWG baR bdg ctl @@ -53558,8 +53161,8 @@ aHv oWQ aAj orc -fLc -gYn +aAt +dgB aOa aJd aHv @@ -53574,7 +53177,7 @@ aac aTy aUN aUN -rqr +aUN baS aUN npf @@ -53733,8 +53336,8 @@ axf dgB aAk aBO -fLc -ajW +aAt +oWQ aUV aGr dCb @@ -53749,7 +53352,7 @@ aac aTz bfz aYw -rqr +aUN baV vFS bil @@ -53908,8 +53511,8 @@ axg ayH aUV bXq -fLc -gYn +aAt +dgB aUV uWG dCb @@ -53924,7 +53527,7 @@ aac aac aUS aWK -rqr +aUN baV blb blb @@ -54084,7 +53687,7 @@ ayI aAm aBQ aCV -jyw +bXq aUV vBs dCb @@ -54099,7 +53702,7 @@ aSc aTA aUT anc -qVb +aWL bbc aWL aWL @@ -54259,7 +53862,7 @@ tuV aAn aBR aCW -dBO +aIV aFb oKo oKo @@ -54433,8 +54036,8 @@ oKo ayK aAo aBS -gNQ -dBO +aMZ +aIV aUV aGr dCb @@ -54468,9 +54071,9 @@ buY cjV cni cvl -evI -evI -skl +bTF +bTF +oMA oqJ xJD ukx @@ -54600,16 +54203,16 @@ ayw ayw ayw kyT -jyw -gYn -gYn -jyw +bXq +dgB +dgB +bXq axi ayL aAp -ajW -gNQ -dBO +oWQ +aMZ +aIV aUV uWG dCb @@ -54624,8 +54227,8 @@ aJb aTC aUU biH -mlS -bbd +blN +bsK bdi cik cik @@ -54643,8 +54246,8 @@ bTF nof cng bkY -fZD -fZD +buY +buY bkY hQq qYm @@ -54775,16 +54378,16 @@ ayw ayw awJ kyT -jyw -gYn -gYn -jyw +bXq +dgB +dgB +bXq ufH -dBO +aIV ygB -qVb +ouB kMW -dBO +aIV aUV vBs dCb @@ -54799,8 +54402,8 @@ aSe aMZ aUU biH -mlS -bbd +blN +bsK bdi bfV biD @@ -54958,8 +54561,8 @@ aNu rpp aMZ dgB -gYn -dBO +dgB +aIV aFb aJd oKo @@ -54974,8 +54577,8 @@ oKo aTD oKo aWO -lOB -bbf +frL +cIz bdi bfM biH @@ -55133,8 +54736,8 @@ axj aIV aMW aRb -gOe -gOe +aRb +aRb aFc aKr aUV @@ -55150,7 +54753,7 @@ aMX bop biH aYH -bbd +bsK azd bfN biI @@ -55324,8 +54927,8 @@ dgB aMZ dgB biH -mlS -bbd +blN +bsK biH bfV biK @@ -55483,24 +55086,24 @@ axn bXq aAs aKr -gYn -gYn +dgB +dgB sCO -qVb -qVb -qVb -qVb -qVb +ouB +bbs +bbs +bbs +bbs bWE -qVb -qVb +bbs +bbs oKd -qVb +bbs oKd -qVb -qVb -lOB -bbf +bbs +bbs +frL +cIz bdk cik blV @@ -55658,38 +55261,38 @@ aIV bXq aAt aBW -gYn -gYn -urL +dgB +dgB +aFf aGw -gYn +biH aJf aKC -kAY +aLS qIV aKC -kAY +aLS aJf aKC -mlS -mlS -mlS -mlS -bbd -lou -wim -bCp -bCp +blN +blN +blN +blN +bsK +blN +bfP +bll +bll bpE bsD -bCp -bCp +bll +bll cvA hux bCp -wim -bUp -evI +bOE +bGr +bTF cjU bBT bTF @@ -55833,8 +55436,8 @@ aLO avU aAu aBX -qVb -qVb +ouB +ouB scM aGx aHD @@ -55848,23 +55451,23 @@ aJl aJl aJl aJl -aWQ -dBO -baR -mJq -bkY +bWH +bll +qQH +frL +qNi utk blR -bfD -bfD -bfD -bfD +ecR +ecR +ecR +ecR bfD bHp bfD bkY -fZD -fZD +buY +buY cjV bBT bTF @@ -56008,9 +55611,9 @@ axp bXq bXq ufI -cEa -gYn -hvz +orc +dgB +aMX aGy cik aVn @@ -56024,22 +55627,22 @@ aKD aTG wuE aWR -dBO -iqy -lou -wim -crG -bCp +bll +aMc +blN +bfP +aMc +bll agm +bll +bll +bll bCp bCp bCp -bCp -bCp -bCp -wim -evI -evI +bOE +bTF +bTF cjU bBT bTF @@ -56047,7 +55650,7 @@ bOE ryK mxa plC -qAd +ryK vmI vyl fBY @@ -56183,8 +55786,8 @@ axq bXq aAv aKr -gYn -aHD +dgB +jYl aFi aGz cik @@ -56199,8 +55802,8 @@ aOu blN taa aWR -dBO -gNQ +bll +oSV bdp cik biT @@ -56222,7 +55825,7 @@ bOE ryK nST pkG -qAd +ryK vlm mow jam @@ -56360,7 +55963,7 @@ aAw aBY aEb axt -hvz +aMX aGx cik bll @@ -56374,8 +55977,8 @@ bll blN aUZ aWR -dBO -gNQ +bll +oSV bdq cik biU @@ -56397,7 +56000,7 @@ bOE ryK ryK plC -qAd +ryK vnC tZV fBY @@ -56535,8 +56138,8 @@ oCc fyU scp oKo -hvz -gYn +aMX +dgB bfM biH jxc @@ -56549,7 +56152,7 @@ bll aTH aVa aWR -dBO +bll bbl bvl cik @@ -56572,7 +56175,7 @@ bTF mGA mGA ptr -hmh +mGA vnC tZV vyl @@ -56710,8 +56313,8 @@ oKo oKo oKo aHv -hvz -vMM +aMX +aUV cik aJm aKG @@ -56724,8 +56327,8 @@ aYO aTI aUY aWR -rXk -baN +aYO +juw bds bfS biV @@ -56747,7 +56350,7 @@ bTF bTF bTF bUv -evI +bTF vlm xAF voe @@ -56885,8 +56488,8 @@ aCa dLT bXq aEc -fbd -hJg +ceI +cdZ cik aJo aOu @@ -56899,8 +56502,8 @@ bll bsK aVc aWR -dBO -gNQ +bll +oSV bdt cik biW @@ -56928,7 +56531,7 @@ kbS vCN vCN mfv -kzE +cyH mqs maP mqs @@ -56938,8 +56541,8 @@ mqs mqs mpm quT -ljn -ljn +vtz +vtz eSx aac aac @@ -57060,7 +56663,7 @@ bXq bXq bXq oKo -fbd +ceI aGC cik tCI @@ -57074,8 +56677,8 @@ bll aTK aVa aWR -dBO -baR +bll +qQH frL bfU biX @@ -57098,12 +56701,12 @@ jAE bBV pOW jAE -pfS -cSx +voe +vyl baq -cSx -xrW -ycy +vyl +tZV +vlm hvj bGd xlP @@ -57113,8 +56716,8 @@ xlP xlP bGd rLg -ljn -ljn +vtz +vtz eSx aac aac @@ -57236,7 +56839,7 @@ uqY bXq aUS aFl -qVb +eRp bfU blS bbk @@ -57249,8 +56852,8 @@ bll bsK aUY aWR -dBO -gNQ +bll +oSV aLS bfV blN @@ -57270,7 +56873,7 @@ bCz cRB tVu bCz -vXc +bzl pro vlm vlm @@ -57288,7 +56891,7 @@ vlm vlm vlm vlm -hmh +mGA riS vlm vlm @@ -57410,8 +57013,8 @@ oKo oKo ayS oKo -fbd -gYn +ceI +cfx cik aJr oSV @@ -57424,8 +57027,8 @@ bll bsK aVd aWR -dBO -gNQ +bll +oSV bdu bfV biZ @@ -57445,8 +57048,8 @@ cnw cfg bCz jEW -hmh -ptr +bWZ +ckG vlm vsd aBp @@ -57463,8 +57066,8 @@ nsB vlm gbU gOu -ljn -ljn +vtz +vtz qeI fkK vlm @@ -57586,7 +57189,7 @@ ccn cdZ ijo aFl -aGw +gea cik aJs aKK @@ -57599,7 +57202,7 @@ bll aTL aVa aWR -dBO +bll bbl bdv cik @@ -57620,8 +57223,8 @@ cfg cfg bCz loP -vXc -dZp +bzl +ckH vlm vsZ ryK @@ -57638,8 +57241,8 @@ rMP vlm gbU hGd -ljn -ljn +vtz +vtz vms fkK vlm @@ -57760,8 +57363,8 @@ gAm gAm cdc cdW -fbd -aGx +ceI +nBT cge bsG oSV @@ -57774,7 +57377,7 @@ bll bsK aVe aWR -gYn +biH bbl bdv aac @@ -57795,8 +57398,8 @@ cnx cnx aac jJv -hmh -ptr +bWZ +ckG vlm vtz xlg @@ -57813,8 +57416,8 @@ pSc vlm oiF hGd -ljn -ljn +vtz +vtz xnP vlm vlm @@ -57935,8 +57538,8 @@ gAm gAm cdd cdX -fbd -aGx +ceI +nBT cgg iQt oSV @@ -57949,8 +57552,8 @@ bll bsK aVf aWS -gYn -iqy +biH +aMc aac aac cik @@ -57988,8 +57591,8 @@ nsB vlm gbU hGd -ljn -ljn +vtz +vtz wAj vlm mWF @@ -58110,8 +57713,8 @@ cdZ cdZ cdc cdW -fbd -aGx +ceI +nBT cgg aJu oSV @@ -58124,8 +57727,8 @@ bll bsK aVg bWH -gYn -iqy +biH +aMc bdE bfX cik @@ -58145,8 +57748,8 @@ cnK cSr csQ csQ -hmh -ptr +bWZ +ckG rpA vtz ryK @@ -58163,8 +57766,8 @@ nsB vlm gbU hGd -ljn -ljn +vtz +vtz eFO vlm bjr @@ -58286,7 +57889,7 @@ cco cco ijo ceK -aGx +nBT cgg aJv aKL @@ -58299,8 +57902,8 @@ blS aTM aVj aWR -dBO -iqy +bll +aMc bfV xaR cik @@ -58320,8 +57923,8 @@ bvB cUi csQ csQ -vXc -dZp +bzl +ckH aac vvB xlg @@ -58338,8 +57941,8 @@ eSx eSx wdI npW -ljn -ljn +vtz +vtz vBV vlm bjr @@ -58460,8 +58063,8 @@ aAB aCb cfx cfx -fbd -aGx +ceI +nBT cge bsG biH @@ -58474,8 +58077,8 @@ bll aTN wdf aWR -dBO -iqy +bll +aMc bfV bll bjc @@ -58495,8 +58098,8 @@ bWZ cUT gpO csQ -hmh -ptr +bWZ +ckG aac aac eSx @@ -58513,7 +58116,7 @@ aiJ iEU iEU vlm -hmh +mGA riS vlm vlm @@ -58619,24 +58222,24 @@ ayw aAR aAR bTl -mWA -hJg -hJg +wto +cdZ +cdZ wjF -oJk +cdY mtm -oJk +cdY asE -auK -oJk +fVX +cdY cad ayW -oJk +cdY asE -oJk -oJk +cdY +cdY ceL -gYn +cfx cik cgT cik @@ -58649,7 +58252,7 @@ bll qVc gAx pug -aWH +blS aYR cik bll @@ -58670,8 +58273,8 @@ bvz cWs bzl bzl -vXc -dZp +bzl +ckH rzx bvw hHZ @@ -58794,24 +58397,24 @@ ayw awJ aAR bTl -mWA -hJg -hJg -hJg -hJg -hJg -hJg +wto +cdZ +cdZ +cdZ +cdZ +cdZ +cdZ atL -fbd -hJg -fbd -mWA -hJg -hJg -hJg -hJg -fbd -gYn +ceI +cdZ +ceI +wto +cdZ +cdZ +cdZ +cdZ +ceI +cfx cik cgU aKN @@ -58824,8 +58427,8 @@ bll blN aVg bWH -dBO -dBO +bll +bll bdI jBp bjf @@ -58845,7 +58448,7 @@ bvz csQ bzl bzl -vXc +bzl pwz csQ bvz @@ -58986,7 +58589,7 @@ cco cco ijo aFl -aGw +gea cik cgT cik @@ -59020,8 +58623,8 @@ bzl cYx bzl kdK -vXc -dZp +bzl +ckH rzG bHP bzl @@ -59160,8 +58763,8 @@ aAC aCc dWu cea -fbd -gYn +ceI +cfx cik aJw aKN @@ -59174,12 +58777,12 @@ aSl agw cik bll -dBO -dBO +bll +bll bdJ bga bjh -kOu +btC bpx wQU fil @@ -59187,11 +58790,11 @@ bzm wQU wQU bLk -kOu +btC bLk -kOu +btC cle -kOu +btC ddI gqF kes @@ -59335,7 +58938,7 @@ aAD aCd aDf cea -fbd +ceI cfz cik cgT @@ -59349,29 +58952,29 @@ tCI tCI cik eFF -mlS -dBO +blN +bll bdK bga crG -hFK +csQ bpN -nOA -jNO -vXc -nOA -sjS -vXc -vXc -vXc -vXc -vXc -vXc -thD -vXc -vXc -vXc -vXc +bCK +bvz +bzl +bCK +bHN +bzl +bzl +bzl +bzl +bzl +bzl +bHP +bzl +bzl +bzl +bzl bHN bzl bzl @@ -59511,10 +59114,10 @@ aCe aDg ijo aFm -qVb -oJk -aWH -lOB +eRp +cdY +blS +frL aMg aJc aOx @@ -59525,17 +59128,17 @@ aTQ aNs aNs aNs -qVb +bbs bdY bgb bgg -hFK +csQ bpN yaC -jNO -vXc -nOA -vXc +bvz +bzl +bCK +bzl orL orL bWZ @@ -59686,10 +59289,10 @@ gAm aAD cea aFn -gYn -hJg -unh -mlS +cfx +cdZ +agm +blN aMh aNt aNt @@ -59700,17 +59303,17 @@ aTT aNt aNt aNt -gYn +biH beg -bCp +bsF crG -hFK +csQ bpN csQ cgc bzl -nOA -vXc +bCK +bzl orL bPq bzl @@ -59860,32 +59463,32 @@ aAF aCf dWu cea -fbd -gYn -hJg -jEt -jEt -jEt -mlS -mlS +ceI +cfx +cdZ +cik +cik +cik +blN +blN aQb aRm aSm -mlS -mlS -mlS -bUb -gYn +blN +blN +blN +aTU +biH beh bgc crG -hFK +csQ bpO csQ bvz bzl maX -vXc +bzl bLo csE baX @@ -60050,17 +59653,17 @@ ckK cjZ cjZ ckK -gYn +biH bem bga -nOA +bCK bCz bCz bCz bvQ bzn -nOA -vXc +bCK +bzl orL csF baY @@ -60228,14 +59831,14 @@ aac aac aac bge -nOA +bCK bjl bpP bCz bwc bzo -nOA -thD +bCK +bHP orL csF baZ @@ -60386,7 +59989,7 @@ bZD cbv bZD aFq -qVb +eRp aHK aJA aKS @@ -60402,15 +60005,15 @@ aXc aYW bbv aac -bCp -nOA +bsF +bCK bLo bqe bCz bvz bzl -nOA -vXc +bCK +bzl orL csF fch @@ -60560,9 +60163,9 @@ bZD cbv bZD aEf -fbd +ceI cfB -hJg +cdZ ckK cji aMl @@ -60577,14 +60180,14 @@ aXd aZb bbw aac -bCp -nOA +bsF +bCK bLo bLo bmo bvz bzl -nOA +bCK bHQ orL csF @@ -60752,14 +60355,14 @@ aXe aZh bbx ckK -bCp -nOA +bsF +bCK bjl bpX bCz bvz bzp -nOA +bCK bHW orL csF @@ -60899,7 +60502,7 @@ ayw aoI asL bwf -bWN +cjn asJ atP auP @@ -60912,7 +60515,7 @@ asL aEg aFs aGF -gYn +aHP ckK aKU aMn @@ -60928,13 +60531,13 @@ aZp bby ckK aPW -nOA +bCK bCz bCz bCz bCz nVs -nOA +bCK bHW orL csF @@ -61072,26 +60675,26 @@ ayw ayw ayw bVr -aKP -aKP +chd +chd bVr asK -gYn +aHP auQ -gYn -gYn +aHP +aHP aze -gYn +aHP aCi -gYn -gYn +aHP +aHP aFt aGG aHM aJC -cdh -cdh -cdh +aHP +aHP +aHP ckf aQd clI @@ -61102,15 +60705,15 @@ cpe aZq bbz ckK -bCp -nOA +bsF +bCK bmo agE oeQ bCz adh -nOA -vXc +bCK +bzl bLo csF bbe @@ -61246,30 +60849,30 @@ awJ ayw aET ayw -bVs -aKP -aKP -bVs -dBO +pVf +chd +chd +pVf +asL atQ -aKP -aKP -aKP -slL -aKP -aKP +chd +chd +chd +cdj +chd +chd aDk -slL +cdj aFu dDr -aKP -ccp -awm -ccp +chd +chd +lWl +chd aNw -ccp -ccp -cdh +chd +chd +aHP cmt cnr cok @@ -61277,14 +60880,14 @@ aXf aZr aVB ckK -bCp -nOA +bsF +bCK bCz oeQ bqb bCz nYM -nOA +bCK bIb orL bzl @@ -61414,20 +61017,20 @@ aac aac aac aac -ald -ald +cdm +cdm bMF bMF bMF -ald +cdm anJ -bVX +cdm apD asL -aDE -asM -cdh -ccp +cjn +asL +aHP +chd awj axF azf @@ -61435,7 +61038,7 @@ auR ccq aDl aEh -cXm +ckN aGH cgm aJD @@ -61443,8 +61046,8 @@ auR aMo aNx aOy -ccp -cdh +chd +aHP aSp cnr aVz @@ -61453,14 +61056,14 @@ aZt bbB beq bCt -cxx +crR bCz bST bqd bCz awX -nOA -vXc +bCK +bzl orL orL bWZ @@ -61589,37 +61192,37 @@ aac aac aac aac -ald +cdm ajV akC alk -alT -ald +aJD +cdm djW -bVX +cdm aqE apC -bWN +cjn asN ckf -ccp -awk -awk -awk -ckM -ccr -ccr +chd +eYz +eYz +eYz +ckN +cgY +cgY aEi -cXm +ckN aGI cgn aJE -ckM -awk -ccr +ckN +eYz +cgY aOA -ccp -cdh +chd +aHP aSq cnr aVA @@ -61628,25 +61231,25 @@ cnr bbC ber crF -cxx +crR bCz bCz bCz bCz clx -nOA -exi -vXc -vXc -vXc -vXc -vXc -vXc -vXc -vXc -vXc -vXc -vXc +bCK +bIp +bzl +bzl +bzl +bzl +bzl +bzl +bzl +bzl +bzl +bzl +bzl bIp bzl bzl @@ -61763,26 +61366,26 @@ aac aac aac aac -ald -ald +cdm +cdm ajX -bQU -bQU -acM -ald -ald -ald -bPf -bPf -bPf +asL +asL +bwf +cdm +cdm +cdm +cjn +cjn +cjn asO -cdh +aHP cHm -xuc -xuc -ccr +cgn +cgn +cgY gYr -cgo +lLu bZB bZB aFw @@ -61790,11 +61393,11 @@ aGJ lLu cgW cbz -ccr -ccr -ccr +cgY +cgY +cgY aQe -cdh +aHP ckK aTY aVB @@ -61802,26 +61405,26 @@ aXi aZu bbD ber -bCp -nOA -hFK +bsF +bCK +csQ mem -hFK +csQ bwk -bmk +bzp bCY bsY bLA -kOu -kOu -kOu +btC +btC +btC clv -kOu -kOu +btC +btC clv -kOu -kOu -kOu +btC +btC +btC rTC btC btC @@ -61938,38 +61541,38 @@ aac aac aac aac -ald -bPf +cdm +cjn ajY -bQU -bQU -bQU -bPf +asL +asL +asL +cjn anK aoJ apE -bPf -bPf +cjn +cjn asP -cdh +aHP auU -ccr -ccr +cgY +cgY caL -ckM -ccr +ckN +cgY +cfC +cgY +ckN cfC -ccr -cXm -lkI wUR -ccr -ckM -ccr +cgY +ckN +cgY cfC -ccr -ccp -cdh +cgY +chd +aHP ckK ckK cjZ @@ -61977,15 +61580,15 @@ cjZ cjZ cjZ bes -bCp +bsF bCY -kOu +btC bpM -kOu -kOu +btC +btC bzq bDo -uls +bIq bIq bIq bYA @@ -62113,52 +61716,52 @@ aac aac aac aac -ald -bPf -bkZ -bkZ +cdm +cjn +cgY +cgY tIw -anL -anL -anL +bZB +bZB +bZB pkA -bkZ +cgY aqG -bPf +cjn asL -cdh +aHP auV bZE -ccr -ccr +cgY +cgY aAK -ccr +cgY kXR -aEj -cXm -tfy -tfy -tfy +wUR +ckN +cgY +cgY +cgY aKW -tfy -tfy +cgY +cgY eYz -aKP -gYn -gYn -koH +chd +aHP +aHP +crd col col col col crd -bCp +bsF crG -hFK +csQ sen -hFK +csQ ctp -bUv +nLe ctp ctp bLB @@ -62170,8 +61773,8 @@ cpi dvR kCf kzk -sNz -lTe +bsW +pGC pGC pGC pGC @@ -62288,21 +61891,21 @@ aac aac aac aac -ald +cdm bPX bQS bQS bQS bQS bQS -bkZ -oVZ -tfy -dBO +cgY +cam +cgY +asL bVr -dBO +asL atR -aKP +chd awl axG azg @@ -62310,7 +61913,7 @@ rfN aCj aDn aEk -cXm +ckN aGK aHN aJF @@ -62318,17 +61921,17 @@ auX aMp aNy aOG -aKP +chd aRo -gYn -oOS +aHP +aUf pNL pNL pNL pNL -crf -jNO -sNz +aUf +bvz +bsW csQ vOs csR @@ -62345,8 +61948,8 @@ cpY dvX kCf kAn -sNz -jNO +bsW +bvz ski vOi lJz @@ -62463,47 +62066,47 @@ aac aac aac aac -ald +cdm ajx -bkZ -bkZ -bkZ -bkZ -bkZ -bkZ +cgY +cgY +cgY +cgY +cgY +cgY xLd -pwQ +bZB aqI -aSr +ceM aWH oJH -aKP +chd lWl -aKP +chd azi -aKP -cjl +chd +aQe aDo -aKP -cXm +chd +ckN lWl lWl lWl -aKP +chd lWl -cjl +aQe lWl aQf aRq -gYn -oOS +aHP +aUf pNL pNL pNL pNL -crf -jNO -sNz +aUf +bvz +bsW csQ vOs bLi @@ -62520,8 +62123,8 @@ bCz dzo bCz bCz -sNz -jNO +bsW +bvz vOs vOs vOs @@ -62638,28 +62241,28 @@ aac aac aac aac -ald -bPf +cdm +cjn ajZ akD alm -anG +cjn amM -bkZ -oVZ +cgY +cam apF -bPf -bPf +cjn +cjn asR tFS -aAL -aAL +qVb +qVb axH -azj -aAL -aAL -aAL -aAL +tJR +qVb +qVb +qVb +qVb aFx qVb qVb @@ -62670,14 +62273,14 @@ tJR qVb aQi qVb -aSr -lxZ +ceM +aUb aVD aVD aVD aVD aUb -cYw +bvB uyp csQ vOs @@ -62695,8 +62298,8 @@ cqf dBe gXX kCf -nOA -jNO +bCK +bvz vOs aad aad @@ -62813,23 +62416,23 @@ aac aac aac aac -ald +cdm ajy -bkZ -bkZ -bkZ -bkZ -bkZ -bkZ -oVZ -tfy +cgY +cgY +cgY +cgY +cgY +cgY +cam +cgY aqJ -bPf +cjn asS -ccp -ccp -ccp -ckM +chd +chd +chd +ckN cjn aAM aAM @@ -62852,9 +62455,9 @@ cpU cpU cpU cpU -hmh -ptr -bmb +bWZ +ckG +csQ vOs btI bwo @@ -62870,8 +62473,8 @@ bCK csQ haw kCf -nOA -jNO +bCK +bvz vOs aad aad @@ -62988,22 +62591,22 @@ aac aac aac aac -ald +cdm bPY bQS bQS bQS bQS bQS -bkZ -oVZ -tfy +cgY +cam +cgY aqK -bPf +cjn asT -ccr -ccr -ccr +cgY +cgY +cgY cam caM chd @@ -63027,9 +62630,9 @@ piu aZw kCa cpU -jNO -sNz -bmb +bvz +bsW +csQ vOs bvL bHH @@ -63046,7 +62649,7 @@ cwn cwn vOs njA -wch +cUi vOs aad wZZ @@ -63163,21 +62766,21 @@ aac aac aac aac -ald +cdm ajy -bkZ -bkZ -bJz -bkZ -bkZ -bkZ -oVZ +cgY +cgY +bZG +cgY +cgY +cgY +cam cgn aqJ -bPf -asU -ccr -ccr +cjn +cfE +cgY +cgY bZG axI ceM @@ -63202,9 +62805,9 @@ aXk bbF bbF cpU -jNO -sNz -bmb +bvz +bsW +csQ vOs csT bzG @@ -63221,7 +62824,7 @@ dBV hgI btC cll -jNO +bvz vOs mrM wZZ @@ -63338,16 +62941,16 @@ aac aac ali wvB -bPf -bPf +cjn +cjn bmX bmX -bPf +cjn alW alW alW -oVZ -tfy +cam +cgY aqK cjn cjn @@ -63377,9 +62980,9 @@ nNR aZy bbG cpU -jNO -sNz -bmb +bvz +bsW +csQ vOs vOs vOs @@ -63395,8 +62998,8 @@ bvz bvz bvz bvz -jNO -jNO +bvz +bvz vOs wZZ bmv @@ -63513,16 +63116,16 @@ ahZ awb agR agR -aiM +aoI pMU -bPZ -bPZ -bPZ -bPZ -bPZ +vkG +vkG +vkG +vkG +vkG alW -oVZ -tfy +cam +cgY aqJ cjn eBb @@ -63552,14 +63155,14 @@ cpU cpU cpU cpU -vXc -dZp -csi +bzl +ckH +bzl rTf -bqh +bPq bwq -bgz -csi +ckH +bzl bCz oeQ baA @@ -63570,8 +63173,8 @@ bvz bvz bvz bvz -jNO -jNO +bvz +bvz skl bmv bmv @@ -63689,10 +63292,10 @@ ahZ amw ahZ bVr -jyw -jyw -jyw -kRg +vkG +vkG +vkG +aln alX alX anM @@ -63726,8 +63329,8 @@ aHR aHR lZo aVG -aUf -vXc +udS +bzl bgA bzm csu @@ -63745,9 +63348,9 @@ csM dEX hni cvC -jNO -jNO -wim +bvz +bvz +bLo bmv xFc bmv @@ -63863,14 +63466,14 @@ ahZ ahZ agR agR -bVs -jyw +pVf +vkG bQT avH -jyw -jyw -jyw -jEt +vkG +vkG +vkG +cjn aoM cgn aqK @@ -63901,15 +63504,15 @@ aHR aHR aHR hyh -aUf -vXc -vXc +udS +bzl +bzl bms mko -vXc -vXc +bzl +bzl bgA -csV +bzm bIr bLJ bQq @@ -63920,8 +63523,8 @@ vOs vOs vOs vOs -hmh -riS +bWZ +kFz vOs bmv bmv @@ -64038,15 +63641,15 @@ aiW akH agR agR -aiM +aoI ajz akb akE alo -bPZ +vkG alo bmX -oVZ +cam cgn aqK arI @@ -64075,16 +63678,16 @@ cpU aVH aVH cpU -cdm -cdm -vXc +vOs +vOs +bzl bjp -cdm -cdm -cdm -vXc +vOs +vOs +vOs +bzl bjp -cdm +vOs vOs cwn cwn @@ -64213,16 +63816,16 @@ aac aac aac aac -ald -ald -ald -ald +cdm +cdm +cdm +cdm alr alo amO anP -oVZ -tfy +cam +cgY aqK cjn cdn @@ -64395,9 +63998,9 @@ alH nJO alo amP -bPf +cjn bVw -qHc +apI apI cjn asY @@ -64571,9 +64174,9 @@ nJO alo amP anR -oVZ -tfy -bQU +cam +cgY +asL amN cdn atW @@ -64746,9 +64349,9 @@ nJO alY amP anU -oVZ -tfy -bQU +cam +cgY +asL arJ asZ cdn @@ -64921,8 +64524,8 @@ nJO alo amP anR -oVZ -tfy +cam +cgY aqP bYU ata @@ -65095,10 +64698,10 @@ alH nJO alo amP -bPf +cjn aoM cgn -bQU +asL cdn bZI bZI @@ -65271,9 +64874,9 @@ amO alo amO anV -oVZ -tfy -bQU +cam +cgY +asL bYU ata vCD @@ -65447,7 +65050,7 @@ aln drS anW aoO -bWc +aMq aqQ bYU cdn @@ -65621,7 +65224,7 @@ als alZ als anV -tfy +cgY apK aqQ cdn @@ -65795,10 +65398,10 @@ bME bME bME bME -bPf -jyw +cjn +vkG bWd -bPf +cjn cjn atb cdn diff --git a/maps/map_files/USS_Almayer/USS_Almayer.dmm b/maps/map_files/USS_Almayer/USS_Almayer.dmm index 8a7f0d5ac2bc..9b2ce3953293 100644 --- a/maps/map_files/USS_Almayer/USS_Almayer.dmm +++ b/maps/map_files/USS_Almayer/USS_Almayer.dmm @@ -1463,7 +1463,13 @@ /turf/open/floor/almayer/dark_sterile, /area/almayer/medical/upper_medical) "akx" = ( -/turf/open/floor/almayer/sterile_green_side/north, +/obj/structure/machinery/door/airlock/multi_tile/almayer/medidoor{ + name = "\improper Medical Bay"; + req_one_access = null; + dir = 1 + }, +/obj/structure/machinery/door/firedoor/border_only/almayer, +/turf/open/floor/almayer/test_floor4, /area/almayer/medical/upper_medical) "akz" = ( /obj/structure/surface/table/almayer, @@ -1565,6 +1571,11 @@ /turf/closed/wall/almayer, /area/almayer/shipboard/starboard_missiles) "alD" = ( +/obj/item/paper_bin/uscm{ + pixel_y = 6; + pixel_x = 7 + }, +/obj/structure/surface/table/almayer, /turf/open/floor/almayer/sterile_green_side, /area/almayer/medical/upper_medical) "alE" = ( @@ -1763,12 +1774,8 @@ /turf/open/floor/plating/almayer/no_build, /area/almayer/stair_clone) "anp" = ( -/obj/structure/sign/safety/hazard{ - pixel_x = 15; - pixel_y = 32 - }, -/obj/structure/closet/secure_closet/guncabinet/red/armory_m4a3_pistol, -/turf/open/floor/almayer/redfull, +/obj/structure/flora/bush/ausbushes/ppflowers, +/turf/open/gm/grass/grass1, /area/almayer/medical/upper_medical) "anq" = ( /obj/item/device/radio/intercom{ @@ -1790,12 +1797,12 @@ /turf/open/floor/almayer/redfull, /area/almayer/medical/upper_medical) "anr" = ( -/obj/structure/sign/safety/intercom{ - pixel_x = 8; - pixel_y = 32 +/obj/structure/machinery/computer/med_data, +/obj/structure/sign/safety/terminal{ + pixel_x = 3; + pixel_y = 29 }, -/obj/structure/closet/secure_closet/guncabinet/red/armory_m39_submachinegun, -/turf/open/floor/almayer/redfull, +/turf/open/floor/almayer/sterile_green_side/north, /area/almayer/medical/upper_medical) "ans" = ( /turf/open/floor/almayer/sterile_green_side/west, @@ -1886,19 +1893,19 @@ /turf/open/floor/almayer/silver/west, /area/almayer/command/cichallway) "aop" = ( -/obj/structure/closet/secure_closet/personal/patient{ - name = "morgue closet" +/obj/structure/machinery/shower{ + pixel_y = 16 }, /obj/structure/machinery/light{ - dir = 1 + dir = 4 }, -/turf/open/floor/almayer/plate, -/area/almayer/medical/morgue) +/turf/open/floor/plating/plating_catwalk, +/area/almayer/medical/upper_medical) "aoq" = ( /turf/open/floor/almayer/plate, /area/almayer/medical/morgue) "aor" = ( -/obj/structure/curtain/medical, +/obj/effect/decal/cleanable/dirt, /turf/open/floor/almayer/plate, /area/almayer/medical/morgue) "aos" = ( @@ -2577,18 +2584,28 @@ /turf/open/floor/almayer/plate, /area/almayer/living/briefing) "asu" = ( -/obj/structure/sign/safety/hazard{ - pixel_x = 32; - pixel_y = -8 +/obj/structure/bed/chair/office/dark{ + dir = 8 }, -/obj/structure/closet/secure_closet/guncabinet/red/armory_shotgun, -/turf/open/floor/almayer/redfull, +/obj/structure/sign/safety/terminal{ + pixel_x = -10; + pixel_y = -27 + }, +/obj/structure/closet/secure_closet/professor_dummy{ + pixel_y = -30 + }, +/turf/open/floor/almayer/sterile_green_side, /area/almayer/medical/upper_medical) "asw" = ( -/obj/structure/machinery/light{ - dir = 8 +/obj/structure/pipes/standard/manifold/hidden/supply{ + dir = 4 }, -/turf/open/floor/almayer/sterile_green_side/west, +/obj/effect/decal/cleanable/dirt, +/obj/structure/machinery/camera/autoname/almayer{ + dir = 8; + name = "ship-grade camera" + }, +/turf/open/floor/almayer/sterile_green_side/east, /area/almayer/medical/upper_medical) "asA" = ( /obj/structure/pipes/standard/simple/hidden/supply, @@ -2652,11 +2669,17 @@ /turf/open/floor/almayer, /area/almayer/engineering/upper_engineering) "asU" = ( -/obj/structure/morgue{ - dir = 8 +/obj/item/device/flashlight/lamp{ + pixel_y = 8 }, -/turf/open/floor/almayer/plate, -/area/almayer/medical/morgue) +/obj/item/clothing/glasses/science{ + pixel_x = 3; + pixel_y = -3 + }, +/obj/item/device/flash, +/obj/structure/surface/table/reinforced/almayer_B, +/turf/open/floor/almayer/mono, +/area/almayer/medical/upper_medical) "asX" = ( /obj/structure/machinery/cm_vending/sorted/cargo_guns/squad_prep, /turf/open/floor/almayer/plate, @@ -3178,11 +3201,10 @@ /turf/open/floor/almayer/plate, /area/almayer/living/starboard_garden) "awj" = ( -/obj/structure/machinery/photocopier, -/obj/structure/sign/safety/terminal{ - pixel_x = -17 +/obj/structure/machinery/status_display{ + pixel_y = -30 }, -/turf/open/floor/almayer/sterile_green_side/west, +/turf/open/gm/grass/grass1, /area/almayer/medical/upper_medical) "awk" = ( /turf/open/floor/almayer/silver, @@ -3191,24 +3213,14 @@ /turf/open/floor/almayer/red/northwest, /area/almayer/command/cic) "awn" = ( -/obj/effect/decal/warning_stripes{ - icon_state = "N" +/obj/structure/pipes/standard/simple/hidden/supply, +/obj/structure/machinery/light{ + dir = 4 }, -/turf/open/floor/almayer/plating/northeast, +/turf/open/floor/almayer/sterile_green_side/east, /area/almayer/medical/upper_medical) "awp" = ( -/obj/structure/machinery/door/poddoor/shutters/almayer{ - dir = 4; - id = "Research Armory"; - name = "\improper Armory Shutters" - }, -/obj/effect/decal/warning_stripes{ - icon_state = "E" - }, -/obj/effect/decal/warning_stripes{ - icon_state = "W" - }, -/turf/open/floor/almayer/test_floor4, +/turf/open/floor/almayer/sterile_green_side/east, /area/almayer/medical/upper_medical) "awq" = ( /obj/structure/machinery/light{ @@ -3386,14 +3398,22 @@ /turf/open/floor/almayer/redcorner/west, /area/almayer/shipboard/weapon_room) "axl" = ( -/obj/structure/machinery/door_control{ - dir = 1; - id = "Research Armory"; - name = "Research Armory"; - pixel_x = -27; - req_one_access_txt = "4;28" +/obj/structure/machinery/door/poddoor/shutters/almayer/open{ + dir = 4; + id = "CMO Shutters"; + name = "\improper CMO Office Shutters" }, -/turf/open/floor/almayer/sterile_green_side/southwest, +/obj/structure/machinery/door/airlock/almayer/medical/glass{ + access_modified = 1; + name = "\improper CMO's Office"; + req_one_access = null; + req_one_access_txt = "1;5" + }, +/obj/structure/pipes/standard/simple/hidden/supply{ + dir = 4 + }, +/obj/structure/machinery/door/firedoor/border_only/almayer, +/turf/open/floor/almayer/test_floor4, /area/almayer/medical/upper_medical) "axm" = ( /obj/structure/pipes/standard/simple/hidden/supply{ @@ -3729,15 +3749,13 @@ /turf/open/floor/almayer/orange/north, /area/almayer/engineering/upper_engineering) "ayW" = ( -/obj/structure/machinery/camera/autoname/almayer{ - dir = 1; - name = "ship-grade camera" +/obj/structure/morgue{ + dir = 8 }, -/obj/structure/sign/safety/medical{ - pixel_x = 8; - pixel_y = -32 +/obj/structure/machinery/light{ + dir = 4 }, -/turf/open/floor/almayer/plate, +/turf/open/floor/almayer/test_floor5, /area/almayer/medical/morgue) "ayX" = ( /obj/structure/surface/table/almayer, @@ -4024,15 +4042,17 @@ /turf/open/floor/almayer, /area/almayer/command/cic) "aAG" = ( -/obj/structure/machinery/door/airlock/almayer/medical{ - access_modified = 1; - dir = 2; - name = "Morgue"; - req_access_txt = "25"; - req_one_access = null +/obj/structure/platform, +/obj/structure/platform{ + dir = 8 }, -/turf/open/floor/almayer/test_floor4, -/area/almayer/medical/morgue) +/obj/structure/platform_decoration{ + dir = 10; + layer = 3.51 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/almayer/mono, +/area/almayer/medical/upper_medical) "aAK" = ( /obj/structure/surface/table/almayer, /obj/item/device/camera, @@ -4112,8 +4132,12 @@ /turf/open/floor/almayer/plate, /area/almayer/command/telecomms) "aBd" = ( +/obj/effect/decal/warning_stripes{ + icon_state = "N"; + pixel_y = 2 + }, /turf/open/floor/almayer/sterile_green_side/north, -/area/almayer/medical/morgue) +/area/almayer/medical/upper_medical) "aBe" = ( /obj/structure/machinery/door/poddoor/shutters/almayer{ dir = 4; @@ -4398,18 +4422,14 @@ /turf/open/floor/almayer/silvercorner, /area/almayer/command/cic) "aCo" = ( -/obj/structure/surface/table/almayer, -/obj/item/paper_bin/uscm, -/obj/item/tool/pen, -/obj/structure/sign/safety/terminal{ - pixel_x = 8; - pixel_y = 32 - }, -/turf/open/floor/almayer/sterile_green_corner, -/area/almayer/medical/morgue) +/turf/open/gm/grass/grass1, +/area/almayer/medical/upper_medical) "aCp" = ( -/obj/structure/machinery/power/apc/almayer/north, -/turf/open/floor/almayer/sterile_green_side/north, +/obj/structure/platform_decoration{ + dir = 1 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/almayer/mono, /area/almayer/medical/upper_medical) "aCt" = ( /obj/structure/bed/sofa/south/white/right, @@ -4424,8 +4444,21 @@ /turf/open/floor/almayer/green/east, /area/almayer/hallways/lower/port_midship_hallway) "aCw" = ( -/obj/structure/window/framed/almayer/white, -/turf/open/floor/plating, +/obj/structure/surface/rack, +/obj/item/storage/box/bodybags, +/obj/item/storage/box/bodybags, +/obj/item/storage/box/bodybags, +/obj/item/storage/box/bodybags, +/obj/item/storage/box/bodybags, +/obj/item/storage/box/bodybags, +/obj/item/storage/box/bodybags, +/obj/item/storage/box/bodybags, +/obj/structure/sign/safety/medical{ + pixel_x = 8; + pixel_y = -32 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/almayer/plate, /area/almayer/medical/morgue) "aCA" = ( /obj/structure/largecrate/random/barrel/white, @@ -4761,22 +4794,15 @@ /turf/open/floor/almayer, /area/almayer/living/numbertwobunks) "aEN" = ( -/obj/structure/bed/chair/office/dark{ - dir = 4; - layer = 3.25 - }, -/turf/open/floor/almayer/dark_sterile, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plating/plating_catwalk, /area/almayer/medical/morgue) "aEO" = ( -/obj/structure/surface/table/almayer, -/obj/structure/machinery/computer/med_data/laptop{ - dir = 8 +/obj/structure/machinery/light/double/blue{ + light_color = "#a7dbc7" }, -/obj/structure/machinery/light{ - dir = 4 - }, -/turf/open/floor/almayer/sterile_green_side/east, -/area/almayer/medical/morgue) +/turf/open/gm/grass/grass1, +/area/almayer/medical/upper_medical) "aEQ" = ( /obj/structure/pipes/standard/simple/hidden/supply, /turf/open/floor/almayer/mono, @@ -5096,15 +5122,12 @@ /turf/open/floor/almayer/plate, /area/almayer/living/numbertwobunks) "aGW" = ( -/turf/open/floor/almayer/sterile_green_side, +/turf/closed/wall/almayer/white/reinforced, /area/almayer/medical/morgue) "aGX" = ( -/obj/structure/machinery/camera/autoname/almayer{ - dir = 1; - name = "ship-grade camera" - }, -/turf/open/floor/almayer/sterile_green_side, -/area/almayer/medical/morgue) +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/almayer/sterile_green_side/west, +/area/almayer/medical/upper_medical) "aGY" = ( /turf/open/floor/almayer/plate, /area/almayer/living/numbertwobunks) @@ -5810,14 +5833,12 @@ /turf/open/floor/almayer, /area/almayer/command/cic) "aLS" = ( -/obj/item/device/radio/intercom{ - freerange = 1; - name = "General Listening Channel"; - pixel_y = 28 - }, -/obj/structure/bed/chair, -/turf/open/floor/almayer/sterile_green_side/north, -/area/almayer/medical/upper_medical) +/obj/structure/surface/table/reinforced/prison, +/obj/item/tool/surgery/circular_saw, +/obj/item/tool/surgery/retractor, +/obj/item/tool/surgery/cautery, +/turf/open/floor/almayer/plate, +/area/almayer/medical/morgue) "aLT" = ( /turf/closed/wall/almayer, /area/almayer/squads/alpha) @@ -5825,20 +5846,9 @@ /turf/open/floor/almayer, /area/almayer/shipboard/starboard_point_defense) "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, -/obj/structure/closet/secure_closet/professor_dummy{ - pixel_x = -32 - }, -/turf/open/floor/almayer/sterile_green_corner/west, +/obj/structure/bed/sofa/south/white, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/almayer/sterile_green_side/north, /area/almayer/medical/upper_medical) "aMd" = ( /obj/structure/filingcabinet/seeds{ @@ -6660,18 +6670,14 @@ /turf/open/floor/almayer/plate, /area/almayer/living/captain_mess) "aRF" = ( -/obj/structure/machinery/door/airlock/almayer/medical{ - access_modified = 1; - dir = 2; - name = "Morgue Processing"; - req_access_txt = "25"; - req_one_access = null +/obj/structure/toilet{ + dir = 4 }, -/obj/structure/machinery/door/firedoor/border_only/almayer{ - dir = 2 +/obj/structure/machinery/light{ + dir = 4 }, -/turf/open/floor/almayer/test_floor4, -/area/almayer/medical/morgue) +/turf/open/floor/plating/plating_catwalk, +/area/almayer/medical/upper_medical) "aRJ" = ( /obj/structure/ladder{ height = 2; @@ -6681,14 +6687,14 @@ pixel_x = 23; pixel_y = -32 }, -/obj/structure/sign/safety/restrictedarea{ - pixel_x = -17; - pixel_y = -8 - }, /obj/structure/sign/safety/refridgeration{ pixel_x = -17; pixel_y = 7 }, +/obj/structure/sign/safety/restrictedarea{ + pixel_x = -17; + pixel_y = -8 + }, /turf/open/floor/plating/almayer, /area/almayer/medical/upper_medical) "aRK" = ( @@ -6719,6 +6725,8 @@ /obj/effect/decal/warning_stripes{ icon_state = "W" }, +/obj/structure/machinery/light, +/obj/effect/decal/cleanable/dirt, /turf/open/floor/almayer/sterile_green_corner/west, /area/almayer/medical/upper_medical) "aRT" = ( @@ -8023,8 +8031,9 @@ /turf/open/floor/almayer/dark_sterile, /area/almayer/medical/operating_room_two) "bcZ" = ( -/obj/structure/surface/table/almayer, -/obj/item/storage/box/masks, +/obj/structure/machinery/chem_dispenser/corpsman{ + pixel_y = 3 + }, /turf/open/floor/almayer/red/north, /area/almayer/squads/alpha) "bda" = ( @@ -8248,8 +8257,9 @@ /turf/open/floor/almayer/dark_sterile, /area/almayer/medical/operating_room_one) "bew" = ( -/obj/structure/surface/table/almayer, -/obj/item/storage/box/masks, +/obj/structure/machinery/chem_dispenser/corpsman{ + pixel_y = 3 + }, /turf/open/floor/almayer/orange, /area/almayer/squads/bravo) "bez" = ( @@ -8657,9 +8667,12 @@ /turf/open/floor/almayer/silver/west, /area/almayer/living/cryo_cells) "bho" = ( -/obj/structure/machinery/computer/med_data, -/turf/open/floor/almayer/sterile_green_side, -/area/almayer/medical/upper_medical) +/obj/effect/decal/warning_stripes{ + icon_state = "SE-out"; + pixel_x = 1 + }, +/turf/open/floor/almayer/sterile_green_side/southeast, +/area/almayer/medical/lower_medical_lobby) "bhq" = ( /obj/structure/machinery/light{ dir = 4 @@ -8761,11 +8774,6 @@ /area/almayer/medical/chemistry) "biy" = ( /obj/structure/pipes/unary/freezer, -/obj/structure/machinery/power/apc/almayer/north, -/obj/structure/sign/safety/autodoc{ - pixel_x = 20; - pixel_y = 32 - }, /turf/open/floor/almayer/sterile_green_side/north, /area/almayer/medical/cryo_tubes) "biA" = ( @@ -9653,6 +9661,17 @@ /obj/effect/landmark/ert_spawns/distress_cryo, /turf/open/floor/almayer/cargo, /area/almayer/living/cryo_cells) +"bqa" = ( +/obj/structure/surface/table/reinforced/prison, +/obj/structure/sink{ + dir = 4; + pixel_x = 11 + }, +/obj/item/device/autopsy_scanner, +/obj/item/tool/surgery/scalpel, +/obj/item/tool/surgery/hemostat, +/turf/open/floor/almayer/plate, +/area/almayer/medical/morgue) "bqc" = ( /turf/open/floor/almayer, /area/almayer/hallways/lower/starboard_aft_hallway) @@ -10830,7 +10849,10 @@ /turf/open/floor/plating, /area/almayer/medical/lower_medical_lobby) "bCe" = ( -/turf/open/floor/almayer/sterile_green_side/northeast, +/obj/effect/decal/warning_stripes{ + icon_state = "S" + }, +/turf/open/floor/almayer/sterile_green_corner/east, /area/almayer/medical/lower_medical_lobby) "bCg" = ( /obj/structure/machinery/light{ @@ -12024,8 +12046,9 @@ /turf/open/floor/wood/ship, /area/almayer/shipboard/sea_office) "bKX" = ( -/obj/structure/surface/table/almayer, -/obj/item/storage/box/masks, +/obj/structure/machinery/chem_dispenser/corpsman{ + pixel_y = 3 + }, /turf/open/floor/almayer/emerald/north, /area/almayer/squads/charlie) "bLc" = ( @@ -13449,8 +13472,9 @@ /turf/open/floor/almayer/bluecorner/east, /area/almayer/living/briefing) "bVy" = ( -/obj/structure/surface/table/almayer, -/obj/item/storage/box/masks, +/obj/structure/machinery/chem_dispenser/corpsman{ + pixel_y = 3 + }, /turf/open/floor/almayer/blue, /area/almayer/squads/delta) "bVE" = ( @@ -15212,27 +15236,62 @@ /turf/open/floor/almayer/test_floor4, /area/almayer/command/computerlab) "cnV" = ( +/obj/structure/machinery/photocopier, /obj/structure/machinery/light{ dir = 8 }, +/obj/effect/decal/cleanable/dirt, /turf/open/floor/almayer/sterile_green_side/west, /area/almayer/medical/morgue) "cnW" = ( -/obj/structure/machinery/optable, -/turf/open/floor/almayer/dark_sterile, -/area/almayer/medical/morgue) +/obj/structure/platform{ + dir = 1 + }, +/obj/structure/platform, +/obj/structure/platform{ + dir = 8 + }, +/obj/structure/platform_decoration{ + dir = 10; + layer = 3.51 + }, +/obj/structure/platform_decoration{ + dir = 5; + layer = 3.51 + }, +/obj/structure/pipes/vents/pump{ + dir = 4 + }, +/turf/open/floor/almayer/mono, +/area/almayer/medical/upper_medical) "cnZ" = ( -/obj/structure/surface/table/reinforced/prison, -/obj/item/tool/surgery/scalpel, -/obj/item/tool/surgery/hemostat, -/turf/open/floor/almayer/sterile_green_corner/west, -/area/almayer/medical/morgue) +/obj/structure/filingcabinet/filingcabinet{ + density = 0; + pixel_x = -8; + pixel_y = 16 + }, +/obj/structure/filingcabinet/filingcabinet{ + density = 0; + pixel_x = 7; + pixel_y = 16 + }, +/obj/item/folder/white, +/obj/item/folder/black, +/obj/item/folder/black, +/obj/item/clipboard, +/obj/item/clipboard, +/turf/open/floor/almayer/sterile_green_side/north, +/area/almayer/medical/upper_medical) "coa" = ( -/obj/item/tool/surgery/circular_saw, -/obj/item/tool/surgery/cautery, -/obj/item/tool/surgery/retractor, -/obj/structure/surface/table/reinforced/prison, -/turf/open/floor/almayer/sterile_green_side, +/obj/structure/surface/table/almayer, +/obj/structure/machinery/computer/med_data/laptop{ + dir = 1; + pixel_y = -4 + }, +/obj/structure/sign/safety/terminal{ + pixel_x = -21 + }, +/turf/open/floor/almayer/sterile_green_corner/west, /area/almayer/medical/morgue) "cod" = ( /obj/structure/machinery/cm_vending/clothing/dress{ @@ -15733,10 +15792,10 @@ /turf/open/floor/plating, /area/almayer/maint/lower/constr) "cyU" = ( -/obj/structure/pipes/standard/simple/hidden/supply{ - dir = 5 - }, -/turf/open/floor/almayer/dark_sterile, +/obj/structure/bed/sofa/south/white/left, +/obj/structure/platform, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/almayer/mono, /area/almayer/medical/upper_medical) "cyZ" = ( /obj/structure/pipes/standard/simple/hidden/supply{ @@ -16946,12 +17005,13 @@ /turf/open/floor/plating/plating_catwalk, /area/almayer/shipboard/brig/mp_bunks) "cXW" = ( -/obj/structure/machinery/status_display{ - pixel_y = 30 +/obj/structure/machinery/door_control{ + dir = 1; + id = "Research Armory"; + name = "Research Armory"; + req_one_access_txt = "4;28" }, -/obj/structure/surface/table/almayer, -/obj/item/paper_bin/uscm, -/turf/open/floor/almayer/sterile_green_side/north, +/turf/closed/wall/almayer/white/reinforced, /area/almayer/medical/upper_medical) "cXX" = ( /obj/structure/disposalpipe/segment, @@ -17893,6 +17953,10 @@ /obj/structure/closet/secure_closet/personal, /turf/open/floor/almayer/orange/north, /area/almayer/engineering/upper_engineering/port) +"duO" = ( +/obj/structure/machinery/chem_dispenser/corpsman, +/turf/open/floor/almayer/sterile_green_side, +/area/almayer/medical/lower_medical_medbay) "duT" = ( /obj/structure/bed, /obj/structure/machinery/flasher{ @@ -17968,11 +18032,11 @@ /turf/open/floor/almayer/test_floor4, /area/almayer/maint/upper/u_f_s) "dwA" = ( -/obj/structure/pipes/standard/simple/hidden/supply, -/obj/structure/sign/safety/bathunisex{ - pixel_x = 32 +/obj/structure/closet/secure_closet/guncabinet/red/armory_m39_submachinegun, +/obj/structure/machinery/light{ + dir = 4 }, -/turf/open/floor/almayer/mono, +/turf/open/floor/almayer/redfull, /area/almayer/medical/upper_medical) "dwI" = ( /obj/structure/machinery/door/airlock/almayer/engineering{ @@ -18128,10 +18192,7 @@ /turf/open/floor/plating/plating_catwalk, /area/almayer/maint/hull/lower/l_a_p) "dAl" = ( -/obj/item/paper_bin/wy, /obj/structure/surface/table/woodentable/fancy, -/obj/item/tool/pen/clicky, -/obj/item/tool/pen/clicky, /obj/structure/machinery/status_display{ pixel_x = -32 }, @@ -18355,14 +18416,11 @@ /turf/open/floor/almayer/plate, /area/almayer/maint/hull/lower/stern) "dDL" = ( -/obj/structure/surface/table/almayer, -/obj/structure/machinery/computer/research/main_terminal{ +/obj/structure/machinery/light/double/blue{ + light_color = "#a7dbc7"; dir = 4 }, -/obj/structure/machinery/light{ - dir = 8 - }, -/turf/open/floor/almayer/sterile_green_side/west, +/turf/open/floor/almayer/sterile_green_corner/east, /area/almayer/medical/upper_medical) "dDM" = ( /obj/effect/decal/cleanable/blood/oil, @@ -19063,12 +19121,11 @@ /turf/open/floor/almayer/bluecorner/west, /area/almayer/hallways/upper/midship_hallway) "dSJ" = ( -/obj/item/device/radio/intercom{ - freerange = 1; - name = "General Listening Channel"; - pixel_x = -28 +/obj/structure/machinery/disposal, +/obj/structure/disposalpipe/trunk{ + dir = 4 }, -/turf/open/floor/plating/plating_catwalk, +/turf/open/floor/almayer/plate, /area/almayer/medical/morgue) "dSX" = ( /obj/structure/disposalpipe/segment{ @@ -20386,6 +20443,16 @@ }, /turf/open/floor/almayer/red, /area/almayer/command/lifeboat) +"eto" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/machinery/door_control{ + id = "CMO Shutters"; + name = "Office Shutters"; + req_access_txt = "5"; + pixel_x = -29 + }, +/turf/open/floor/almayer/sterile_green_side/west, +/area/almayer/medical/upper_medical) "ets" = ( /obj/structure/machinery/power/apc/almayer/east, /obj/effect/decal/warning_stripes{ @@ -20866,11 +20933,15 @@ /turf/open/floor/almayer/test_floor4, /area/almayer/maint/upper/u_m_s) "eDo" = ( -/obj/effect/decal/warning_stripes{ - icon_state = "W"; - layer = 2.5 +/obj/structure/bed/chair/office/dark{ + dir = 4 }, -/turf/open/floor/almayer/plating/northeast, +/obj/item/device/radio/intercom{ + freerange = 1; + name = "General Listening Channel"; + pixel_x = -28 + }, +/turf/open/floor/almayer/sterile_green_corner/west, /area/almayer/medical/upper_medical) "eDq" = ( /obj/structure/largecrate/random/secure, @@ -21015,6 +21086,10 @@ pixel_x = -10; pixel_y = 8 }, +/obj/item/paper_bin/wy{ + pixel_x = 17; + pixel_y = 6 + }, /turf/open/floor/carpet, /area/almayer/command/corporateliaison) "eGq" = ( @@ -21512,6 +21587,19 @@ }, /turf/open/floor/almayer, /area/almayer/hallways/lower/vehiclehangar) +"eSN" = ( +/obj/structure/machinery/door/airlock/almayer/medical{ + access_modified = 1; + dir = 2; + name = "Morgue"; + req_access_txt = "25"; + req_one_access = null + }, +/obj/structure/machinery/door/firedoor/border_only/almayer{ + dir = 2 + }, +/turf/open/floor/almayer/test_floor4, +/area/almayer/medical/morgue) "eSU" = ( /obj/structure/prop/almayer/name_stencil{ icon_state = "almayer1" @@ -21544,6 +21632,14 @@ }, /turf/open/floor/almayer/green/north, /area/almayer/hallways/lower/port_aft_hallway) +"eTB" = ( +/obj/structure/machinery/power/apc/almayer/north, +/obj/structure/sign/safety/autodoc{ + pixel_x = 20; + pixel_y = 32 + }, +/turf/open/floor/almayer/sterile_green_side/north, +/area/almayer/medical/lower_medical_medbay) "eTC" = ( /obj/structure/machinery/cm_vending/sorted/medical/bolted, /obj/structure/medical_supply_link, @@ -21990,8 +22086,14 @@ /turf/open/floor/almayer/sterile_green_side/northwest, /area/almayer/medical/lower_medical_medbay) "fbB" = ( -/obj/structure/pipes/standard/manifold/fourway/hidden/supply, -/turf/open/floor/almayer/dark_sterile, +/obj/structure/machinery/door/airlock/almayer/generic/glass{ + name = "\improper Psychiatric Care Unit" + }, +/obj/structure/pipes/standard/simple/hidden/supply{ + dir = 4 + }, +/obj/structure/machinery/door/firedoor/border_only/almayer, +/turf/open/floor/almayer/test_floor4, /area/almayer/medical/upper_medical) "fbC" = ( /obj/structure/closet/toolcloset, @@ -22303,13 +22405,29 @@ /turf/open/floor/almayer, /area/almayer/maint/hull/upper/u_f_s) "fiE" = ( -/obj/structure/machinery/computer/cameras/containment/hidden{ +/obj/structure/surface/table/almayer, +/obj/structure/machinery/door_display/research_cell{ dir = 4; - pixel_x = -17 + id = "Containment Cell 4"; + name = "Control Panel"; + pixel_x = -17; + req_access_txt = "200"; + pixel_y = 9 }, -/obj/structure/surface/table/almayer, /obj/item/storage/photo_album, -/obj/item/device/camera_film, +/obj/structure/machinery/computer/cameras/containment/hidden{ + dir = 4; + pixel_x = -17; + pixel_y = -5; + plane = -5 + }, +/obj/item/device/camera_film{ + pixel_x = -3 + }, +/obj/structure/machinery/door_control/cl/office/divider{ + pixel_x = 7; + pixel_y = -7 + }, /turf/open/floor/almayer, /area/almayer/command/corporateliaison) "fiQ" = ( @@ -22460,14 +22578,16 @@ /turf/open/floor/almayer/test_floor4, /area/almayer/living/briefing) "fnA" = ( -/obj/structure/surface/rack, -/obj/item/tool/crowbar, -/obj/item/device/radio, -/obj/item/device/flashlight, -/obj/structure/machinery/light{ - dir = 8 +/obj/structure/machinery/door/airlock/almayer/research/reinforced{ + access_modified = 1; + name = "\improper CMO's Bedroom"; + req_one_access_txt = "1;5" }, -/turf/open/floor/almayer/redfull, +/obj/structure/pipes/standard/simple/hidden/supply{ + dir = 4 + }, +/obj/structure/machinery/door/firedoor/border_only/almayer, +/turf/open/floor/almayer/test_floor4, /area/almayer/medical/upper_medical) "fnH" = ( /obj/structure/pipes/vents/pump{ @@ -22814,9 +22934,13 @@ /turf/open/floor/almayer/plate, /area/almayer/living/briefing) "fvd" = ( -/obj/structure/closet/firecloset, -/turf/open/floor/almayer/sterile_green_corner/west, -/area/almayer/medical/upper_medical) +/obj/effect/decal/warning_stripes{ + icon_state = "NE-out"; + pixel_x = 1; + pixel_y = 1 + }, +/turf/open/floor/almayer/test_floor4, +/area/almayer/medical/morgue) "fvf" = ( /turf/open/floor/almayer/silver/north, /area/almayer/living/briefing) @@ -23176,9 +23300,14 @@ /turf/open/floor/almayer/test_floor4, /area/almayer/command/cichallway) "fEC" = ( -/obj/structure/machinery/power/apc/almayer/south, -/turf/open/floor/almayer/plate, -/area/almayer/medical/morgue) +/obj/effect/decal/warning_stripes{ + icon_state = "NE-out"; + pixel_x = 1; + pixel_y = 2 + }, +/obj/structure/machinery/door/firedoor/border_only/almayer, +/turf/open/floor/almayer/test_floor4, +/area/almayer/medical/upper_medical) "fEF" = ( /obj/structure/pipes/standard/simple/hidden/supply{ dir = 4 @@ -23196,10 +23325,13 @@ /turf/open/floor/almayer/mono, /area/almayer/lifeboat_pumps/south2) "fFh" = ( -/obj/structure/surface/table/reinforced/prison, -/obj/item/device/autopsy_scanner, -/turf/open/floor/almayer/sterile_green_side, -/area/almayer/medical/morgue) +/obj/structure/bed, +/obj/item/bedsheet/green, +/obj/structure/machinery/light{ + dir = 4 + }, +/turf/open/floor/almayer/mono, +/area/almayer/medical/upper_medical) "fFD" = ( /obj/structure/window/reinforced{ dir = 4; @@ -23221,14 +23353,9 @@ /turf/open/floor/almayer/dark_sterile, /area/almayer/medical/lower_medical_medbay) "fFO" = ( -/obj/structure/machinery/light{ - dir = 4 - }, -/obj/structure/morgue{ - dir = 8 - }, -/turf/open/floor/almayer/plate, -/area/almayer/medical/morgue) +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/almayer/sterile_green_side/northwest, +/area/almayer/medical/upper_medical) "fFQ" = ( /obj/structure/surface/table/almayer, /obj/item/reagent_container/spray/cleaner{ @@ -23639,6 +23766,7 @@ /obj/effect/decal/warning_stripes{ icon_state = "SW-out" }, +/obj/effect/decal/cleanable/dirt, /turf/open/floor/almayer/sterile_green_side/southwest, /area/almayer/medical/upper_medical) "fPn" = ( @@ -23707,12 +23835,8 @@ /turf/open/floor/almayer/plating/northeast, /area/almayer/engineering/lower/engine_core) "fQu" = ( -/obj/structure/machinery/door/poddoor/shutters/almayer/open{ - id = "CMO Shutters"; - name = "\improper CMO Office Shutters" - }, -/obj/structure/window/framed/almayer/white, -/turf/open/floor/plating, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/almayer/sterile_green_side/northeast, /area/almayer/medical/upper_medical) "fQy" = ( /obj/structure/machinery/light/small{ @@ -23927,12 +24051,14 @@ /turf/open/floor/plating/plating_catwalk, /area/almayer/engineering/upper_engineering/port) "fXg" = ( -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" +/obj/structure/sign/nosmoking_2{ + pixel_x = 32 }, -/turf/open/floor/plating/plating_catwalk, -/area/almayer/medical/morgue) +/obj/structure/pipes/standard/manifold/hidden/supply{ + dir = 4 + }, +/turf/open/floor/almayer/sterile_green_side/east, +/area/almayer/medical/upper_medical) "fXx" = ( /obj/structure/surface/rack, /turf/open/floor/almayer/silver/southeast, @@ -23973,6 +24099,17 @@ /turf/open/floor/almayer/plating/northeast, /area/almayer/shipboard/stern_point_defense) "fYb" = ( +/obj/structure/filingcabinet/filingcabinet{ + density = 0; + pixel_x = -8; + pixel_y = 16 + }, +/obj/structure/filingcabinet/filingcabinet{ + density = 0; + pixel_x = 7; + pixel_y = 16 + }, +/obj/effect/decal/cleanable/dirt, /turf/open/floor/almayer/sterile_green_side/west, /area/almayer/medical/morgue) "fYf" = ( @@ -25224,13 +25361,25 @@ }, /turf/open/floor/plating, /area/almayer/living/pilotbunks) +"gzJ" = ( +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/almayer/dark_sterile, +/area/almayer/medical/morgue) "gzK" = ( -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" +/obj/structure/machinery/door/airlock/almayer/generic{ + name = "\improper Bathroom" }, -/turf/open/floor/plating/plating_catwalk, -/area/almayer/medical/morgue) +/obj/effect/decal/warning_stripes{ + icon_state = "NW-out"; + layer = 2.5; + pixel_y = 1 + }, +/obj/effect/decal/warning_stripes{ + icon_state = "SW-out" + }, +/obj/structure/machinery/door/firedoor/border_only/almayer, +/turf/open/floor/almayer/test_floor4, +/area/almayer/medical/upper_medical) "gzM" = ( /obj/effect/step_trigger/clone_cleaner, /obj/structure/sign/safety/stairs{ @@ -25738,11 +25887,14 @@ /turf/open/floor/almayer/silvercorner, /area/almayer/hallways/lower/repair_bay) "gKR" = ( -/obj/structure/closet/emcloset, -/obj/structure/machinery/light{ - dir = 8 +/obj/structure/machinery/door/poddoor/shutters/almayer/open{ + dir = 4; + id = "CMO Shutters"; + name = "\improper CMO Office Shutters" }, -/turf/open/floor/almayer/sterile_green_side/west, +/obj/structure/window/framed/almayer/white, +/obj/structure/machinery/door/firedoor/border_only/almayer, +/turf/open/floor/plating, /area/almayer/medical/upper_medical) "gKZ" = ( /obj/structure/surface/table/almayer, @@ -26002,6 +26154,10 @@ pixel_x = -17 }, /obj/structure/machinery/faxmachine/corporate/liaison, +/obj/item/paper/liaison_brief{ + pixel_y = 8; + pixel_x = -4 + }, /turf/open/floor/wood/ship, /area/almayer/command/corporateliaison) "gQu" = ( @@ -26296,10 +26452,10 @@ /turf/open/floor/plating, /area/almayer/medical/upper_medical) "gXl" = ( -/obj/structure/closet/secure_closet/personal/cabinet{ - req_access_txt = "5" +/obj/structure/pipes/standard/simple/hidden/supply{ + dir = 4 }, -/turf/open/floor/almayer/mono, +/turf/open/floor/almayer/sterile_green, /area/almayer/medical/upper_medical) "gXs" = ( /obj/effect/step_trigger/ares_alert/terminals, @@ -26526,12 +26682,8 @@ /turf/open/floor/almayer/plate, /area/almayer/maint/hull/upper/u_a_s) "hbI" = ( -/obj/structure/sign/safety/ammunition{ - pixel_x = 32; - pixel_y = 7 - }, -/obj/structure/closet/secure_closet/guncabinet/red/armory_shotgun, -/turf/open/floor/almayer/redfull, +/obj/structure/closet/secure_closet/CMO, +/turf/open/floor/almayer/mono, /area/almayer/medical/upper_medical) "hcf" = ( /obj/item/bedsheet/brown{ @@ -27989,13 +28141,13 @@ /turf/open/floor/almayer/sterile_green_side/west, /area/almayer/medical/medical_science) "hFF" = ( -/obj/structure/machinery/door/airlock/almayer/medical{ - access_modified = 1; - name = "Autopsy"; - req_access_txt = "25"; - req_one_access = null +/obj/effect/decal/warning_stripes{ + icon_state = "SE-out" + }, +/obj/structure/machinery/door/airlock/multi_tile/almayer/medidoor/solid{ + dir = 1; + name = "Morgue Processing" }, -/obj/structure/machinery/door/firedoor/border_only/almayer, /turf/open/floor/almayer/test_floor4, /area/almayer/medical/morgue) "hGb" = ( @@ -28389,14 +28541,8 @@ /turf/open/floor/almayer/cargo, /area/almayer/engineering/lower/workshop/hangar) "hQU" = ( -/obj/structure/machinery/disposal, -/obj/structure/disposalpipe/trunk{ - dir = 4 - }, -/obj/structure/sign/safety/intercom{ - pixel_x = -17 - }, -/turf/open/floor/almayer/plate, +/obj/structure/morgue, +/turf/open/floor/almayer/test_floor5, /area/almayer/medical/morgue) "hQW" = ( /obj/structure/disposalpipe/segment{ @@ -28670,11 +28816,10 @@ /turf/open/floor/almayer/sterile_green_side/southeast, /area/almayer/medical/medical_science) "hVz" = ( -/obj/structure/machinery/light{ - dir = 1 - }, -/turf/open/floor/almayer/sterile_green_side/north, -/area/almayer/medical/upper_medical) +/obj/structure/disposalpipe/segment, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plating/plating_catwalk, +/area/almayer/medical/morgue) "hVL" = ( /obj/structure/largecrate/random/barrel/red, /turf/open/floor/almayer/plate, @@ -29403,8 +29548,11 @@ /turf/open/floor/almayer/dark_sterile, /area/almayer/medical/lower_medical_lobby) "imp" = ( -/obj/structure/filingcabinet/filingcabinet, -/turf/open/floor/almayer/sterile_green_side/west, +/obj/structure/window/framed/almayer/white, +/obj/structure/machinery/door/firedoor/border_only/almayer{ + dir = 1 + }, +/turf/open/floor/plating, /area/almayer/medical/morgue) "imt" = ( /obj/structure/reagent_dispensers/water_cooler/stacks{ @@ -29697,12 +29845,10 @@ /turf/open/floor/almayer/test_floor4, /area/almayer/lifeboat_pumps/north1) "isN" = ( -/obj/structure/sink{ - dir = 8; - pixel_x = -12; - pixel_y = 2 - }, -/turf/open/floor/almayer/sterile_green_side/west, +/obj/structure/surface/table/almayer, +/obj/item/paper_bin/uscm, +/obj/item/tool/pen, +/turf/open/floor/almayer/sterile_green_corner/west, /area/almayer/medical/morgue) "itg" = ( /obj/structure/pipes/standard/simple/hidden/supply/no_boom{ @@ -30234,6 +30380,11 @@ }, /turf/open/floor/almayer/sterile_green_side/west, /area/almayer/medical/operating_room_four) +"iGA" = ( +/obj/structure/bed/sofa/south/white/left, +/obj/structure/machinery/camera/autoname/almayer, +/turf/open/floor/almayer/sterile_green_corner/north, +/area/almayer/medical/upper_medical) "iGQ" = ( /obj/structure/machinery/landinglight/ds2/delayone{ dir = 8 @@ -30443,7 +30594,7 @@ pixel_x = 32; pixel_y = 7 }, -/turf/open/floor/almayer/sterile_green_corner/east, +/turf/open/floor/plating/almayer, /area/almayer/medical/lower_medical_lobby) "iLG" = ( /obj/structure/disposalpipe/junction{ @@ -31135,7 +31286,10 @@ /area/almayer/living/briefing) "iXW" = ( /obj/structure/machinery/power/apc/almayer/east, -/turf/open/floor/almayer/sterile_green_corner, +/obj/effect/decal/warning_stripes{ + icon_state = "S" + }, +/turf/open/floor/almayer/sterile_green, /area/almayer/medical/lower_medical_lobby) "iYe" = ( /obj/structure/pipes/standard/simple/hidden/supply{ @@ -31810,8 +31964,10 @@ /turf/open/floor/almayer/cargo/southwest, /area/almayer/engineering/starboard_atmos) "jkl" = ( -/obj/structure/morgue, -/turf/open/floor/almayer/plate, +/obj/structure/morgue{ + dir = 8 + }, +/turf/open/floor/almayer/test_floor5, /area/almayer/medical/morgue) "jkq" = ( /obj/structure/pipes/standard/simple/hidden/supply{ @@ -32650,10 +32806,7 @@ /turf/open/floor/almayer/test_floor4, /area/almayer/engineering/upper_engineering/port) "jBy" = ( -/obj/structure/machinery/light{ - dir = 4 - }, -/turf/open/floor/almayer/sterile_green_side/east, +/turf/open/floor/almayer/sterile_green_side/northeast, /area/almayer/medical/morgue) "jBO" = ( /obj/structure/machinery/door/poddoor/shutters/almayer{ @@ -32922,7 +33075,8 @@ pixel_x = -24; req_access_txt = "25" }, -/turf/open/floor/plating/plating_catwalk, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/almayer/plate, /area/almayer/medical/morgue) "jIs" = ( /obj/structure/disposalpipe/segment{ @@ -33250,11 +33404,11 @@ /turf/open/floor/almayer/orange, /area/almayer/engineering/lower) "jOG" = ( -/obj/structure/pipes/standard/simple/hidden/supply, /obj/structure/machinery/firealarm{ dir = 4; pixel_x = 24 }, +/obj/structure/pipes/standard/simple/hidden/supply, /turf/open/floor/almayer/sterile_green_side/east, /area/almayer/medical/upper_medical) "jPd" = ( @@ -33420,10 +33574,25 @@ /turf/open/floor/almayer/green/west, /area/almayer/living/offices) "jTj" = ( -/obj/effect/decal/warning_stripes{ - icon_state = "E" +/obj/structure/surface/table/almayer, +/obj/structure/machinery/light, +/obj/structure/machinery/computer/cameras/containment{ + dir = 8; + name = "Research Cameras"; + pixel_y = 10 }, -/turf/open/floor/almayer/plating/northeast, +/obj/structure/machinery/computer/research/main_terminal{ + dir = 8; + pixel_y = -3 + }, +/obj/structure/machinery/door_control{ + id = "CMO Shutters"; + name = "Office Shutters"; + req_access_txt = "5"; + pixel_x = -11; + pixel_y = -6 + }, +/turf/open/floor/almayer/sterile_green_side, /area/almayer/medical/upper_medical) "jTt" = ( /obj/structure/pipes/standard/simple/hidden/supply{ @@ -33777,8 +33946,7 @@ /turf/open/floor/almayer, /area/almayer/medical/containment/cell/cl) "jZY" = ( -/obj/structure/closet/l3closet/virology, -/turf/open/floor/almayer/redfull, +/turf/open/floor/almayer/sterile_green_corner/east, /area/almayer/medical/upper_medical) "kac" = ( /obj/structure/surface/rack, @@ -33877,6 +34045,10 @@ /obj/structure/machinery/light, /turf/open/floor/plating/almayer/no_build, /area/almayer/hallways/upper/fore_hallway) +"kbn" = ( +/obj/structure/flora/bush/ausbushes/grassybush, +/turf/open/gm/grass/grass1, +/area/almayer/medical/upper_medical) "kbv" = ( /turf/open/floor/plating/plating_catwalk, /area/almayer/hallways/upper/starboard) @@ -34054,20 +34226,9 @@ /turf/open/floor/plating, /area/almayer/powered/agent) "kgp" = ( -/obj/structure/pipes/standard/simple/hidden/supply{ - dir = 10 - }, -/obj/structure/transmitter{ - name = "CMO Office Telephone"; - phone_category = "Offices"; - phone_id = "CMO Office"; - pixel_y = 29 - }, -/obj/structure/sign/safety/commline_connection{ - pixel_x = 23; - pixel_y = 32 - }, -/turf/open/floor/almayer/sterile_green_side/north, +/obj/structure/bed/sofa/south/white/right, +/obj/structure/platform, +/turf/open/floor/almayer/mono, /area/almayer/medical/upper_medical) "kgs" = ( /obj/structure/window/framed/almayer/white, @@ -34315,6 +34476,14 @@ /obj/item/circuitboard/airalarm, /turf/open/floor/almayer/orange/north, /area/almayer/engineering/lower) +"kln" = ( +/obj/structure/pipes/standard/simple/hidden/supply, +/obj/effect/decal/cleanable/dirt, +/obj/structure/machinery/light{ + dir = 4 + }, +/turf/open/floor/almayer/sterile_green_side/east, +/area/almayer/medical/upper_medical) "klH" = ( /obj/structure/pipes/standard/manifold/hidden/supply{ dir = 4 @@ -34421,11 +34590,23 @@ /turf/open/floor/almayer/cargo_arrow/west, /area/almayer/living/gym) "koB" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 +/obj/structure/sink{ + dir = 8; + pixel_x = -12; + pixel_y = 2 }, -/turf/open/floor/plating/plating_catwalk, -/area/almayer/medical/morgue) +/obj/structure/mirror{ + pixel_x = -27 + }, +/obj/effect/decal/warning_stripes{ + icon_state = "S" + }, +/obj/effect/decal/warning_stripes{ + icon_state = "N"; + pixel_y = 1 + }, +/turf/open/floor/almayer/dark_sterile, +/area/almayer/medical/upper_medical) "koC" = ( /obj/structure/pipes/standard/simple/hidden/supply, /obj/structure/disposalpipe/segment, @@ -35229,9 +35410,17 @@ /turf/open/floor/almayer/plate, /area/almayer/living/briefing) "kEp" = ( -/obj/structure/filingcabinet/filingcabinet, -/turf/open/floor/almayer/sterile_green_corner/west, -/area/almayer/medical/morgue) +/obj/effect/decal/warning_stripes{ + icon_state = "SW-out" + }, +/obj/structure/machinery/power/apc/almayer/north, +/obj/structure/sign/safety/rewire{ + pixel_x = -20; + pixel_y = 5 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/almayer/sterile_green_corner/north, +/area/almayer/medical/upper_medical) "kEq" = ( /obj/structure/machinery/door/window/ultra{ dir = 8; @@ -36543,14 +36732,8 @@ /turf/open/floor/almayer/orange/southeast, /area/almayer/engineering/upper_engineering/starboard) "lhv" = ( -/obj/structure/machinery/door_control{ - id = "CMO Shutters"; - name = "Office Shutters"; - pixel_y = -20; - req_access_txt = "5" - }, -/obj/structure/machinery/computer/crew, -/turf/open/floor/almayer/sterile_green_corner/east, +/obj/structure/closet/firecloset, +/turf/open/floor/almayer/cargo, /area/almayer/medical/upper_medical) "lhB" = ( /obj/structure/window/framed/almayer, @@ -36793,8 +36976,10 @@ /turf/closed/wall/almayer, /area/almayer/hallways/lower/starboard_umbilical) "lmi" = ( -/obj/structure/bed, -/obj/item/bedsheet/green, +/obj/structure/platform{ + dir = 1 + }, +/obj/structure/bed/sofa/south/white/left, /turf/open/floor/almayer/mono, /area/almayer/medical/upper_medical) "lml" = ( @@ -37674,10 +37859,8 @@ /turf/open/floor/almayer/aicore/no_build/ai_silver/east, /area/almayer/command/airoom) "lFn" = ( -/obj/structure/flora/pottedplant{ - icon_state = "pottedplant_21" - }, -/turf/open/floor/almayer/sterile_green_corner/north, +/obj/structure/machinery/optable, +/turf/open/floor/almayer/plate, /area/almayer/medical/morgue) "lFp" = ( /turf/closed/wall/almayer, @@ -38553,11 +38736,10 @@ /turf/open/floor/wood/ship, /area/almayer/command/corporateliaison) "maT" = ( -/obj/structure/pipes/standard/manifold/hidden/supply{ - dir = 4 - }, -/obj/structure/machinery/light{ - dir = 4 +/obj/structure/pipes/standard/simple/hidden/supply, +/obj/structure/machinery/camera/autoname/almayer{ + dir = 8; + name = "ship-grade camera" }, /turf/open/floor/almayer/sterile_green_side/east, /area/almayer/medical/upper_medical) @@ -38582,12 +38764,11 @@ /turf/open/floor/almayer/plate, /area/almayer/living/gym) "mcW" = ( -/obj/structure/surface/table/almayer, -/obj/item/storage/box/gloves, +/obj/structure/morgue, /obj/structure/machinery/light{ dir = 8 }, -/turf/open/floor/plating/plating_catwalk, +/turf/open/floor/almayer/test_floor5, /area/almayer/medical/morgue) "mdk" = ( /obj/structure/machinery/door/poddoor/railing{ @@ -39256,13 +39437,12 @@ /turf/open/floor/almayer/plate, /area/almayer/hallways/hangar) "mrL" = ( -/obj/structure/surface/rack, -/obj/item/storage/box/bodybags, -/obj/item/storage/box/bodybags, -/obj/item/storage/box/bodybags, -/obj/item/storage/box/bodybags, -/turf/open/floor/almayer/plate, -/area/almayer/medical/morgue) +/obj/structure/machinery/camera/autoname/almayer{ + dir = 4; + name = "ship-grade camera" + }, +/turf/open/gm/grass/grass1, +/area/almayer/medical/upper_medical) "mrM" = ( /obj/structure/closet/secure_closet/quartermaster_uscm, /turf/open/floor/almayer/green, @@ -40372,13 +40552,15 @@ /turf/open/floor/almayer/plate, /area/almayer/hallways/lower/starboard_fore_hallway) "mNI" = ( -/obj/structure/machinery/door/window/westleft{ - dir = 2 +/obj/structure/morgue{ + dir = 8 }, -/obj/structure/machinery/shower, -/obj/item/tool/soap, -/turf/open/floor/almayer/sterile, -/area/almayer/medical/upper_medical) +/obj/structure/machinery/camera/autoname/almayer{ + dir = 8; + name = "ship-grade camera" + }, +/turf/open/floor/almayer/test_floor5, +/area/almayer/medical/morgue) "mNK" = ( /obj/structure/closet/secure_closet/brig/restraints, /turf/open/floor/almayer/red/west, @@ -41333,19 +41515,22 @@ /obj/structure/surface/rack, /obj/item/reagent_container/food/snacks/monkeycube/wrapped/farwacube{ pixel_x = 4; - pixel_y = 4 + pixel_y = 10 }, /obj/item/reagent_container/food/snacks/monkeycube/wrapped/neaeracube{ pixel_x = -4; - pixel_y = 4 + pixel_y = 10 }, /obj/item/reagent_container/food/snacks/monkeycube/wrapped/stokcube{ pixel_x = -4; - pixel_y = -4 + pixel_y = 2 }, /obj/item/reagent_container/food/snacks/monkeycube/wrapped/yirencube{ pixel_x = 4; - pixel_y = -4 + pixel_y = 2 + }, +/obj/item/storage/xeno_tag_case/full{ + pixel_y = -6 }, /turf/open/floor/almayer/plate, /area/almayer/command/corporateliaison) @@ -42251,13 +42436,9 @@ /turf/open/floor/plating/plating_catwalk, /area/almayer/hallways/lower/port_aft_hallway) "nzv" = ( -/obj/structure/filingcabinet/filingcabinet, -/obj/item/clipboard, -/obj/item/clipboard, -/obj/item/folder/black, -/obj/item/folder/black, -/obj/item/folder/white, -/turf/open/floor/almayer/sterile_green_side, +/obj/structure/bed/sofa/south/white/right, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/almayer/sterile_green_corner, /area/almayer/medical/upper_medical) "nzD" = ( /obj/effect/step_trigger/clone_cleaner, @@ -42680,6 +42861,13 @@ }, /turf/open/floor/almayer/plate, /area/almayer/engineering/lower/workshop) +"nHP" = ( +/obj/structure/machinery/light/double/blue{ + dir = 1; + light_color = "#a7dbc7" + }, +/turf/open/gm/grass/grass1, +/area/almayer/medical/upper_medical) "nHX" = ( /obj/structure/prop/invuln/overhead_pipe{ pixel_x = 12 @@ -42836,10 +43024,8 @@ /turf/open/floor/almayer/bluefull, /area/almayer/living/briefing) "nMV" = ( -/obj/structure/machinery/cm_vending/sorted/medical/wall_med{ - pixel_y = 25 - }, -/turf/open/floor/almayer/sterile_green_side/north, +/obj/structure/closet/emcloset, +/turf/open/floor/almayer/cargo, /area/almayer/medical/upper_medical) "nNg" = ( /obj/structure/bed, @@ -42909,16 +43095,22 @@ "nOb" = ( /obj/structure/surface/rack, /obj/item/reagent_container/food/drinks/bottle/sake{ - pixel_x = 5; - pixel_y = 5 + pixel_y = -3; + pixel_x = 4; + plane = -5 }, /obj/item/reagent_container/food/drinks/bottle/sake{ - pixel_x = 5; + pixel_x = 4; pixel_y = 5 }, -/obj/item/reagent_container/food/drinks/bottle/sake, /obj/item/reagent_container/food/drinks/bottle/sake{ - pixel_x = -4 + pixel_x = -4; + pixel_y = -3; + plane = -5 + }, +/obj/item/reagent_container/food/drinks/bottle/sake{ + pixel_x = -4; + pixel_y = 5 }, /obj/structure/machinery/light, /turf/open/floor/almayer/plate, @@ -44051,7 +44243,16 @@ /turf/open/floor/almayer_hull/outerhull_dir, /area/space) "okO" = ( -/obj/structure/machinery/cm_vending/clothing/senior_officer, +/obj/structure/platform{ + dir = 1 + }, +/obj/structure/platform{ + dir = 8 + }, +/obj/structure/platform_decoration{ + dir = 5; + layer = 3.51 + }, /turf/open/floor/almayer/mono, /area/almayer/medical/upper_medical) "old" = ( @@ -44059,6 +44260,12 @@ /obj/structure/largecrate/random/case/double, /turf/open/floor/plating/plating_catwalk, /area/almayer/maint/hull/upper/s_bow) +"olz" = ( +/obj/structure/platform_decoration{ + dir = 4 + }, +/turf/open/floor/almayer/mono, +/area/almayer/medical/upper_medical) "olF" = ( /obj/structure/closet/emcloset, /turf/open/floor/almayer/cargo, @@ -44187,11 +44394,11 @@ /turf/open/floor/plating/plating_catwalk, /area/almayer/squads/charlie) "onQ" = ( -/obj/structure/sign/safety/rewire{ - pixel_x = 8; - pixel_y = 32 +/obj/effect/decal/warning_stripes{ + icon_state = "S" }, -/turf/open/floor/almayer/sterile_green_side/northeast, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/almayer/sterile_green_side, /area/almayer/medical/upper_medical) "onU" = ( /obj/effect/step_trigger/teleporter_vector{ @@ -45225,7 +45432,7 @@ pixel_x = -5; pixel_y = 4 }, -/obj/structure/machinery/door_control/cl/office/divider{ +/obj/structure/machinery/door_control/cl/quarter/windows{ pixel_x = -5; pixel_y = -3 }, @@ -45500,14 +45707,18 @@ /turf/open/floor/almayer/test_floor4, /area/almayer/medical/hydroponics) "oNJ" = ( -/obj/effect/decal/warning_stripes{ - icon_state = "N" +/obj/structure/transmitter{ + name = "CMO Office Telephone"; + phone_category = "Offices"; + phone_id = "CMO Office"; + dir = 4; + pixel_x = -20 }, -/obj/effect/decal/warning_stripes{ - icon_state = "SW-out"; - layer = 2.5 +/obj/structure/sign/safety/commline_connection{ + pixel_x = -17; + pixel_y = 32 }, -/turf/open/floor/almayer/plating/northeast, +/turf/open/floor/almayer/sterile_green_side/west, /area/almayer/medical/upper_medical) "oNK" = ( /obj/structure/machinery/power/apc/almayer/north, @@ -45711,13 +45922,11 @@ /turf/open/floor/almayer/test_floor4, /area/almayer/maint/hull/upper/u_f_s) "oRy" = ( -/obj/structure/sign/safety/autodoc{ - pixel_x = 20; - pixel_y = -32 +/obj/structure/sign/safety/med_cryo{ + pixel_x = -6; + pixel_y = 32 }, -/obj/structure/machinery/cm_vending/sorted/medical/bolted, -/obj/structure/medical_supply_link/green, -/turf/open/floor/almayer/sterile_green_side, +/turf/open/floor/almayer/sterile_green_side/north, /area/almayer/medical/lower_medical_medbay) "oRJ" = ( /obj/structure/pipes/standard/simple/hidden/supply{ @@ -46549,6 +46758,15 @@ }, /turf/open/floor/plating/plating_catwalk, /area/almayer/shipboard/brig/processing) +"phW" = ( +/obj/structure/machinery/cm_vending/sorted/medical/bolted, +/obj/structure/medical_supply_link/green, +/obj/structure/sign/safety/autodoc{ + pixel_x = 20; + pixel_y = -32 + }, +/turf/open/floor/almayer/sterile_green_side, +/area/almayer/medical/lower_medical_medbay) "pij" = ( /obj/structure/pipes/standard/simple/hidden/supply{ dir = 1 @@ -46599,11 +46817,12 @@ /turf/closed/wall/almayer, /area/almayer/maint/hull/upper/p_bow) "pjF" = ( -/obj/structure/surface/table/almayer, -/obj/item/paper, -/obj/item/tool/lighter/random, -/turf/open/floor/almayer/plate, -/area/almayer/medical/morgue) +/obj/structure/machinery/cm_vending/clothing/senior_officer{ + pixel_y = 20; + density = 0 + }, +/turf/open/floor/almayer/mono, +/area/almayer/medical/upper_medical) "pjG" = ( /obj/structure/disposalpipe/segment{ dir = 8 @@ -46613,6 +46832,13 @@ }, /turf/open/floor/almayer/plating_striped, /area/almayer/squads/req) +"pjO" = ( +/obj/structure/machinery/camera/autoname/almayer{ + dir = 1; + name = "ship-grade camera" + }, +/turf/open/floor/almayer/green, +/area/almayer/hallways/upper/fore_hallway) "pjP" = ( /obj/structure/machinery/firealarm{ pixel_y = 28 @@ -46971,13 +47197,10 @@ /turf/open/floor/plating, /area/almayer/engineering/upper_engineering) "pth" = ( -/obj/structure/surface/table/almayer, -/obj/item/folder/blue, -/obj/effect/landmark/map_item, -/obj/structure/pipes/vents/scrubber{ - dir = 8 +/obj/structure/machinery/status_display{ + pixel_y = 30 }, -/turf/open/floor/almayer/sterile_green_side/east, +/turf/open/gm/grass/grass1, /area/almayer/medical/upper_medical) "ptj" = ( /obj/structure/machinery/cm_vending/sorted/cargo_guns/squad_prep, @@ -47229,13 +47452,6 @@ /turf/open/floor/almayer/cargo_arrow/west, /area/almayer/squads/bravo) "pyx" = ( -/obj/structure/machinery/door_display/research_cell{ - dir = 4; - id = "Containment Cell 4"; - name = "Control Panel"; - pixel_x = -15; - req_access_txt = "200" - }, /obj/item/storage/fancy/cigarettes/blackpack{ pixel_x = -1; pixel_y = 1 @@ -47248,6 +47464,12 @@ /obj/item/tool/lighter/zippo/gold{ pixel_x = 2 }, +/obj/structure/machinery/computer/cameras/wooden_tv/broadcast{ + dir = 4; + layer = 3.2; + pixel_x = -15; + pixel_y = 1 + }, /turf/open/floor/carpet, /area/almayer/command/corporateliaison) "pyy" = ( @@ -47619,6 +47841,14 @@ }, /turf/open/floor/almayer/test_floor4, /area/almayer/lifeboat_pumps/north1) +"pJl" = ( +/obj/effect/decal/warning_stripes{ + icon_state = "NW-out"; + layer = 2.5; + pixel_y = 2 + }, +/turf/open/floor/almayer/sterile_green_side/northwest, +/area/almayer/medical/upper_medical) "pJq" = ( /obj/effect/decal/warning_stripes{ icon_state = "SE-out"; @@ -48749,18 +48979,14 @@ /turf/open/floor/almayer/plate, /area/almayer/maint/upper/u_f_s) "qhx" = ( -/obj/structure/flora/pottedplant{ - icon_state = "pottedplant_22" - }, -/obj/structure/sign/safety/ammunition{ - pixel_x = -17; - pixel_y = 7 +/obj/structure/closet/secure_closet/personal/cabinet{ + req_access_txt = "5" }, -/obj/structure/sign/safety/hazard{ - pixel_x = -17; - pixel_y = -8 +/obj/item/clothing/accessory/stethoscope, +/obj/structure/machinery/light{ + dir = 4 }, -/turf/open/floor/almayer/sterile_green_side/north, +/turf/open/floor/almayer/mono, /area/almayer/medical/upper_medical) "qhD" = ( /obj/structure/closet{ @@ -49355,10 +49581,6 @@ /area/almayer/living/briefing) "quv" = ( /obj/structure/pipes/standard/tank/oxygen, -/obj/structure/sign/safety/med_cryo{ - pixel_x = -6; - pixel_y = 32 - }, /turf/open/floor/almayer/sterile_green_side/north, /area/almayer/medical/cryo_tubes) "quJ" = ( @@ -50532,12 +50754,8 @@ /turf/open/floor/almayer/red, /area/almayer/command/lifeboat) "qQc" = ( -/obj/structure/closet/secure_closet/personal/patient{ - name = "morgue closet" - }, -/obj/structure/machinery/alarm/almayer{ - dir = 1 - }, +/obj/structure/disposalpipe/segment, +/obj/effect/decal/cleanable/dirt, /turf/open/floor/almayer/plate, /area/almayer/medical/morgue) "qQp" = ( @@ -51494,12 +51712,6 @@ /area/almayer/engineering/lower/engine_core) "rjV" = ( /obj/structure/surface/table/almayer, -/obj/structure/machinery/computer/cameras/wooden_tv/broadcast{ - dir = 8; - layer = 3.2; - pixel_x = -3; - pixel_y = 6 - }, /obj/structure/sign/poster{ desc = "YOU ALWAYS KNOW A WORKING JOE. YOU ALWAYS KNOW A WORKING JOE. YOU ALWAYS KNOW A WORKING JOE. YOU ALWAYS KNOW A WORKING JOE. YOU ALWAYS KNOW A WORKING JOE."; icon_state = "poster11"; @@ -51525,6 +51737,12 @@ /obj/structure/machinery/light{ dir = 4 }, +/obj/structure/machinery/computer/cameras/wooden_tv/broadcast{ + dir = 8; + layer = 3.2; + pixel_x = -3; + pixel_y = 6 + }, /turf/open/floor/almayer/blue/southeast, /area/almayer/living/port_emb) "rjX" = ( @@ -51548,6 +51766,20 @@ /obj/structure/pipes/vents/scrubber, /turf/open/floor/almayer, /area/almayer/living/gym) +"rkK" = ( +/obj/structure/platform{ + dir = 1 + }, +/obj/structure/bed/sofa/south/white/right, +/obj/effect/decal/cleanable/dirt, +/obj/item/toy/plush/therapy/random_color{ + pixel_y = -3 + }, +/obj/structure/sign/nosmoking_2{ + pixel_y = 29 + }, +/turf/open/floor/almayer/mono, +/area/almayer/medical/upper_medical) "rkV" = ( /obj/structure/window/framed/almayer/hull/hijack_bustable, /obj/structure/machinery/door/poddoor/shutters/almayer/open{ @@ -51702,12 +51934,8 @@ /turf/open/floor/almayer/blue/north, /area/almayer/hallways/upper/midship_hallway) "rnN" = ( -/obj/structure/pipes/standard/simple/hidden/supply, -/obj/structure/sign/nosmoking_2{ - pixel_x = 32 - }, -/turf/open/floor/almayer/sterile_green_side/east, -/area/almayer/medical/upper_medical) +/turf/open/floor/almayer/greenfull, +/area/almayer/hallways/upper/fore_hallway) "rob" = ( /obj/structure/pipes/standard/manifold/hidden/supply, /turf/open/floor/plating/plating_catwalk, @@ -51880,6 +52108,9 @@ }, /turf/open/floor/almayer/test_floor4, /area/almayer/living/bridgebunks) +"rrD" = ( +/turf/open/floor/almayer/sterile_green_side/southeast, +/area/almayer/medical/upper_medical) "rrK" = ( /obj/structure/bed/chair{ can_buckle = 0; @@ -52126,6 +52357,13 @@ /obj/structure/window/framed/almayer/hull, /turf/open/floor/plating, /area/almayer/maint/hull/upper/u_f_p) +"rxc" = ( +/obj/structure/disposalpipe/segment{ + dir = 8; + icon_state = "pipe-c" + }, +/turf/open/floor/almayer/plate, +/area/almayer/medical/morgue) "rxe" = ( /obj/structure/surface/rack, /obj/effect/spawner/random/toolbox, @@ -52541,6 +52779,13 @@ }, /turf/open/floor/almayer/sterile_green_side/southwest, /area/almayer/medical/lower_medical_medbay) +"rGc" = ( +/obj/structure/flora/bush/ausbushes/ppflowers, +/obj/structure/machinery/status_display{ + pixel_x = -32 + }, +/turf/open/gm/grass/grass1, +/area/almayer/medical/upper_medical) "rGj" = ( /turf/open/floor/almayer/red, /area/almayer/squads/alpha) @@ -52587,6 +52832,15 @@ req_one_access_txt = "200" }, /obj/structure/surface/table/woodentable/fancy, +/obj/item/tool/pen/clicky{ + pixel_x = 14; + plane = -5; + pixel_y = 2 + }, +/obj/item/tool/pen/clicky{ + pixel_x = 14; + pixel_y = 6 + }, /turf/open/floor/carpet, /area/almayer/command/corporateliaison) "rHc" = ( @@ -53138,6 +53392,13 @@ }, /turf/open/floor/almayer/orangefull, /area/almayer/squads/alpha_bravo_shared) +"rSq" = ( +/obj/structure/closet/secure_closet/guncabinet/red/armory_shotgun, +/obj/structure/machinery/light{ + dir = 8 + }, +/turf/open/floor/almayer/redfull, +/area/almayer/medical/upper_medical) "rSx" = ( /obj/structure/surface/table/almayer, /obj/item/stack/rods/plasteel{ @@ -53662,14 +53923,17 @@ /turf/open/floor/almayer/red, /area/almayer/hallways/upper/starboard) "sdn" = ( -/obj/structure/sink{ +/obj/effect/decal/cleanable/dirt, +/obj/structure/machinery/light/double/blue{ dir = 4; - pixel_x = 11 + light_color = "#a7dbc7" }, -/obj/structure/mirror{ - pixel_x = 28 +/obj/structure/reagent_dispensers/water_cooler/stacks{ + pixel_y = 23; + pixel_x = -8; + density = 0 }, -/turf/open/floor/almayer/sterile, +/turf/open/floor/almayer/sterile_green_corner, /area/almayer/medical/upper_medical) "sdu" = ( /obj/structure/disposalpipe/segment, @@ -53697,7 +53961,7 @@ height = 1; id = "med1" }, -/turf/open/floor/almayer/sterile_green_side, +/turf/open/floor/plating/almayer, /area/almayer/medical/lower_medical_lobby) "seL" = ( /obj/structure/pipes/vents/pump{ @@ -54002,10 +54266,8 @@ /turf/open/floor/almayer, /area/almayer/shipboard/brig/processing) "skl" = ( -/obj/structure/bed/chair/office/dark{ - dir = 8 - }, -/turf/open/floor/almayer/dark_sterile, +/obj/structure/machinery/computer/crew, +/turf/open/floor/almayer/sterile_green_corner, /area/almayer/medical/upper_medical) "skn" = ( /turf/open/floor/almayer/plating_striped, @@ -55193,6 +55455,10 @@ /turf/open/floor/almayer/orange/north, /area/almayer/living/port_emb) "sKa" = ( +/obj/structure/machinery/camera/autoname/almayer{ + dir = 8; + name = "ship-grade camera" + }, /turf/open/floor/almayer/sterile_green_side/east, /area/almayer/medical/morgue) "sKf" = ( @@ -55389,11 +55655,24 @@ /turf/open/floor/almayer/orange/northwest, /area/almayer/maint/upper/mess) "sOZ" = ( -/obj/structure/sign/safety/ammunition{ - pixel_y = 32 +/obj/structure/machinery/light{ + dir = 1 }, -/obj/structure/closet/secure_closet/guncabinet/red/armory_m4a3_pistol, -/turf/open/floor/almayer/redfull, +/obj/item/paper_bin/wy{ + pixel_y = 8; + pixel_x = -7 + }, +/obj/structure/surface/table/almayer, +/obj/item/tool/pen{ + pixel_y = 4; + pixel_x = -8 + }, +/obj/item/folder/blue{ + pixel_y = 5; + pixel_x = 6 + }, +/obj/effect/landmark/map_item, +/turf/open/floor/almayer/sterile_green_corner/north, /area/almayer/medical/upper_medical) "sPa" = ( /obj/structure/surface/rack, @@ -55791,13 +56070,11 @@ /turf/open/floor/almayer/plate, /area/almayer/shipboard/port_point_defense) "sYT" = ( -/obj/structure/machinery/door/poddoor/shutters/almayer/open{ - dir = 4; - id = "CMO Shutters"; - name = "\improper CMO Office Shutters" +/obj/effect/decal/warning_stripes{ + icon_state = "W"; + layer = 2.5 }, -/obj/structure/window/framed/almayer/white, -/turf/open/floor/plating, +/turf/open/floor/almayer/sterile_green_side/west, /area/almayer/medical/upper_medical) "sYU" = ( /obj/structure/disposalpipe/segment{ @@ -56891,16 +57168,11 @@ /turf/open/floor/almayer/bluefull, /area/almayer/command/cichallway) "tsC" = ( -/obj/item/storage/box/bodybags, -/obj/item/storage/box/bodybags, -/obj/item/storage/box/bodybags, -/obj/item/storage/box/bodybags, -/obj/structure/surface/table/almayer, -/obj/structure/sign/poster{ - icon_state = "poster8"; - pixel_y = 32 +/obj/structure/machinery/door/poddoor/shutters/almayer{ + id = "Research Armory"; + name = "\improper Armory Shutters" }, -/turf/open/floor/almayer/sterile_green_corner/north, +/turf/open/floor/almayer/test_floor4, /area/almayer/medical/upper_medical) "tsE" = ( /obj/structure/largecrate/random/barrel/blue, @@ -56952,18 +57224,17 @@ "ttX" = ( /obj/structure/surface/table/almayer, /obj/item/storage/firstaid/regular{ - pixel_x = 8; - pixel_y = -2 + pixel_y = 6 }, /obj/item/storage/box/drinkingglasses{ - pixel_x = -7 + pixel_x = -8 }, /obj/item/reagent_container/spray/cleaner{ pixel_x = -10; pixel_y = 14 }, -/obj/item/storage/xeno_tag_case/full{ - pixel_y = 8 +/obj/item/storage/box/wy_mre{ + pixel_x = 8 }, /turf/open/floor/almayer/plate, /area/almayer/command/corporateliaison) @@ -57198,6 +57469,13 @@ }, /turf/open/floor/almayer/cargo, /area/almayer/engineering/lower/engine_core) +"txW" = ( +/obj/structure/bed/chair{ + dir = 8; + pixel_y = 3 + }, +/turf/open/floor/almayer/sterile_green_side, +/area/almayer/medical/upper_medical) "tyb" = ( /obj/structure/pipes/standard/simple/hidden/supply{ dir = 4 @@ -57459,17 +57737,8 @@ /turf/open/floor/almayer/cargo, /area/almayer/engineering/lower/workshop/hangar) "tEi" = ( -/obj/effect/decal/warning_stripes{ - icon_state = "S" - }, -/obj/structure/machinery/door_control{ - dir = 1; - id = "Research Armory"; - name = "Research Armory"; - pixel_x = 27; - req_one_access_txt = "4;28" - }, -/turf/open/floor/almayer/plating/northeast, +/obj/structure/pipes/standard/manifold/hidden/supply, +/turf/open/floor/almayer/dark_sterile, /area/almayer/medical/upper_medical) "tEu" = ( /obj/structure/machinery/disposal, @@ -58200,21 +58469,12 @@ /turf/open/floor/almayer/silver, /area/almayer/hallways/lower/repair_bay) "tWY" = ( -/obj/structure/pipes/standard/simple/hidden/supply{ - dir = 4 - }, -/obj/structure/machinery/door/poddoor/shutters/almayer/open{ - dir = 4; - id = "CMO Shutters"; - name = "\improper CMO Office Shutters" - }, -/obj/structure/machinery/door/airlock/almayer/medical/glass{ - access_modified = 1; - name = "\improper CMO's Office"; - req_one_access = null; - req_one_access_txt = "1;5" +/obj/effect/decal/warning_stripes{ + icon_state = "W"; + layer = 2.5 }, -/turf/open/floor/almayer/test_floor4, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/almayer/sterile_green_side/west, /area/almayer/medical/upper_medical) "tXa" = ( /obj/item/storage/toolbox/mechanical{ @@ -59019,10 +59279,12 @@ /turf/open/floor/plating/plating_catwalk, /area/almayer/maint/hull/lower/p_bow) "upM" = ( -/obj/structure/machinery/light{ - dir = 4 +/obj/effect/decal/warning_stripes{ + icon_state = "NW-out"; + layer = 2.5; + pixel_y = 1 }, -/turf/open/floor/almayer/dark_sterile, +/turf/open/floor/almayer/sterile_green_side/north, /area/almayer/medical/upper_medical) "upO" = ( /obj/structure/disposalpipe/segment, @@ -59870,6 +60132,12 @@ }, /turf/open/floor/almayer/green/north, /area/almayer/hallways/lower/port_midship_hallway) +"uGk" = ( +/obj/structure/pipes/standard/simple/hidden/supply{ + dir = 4 + }, +/turf/open/floor/almayer/mono, +/area/almayer/medical/upper_medical) "uGN" = ( /obj/structure/pipes/vents/pump, /turf/open/floor/almayer, @@ -60230,13 +60498,11 @@ /turf/open/floor/almayer/red/northwest, /area/almayer/command/lifeboat) "uRt" = ( -/obj/structure/machinery/light{ - dir = 8 - }, -/obj/structure/flora/pottedplant{ - icon_state = "pottedplant_22" +/obj/effect/decal/warning_stripes{ + icon_state = "N"; + pixel_y = 1 }, -/turf/open/floor/almayer/sterile_green_side/west, +/turf/open/floor/almayer/sterile_green_side/north, /area/almayer/medical/upper_medical) "uRD" = ( /obj/structure/pipes/standard/simple/hidden/supply{ @@ -61146,14 +61412,15 @@ /turf/open/floor/almayer/plate, /area/almayer/living/chapel) "vih" = ( -/obj/structure/surface/table/almayer, -/obj/item/storage/fancy/candle_box, /obj/structure/sign/safety/medical{ - pixel_x = 8; + pixel_x = 15; pixel_y = -32 }, -/turf/open/floor/almayer/plate, -/area/almayer/medical/morgue) +/obj/structure/sign/safety/restrictedarea{ + pixel_y = -32 + }, +/turf/open/floor/almayer/green, +/area/almayer/hallways/upper/fore_hallway) "vil" = ( /obj/structure/pipes/standard/simple/hidden/supply{ dir = 4 @@ -61853,10 +62120,8 @@ /turf/open/shuttle/dropship/light_grey_single_wide_up_to_down, /area/almayer/powered/agent) "vtx" = ( -/obj/structure/machinery/door/airlock/almayer/generic{ - name = "\improper Bathroom" - }, -/turf/open/floor/almayer/test_floor4, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/almayer/dark_sterile, /area/almayer/medical/upper_medical) "vtG" = ( /obj/structure/toilet{ @@ -62675,10 +62940,7 @@ /turf/open/floor/almayer/redfull, /area/almayer/command/cic) "vIf" = ( -/obj/structure/machinery/camera/autoname/almayer{ - dir = 1; - name = "ship-grade camera" - }, +/obj/effect/decal/cleanable/dirt, /turf/open/floor/almayer/sterile_green_side, /area/almayer/medical/upper_medical) "vIg" = ( @@ -63115,11 +63377,16 @@ /turf/open/floor/almayer, /area/almayer/command/computerlab) "vQN" = ( -/obj/structure/sign/safety/restrictedarea{ - pixel_y = -32 +/obj/structure/machinery/light{ + dir = 4 }, -/turf/open/floor/almayer/green, -/area/almayer/hallways/upper/fore_hallway) +/obj/structure/surface/table/almayer, +/obj/structure/flora/pottedplant{ + icon_state = "pottedplant_22"; + pixel_y = 16 + }, +/turf/open/floor/almayer/sterile_green_corner/east, +/area/almayer/medical/upper_medical) "vQR" = ( /obj/structure/disposalpipe/segment, /turf/open/floor/wood/ship, @@ -63178,15 +63445,16 @@ /turf/open/floor/almayer/red/north, /area/almayer/hallways/upper/port) "vRX" = ( -/obj/structure/surface/table/almayer, -/obj/item/book/manual/medical_diagnostics_manual, -/obj/item/device/megaphone, -/obj/item/device/radio/intercom{ - freerange = 1; - name = "General Listening Channel"; - pixel_y = 28 +/obj/structure/platform_decoration{ + dir = 4 }, -/turf/open/floor/almayer/sterile_green_corner, +/obj/structure/platform_decoration{ + dir = 1 + }, +/obj/structure/pipes/standard/simple/hidden/supply{ + dir = 4 + }, +/turf/open/floor/plating/plating_catwalk, /area/almayer/medical/upper_medical) "vSl" = ( /obj/structure/pipes/standard/simple/hidden/supply{ @@ -63560,12 +63828,20 @@ /turf/open/floor/almayer, /area/almayer/engineering/lower) "vXv" = ( -/obj/structure/machinery/light{ +/obj/structure/platform{ dir = 1 }, +/obj/structure/platform{ + dir = 8 + }, +/obj/structure/platform_decoration{ + dir = 5; + layer = 3.51 + }, /obj/structure/flora/pottedplant{ - icon_state = "pottedplant_10"; - pixel_y = 14 + icon_state = "pottedplant_22"; + pixel_y = 6; + pixel_x = 2 }, /turf/open/floor/almayer/mono, /area/almayer/medical/upper_medical) @@ -64138,13 +64414,11 @@ /turf/open/floor/almayer/orangefull, /area/almayer/engineering/upper_engineering) "wjz" = ( -/obj/effect/decal/warning_stripes{ - icon_state = "N" - }, -/obj/effect/decal/warning_stripes{ - icon_state = "S" +/obj/structure/machinery/light{ + dir = 8 }, -/turf/open/floor/almayer/plating/northeast, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/almayer/sterile_green_corner/west, /area/almayer/medical/upper_medical) "wjC" = ( /obj/structure/closet/firecloset, @@ -64457,17 +64731,11 @@ /turf/open/floor/almayer/test_floor4, /area/almayer/command/cic) "wpu" = ( -/obj/structure/surface/table/reinforced/almayer_B, -/obj/item/device/flashlight/lamp{ - pixel_y = 8 - }, -/obj/item/clothing/glasses/science{ - pixel_x = 3; - pixel_y = -3 +/obj/structure/sign/safety/refridgeration{ + pixel_y = -32 }, -/obj/item/device/flash, -/turf/open/floor/almayer/mono, -/area/almayer/medical/upper_medical) +/turf/open/floor/almayer/green, +/area/almayer/hallways/upper/fore_hallway) "wpI" = ( /turf/open/floor/almayer/green/east, /area/almayer/living/grunt_rnr) @@ -64509,11 +64777,21 @@ /turf/open/floor/plating/plating_catwalk, /area/almayer/hallways/lower/starboard_aft_hallway) "wqW" = ( -/obj/structure/closet/secure_closet/CMO, -/obj/structure/machinery/light{ - dir = 1 +/obj/structure/platform, +/obj/structure/platform{ + dir = 8 }, -/turf/open/floor/almayer/sterile_green_corner/north, +/obj/structure/platform_decoration{ + dir = 10; + layer = 3.51 + }, +/obj/effect/decal/cleanable/dirt, +/obj/structure/flora/pottedplant{ + icon_state = "pottedplant_22"; + pixel_y = 12; + pixel_x = 2 + }, +/turf/open/floor/almayer/mono, /area/almayer/medical/upper_medical) "wra" = ( /obj/structure/machinery/light/small{ @@ -65123,12 +65401,11 @@ /turf/open/floor/almayer/green/north, /area/almayer/hallways/lower/port_midship_hallway) "wDH" = ( -/obj/structure/morgue, -/obj/structure/machinery/light{ - dir = 8 - }, -/turf/open/floor/almayer/plate, -/area/almayer/medical/morgue) +/obj/structure/surface/table/almayer, +/obj/item/book/manual/medical_diagnostics_manual, +/obj/item/device/megaphone, +/turf/open/floor/almayer/sterile_green, +/area/almayer/medical/upper_medical) "wDJ" = ( /turf/open/floor/almayer/emerald/north, /area/almayer/squads/charlie_delta_shared) @@ -65410,14 +65687,7 @@ /turf/open/floor/plating, /area/almayer/shipboard/brig/cryo) "wJo" = ( -/obj/structure/machinery/door/airlock/almayer/research/reinforced{ - access_modified = 1; - dir = 1; - name = "\improper CMO's Bedroom"; - req_one_access_txt = "1;5" - }, -/obj/structure/pipes/standard/simple/hidden/supply, -/turf/open/floor/almayer/test_floor4, +/turf/open/floor/almayer/sterile_green_corner/west, /area/almayer/medical/upper_medical) "wJC" = ( /obj/structure/largecrate/random/barrel/yellow, @@ -66006,14 +66276,8 @@ /turf/open/floor/almayer/plate, /area/almayer/living/auxiliary_officer_office) "wUd" = ( -/obj/structure/surface/table/almayer, -/obj/item/storage/box/gloves{ - pixel_x = 7; - pixel_y = 7 - }, -/obj/item/storage/fancy/candle_box, -/turf/open/floor/plating/plating_catwalk, -/area/almayer/medical/morgue) +/turf/open/floor/almayer/mono, +/area/almayer/medical/upper_medical) "wUJ" = ( /obj/structure/largecrate/random/barrel/white, /turf/open/floor/almayer/plate, @@ -66559,10 +66823,7 @@ /turf/open/floor/almayer/plate, /area/almayer/living/briefing) "xgP" = ( -/obj/structure/pipes/standard/simple/hidden/supply{ - dir = 10 - }, -/turf/open/floor/almayer/mono, +/turf/open/floor/almayer/sterile_green_corner/north, /area/almayer/medical/upper_medical) "xgS" = ( /obj/structure/disposalpipe/segment{ @@ -66989,10 +67250,8 @@ /turf/closed/wall/almayer, /area/almayer/command/securestorage) "xqQ" = ( -/obj/structure/machinery/door/poddoor/almayer/blended{ - id = "RoomDivider"; - layer = 3.1; - name = "\improper Room Divider" +/obj/structure/machinery/door/poddoor/almayer/blended/liaison{ + id = "RoomDivider" }, /turf/open/floor/almayer/plate, /area/almayer/command/corporateliaison) @@ -67096,10 +67355,13 @@ /turf/open/floor/almayer/sterile_green_side/southeast, /area/almayer/medical/lower_medical_medbay) "xsz" = ( -/obj/effect/decal/warning_stripes{ - icon_state = "SE-out" +/obj/structure/pipes/standard/simple/hidden/supply{ + dir = 4 }, -/turf/open/floor/almayer/plating/northeast, +/obj/structure/machinery/photocopier{ + layer = 2.9 + }, +/turf/open/floor/almayer/dark_sterile, /area/almayer/medical/upper_medical) "xsQ" = ( /obj/structure/surface/table/almayer, @@ -67117,7 +67379,11 @@ /area/almayer/maint/lower/constr) "xtM" = ( /obj/structure/machinery/light, -/turf/open/floor/almayer/sterile_green_side/southeast, +/obj/effect/decal/warning_stripes{ + icon_state = "E"; + pixel_x = 1 + }, +/turf/open/floor/almayer/sterile_green_side/east, /area/almayer/medical/lower_medical_lobby) "xub" = ( /obj/structure/disposalpipe/segment{ @@ -67139,6 +67405,10 @@ /obj/structure/machinery/light, /turf/open/floor/almayer, /area/almayer/hallways/lower/port_aft_hallway) +"xur" = ( +/obj/structure/bed/chair/office/dark, +/turf/open/floor/almayer/sterile_green_side/southwest, +/area/almayer/medical/morgue) "xuy" = ( /obj/effect/decal/warning_stripes{ icon_state = "E"; @@ -68131,11 +68401,8 @@ /turf/open/floor/almayer/cargo, /area/almayer/hallways/hangar) "xNu" = ( -/obj/structure/toilet{ - dir = 1 - }, -/obj/structure/machinery/light, -/turf/open/floor/almayer/sterile, +/obj/structure/flora/bush/ausbushes/lavendergrass, +/turf/open/gm/grass/grass1, /area/almayer/medical/upper_medical) "xNv" = ( /obj/structure/bed/chair/office/dark{ @@ -68666,19 +68933,12 @@ /turf/open/floor/almayer/plate, /area/almayer/living/briefing) "xZt" = ( -/obj/structure/sign/safety/refridgeration{ - pixel_y = -32 - }, -/obj/structure/sign/safety/medical{ - pixel_x = 15; - pixel_y = -32 - }, -/obj/structure/machinery/camera/autoname/almayer{ - dir = 1; - name = "ship-grade camera" +/obj/structure/disposalpipe/segment, +/obj/structure/machinery/light{ + dir = 4 }, -/turf/open/floor/almayer/green, -/area/almayer/hallways/upper/fore_hallway) +/turf/open/floor/plating/plating_catwalk, +/area/almayer/medical/morgue) "xZG" = ( /obj/structure/machinery/light{ dir = 4 @@ -69157,13 +69417,9 @@ /turf/open/floor/almayer, /area/almayer/living/synthcloset) "yjb" = ( -/obj/item/device/radio/intercom{ - freerange = 1; - name = "General Listening Channel"; - pixel_y = 28 - }, -/turf/open/floor/almayer/sterile_green_side/north, -/area/almayer/medical/morgue) +/obj/structure/flora/bush/ausbushes/ausbush, +/turf/open/gm/grass/grass1, +/area/almayer/medical/upper_medical) "yjq" = ( /obj/structure/machinery/door/poddoor/almayer/locked{ icon_state = "almayer_pdoor"; @@ -73007,7 +73263,7 @@ aaa aaa aaa aaa -aaa +bdH aaa aab aaa @@ -73191,27 +73447,27 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH aab aaa aaa @@ -73394,27 +73650,27 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH aab aaa aaa @@ -73597,27 +73853,27 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH aab aaa aaa @@ -73800,27 +74056,27 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH aab aaa aaa @@ -74003,27 +74259,27 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH aab aaa aaa @@ -74206,27 +74462,27 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH aab aaa aaa @@ -74409,27 +74665,27 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH aab aaa aaa @@ -74612,27 +74868,27 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH aab aaa aaa @@ -74815,27 +75071,27 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH aab aaa aaa @@ -75018,61 +75274,34 @@ aaa aaa aaa aaa +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +aab aaa aaa +aKQ aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aab -aaa -aaa -aKQ -aaa -aaa -aab -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +aab aaa aaa aaa @@ -75140,14 +75369,10 @@ aaa aaa aaa aaa -aab aaa aaa -"} -(30,1,1) = {" aaa aaa -aab aaa aaa aaa @@ -75171,10 +75396,14 @@ aaa aaa aaa aaa +aab aaa aaa +"} +(30,1,1) = {" aaa aaa +aab aaa aaa aaa @@ -75205,15 +75434,6 @@ aaa aaa aaa aaa -bdH -bdH -bdH -bdH -bdH -bdH -bdH -bdH -bdH aaa aaa aaa @@ -75241,7 +75461,43 @@ aaa aaa aaa aaa +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +aaa +aaa +aaa +aaa +aaa +aaa aaa +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH aab aaa aaa @@ -75424,27 +75680,27 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH aab aaa aaa @@ -75627,27 +75883,27 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH aab aaa aaa @@ -75830,27 +76086,27 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH aab aaa aaa @@ -76033,27 +76289,27 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH aab aaa aaa @@ -76236,27 +76492,27 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH aab aaa aaa @@ -76439,27 +76695,27 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH aab aaa aaa @@ -76642,27 +76898,27 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH aab aaa aaa @@ -76845,27 +77101,27 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH aab aaa aaa @@ -77048,27 +77304,27 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH aab aaa aaa @@ -77252,8 +77508,33 @@ aaa aaa aaa aaa +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +aaa +aab +aaa +aaa +aKQ aaa aaa +aab aaa aaa aaa @@ -77272,70 +77553,45 @@ aaa aaa aaa aaa -aab aaa aaa -aKQ aaa aaa -aab aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -bdH -bdH -bdH -bdH -bdH -bdH -bdH -bdH -bdH -bdH -bdH -bdH -bdH -bdH -bdH -bdH -bdH -bdH -bdH -bdH -bdH +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH aaa aaa aaa @@ -77455,25 +77711,25 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH aaa aab aaa @@ -77658,25 +77914,25 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH aaa aab aaa @@ -77861,25 +78117,25 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH aaa aab aaa @@ -78064,95 +78320,95 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aab -aaa -aaa -aKQ -aaa -aaa -aab -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -aag -aag -aag -aag -aag -aag -aag -aag -aag -aag -aag -aag -aag -aag -aag -aag -aag -aag -aag -ajZ -aaa -bdH -bdH -bdH -bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +aaa +aab +aaa +aaa +aKQ +aaa +aaa +aab +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aad +aag +aag +aag +aag +aag +aag +aag +aag +aag +aag +aag +aag +aag +aag +aag +aag +aag +aag +aag +ajZ +aaa +bdH +bdH +bdH +bdH aaa aaa aaa @@ -78267,25 +78523,25 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH aaa aab aaa @@ -78470,25 +78726,25 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH aaa aab aaa @@ -78669,104 +78925,104 @@ aag ajZ bdH bdH -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aab -aaa -aaa -aKQ -aaa -aaa -aab -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -bdH -aad -aag -nBJ -nBJ -nBJ -nBJ -aag -dqw -uwv -uwv -dqw -aag -aag -aag -aag -aag -aag -aag -aag -aag -dqw -uwv -uwv -dqw -aag -aag -aag -wid -wid -wid -wid -aag -ajZ -bdH -aaa -aaa -aaa +aaa +aaa +aaa +aaa +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +aaa +aab +aaa +aaa +aKQ +aaa +aaa +aab +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +bdH +aad +aag +nBJ +nBJ +nBJ +nBJ +aag +dqw +uwv +uwv +dqw +aag +aag +aag +aag +aag +aag +aag +aag +aag +dqw +uwv +uwv +dqw +aag +aag +aag +wid +wid +wid +wid +aag +ajZ +bdH +aaa +aaa +aaa aaa aaa aaa @@ -78876,25 +79132,25 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH aaa aab aaa @@ -79079,25 +79335,25 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH aaa aab aaa @@ -79282,25 +79538,25 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH aaa aab aaa @@ -79485,9 +79741,33 @@ aaa aaa aaa aaa +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +aaa +aab +aaa aaa +aKQ aaa aaa +aab aaa aaa aaa @@ -79505,13 +79785,10 @@ aaa aaa aaa aaa -aab aaa aaa -aKQ aaa aaa -aab aaa aaa aaa @@ -79520,62 +79797,41 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -bdH -aad -aag -nBJ -ecS -eQR -gol -akb -bCY -bDO -bDO -bDO -abU -bHP -avw -bKn -bLk -bLw -bKn -bLk -avw -bHP -sSc -sSc -bDO -bPn -bPG -ald -gol -sGK -hLu -wid -aag -ajZ -bdH +bdH +aad +aag +nBJ +ecS +eQR +gol +akb +bCY +bDO +bDO +bDO +abU +bHP +avw +bKn +bLk +bLw +bKn +bLk +avw +bHP +sSc +sSc +bDO +bPn +bPG +ald +gol +sGK +hLu +wid +aag +ajZ +bdH aaa aaa aaa @@ -79688,25 +79944,25 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH aaa aab aaa @@ -79891,25 +80147,25 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH aaa aab aaa @@ -80094,25 +80350,25 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH aaa aab aaa @@ -80512,9 +80768,9 @@ aaa aaa aaa aaa -aaa -aaa -aaa +bdH +bdH +bdH aaa aaa aaa @@ -80711,17 +80967,17 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH aaa aab aaa @@ -80914,6 +81170,29 @@ aaa aaa aaa aaa +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +aaa +aab +aaa +aaa +aKQ +aaa +aaa +aab +aaa +aaa +aaa +aaa aaa aaa aaa @@ -80926,13 +81205,10 @@ aaa aaa aaa aaa -aab aaa aaa -aKQ aaa aaa -aab aaa aaa aaa @@ -80942,61 +81218,41 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -bdH -aad -aag -nBJ -iWJ -eQR -bBA -bBx -amg -bEw -bFk -bHq -let -bJX -bJX -bKs -bLo -bMO -bMU -bNf -bJX -bJX -let -bHq -bFk -bPq -amg -rAD -bBA -sGK -nhV -wid -aag -ajZ -bdH +bdH +aad +aag +nBJ +iWJ +eQR +bBA +bBx +amg +bEw +bFk +bHq +let +bJX +bJX +bKs +bLo +bMO +bMU +bNf +bJX +bJX +let +bHq +bFk +bPq +amg +rAD +bBA +sGK +nhV +wid +aag +ajZ +bdH aaa aaa aaa @@ -81117,17 +81373,17 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH aaa aab aaa @@ -81320,17 +81576,17 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH aaa aab aaa @@ -81522,19 +81778,19 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH aab aaa aaa @@ -81725,19 +81981,19 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH aab aaa aaa @@ -81928,19 +82184,19 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH aab aaa aaa @@ -82132,17 +82388,17 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH aaa aab aaa @@ -82335,17 +82591,17 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH aaa aab aaa @@ -82538,17 +82794,17 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH aaa aab aaa @@ -82741,17 +82997,17 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH aaa aab aaa @@ -82948,9 +83204,9 @@ aaa aaa aaa aaa -aaa -aaa -aaa +bdH +bdH +bdH aaa aaa aaa @@ -95688,6 +95944,7 @@ gLl gvu xCB tJm +rnN aoe aoe aoe @@ -95705,9 +95962,8 @@ aoe aoe aoe aoe -aoe -aoe -hwB +rnN +gvu xCB kaj vIo @@ -95890,27 +96146,27 @@ qhg gLl pzw xCB -tJm +vih +aoe aoe -aoh jHQ -jkl -jkl -jkl -wDH +hQU +hQU +hQU +hQU dSJ hQU -pjF +hQU mcW -vih -aoe +hQU +vbS imp fYb cnV isN -cnZ aoe -gvu +aoe +hwB xCB tJm vIo @@ -96093,24 +96349,24 @@ gtI kYF dME nbH -tJm +wpu aoe -vbS -arb -aoq +aoh +aor +aor aoq aoq aoq -arb ccs aoq aoq aoq -aor -aEi -aEi -cnW +aoq +aoq +imp +gzJ aEi +xur coa aoe lXR @@ -96295,26 +96551,26 @@ gxm gxm gxm lXR -nbH -tJm -aoe +lYS +mzn +hSI qQc -fXg -dfa -dfa -dfa -dfa +pMp +xZt +hVz +hVz dfa -gzK +rxc arb arb arb +aEN aor -sKa +eSN sKa jBy aEi -fFh +aHa aoe gvu nbH @@ -96501,21 +96757,21 @@ gpp xCB tJm aoe -vbS -koB -asU -asU -asU -asU -arb -fEC -aoe -aoe -aCw aoe aoe aoe aoe +aor +aor +aoq +aoq +aor +aor +aCw +aGW +aGW +aGW +fvd hFF aoe aoe @@ -96618,7 +96874,7 @@ gGJ qjN qjN qjN -qjN +bho xtM baZ sbE @@ -96702,21 +96958,21 @@ aps gxm sHC nbH -tJm -aoe +pjO +ajl aop koB +aRF +aoe jkl +mNI jkl -jkl -jkl -arb ayW -aoe +bqa lFn -imp -kEp -aoe +aLS +aGW +rSq tsC uRt aQz @@ -96904,25 +97160,25 @@ aps aps gxm gvu -lYS -mzn -hSI -pMp +nbH +tJm +ajl +ajl gzK -aoq -aoq -aoq -aoq -aoq -aoq -aAG -aBd -aEi +ajl +aoe +aoe +aoe +aoe +aoe +aoe +aoe +aoe aGW -aRF -akx -akw -aQz +anq +tsC +uRt +onQ aRK ajl aUB @@ -97108,23 +97364,23 @@ asm gxm gvu lSN -xZt -aoe +tJm +ajl pjF wUd +wub asU -asU -asU -fFO -mrL +ajl +ajl +ajl mrL -aoe +rGc yjb -aEN -aGX -aoe -aLS -akw +ajl +sqf +dwA +tsC +uRt fOL aRS ajl @@ -97311,25 +97567,25 @@ asm gxm gvu nbH -vQN -sqf -sqf -sqf -sqf -sqf -sqf -sqf +tJm ajl +qhx +hbI +uGk +fFh ajl ajl +nHP +xNu +cnW aCo aEO -aHa -aoe +sqf +sqf cXW upM akw -alD +vtx vEx dME nbH @@ -97515,24 +97771,24 @@ gxm gvu nbH tJm -sqf -anp -wjz -fnA -jZY -jZY -sqf -wpu -okO -ajl ajl ajl ajl +fnA ajl ajl +xNu +aCo +okO +vRX +aAG +kbn +aCo ajl -onQ -alD +iGA +aos +akw +txW ajl bgN nbH @@ -97718,26 +97974,26 @@ gxm gvu xCB tJm -sqf +ajl sOZ oNJ +axm eDo -eDo -eDo -sqf +ajl +pth vXv -wub +olz gXl -ajl +aCp wqW awj -dDL -aLZ ajl -aCp +aLZ +akw +akw alD -ajl -evM +gWG +gvu xCB tJm gxm @@ -97921,24 +98177,24 @@ gxm gvu lSN kaj -sqf -anq -awn +ajl +cnZ +akw xsz jTj -jTj -sqf +ajl +yjb lmi xgP -dwA +axm wJo cyU -eme -skl +anp +ajl nzv fQu -akx -alD +rrD +vQN gWG gvu xCB @@ -98124,26 +98380,26 @@ gxm gvu xCB tJm -sqf +ajl anr -awn +eme tEi asu -hbI -sqf ajl +ajl +rkK vtx +axm +akw +kgp ajl ajl -kgp -fbB -cyU -bho -fQu +ajl +fEC akx -alD -gWG -gvu +ajl +ajl +evM xCB tJm gxm @@ -98327,24 +98583,24 @@ gxm hwB xCB tJm -sqf -sqf +ajl +skl awp -sqf -sqf -sqf -sqf -mNI -sdn -xNu +axm +jZY +wDH ajl -vRX -pth +ajl +sdn axm -lhv +dDL ajl -hVz -alD +ajl +nMV +lhv +aBd +alE +wjz ajl lXR xCB @@ -98531,22 +98787,22 @@ atz nbH tyC ajl -qhx -akw +gKR +gKR axl gKR -fvd +gKR ajl ajl ajl +fbB ajl ajl -sYT -sYT +kEp tWY sYT -ajl -nMV +pJl +akw vIf ajl hwB @@ -98639,9 +98895,9 @@ bkE bQM rlZ izY -rlZ -rlZ -rlZ +xsw +bZn +kFv izY rlZ hZN @@ -98734,23 +98990,23 @@ gre nbH dME bVE -aos -akw -akw -akw -alE -ans ans -asw ans +axm ans +aGX +eto ans ans axm ans -ans -aos -alE +aGX +fFO +akw +akw +akw +akw +akw bVE dME nbH @@ -98842,9 +99098,9 @@ bkE bRP rlZ rlZ -xsw -bZn -kFv +phW +kan +eTB rlZ rlZ siW @@ -98938,20 +99194,20 @@ hWa cEG aEe akA -akA -akA +kln +asw akA jOG akA akA akA +fXg akA -rnN akA akA maT akA -akA +awn oap aSb aEe @@ -99045,8 +99301,8 @@ bst cjW rlZ rlZ -oRy -kan +pnC +dBH biy boX rlZ @@ -99248,7 +99504,7 @@ vhX akQ rlZ rlZ -pnC +duO dBH bky ryt @@ -99654,7 +99910,7 @@ vhX gDW rlZ rlZ -wYr +duO dBH bky ryt @@ -99857,8 +100113,8 @@ xMs cjW rlZ rlZ -kSC -kan +wYr +dBH quv rZB rlZ @@ -100060,9 +100316,9 @@ bgw eXb rlZ rlZ -thP -beW -bgP +kSC +kan +oRy rlZ rlZ hAU @@ -100263,9 +100519,9 @@ bgw fbw rlZ rlZ -pqD -pqD -pqD +thP +beW +bgP rlZ rlZ rFH @@ -100466,9 +100722,9 @@ bgy fxZ rlZ aZK -vYt -fDj -eBZ +pqD +pqD +pqD hBc rlZ pKZ @@ -100669,9 +100925,9 @@ bgw icw qni klH -tgV -tgV -tgV +vYt +fDj +eBZ klH qni uah @@ -100872,9 +101128,9 @@ bgw jxi rlZ rlZ -rlZ -rlZ -rlZ +tgV +tgV +tgV rlZ rlZ nrN @@ -102031,7 +102287,7 @@ bdH bdH bdH bdH -aaa +bdH aaa aaa aaa @@ -102643,7 +102899,7 @@ bdH aaa aaa aaa -aaa +bdH aaa aaa aaa @@ -103048,7 +103304,7 @@ aaa aaa aaa aaa -aaa +bdH aaa aaa aaa diff --git a/maps/predship/huntership.dmm b/maps/predship/huntership.dmm index 6e14f4f09ecb..c87360912eec 100644 --- a/maps/predship/huntership.dmm +++ b/maps/predship/huntership.dmm @@ -33,88 +33,42 @@ "af" = ( /turf/closed/wall/cult, /area/yautja) -"ag" = ( -/turf/closed/wall/mineral/sandstone/runed, -/area/yautja) "ah" = ( -/obj/structure/surface/table/reinforced/prison, -/obj/structure/machinery/door/window/southleft, -/obj/item/clothing/shoes/yautja/hunter, -/obj/item/clothing/suit/armor/yautja/hunter, -/obj/item/clothing/mask/gas/yautja/hunter, -/obj/structure/window/reinforced{ - dir = 4; - health = 80 - }, -/turf/open/floor/sandstone/runed, +/obj/structure/machinery/iv_drip, +/turf/open/floor/corsat/squareswood/north, /area/yautja) "ai" = ( -/obj/structure/surface/table/reinforced/prison, -/obj/structure/machinery/door/window/southleft, -/obj/item/clothing/shoes/yautja/hunter, -/obj/item/clothing/suit/armor/yautja/hunter, -/obj/item/clothing/mask/gas/yautja/hunter, -/obj/structure/window/reinforced{ - dir = 8; - health = 80 - }, -/obj/structure/window/reinforced{ - dir = 4; - health = 80 - }, -/turf/open/floor/sandstone/runed, -/area/yautja) -"aj" = ( -/obj/structure/surface/table/reinforced/prison, -/obj/structure/machinery/door/window/southleft, -/obj/item/clothing/shoes/yautja/hunter, -/obj/item/clothing/suit/armor/yautja/hunter, -/obj/item/clothing/mask/gas/yautja/hunter, -/obj/structure/window/reinforced{ - dir = 8; - health = 80 +/obj/structure/bed/alien{ + color = "#aba9a9" }, -/turf/open/floor/sandstone/runed, +/turf/open/shuttle/predship, /area/yautja) "ak" = ( -/obj/structure/surface/table/reinforced/prison, -/obj/structure/machinery/door/window/southright, -/obj/item/clothing/shoes/yautja/hunter, -/obj/item/clothing/suit/armor/yautja/hunter, -/obj/item/clothing/mask/gas/yautja/hunter, -/obj/structure/window/reinforced{ - dir = 4; - health = 80 +/obj/structure/surface/table/reinforced/prison{ + color = "#6b675e" }, -/turf/open/floor/sandstone/runed, +/turf/open/shuttle/predship, /area/yautja) "al" = ( -/obj/structure/surface/table/reinforced/prison, -/obj/structure/machinery/door/window/southright, -/obj/item/clothing/shoes/yautja/hunter, -/obj/item/clothing/suit/armor/yautja/hunter, -/obj/item/clothing/mask/gas/yautja/hunter, -/obj/structure/window/reinforced{ - dir = 8; - health = 80 - }, -/obj/structure/window/reinforced{ - dir = 4; - health = 80 +/obj/structure/surface/rack{ + color = "#6b675e"; + layer = 2.79 }, -/turf/open/floor/sandstone/runed, +/obj/item/hunting_trap, +/obj/item/hunting_trap, +/obj/item/hunting_trap, +/obj/item/hunting_trap, +/obj/item/hunting_trap, +/obj/item/hunting_trap, +/obj/item/hunting_trap, +/obj/item/hunting_trap, +/turf/open/floor/strata/grey_multi_tiles, /area/yautja) "am" = ( -/obj/structure/surface/table/reinforced/prison, -/obj/structure/machinery/door/window/southright, -/obj/item/clothing/shoes/yautja/hunter, -/obj/item/clothing/suit/armor/yautja/hunter, -/obj/item/clothing/mask/gas/yautja/hunter, -/obj/structure/window/reinforced{ - dir = 8; - health = 80 +/obj/structure/bed/chair/comfy/black{ + dir = 4 }, -/turf/open/floor/sandstone/runed, +/turf/open/shuttle/predship, /area/yautja) "an" = ( /obj/structure/machinery/medical_pod/autodoc{ @@ -129,12 +83,6 @@ pixel_x = 2; pixel_y = 32 }, -/obj/item/clothing/shoes/yautja/hunter{ - anchored = 1; - color = "#FFE55C"; - icon_state = "y-boots2"; - pixel_y = 29 - }, /obj/item/clothing/suit/armor/yautja/hunter{ anchored = 1; color = "#FFE55C"; @@ -145,20 +93,10 @@ anchored = 1; color = "#FFE55C"; icon_state = "pred_mask_elder_n"; - pixel_y = 29 + pixel_y = 40 }, /turf/open/floor/corsat/squareswood/north, /area/yautja) -"ap" = ( -/obj/structure/stairs/perspective{ - color = "#b29082"; - icon_state = "p_stair_full" - }, -/obj/structure/platform/kutjevo{ - dir = 8 - }, -/turf/open/shuttle/predship, -/area/yautja) "aq" = ( /obj/item/clothing/yautja_cape/ceremonial{ anchored = 1; @@ -166,12 +104,6 @@ pixel_x = 2; pixel_y = 32 }, -/obj/item/clothing/shoes/yautja/hunter{ - anchored = 1; - color = "#FFE55C"; - icon_state = "y-boots2"; - pixel_y = 30 - }, /obj/item/clothing/suit/armor/yautja/hunter{ anchored = 1; color = "#FFE55C"; @@ -182,17 +114,10 @@ anchored = 1; color = "#FFE55C"; icon_state = "pred_mask_elder_joshuu"; - pixel_y = 30 + pixel_y = 40 }, /turf/open/floor/corsat/squareswood/north, /area/yautja) -"ar" = ( -/obj/structure/machinery/door/airlock/yautja/secure{ - dir = 1; - name = "\improper Wargear Storage" - }, -/turf/open/shuttle/predship, -/area/yautja) "as" = ( /obj/structure/pipes/standard/simple/hidden{ dir = 6 @@ -233,17 +158,19 @@ /turf/open/shuttle/predship, /area/yautja) "ay" = ( -/obj/structure/surface/table/reinforced/prison, -/obj/structure/window/reinforced{ - dir = 4; - health = 80 +/obj/structure/stairs/perspective{ + color = "#6b675e"; + dir = 8; + icon_state = "p_stair_full" + }, +/obj/item/clothing/mask/gas/yautja/hunter{ + pixel_y = 27; + anchored = 1 }, -/obj/structure/machinery/door/window/southright, -/obj/item/clothing/suit/armor/yautja/thrall, -/obj/item/clothing/mask/gas/yautja/thrall, -/obj/item/clothing/shoes/yautja/thrall, -/obj/item/clothing/under/chainshirt/thrall, -/turf/open/floor/sandstone/runed, +/obj/structure/platform/stair_cut{ + icon_state = "kutjevo_platform_sm_stair" + }, +/turf/open/shuttle/predship, /area/yautja) "az" = ( /obj/structure/window/phoronreinforced{ @@ -252,42 +179,11 @@ }, /turf/open/floor/light, /area/yautja) -"aA" = ( -/obj/structure/surface/table/reinforced/prison, -/obj/structure/window/reinforced{ - dir = 8; - health = 80 - }, -/obj/structure/machinery/door/window/southright, -/obj/item/clothing/suit/armor/yautja/thrall, -/obj/item/clothing/mask/gas/yautja/thrall, -/obj/item/clothing/shoes/yautja/thrall, -/obj/item/clothing/under/chainshirt/thrall, -/turf/open/floor/sandstone/runed, -/area/yautja) "aB" = ( /obj/structure/closet/crate/critter, /obj/effect/decal/cleanable/blood, /turf/open/floor/strata/grey_multi_tiles, /area/yautja) -"aC" = ( -/obj/structure/surface/rack{ - color = "#6b675e"; - layer = 2.79 - }, -/obj/item/hunting_trap, -/obj/item/hunting_trap, -/obj/item/hunting_trap, -/obj/item/hunting_trap, -/obj/item/hunting_trap, -/obj/item/hunting_trap, -/obj/item/hunting_trap, -/obj/item/hunting_trap, -/obj/structure/platform/kutjevo{ - dir = 8 - }, -/turf/open/floor/corsat/squareswood/north, -/area/yautja) "aD" = ( /obj/structure/xenoautopsy/tank/hugger, /turf/open/floor/corsat/squareswood/north, @@ -390,7 +286,7 @@ /obj/item/weapon/yautja/knife, /obj/item/reagent_container/hypospray/autoinjector/yautja, /obj/item/reagent_container/hypospray/autoinjector/yautja, -/turf/open/floor/corsat/squareswood/north, +/turf/open/floor/strata/grey_multi_tiles, /area/yautja) "aW" = ( /obj/structure/machinery/optable, @@ -462,16 +358,6 @@ /obj/item/stack/sheet/mineral/sandstone/large_stack, /turf/open/floor/corsat/squareswood/north, /area/yautja) -"bh" = ( -/obj/structure/platform/kutjevo{ - dir = 4 - }, -/obj/structure/stairs/perspective{ - color = "#b29082"; - icon_state = "p_stair_full" - }, -/turf/open/shuttle/predship, -/area/yautja) "bj" = ( /turf/closed/wall/huntership, /area/yautja) @@ -496,7 +382,7 @@ /obj/item/weapon/harpoon/yautja, /obj/item/weapon/harpoon/yautja, /obj/item/weapon/harpoon/yautja, -/turf/open/floor/corsat/squareswood/north, +/turf/open/floor/strata/grey_multi_tiles, /area/yautja) "bo" = ( /obj/structure/machinery/body_scanconsole{ @@ -655,8 +541,8 @@ }, /area/yautja) "bO" = ( -/obj/structure/bed/alien{ - color = "#aba9a9" +/obj/structure/closet/crate{ + color = "#6b675e" }, /turf/open/floor/corsat/squareswood/north, /area/yautja) @@ -664,11 +550,7 @@ /obj/structure/surface/table/reinforced/prison{ color = "#6b675e" }, -/obj/item/weapon/zombie_claws{ - anchored = 1; - desc = "Claws from a creature that defies nature, you dare not touch it."; - force = 1 - }, +/obj/item/weapon/gun/pistol/heavy/co/gold, /turf/open/floor/corsat/squareswood/north, /area/yautja) "bS" = ( @@ -729,16 +611,9 @@ /obj/item/stack/sheet/xenochitin, /turf/open/floor/corsat/squareswood/north, /area/yautja) -"bZ" = ( -/obj/structure/platform_decoration/kutjevo{ - dir = 4 - }, -/turf/open/shuttle/predship, -/area/yautja) "ca" = ( -/obj/structure/stairs/perspective{ - color = "#b29082"; - icon_state = "p_stair_full" +/obj/structure/bed/chair/comfy/black{ + dir = 8 }, /turf/open/shuttle/predship, /area/yautja) @@ -1312,7 +1187,9 @@ /turf/open/floor/strata/grey_multi_tiles, /area/yautja) "cZ" = ( -/obj/structure/machinery/prop/almayer/CICmap/yautja, +/obj/structure/machinery/prop/almayer/CICmap/yautja{ + pixel_y = 2 + }, /turf/open/floor/strata/grey_multi_tiles/southwest, /area/yautja) "da" = ( @@ -1422,10 +1299,15 @@ /turf/open/space/basic, /area/space) "dS" = ( -/obj/structure/platform/kutjevo{ - dir = 1 +/obj/structure/surface/table/reinforced/prison{ + color = "#6b675e" }, -/turf/open/shuttle/predship, +/obj/item/reagent_container/blood/OMinus, +/obj/item/reagent_container/blood/OMinus, +/obj/item/reagent_container/blood/OMinus, +/obj/item/reagent_container/blood/OMinus, +/obj/item/reagent_container/blood/OMinus, +/turf/open/floor/corsat/squareswood/north, /area/yautja) "eg" = ( /obj/structure/barricade/handrail/strata{ @@ -1604,6 +1486,21 @@ /obj/item/explosive/grenade/spawnergrenade/hellhound, /turf/open/floor/strata/grey_multi_tiles, /area/yautja) +"gC" = ( +/obj/structure/stairs/perspective{ + color = "#6b675e"; + dir = 6; + icon_state = "p_stair_full" + }, +/obj/structure/platform/stair_cut{ + icon_state = "kutjevo_platform_sm_stair" + }, +/obj/item/clothing/mask/gas/yautja/hunter{ + pixel_y = 27; + anchored = 1 + }, +/turf/open/floor/strata/grey_multi_tiles, +/area/yautja) "gG" = ( /obj/structure/machinery/door_control{ id = "Yautja Armory"; @@ -1662,6 +1559,10 @@ /obj/item/reagent_container/food/snacks/meat, /turf/open/floor/darkred2/west, /area/yautja) +"hZ" = ( +/obj/structure/machinery/cm_vending/clothing/yautja/centre, +/turf/open/floor/strata/grey_multi_tiles, +/area/yautja) "is" = ( /obj/structure/kitchenspike, /obj/item/reagent_container/food/snacks/sliceable/xenomeatbread, @@ -1674,13 +1575,7 @@ /turf/open/floor/darkred2/west, /area/yautja) "iL" = ( -/obj/structure/stairs/perspective{ - color = "#b29082"; - icon_state = "p_stair_full" - }, -/obj/structure/platform/kutjevo{ - dir = 4 - }, +/obj/structure/bed/chair/comfy/black, /turf/open/shuttle/predship, /area/yautja) "iV" = ( @@ -1740,8 +1635,8 @@ /obj/structure/surface/table/reinforced/prison{ color = "#6b675e" }, -/obj/item/weapon/twohanded/dualsaber{ - force_wielded = 35 +/obj/item/weapon/gun/pistol/m1911/socom{ + pixel_y = 0 }, /turf/open/floor/corsat/squareswood/north, /area/yautja) @@ -1811,6 +1706,12 @@ /obj/item/weapon/sword/katana, /turf/open/floor/corsat/squareswood/north, /area/yautja) +"mU" = ( +/obj/structure/platform_decoration/kutjevo/smooth{ + dir = 8 + }, +/turf/open/floor/corsat/squareswood/north, +/area/yautja) "nd" = ( /turf/open/gm/dirtgrassborder/desert0, /area/yautja) @@ -1835,20 +1736,26 @@ /obj/item/weapon/twohanded/yautja/spear, /turf/open/floor/strata/grey_multi_tiles, /area/yautja) -"nT" = ( -/obj/structure/surface/table/reinforced/prison{ - color = "#6b675e" +"nP" = ( +/obj/structure/stairs/perspective{ + color = "#6b675e"; + dir = 8; + icon_state = "p_stair_full" }, -/obj/structure/window/reinforced{ - dir = 4; - health = 80 +/obj/item/clothing/mask/gas/yautja/hunter{ + pixel_y = 27; + anchored = 1 }, -/obj/structure/window/reinforced{ - dir = 8; - health = 80 +/obj/structure/platform/stair_cut/alt{ + icon_state = "kutjevo_platform_sm_stair_alt" }, -/obj/structure/machinery/door/window/southright, -/turf/open/floor/corsat/squareswood/north, +/turf/open/shuttle/predship, +/area/yautja) +"nT" = ( +/obj/structure/bed/chair/comfy/black{ + dir = 1 + }, +/turf/open/shuttle/predship, /area/yautja) "nW" = ( /obj/structure/pipes/standard/simple/hidden{ @@ -1866,14 +1773,18 @@ /turf/open/floor/strata/grey_multi_tiles, /area/yautja) "og" = ( -/obj/structure/platform/kutjevo{ - dir = 8 - }, -/obj/structure/stairs/perspective{ - color = "#b29082"; - icon_state = "p_stair_full" +/obj/structure/closet/crate{ + color = "#6b675e" }, -/turf/open/shuttle/predship, +/obj/item/bracer_attachments/scimitars, +/obj/item/bracer_attachments/scimitars, +/obj/item/bracer_attachments/scimitars_alt, +/obj/item/bracer_attachments/scimitars_alt, +/obj/item/bracer_attachments/scimitars, +/obj/item/bracer_attachments/scimitars, +/obj/item/bracer_attachments/scimitars, +/obj/item/bracer_attachments/scimitars, +/turf/open/floor/strata/grey_multi_tiles, /area/yautja) "ov" = ( /obj/structure/surface/rack{ @@ -1898,6 +1809,27 @@ }, /turf/open/floor/strata/grey_multi_tiles, /area/yautja) +"pl" = ( +/obj/structure/platform_decoration/kutjevo/smooth{ + dir = 1 + }, +/turf/open/shuttle/predship, +/area/yautja) +"ps" = ( +/obj/structure/stairs/perspective{ + color = "#6b675e"; + dir = 10; + icon_state = "p_stair_full" + }, +/obj/structure/platform/stair_cut/alt{ + icon_state = "kutjevo_platform_sm_stair_alt" + }, +/obj/item/clothing/mask/gas/yautja/hunter{ + pixel_y = 27; + anchored = 1 + }, +/turf/open/floor/strata/grey_multi_tiles, +/area/yautja) "qj" = ( /obj/structure/surface/rack{ color = "#6b675e"; @@ -1967,12 +1899,22 @@ }, /turf/open/shuttle/predship, /area/yautja) +"st" = ( +/obj/structure/platform/kutjevo/smooth{ + dir = 4 + }, +/turf/open/floor/corsat/squareswood/north, +/area/yautja) "sx" = ( /obj/structure/window/framed/colony/reinforced/hull{ color = "#aba9a9" }, /turf/open/floor/strata/grey_multi_tiles, /area/yautja) +"sz" = ( +/obj/structure/machinery/cm_vending/clothing/yautja/right, +/turf/open/floor/strata/grey_multi_tiles, +/area/yautja) "sS" = ( /obj/structure/surface/rack{ color = "#6b675e"; @@ -2012,6 +1954,16 @@ /obj/structure/xenoautopsy/tank/alien, /turf/open/floor/corsat/squareswood/north, /area/yautja) +"tg" = ( +/obj/structure/curtain/red, +/turf/open/floor/strata/grey_multi_tiles, +/area/yautja) +"th" = ( +/obj/structure/platform_decoration/kutjevo/smooth{ + dir = 4 + }, +/turf/open/shuttle/predship, +/area/yautja) "ti" = ( /obj/structure/shuttle/window{ color = "#6b675e" @@ -2114,6 +2066,10 @@ /obj/item/storage/fancy/candle_box, /turf/open/floor/corsat/squareswood/north, /area/yautja) +"un" = ( +/obj/structure/machinery/cm_vending/clothing/yautja/right_centre, +/turf/open/floor/strata/grey_multi_tiles, +/area/yautja) "uO" = ( /obj/structure/bed/chair/hunter{ dir = 4 @@ -2127,6 +2083,16 @@ /obj/item/weapon/sword/ceremonial, /turf/open/floor/corsat/squareswood/north, /area/yautja) +"vD" = ( +/obj/structure/stairs/perspective{ + color = "#6b675e"; + icon_state = "p_stair_full" + }, +/obj/structure/platform/kutjevo/smooth{ + dir = 8 + }, +/turf/open/floor/strata/grey_multi_tiles, +/area/yautja) "vO" = ( /obj/structure/machinery/shower{ dir = 4 @@ -2135,6 +2101,16 @@ /obj/structure/window/reinforced/tinted, /turf/open/floor/strata/grey_multi_tiles, /area/yautja) +"wp" = ( +/obj/structure/stairs/perspective{ + color = "#6b675e"; + icon_state = "p_stair_full" + }, +/obj/structure/platform/kutjevo/smooth{ + dir = 4 + }, +/turf/open/floor/strata/grey_multi_tiles, +/area/yautja) "ww" = ( /obj/item/stack/sheet/animalhide/xeno{ anchored = 1; @@ -2214,6 +2190,12 @@ }, /turf/open/floor/corsat/squareswood/north, /area/yautja) +"xX" = ( +/obj/structure/platform_decoration/kutjevo/smooth{ + dir = 4 + }, +/turf/open/floor/corsat/squareswood/north, +/area/yautja) "yr" = ( /obj/structure/window/reinforced{ dir = 8; @@ -2400,6 +2382,10 @@ }, /turf/open/floor/strata/grey_multi_tiles, /area/yautja) +"EP" = ( +/obj/structure/machinery/cm_vending/clothing/yautja/elder/right, +/turf/open/shuttle/predship, +/area/yautja) "Fh" = ( /turf/open/floor/strata/grey_multi_tiles/southwest, /area/yautja) @@ -2410,6 +2396,10 @@ /obj/item/storage/medicomp/full, /turf/open/shuttle/predship, /area/yautja) +"Fu" = ( +/obj/structure/platform_decoration/kutjevo/smooth, +/turf/open/shuttle/predship, +/area/yautja) "Fx" = ( /obj/structure/surface/table/reinforced/prison{ color = "#6b675e" @@ -2481,10 +2471,9 @@ /turf/open/gm/dirtgrassborder/desert_dug, /area/yautja) "GP" = ( -/obj/structure/prop/brazier/torch{ - pixel_y = -2 - }, -/turf/closed/wall/mineral/sandstone/runed, +/obj/structure/machinery/cm_vending/clothing/yautja/elder, +/obj/structure/machinery/cm_vending/clothing/yautja/elder/right, +/turf/open/shuttle/predship, /area/yautja) "GY" = ( /obj/structure/surface/table/reinforced/prison{ @@ -2662,6 +2651,14 @@ }, /turf/open/floor/corsat/squareswood/north, /area/yautja) +"Ke" = ( +/obj/item/weapon/yautja/knife{ + name = "sacred ceremonial dagger"; + pixel_y = 34; + anchored = 1 + }, +/turf/open/floor/strata/grey_multi_tiles, +/area/yautja) "KD" = ( /obj/structure/surface/table/reinforced/prison{ color = "#6b675e" @@ -2698,6 +2695,15 @@ }, /turf/open/shuttle/predship, /area/yautja) +"KL" = ( +/obj/structure/stairs/perspective{ + color = "#6b675e"; + dir = 8; + icon_state = "p_stair_full" + }, +/obj/structure/platform/kutjevo/smooth, +/turf/open/floor/strata/grey_multi_tiles, +/area/yautja) "KV" = ( /obj/structure/surface/table/reinforced/prison{ color = "#6b675e" @@ -2742,6 +2748,14 @@ "NA" = ( /turf/open/floor/darkred2, /area/yautja) +"NH" = ( +/obj/structure/machinery/cm_vending/clothing/yautja, +/turf/open/floor/strata/grey_multi_tiles, +/area/yautja) +"Ob" = ( +/obj/structure/machinery/cm_vending/clothing/yautja/elder, +/turf/open/shuttle/predship, +/area/yautja) "Ok" = ( /turf/open/gm/dirtgrassborder/desert, /area/yautja) @@ -2777,11 +2791,9 @@ }, /turf/open/floor/strata/grey_multi_tiles, /area/yautja) -"PN" = ( -/obj/item/stack/sheet/animalhide/xeno{ - anchored = 1; - name = "Spitter Hide"; - pixel_y = 30 +"PM" = ( +/obj/structure/platform/kutjevo/smooth{ + dir = 4 }, /turf/open/shuttle/predship, /area/yautja) @@ -2812,13 +2824,15 @@ /turf/open/floor/corsat/squareswood/north, /area/yautja) "QK" = ( -/obj/structure/platform_decoration/kutjevo{ +/obj/structure/platform/kutjevo/smooth{ dir = 8 }, /turf/open/shuttle/predship, /area/yautja) "Rq" = ( -/obj/structure/machinery/prop/almayer/CICmap/yautja, +/obj/structure/machinery/prop/almayer/CICmap/yautja{ + pixel_y = 2 + }, /turf/open/floor/strata/grey_multi_tiles, /area/yautja) "RE" = ( @@ -2837,23 +2851,9 @@ }, /turf/open/shuttle/predship, /area/yautja) -"SM" = ( -/obj/structure/surface/rack{ - color = "#6b675e"; - layer = 2.79 - }, -/obj/item/hunting_trap, -/obj/item/hunting_trap, -/obj/item/hunting_trap, -/obj/item/hunting_trap, -/obj/item/hunting_trap, -/obj/item/hunting_trap, -/obj/item/hunting_trap, -/obj/item/hunting_trap, -/obj/structure/platform/kutjevo{ - dir = 4 - }, -/turf/open/floor/corsat/squareswood/north, +"SO" = ( +/obj/structure/machinery/cm_vending/clothing/yautja/left_centre, +/turf/open/floor/strata/grey_multi_tiles, /area/yautja) "Ut" = ( /obj/structure/surface/rack{ @@ -2888,7 +2888,13 @@ /obj/effect/decal/remains/xeno{ pixel_y = -25 }, -/turf/open/shuttle/predship, +/turf/open/shuttle/predship, +/area/yautja) +"Uz" = ( +/obj/structure/platform/kutjevo/smooth{ + dir = 8 + }, +/turf/open/floor/corsat/squareswood/north, /area/yautja) "UR" = ( /obj/structure/stairs/perspective{ @@ -2910,6 +2916,18 @@ /obj/item/xeno_restraints, /turf/open/shuttle/predship, /area/yautja) +"Vj" = ( +/obj/structure/platform/kutjevo/smooth{ + dir = 1 + }, +/turf/open/floor/corsat/squareswood/north, +/area/yautja) +"VC" = ( +/obj/structure/platform_decoration/kutjevo/smooth{ + dir = 8 + }, +/turf/open/shuttle/predship, +/area/yautja) "VT" = ( /obj/structure/surface/table/reinforced/prison{ color = "#6b675e" @@ -3021,9 +3039,6 @@ }, /turf/open/shuttle/predship, /area/yautja) -"YM" = ( -/turf/closed/wall/mineral/sandstone/runed/decor, -/area/yautja) "Zi" = ( /obj/structure/sink{ pixel_y = 25 @@ -3071,7 +3086,7 @@ /obj/item/stack/yautja_rope, /obj/item/stack/yautja_rope, /obj/item/stack/yautja_rope, -/turf/open/floor/corsat/squareswood/north, +/turf/open/floor/strata/grey_multi_tiles, /area/yautja) (1,1,1) = {" @@ -4171,7 +4186,7 @@ bj as bJ aY -ZM +dS cj bL an @@ -4456,7 +4471,7 @@ aa ae bj bj -bL +ah bL bL bj @@ -4887,9 +4902,9 @@ bj bj bj bj -bj -bj -bj +sx +sx +sx bj bj bj @@ -4952,18 +4967,18 @@ aa aa ac bj -bN +bj ZR aV bn bj -av -ZM -bO bj -av ZM bO +bL +bO +ZM +bj bj wQ cP @@ -5024,18 +5039,18 @@ aa aa ae bj -bN -SM -QK -bL bj -bL -SB -bL +cP +JH +al bj -bL -SB -bL +Vj +FG +FG +FG +FG +cP +wQ bj wQ cP @@ -5096,18 +5111,18 @@ aa aa ad bj -ag -GP -dS -bL -bj -bL +Ob cP -bL -bj -bL +JH +JH +vD +xX +ai +ai +ai +ai cP -bL +wQ bj KD bL @@ -5168,18 +5183,18 @@ aa bj bj bj -ay -og -bZ +GP +cP +cP +JH +df bL bj -eS -cP -KK +bj +bj bj eS -cP -Uv +wQ bj BS JH @@ -5240,18 +5255,18 @@ aa aa ac bj -aA -bh -QK -bL bj -nT +PM +VC cP +df bL -bj +iL +ak +ak nT cP -bL +wQ bj JH JH @@ -5312,18 +5327,18 @@ aa aa ad bj -ag -YM -dS -bL bj -fg -cP -bL bj -fg +ps cP -bL +wp +st +VC +ca +ca +Fu +PM +bj bj JH bL @@ -5384,17 +5399,17 @@ aa bj bj bj -ah -ap -bZ -bL -bj bj -aw +Ke +df +cP bj bj +nP +ME +ME +KL bj -aw bj bj JH @@ -5456,17 +5471,17 @@ aa aa ac bj -ai -ca +NH +JH +df cP +bj bL -bL -ti -FG cP cP cP -FG +cP +cP ti JH JH @@ -5528,12 +5543,12 @@ aa aa ae bj -aj -iL -QK -cP +SO +JH +df +JH +tg cP -ar cP Fh Fh @@ -5600,12 +5615,12 @@ aa aa ae bj -ag -GP -dS -bL -bL -ti +hZ +cP +df +cP +aw +cP cP Fh cZ @@ -5672,12 +5687,12 @@ aa aa ae bj -ak -ap -bZ -cP +un +JH +df +JH +tg cP -ar cP Fh Fh @@ -5744,17 +5759,17 @@ aa aa ad bj -al -ca +sz +JH +df cP +bj bL -bL -ti -FG cP cP cP -FG +cP +cP ti JH JH @@ -5816,17 +5831,17 @@ aa bj bj bj -am -iL -QK -bL -bj bj -aw +Ke +df +cP bj bj +ay +ME +ME +KL bj -aw bj bj JH @@ -5888,18 +5903,18 @@ aa aa ac bj -ag -YM -dS -bL bj -fg -cP -bL bj -fg +gC cP -bL +vD +Uz +th +am +am +pl +QK +bj bj JH bL @@ -5960,18 +5975,18 @@ aa aa ad bj -ay -ap -bZ -bL bj -nT +QK +th cP +df bL -bj +iL +ak +ak nT cP -bL +wQ bj JH JH @@ -6032,18 +6047,18 @@ aa bj bj bj -aA -iL -QK +Ob +cP +cP +JH +df bL bj -ww -cP -Uv bj -PN -cP -KK +bj +bj +ww +wQ bj bL JH @@ -6104,18 +6119,18 @@ aa aa ac bj -ag -GP -dS -bL -bj -bL +EP cP -bL -bj -bL +JH +JH +wp +mU +ai +ai +ai +ai cP -bL +wQ bj bL bL @@ -6176,18 +6191,18 @@ aa aa ae bj -bN -aC -bZ -bL bj -bL -eY -bL +cP +JH +al bj -bL -eY -bL +Vj +FG +FG +FG +FG +cP +wQ bj cQ cP @@ -6248,18 +6263,18 @@ aa aa ad bj -bN +bj ZR aV bn bj -av -ZM -bO bj -av ZM bO +bL +bO +ZM +bj bj tD cP @@ -6327,9 +6342,9 @@ bj bj bj bj -bj -bj -bj +sx +sx +sx bj bj bj @@ -6782,7 +6797,7 @@ bv bv bv bj -gb +og JH JH JH @@ -6999,7 +7014,7 @@ gG bL Fy dl -JH +gb bj bj bj diff --git a/maps/templates/lazy_templates/clf_ert_station.dmm b/maps/templates/lazy_templates/clf_ert_station.dmm index c1ec79d8770c..d362885dfa06 100644 --- a/maps/templates/lazy_templates/clf_ert_station.dmm +++ b/maps/templates/lazy_templates/clf_ert_station.dmm @@ -369,7 +369,8 @@ }, /obj/item/clothing/mask/yautja_flavor{ anchored = 1; - unacidable = 0 + unacidable = 0; + pixel_y = 10 }, /turf/open/floor/sandstone/runed, /area/adminlevel/ert_station/clf_station) diff --git a/sound/ATTRIBUTION.txt b/sound/ATTRIBUTION.txt index 03dd02d49db4..8af04e22fa3e 100644 --- a/sound/ATTRIBUTION.txt +++ b/sound/ATTRIBUTION.txt @@ -1,3 +1,4 @@ giant_lizard_growl1.ogg, giant_lizard_growl2.ogg by D.jones -- https://freesound.org/s/527844/ -- License: Creative Commons 0 giant_lizard_death.wav by craigsmith -- https://freesound.org/s/437933/ -- License: Creative Commons 0 giant_lizard_hiss1.ogg, giant_lizard_hiss2.ogg by ZapSplat -- https://www.zapsplat.com/sound-effect-category/alligators-and-crocodiles/ -- License: ZapSplat Standard License +ghost_whisper_12.ogg by ondrosik -- https://freesound.org/s/207797/ -- License: Creative Commons 0 diff --git a/sound/hallucinations/ears_ringing.ogg b/sound/hallucinations/ears_ringing.ogg new file mode 100644 index 000000000000..78c6ee4edf0f Binary files /dev/null and b/sound/hallucinations/ears_ringing.ogg differ diff --git a/sound/hallucinations/ghost_whisper_01.ogg b/sound/hallucinations/ghost_whisper_01.ogg new file mode 100644 index 000000000000..d1b625437f62 Binary files /dev/null and b/sound/hallucinations/ghost_whisper_01.ogg differ diff --git a/sound/hallucinations/ghost_whisper_02.ogg b/sound/hallucinations/ghost_whisper_02.ogg new file mode 100644 index 000000000000..8ab9f5968550 Binary files /dev/null and b/sound/hallucinations/ghost_whisper_02.ogg differ diff --git a/sound/hallucinations/ghost_whisper_03.ogg b/sound/hallucinations/ghost_whisper_03.ogg new file mode 100644 index 000000000000..8f71bdd7a420 Binary files /dev/null and b/sound/hallucinations/ghost_whisper_03.ogg differ diff --git a/sound/hallucinations/ghost_whisper_04.ogg b/sound/hallucinations/ghost_whisper_04.ogg new file mode 100644 index 000000000000..c2cc57548a93 Binary files /dev/null and b/sound/hallucinations/ghost_whisper_04.ogg differ diff --git a/sound/hallucinations/ghost_whisper_05.ogg b/sound/hallucinations/ghost_whisper_05.ogg new file mode 100644 index 000000000000..c45e37b9dc69 Binary files /dev/null and b/sound/hallucinations/ghost_whisper_05.ogg differ diff --git a/sound/hallucinations/ghost_whisper_06.ogg b/sound/hallucinations/ghost_whisper_06.ogg new file mode 100644 index 000000000000..de13528a9a0f Binary files /dev/null and b/sound/hallucinations/ghost_whisper_06.ogg differ diff --git a/sound/hallucinations/ghost_whisper_07.ogg b/sound/hallucinations/ghost_whisper_07.ogg new file mode 100644 index 000000000000..69eafb2ac6d5 Binary files /dev/null and b/sound/hallucinations/ghost_whisper_07.ogg differ diff --git a/sound/hallucinations/ghost_whisper_08.ogg b/sound/hallucinations/ghost_whisper_08.ogg new file mode 100644 index 000000000000..a4ad866591a9 Binary files /dev/null and b/sound/hallucinations/ghost_whisper_08.ogg differ diff --git a/sound/hallucinations/ghost_whisper_09.ogg b/sound/hallucinations/ghost_whisper_09.ogg new file mode 100644 index 000000000000..9ed86957e369 Binary files /dev/null and b/sound/hallucinations/ghost_whisper_09.ogg differ diff --git a/sound/hallucinations/ghost_whisper_10.ogg b/sound/hallucinations/ghost_whisper_10.ogg new file mode 100644 index 000000000000..40704e7e217b Binary files /dev/null and b/sound/hallucinations/ghost_whisper_10.ogg differ diff --git a/sound/hallucinations/ghost_whisper_11.ogg b/sound/hallucinations/ghost_whisper_11.ogg new file mode 100644 index 000000000000..53dd309133c7 Binary files /dev/null and b/sound/hallucinations/ghost_whisper_11.ogg differ diff --git a/sound/hallucinations/ghost_whisper_12.ogg b/sound/hallucinations/ghost_whisper_12.ogg new file mode 100644 index 000000000000..e4f4cc3c186a Binary files /dev/null and b/sound/hallucinations/ghost_whisper_12.ogg differ diff --git a/sound/hallucinations/ghost_whisper_13.ogg b/sound/hallucinations/ghost_whisper_13.ogg new file mode 100644 index 000000000000..3718c96fb4db Binary files /dev/null and b/sound/hallucinations/ghost_whisper_13.ogg differ diff --git a/sound/hallucinations/ghost_whisper_female_01.ogg b/sound/hallucinations/ghost_whisper_female_01.ogg new file mode 100644 index 000000000000..c0a14eb6d9f8 Binary files /dev/null and b/sound/hallucinations/ghost_whisper_female_01.ogg differ diff --git a/sound/hallucinations/ghost_whisper_female_02.ogg b/sound/hallucinations/ghost_whisper_female_02.ogg new file mode 100644 index 000000000000..60d46890d631 Binary files /dev/null and b/sound/hallucinations/ghost_whisper_female_02.ogg differ diff --git a/sound/hallucinations/ghost_whisper_female_03.ogg b/sound/hallucinations/ghost_whisper_female_03.ogg new file mode 100644 index 000000000000..cbd24d15aad4 Binary files /dev/null and b/sound/hallucinations/ghost_whisper_female_03.ogg differ diff --git a/sound/hallucinations/ghost_whisper_female_04.ogg b/sound/hallucinations/ghost_whisper_female_04.ogg new file mode 100644 index 000000000000..bd0fe87e33f4 Binary files /dev/null and b/sound/hallucinations/ghost_whisper_female_04.ogg differ diff --git a/sound/hallucinations/ghost_whisper_female_05.ogg b/sound/hallucinations/ghost_whisper_female_05.ogg new file mode 100644 index 000000000000..b47a305bb531 Binary files /dev/null and b/sound/hallucinations/ghost_whisper_female_05.ogg differ diff --git a/sound/hallucinations/ghost_whisper_female_06.ogg b/sound/hallucinations/ghost_whisper_female_06.ogg new file mode 100644 index 000000000000..0636b9028ae3 Binary files /dev/null and b/sound/hallucinations/ghost_whisper_female_06.ogg differ diff --git a/sound/hallucinations/ghost_whisper_female_07.ogg b/sound/hallucinations/ghost_whisper_female_07.ogg new file mode 100644 index 000000000000..7a7ddcd58a13 Binary files /dev/null and b/sound/hallucinations/ghost_whisper_female_07.ogg differ diff --git a/sound/hallucinations/ghost_whisper_female_08.ogg b/sound/hallucinations/ghost_whisper_female_08.ogg new file mode 100644 index 000000000000..0c6a51ac5660 Binary files /dev/null and b/sound/hallucinations/ghost_whisper_female_08.ogg differ diff --git a/sound/hallucinations/ghost_whisper_female_09.ogg b/sound/hallucinations/ghost_whisper_female_09.ogg new file mode 100644 index 000000000000..cae3db314bbd Binary files /dev/null and b/sound/hallucinations/ghost_whisper_female_09.ogg differ diff --git a/sound/hallucinations/ghost_whisper_female_10.ogg b/sound/hallucinations/ghost_whisper_female_10.ogg new file mode 100644 index 000000000000..eb942c5f16f3 Binary files /dev/null and b/sound/hallucinations/ghost_whisper_female_10.ogg differ diff --git a/sound/hallucinations/ghost_whisper_female_11.ogg b/sound/hallucinations/ghost_whisper_female_11.ogg new file mode 100644 index 000000000000..e7a6b8c3734c Binary files /dev/null and b/sound/hallucinations/ghost_whisper_female_11.ogg differ diff --git a/sound/hallucinations/ghost_whisper_female_12.ogg b/sound/hallucinations/ghost_whisper_female_12.ogg new file mode 100644 index 000000000000..1e001fd181d6 Binary files /dev/null and b/sound/hallucinations/ghost_whisper_female_12.ogg differ diff --git a/sound/hallucinations/ghost_whisper_female_13.ogg b/sound/hallucinations/ghost_whisper_female_13.ogg new file mode 100644 index 000000000000..fedcd225d329 Binary files /dev/null and b/sound/hallucinations/ghost_whisper_female_13.ogg differ diff --git a/sound/hallucinations/ghost_whisper_female_14.ogg b/sound/hallucinations/ghost_whisper_female_14.ogg new file mode 100644 index 000000000000..c0bd20bdb87a Binary files /dev/null and b/sound/hallucinations/ghost_whisper_female_14.ogg differ diff --git a/sound/hallucinations/ghost_whisper_female_15.ogg b/sound/hallucinations/ghost_whisper_female_15.ogg new file mode 100644 index 000000000000..3bbc89b80db6 Binary files /dev/null and b/sound/hallucinations/ghost_whisper_female_15.ogg differ diff --git a/sound/misc/facehugged_female.ogg b/sound/voice/human_female_facehugged1.ogg similarity index 100% rename from sound/misc/facehugged_female.ogg rename to sound/voice/human_female_facehugged1.ogg diff --git a/sound/voice/human_female_facehugged2.ogg b/sound/voice/human_female_facehugged2.ogg new file mode 100644 index 000000000000..01352c449d9f Binary files /dev/null and b/sound/voice/human_female_facehugged2.ogg differ diff --git a/sound/voice/human_female_preburst1.ogg b/sound/voice/human_female_preburst1.ogg new file mode 100644 index 000000000000..8e4923eb93f4 Binary files /dev/null and b/sound/voice/human_female_preburst1.ogg differ diff --git a/sound/voice/human_female_preburst2.ogg b/sound/voice/human_female_preburst2.ogg new file mode 100644 index 000000000000..f4e8990f49d8 Binary files /dev/null and b/sound/voice/human_female_preburst2.ogg differ diff --git a/sound/voice/human_female_preburst3.ogg b/sound/voice/human_female_preburst3.ogg new file mode 100644 index 000000000000..481063183201 Binary files /dev/null and b/sound/voice/human_female_preburst3.ogg differ diff --git a/sound/voice/human_female_preburst4.ogg b/sound/voice/human_female_preburst4.ogg new file mode 100644 index 000000000000..6d2141b47ba3 Binary files /dev/null and b/sound/voice/human_female_preburst4.ogg differ diff --git a/sound/voice/human_female_preburst5.ogg b/sound/voice/human_female_preburst5.ogg new file mode 100644 index 000000000000..8cab84545179 Binary files /dev/null and b/sound/voice/human_female_preburst5.ogg differ diff --git a/sound/voice/human_female_preburst6.ogg b/sound/voice/human_female_preburst6.ogg new file mode 100644 index 000000000000..8f50196853e5 Binary files /dev/null and b/sound/voice/human_female_preburst6.ogg differ diff --git a/sound/voice/human_female_preburst7.ogg b/sound/voice/human_female_preburst7.ogg new file mode 100644 index 000000000000..691115dfe098 Binary files /dev/null and b/sound/voice/human_female_preburst7.ogg differ diff --git a/sound/misc/facehugged_male.ogg b/sound/voice/human_male_facehugged1.ogg similarity index 100% rename from sound/misc/facehugged_male.ogg rename to sound/voice/human_male_facehugged1.ogg diff --git a/sound/voice/human_male_facehugged2.ogg b/sound/voice/human_male_facehugged2.ogg new file mode 100644 index 000000000000..b701e1f50ea4 Binary files /dev/null and b/sound/voice/human_male_facehugged2.ogg differ diff --git a/sound/voice/human_male_facehugged3.ogg b/sound/voice/human_male_facehugged3.ogg new file mode 100644 index 000000000000..6d1292d0918a Binary files /dev/null and b/sound/voice/human_male_facehugged3.ogg differ diff --git a/sound/voice/human_male_preburst1.ogg b/sound/voice/human_male_preburst1.ogg new file mode 100644 index 000000000000..6f3e76997acc Binary files /dev/null and b/sound/voice/human_male_preburst1.ogg differ diff --git a/sound/voice/human_male_preburst2.ogg b/sound/voice/human_male_preburst2.ogg new file mode 100644 index 000000000000..40aea6a8ae8d Binary files /dev/null and b/sound/voice/human_male_preburst2.ogg differ diff --git a/sound/voice/human_male_preburst3.ogg b/sound/voice/human_male_preburst3.ogg new file mode 100644 index 000000000000..813c123ac8f2 Binary files /dev/null and b/sound/voice/human_male_preburst3.ogg differ diff --git a/sound/voice/human_male_preburst4.ogg b/sound/voice/human_male_preburst4.ogg new file mode 100644 index 000000000000..b58b7e6cabd6 Binary files /dev/null and b/sound/voice/human_male_preburst4.ogg differ diff --git a/sound/voice/human_male_preburst5.ogg b/sound/voice/human_male_preburst5.ogg new file mode 100644 index 000000000000..1d54adcaa7aa Binary files /dev/null and b/sound/voice/human_male_preburst5.ogg differ diff --git a/sound/voice/human_male_preburst6.ogg b/sound/voice/human_male_preburst6.ogg new file mode 100644 index 000000000000..c5b0f3d27a56 Binary files /dev/null and b/sound/voice/human_male_preburst6.ogg differ diff --git a/sound/voice/human_male_preburst7.ogg b/sound/voice/human_male_preburst7.ogg new file mode 100644 index 000000000000..adc8ea3a8c7b Binary files /dev/null and b/sound/voice/human_male_preburst7.ogg differ diff --git a/sound/voice/human_male_preburst8.ogg b/sound/voice/human_male_preburst8.ogg new file mode 100644 index 000000000000..f52d9da063b9 Binary files /dev/null and b/sound/voice/human_male_preburst8.ogg differ diff --git a/sound/voice/human_male_preburst9.ogg b/sound/voice/human_male_preburst9.ogg new file mode 100644 index 000000000000..c10942822113 Binary files /dev/null and b/sound/voice/human_male_preburst9.ogg differ diff --git a/sound/weapons/Scims_alt_off.ogg b/sound/weapons/Scims_alt_off.ogg new file mode 100644 index 000000000000..fd29750b18cc Binary files /dev/null and b/sound/weapons/Scims_alt_off.ogg differ diff --git a/sound/weapons/Scims_alt_on.ogg b/sound/weapons/Scims_alt_on.ogg new file mode 100644 index 000000000000..f3af08c1aadb Binary files /dev/null and b/sound/weapons/Scims_alt_on.ogg differ diff --git a/sound/weapons/Scims_off.ogg b/sound/weapons/Scims_off.ogg new file mode 100644 index 000000000000..b52c44d9d92b Binary files /dev/null and b/sound/weapons/Scims_off.ogg differ diff --git a/sound/weapons/Scims_on.ogg b/sound/weapons/Scims_on.ogg new file mode 100644 index 000000000000..d74db1f59086 Binary files /dev/null and b/sound/weapons/Scims_on.ogg differ diff --git a/sound/weapons/pred_attach.ogg b/sound/weapons/pred_attach.ogg new file mode 100644 index 000000000000..9f7ff56b6777 Binary files /dev/null and b/sound/weapons/pred_attach.ogg differ diff --git a/sound/weapons/wristblades_off.ogg b/sound/weapons/wristblades_off.ogg index b52c44d9d92b..ed161d232587 100644 Binary files a/sound/weapons/wristblades_off.ogg and b/sound/weapons/wristblades_off.ogg differ diff --git a/sound/weapons/wristblades_on.ogg b/sound/weapons/wristblades_on.ogg index d74db1f59086..b9610ee52d25 100644 Binary files a/sound/weapons/wristblades_on.ogg and b/sound/weapons/wristblades_on.ogg differ diff --git a/tgui/packages/tgui/components/Button.tsx b/tgui/packages/tgui/components/Button.tsx index 764d589337ca..c6e39264fd32 100644 --- a/tgui/packages/tgui/components/Button.tsx +++ b/tgui/packages/tgui/components/Button.tsx @@ -256,7 +256,7 @@ const ButtonConfirm = (props: ConfirmProps) => { }} {...rest} > - {clickedOnce ? confirmContent : children} + {clickedOnce && confirmContent ? confirmContent : children} ); }; @@ -329,11 +329,15 @@ const ButtonInput = (props: InputProps) => { setInInput(true)} + onClick={() => { + if (disabled) return; + setInInput(true); + }} > {icon && }
{toDisplay}
diff --git a/tgui/packages/tgui/interfaces/BodyPicker.tsx b/tgui/packages/tgui/interfaces/BodyPicker.tsx new file mode 100644 index 000000000000..4ca0c03acdf7 --- /dev/null +++ b/tgui/packages/tgui/interfaces/BodyPicker.tsx @@ -0,0 +1,183 @@ +import { useState } from 'react'; + +import { useBackend } from '../backend'; +import { + Box, + Button, + ColorBox, + DmIcon, + Modal, + Stack, + Tooltip, +} from '../components'; +import { Window } from '../layouts'; + +type PickerData = { + icon: string; + body_types: { name: string; icon: string }[]; + skin_colors: { name: string; icon: string; color: string }[]; + body_sizes: { name: string; icon: string }[]; + + body_type: string; + skin_color: string; + body_size: string; +}; + +export const BodyPicker = () => { + const { data } = useBackend(); + + const { icon, body_size, body_type, skin_color, body_types, body_sizes } = + data; + + const [picker, setPicker] = useState<'type' | 'size' | undefined>(); + + const unselectedBodyType = body_types.filter( + (val) => val.icon !== body_type, + )[0]; + + const unselectedBodySize = body_sizes.filter( + (val) => val.icon !== body_size, + )[0]; + + return ( + + + {picker && ( + + + + )} + + + + + + + + + + + + + + + + + + + + + + + ); +}; + +const TypePicker = (props: { + readonly picker: (_) => void; + readonly toUse: 'type' | 'size'; +}) => { + const { data, act } = useBackend(); + + const { picker, toUse } = props; + + const { body_type, body_types, skin_color, body_size, body_sizes, icon } = + data; + + const toIterate = toUse === 'type' ? body_types : body_sizes; + + const active = toUse === 'type' ? body_type : body_size; + + return ( + + {toIterate.map((type) => ( + + + { + picker(undefined); + act(toUse, { name: type.name }); + }} + position="relative" + className={`typePicker ${active === type.icon ? 'active' : ''}`} + > + + + + + ))} + + ); +}; + +const ColorOptions = () => { + const { data, act } = useBackend(); + + const { skin_color, skin_colors } = data; + + return ( + + {skin_colors.map((color) => ( + + act('color', { name: color.name })} + className={`colorPicker ${skin_color === color.icon ? 'active' : ''}`} + /> + + ))} + + ); +}; diff --git a/tgui/packages/tgui/interfaces/CanvasLayer.jsx b/tgui/packages/tgui/interfaces/CanvasLayer.jsx index aab80933632a..d3f45b5c221c 100644 --- a/tgui/packages/tgui/interfaces/CanvasLayer.jsx +++ b/tgui/packages/tgui/interfaces/CanvasLayer.jsx @@ -274,14 +274,16 @@ export class CanvasLayer extends Component { size={2} position="absolute" mx="50%" - mt="25px" + mt="140px" + color="red" + style={{ zIndex: '1' }} /> )} this.handleMouseDown(e)} onMouseUp={(e) => this.handleMouseUp(e)} onMouseMove={(e) => this.handleMouseMove(e)} diff --git a/tgui/packages/tgui/interfaces/ChemMaster.tsx b/tgui/packages/tgui/interfaces/ChemMaster.tsx new file mode 100644 index 000000000000..4ffa0bb655a7 --- /dev/null +++ b/tgui/packages/tgui/interfaces/ChemMaster.tsx @@ -0,0 +1,522 @@ +import { useState } from 'react'; + +import { useBackend, useSharedState } from '../backend'; +import { + Box, + Button, + DmIcon, + Icon, + Input, + Modal, + NoticeBox, + NumberInput, + Section, + Stack, +} from '../components'; +import { Window } from '../layouts'; + +type ChemMasterData = { + is_connected: boolean; + pill_bottle?: { + size: number; + max_size: number; + label?: string; + icon_state: string; + }; + color_pill: { + icon: string; + colors: { [key: string]: string }; + base: string; + }; + beaker?: { + reagents_volume: number; + reagents: Reagent[]; + }; + buffer?: Reagent[]; + mode: boolean; + pill_or_bottle_icon: string; + pill_icon_choices: number; + bottle_icon_choices: number; + bottlesprite: number; + pillsprite: number; + is_pillmaker: boolean; + is_condiment: boolean; + is_vialmaker: boolean; + internal_reagent_name: string; +}; + +type Reagent = { + name: string; + volume: number; + id: number; +}; + +export const ChemMaster = () => { + const { act, data } = useBackend(); + + const { is_connected, beaker, buffer, mode } = data; + + const [glasswarePicker, setGlasswarePicker] = useState< + 'pill' | 'bottle' | false + >(false); + + const [pillPicker, setPillPicker] = useState(false); + + return ( + + +
+ + + + + Beaker: + + + {beaker ? ( + beaker.reagents_volume + 'u' + ) : ( + No beaker inserted. + )} + + + + + + + + {beaker && !is_connected && ( + + )} + + +
+ {beaker && ( +
act('eject')} + > + Eject + + } + > + {beaker.reagents ? ( + + ) : ( + Beaker is empty. + )} +
+ )} +
act('toggle')} + > + {mode ? 'To Beaker' : 'To Disposal'} + + } + > + {buffer?.length ? ( + + ) : ( + Buffer is empty. + )} +
+ + {glasswarePicker && ( + + )} + {pillPicker && } +
+
+ ); +}; + +const PillPicker = (props: { readonly setPicker: (_) => void }) => { + const { setPicker } = props; + + const { act, data } = useBackend(); + + const { color_pill } = data; + + return ( + + + {Object.keys(color_pill.colors).map((color) => ( + + { + act('color_pill', { color: color }); + setPicker(false); + }} + > + + + + ))} + + + ); +}; + +const GlasswarePicker = (props: { + readonly setPicker: (_) => void; + readonly type: 'pill' | 'bottle'; +}) => { + const { act, data } = useBackend(); + + const { pill_icon_choices, bottle_icon_choices, pill_or_bottle_icon } = data; + + const { setPicker, type } = props; + + return ( + + + {Array.from( + { + length: type === 'pill' ? pill_icon_choices : bottle_icon_choices, + }, + (_, index) => ( + + { + act(type === 'pill' ? 'change_pill' : 'change_bottle', { + picked: index + 1, + }); + setPicker(false); + }} + > + + + + ), + )} + + + ); +}; + +const PillBottle = (props: { readonly setPicker: (_) => void }) => { + const { data, act } = useBackend(); + + const { setPicker } = props; + + const { pill_bottle, is_connected, color_pill } = data; + + const [tag, setTag] = useState(''); + + return ( + + + Pill Bottle: + + + {pill_bottle ? ( + + + + + + {pill_bottle.size} / {pill_bottle.max_size} + + + + {pill_bottle.label && ({pill_bottle.label})} + + + + + + { + act('label_pill', { text: value }); + }} + > + Label + + + + + + + + {!!is_connected && ( + + + + )} + + + + + + ) : ( + No pill bottle inserted. + )} + + + ); +}; + +const Glassware = (props: { readonly setPicker: (type) => void }) => { + const { data, act } = useBackend(); + + const { setPicker } = props; + + const { + pill_or_bottle_icon, + pillsprite, + is_pillmaker, + is_condiment, + is_connected, + is_vialmaker, + bottlesprite, + internal_reagent_name, + buffer, + } = data; + + const [numPills, setNumPills] = useSharedState('pillNum', 16); + + return ( +
+ {!is_condiment ? ( + + + {!!is_pillmaker && ( + + + setPicker('pill')}> + + + setNumPills(value)} + /> + + )} + + + + + + + act('create_glass', { + type: 'glass', + label: value, + }) + } + > + Create Bottle (60u) + + {!!is_connected && ( + + act('create_glass', { + type: 'glass', + label: value, + store: true, + }) + } + > + Create and Transfer + + )} + + setPicker('bottle')}> + + + + + + {!!is_vialmaker && ( + + + + + + act('create_glass', { type: 'vial', label: value }) + } + > + Create Vial (30u) + + {!!is_connected && ( + + act('create_glass', { + type: 'vial', + label: value, + store: true, + }) + } + > + Create and Transfer + + )} + + + + + )} + + ) : ( + + + + + + + + )} +
+ ); +}; + +const Reagents = (props: { + readonly reagents: Reagent[]; + readonly type: 'beaker' | 'buffer'; +}) => { + const { reagents, type } = props; + + const { act } = useBackend(); + + return ( + + {reagents.map((reagent) => ( + + + + {reagent.name}, {reagent.volume} units + + + + + + + + + + { + act(type === 'beaker' ? 'add' : 'remove', { + amount: parseInt(value, 10), + id: reagent.id, + }); + }} + /> + + + + + ))} + + + + + ); +}; + +const ReagentButton = (props: { + readonly amount: number | 'All'; + readonly reagent: Reagent; + readonly type: 'buffer' | 'beaker'; +}) => { + const { act } = useBackend(); + + const { amount, reagent, type } = props; + + return ( + + + + ); +}; diff --git a/tgui/packages/tgui/interfaces/DrawnMap.jsx b/tgui/packages/tgui/interfaces/DrawnMap.jsx index 714b28b8bbef..171a605e5c85 100644 --- a/tgui/packages/tgui/interfaces/DrawnMap.jsx +++ b/tgui/packages/tgui/interfaces/DrawnMap.jsx @@ -51,10 +51,10 @@ export class DrawnMap extends Component { getSize() { const ratio = Math.min( - (self.innerWidth - 50) / 650, - (self.innerHeight - 150) / 600, + (self.innerWidth - 16) / 684, + (self.innerHeight - 166) / 684, ); - return { width: 650 * ratio, height: 600 * ratio }; + return { width: 684 * ratio, height: 684 * ratio }; } render() { @@ -62,35 +62,21 @@ export class DrawnMap extends Component { const size = this.getSize(); return ( -
+
{this.state.loadingBackup && !this.state.mapLoad && (

Loading map...

)} {this.img && this.state.mapLoad && ( - + )} {parsedSvgData && this.state.mapLoad && ( {parsedSvgData.map((line, index) => ( { const { act } = useBackend(); const { color, item } = props; - const { health, icon, full_name, nickname, orbiters, ref, background_color } = - item; + const { + health, + icon, + full_name, + nickname, + orbiters, + ref, + background_color, + background_icon, + } = item; const displayHealth = typeof health === 'number'; @@ -465,7 +473,11 @@ const ObservableItem = (props: { > {displayHealth && } {!!icon && ( - + )} {capitalizeFirst(getDisplayName(full_name, nickname))} {!!orbiters && ( @@ -482,7 +494,15 @@ const ObservableItem = (props: { /** Displays some info on the mob as a tooltip. */ const ObservableTooltip = (props: { readonly item: Observable }) => { const { - item: { caste, health, job, full_name, icon, background_color }, + item: { + caste, + health, + job, + full_name, + icon, + background_color, + background_icon, + }, } = props; const displayHealth = typeof health === 'number'; @@ -496,7 +516,11 @@ const ObservableTooltip = (props: { readonly item: Observable }) => { {!!caste && ( {!!icon && ( - + )} {caste} @@ -504,7 +528,11 @@ const ObservableTooltip = (props: { readonly item: Observable }) => { {!!job && ( {!!icon && ( - + )} {job} @@ -520,24 +548,40 @@ const ObservableTooltip = (props: { readonly item: Observable }) => { const ObservableIcon = (props: { readonly icon: Observable['icon']; readonly background_color: Observable['background_color']; + readonly background_icon: Observable['background_icon']; }) => { const { data } = useBackend(); const { icons = [] } = data; - const { icon, background_color } = props; - if (!icon || !icons[icon]) { + const { icon, background_color, background_icon } = props; + if (!icon || !icons[icon] || !background_icon || !icons[background_icon]) { return null; } return ( - + <> + + + ); }; diff --git a/tgui/packages/tgui/interfaces/Orbit/types.ts b/tgui/packages/tgui/interfaces/Orbit/types.ts index d1a360de0d72..3ef1268762ee 100644 --- a/tgui/packages/tgui/interfaces/Orbit/types.ts +++ b/tgui/packages/tgui/interfaces/Orbit/types.ts @@ -35,6 +35,7 @@ export type Observable = { icon?: string; job?: string; background_color?: string; + background_icon?: string; full_name: string; nickname?: string; orbiters?: number; diff --git a/tgui/packages/tgui/interfaces/TacticalMap.tsx b/tgui/packages/tgui/interfaces/TacticalMap.tsx index fd6dde487b82..4ad68286eb59 100644 --- a/tgui/packages/tgui/interfaces/TacticalMap.tsx +++ b/tgui/packages/tgui/interfaces/TacticalMap.tsx @@ -163,8 +163,10 @@ const ViewMapPanel = (props) => { } return ( -
+
{ const OldMapPanel = (props) => { const { data } = useBackend(); return ( -
+
{data.canViewCanvas ? ( { title="Canvas Options" className={'canvas-options'} width="688px" + position="absolute" + style={{ zIndex: '1' }} > @@ -320,7 +324,13 @@ const DrawMapPanel = (props) => {
-
+
{ return 'retro'; case THEME_COMP: return 'weyland'; + case THEME_YAUTJA: + return 'ntos_spooky'; default: return 'usmc'; } diff --git a/tgui/packages/tgui/interfaces/WorkingJoe.jsx b/tgui/packages/tgui/interfaces/WorkingJoe.jsx index 1310db39e739..abf365ddaefb 100644 --- a/tgui/packages/tgui/interfaces/WorkingJoe.jsx +++ b/tgui/packages/tgui/interfaces/WorkingJoe.jsx @@ -251,7 +251,7 @@ const MainMenu = (props) => { )}
- {access_level >= 5 && ( + {access_level >= 4 && (

Core Security Protocols

diff --git a/tgui/packages/tgui/styles/interfaces/BodyPicker.scss b/tgui/packages/tgui/styles/interfaces/BodyPicker.scss new file mode 100644 index 000000000000..d60cd2112493 --- /dev/null +++ b/tgui/packages/tgui/styles/interfaces/BodyPicker.scss @@ -0,0 +1,19 @@ +.theme-crtblue { + .BodyPicker { + .Stack--horizontal > .colorPickerContainer:first-of-type { + margin-left: 6px; + } + + .typePicker { + border: 1px dotted #8ac8ff; + } + + .typePicker.active { + border: 1px solid #8ac8ff; + } + + .colorPicker.active { + outline: solid 2px #8ac8ff; + } + } +} diff --git a/tgui/packages/tgui/styles/interfaces/ChemMaster.scss b/tgui/packages/tgui/styles/interfaces/ChemMaster.scss new file mode 100644 index 000000000000..de9fcc35fa71 --- /dev/null +++ b/tgui/packages/tgui/styles/interfaces/ChemMaster.scss @@ -0,0 +1,14 @@ +.ChemMaster { + .icon { + border-radius: 4px; + border: 3px solid #484949; + } + + .icon:hover { + border: 3px solid #858585; + } + + .picker:first-of-type { + padding-left: 6px; + } +} diff --git a/tgui/packages/tgui/styles/interfaces/TacticalMap.scss b/tgui/packages/tgui/styles/interfaces/TacticalMap.scss index 84f81d62a681..35c0e36a0508 100644 --- a/tgui/packages/tgui/styles/interfaces/TacticalMap.scss +++ b/tgui/packages/tgui/styles/interfaces/TacticalMap.scss @@ -1,12 +1,11 @@ @use '../base.scss'; .TacticalMap { - position: absolute; - top: base.em(1px); + top: 0; bottom: 0; left: 0; right: 0; - margin: 0.5em; + margin: 0; text-align: center; } @@ -21,3 +20,22 @@ color: white !important; } } + +.TacticalMapDrawn { + img { + z-index: 0; + position: absolute; + margin: auto; + width: fit-content; + left: 0; + right: 0; + } + svg { + z-index: 1; + position: absolute; + margin: auto; + width: fit-content; + left: 0; + right: 0; + } +} diff --git a/tgui/packages/tgui/styles/main.scss b/tgui/packages/tgui/styles/main.scss index 7c1c65a324cc..3803da7a9237 100644 --- a/tgui/packages/tgui/styles/main.scss +++ b/tgui/packages/tgui/styles/main.scss @@ -48,6 +48,7 @@ @include meta.load-css('./components/Tooltip.scss'); // Interfaces +@include meta.load-css('./interfaces/BodyPicker.scss'); @include meta.load-css('./interfaces/Changelog.scss'); @include meta.load-css('./interfaces/ListInput.scss'); @include meta.load-css('./interfaces/CasSim.scss'); @@ -56,6 +57,7 @@ @include meta.load-css('./interfaces/CrtPanel.scss'); @include meta.load-css('./interfaces/ChooseResin.scss'); @include meta.load-css('./interfaces/CameraConsole.scss'); +@include meta.load-css('./interfaces/ChemMaster.scss'); @include meta.load-css('./interfaces/BugReportForm.scss'); @include meta.load-css('./interfaces/DropshipWeapons.scss'); @include meta.load-css('./interfaces/ElevatorControl.scss'); diff --git a/tgui/packages/tgui/styles/themes/crt.scss b/tgui/packages/tgui/styles/themes/crt.scss index 9f9436f275a3..87c0bd58ad14 100644 --- a/tgui/packages/tgui/styles/themes/crt.scss +++ b/tgui/packages/tgui/styles/themes/crt.scss @@ -99,6 +99,11 @@ $background-radial-opacity: 0.2 !default; ) ); + @include meta.load-css( + '../components/Modal.scss', + $with: ('background-color': base.$color-bg) + ); + .Layout__content { background-image: none; background: radial-gradient(