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..474cd8ca4e09 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=========================================================================== 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/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/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/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/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/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/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_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/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 08db6b4e75b9..a6f9edcf7754 100644 --- a/code/datums/keybinding/human.dm +++ b/code/datums/keybinding/human.dm @@ -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/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/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..f9907969f28d 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,23 @@ 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" + /area/desert_dam/building/substation/central name = "Command Substation" icon_state = "central_ss" + /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 +261,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 +357,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 +444,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 +464,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 +484,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 +572,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 +641,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 +684,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 +828,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 +869,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..101d9d90b832 100644 --- a/code/game/area/LV522_Chances_Claim.dm +++ b/code/game/area/LV522_Chances_Claim.dm @@ -115,6 +115,10 @@ icon_state = "green" ceiling = CEILING_NONE +/area/lv522/outdoors/colony_streets/containers + name = "Colony Streets - Container Yard" + icon_state = "yellow" + /area/lv522/outdoors/colony_streets/windbreaker name = "Colony Windbreakers" icon_state = "tcomsatcham" @@ -129,11 +133,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 +407,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..dc674259dca1 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" @@ -263,26 +277,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" diff --git a/code/game/area/prison_v3_fiorina.dm b/code/game/area/prison_v3_fiorina.dm index c02ed0310816..727e9bd8ffaa 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" @@ -41,6 +43,7 @@ icon_state = "tumor1" requires_power = 0 minimap_color = MINIMAP_AREA_SHIP + unoviable_timer = 25 MINUTES /area/fiorina/tumor/civres name = "Fiorina - Green Block Residences" @@ -74,29 +77,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 +115,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 +181,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 +193,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..1842ec8b5264 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,69 +60,78 @@ /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" @@ -147,6 +156,7 @@ /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 +175,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 +185,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,10 +229,12 @@ /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" + unoviable_timer = FALSE /area/shiva/interior/colony/deck name = "Shiva's Snowball - Colony MegaStruct(TM) Open Deck" @@ -227,6 +244,7 @@ /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 +257,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" diff --git a/code/game/area/strata.dm b/code/game/area/strata.dm index 8b1132c2dce1..6c1e589be35d 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" @@ -219,6 +233,7 @@ EXTERIOR is FUCKING FREEZING, and refers to areas out in the open and or exposed /area/strata/ag/exterior/paths/south_outpost name = "South Of The Outpost" ceiling = CEILING_NONE + linked_lz = DROPSHIP_LZ2 //////////////////////////////////////// // ------===| Interior |===------ // @@ -304,6 +319,7 @@ EXTERIOR is FUCKING FREEZING, and refers to areas out in the open and or exposed /area/strata/ag/interior/mining_outpost name = "Do not use." minimap_color = MINIMAP_AREA_MINING + linked_lz = DROPSHIP_LZ1 /area/strata/ag/interior/mining_outpost/central name = "Mining Outpost Central Hallway" @@ -347,6 +363,7 @@ 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" @@ -388,6 +405,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" @@ -472,6 +490,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 +507,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 +523,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 +544,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 +564,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/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..4d431da86a34 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(transfer_marine.job in new_squad.roles_cap) + 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/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/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 e264c9cb7f0f..77456c7cb507 100644 --- a/code/game/machinery/doors/poddoor/almayer.dm +++ b/code/game/machinery/doors/poddoor/almayer.dm @@ -37,6 +37,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 ccab929879ce..3e3101f64e8a 100644 --- a/code/game/machinery/vending/vendor_types/crew/senior_officers.dm +++ b/code/game/machinery/vending/vendor_types/crew/senior_officers.dm @@ -90,6 +90,7 @@ GLOBAL_LIST_INIT(cm_vending_clothing_chief_engineer, list( 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), @@ -489,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 ab7e3b7d4902..bd7ba7cb04dc 100644 --- a/code/game/machinery/vending/vendor_types/crew/synthetic.dm +++ b/code/game/machinery/vending/vendor_types/crew/synthetic.dm @@ -357,7 +357,6 @@ GLOBAL_LIST_INIT(cm_vending_clothing_synth_snowflake, list( 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("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/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..0abab1749252 100644 --- a/code/game/objects/effects/landmarks/landmarks.dm +++ b/code/game/objects/effects/landmarks/landmarks.dm @@ -237,6 +237,10 @@ /obj/effect/landmark/xeno_hive_spawn/Initialize(mapload, ...) . = ..() + + var/area/area = get_area(src) + area.unoviable_timer = FALSE + GLOB.xeno_hive_spawns += src /obj/effect/landmark/xeno_hive_spawn/Destroy() 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/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/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/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/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/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/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/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/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 fb82fff57708..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,7 +1312,7 @@ 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-17)", "Mask Selection", 1, 17, 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-8)", "Armor Selection", 1, 8, 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 c90aeac06d9e..56c8bb5a6418 100644 --- a/code/modules/clothing/glasses/glasses.dm +++ b/code/modules/clothing/glasses/glasses.dm @@ -551,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() @@ -632,7 +632,7 @@ 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." @@ -643,9 +643,10 @@ /obj/item/clothing/glasses/sunglasses/big name = "\improper BiMex personal shades" - desc = "These are an expensive pair of BiMex sunglasses. This brand is popular with USCM foot sloggers because its patented mirror refraction has been said to offer protection from solar radiation and targeting lasers. To top it all off, everyone seems to know a guy who knows a guy who knows a guy that had a laser pistol reflect off of his shades. BiMex came into popularity with the Marines after its 'Save the Colonies and Look Cool Doing It' ad campaign." + desc = "These are an expensive pair of BiMex sunglasses. This brand is popular with USCM foot sloggers because its patented mirror refraction has been said to offer protection from atomic flash, solar radiation, and targeting lasers. To top it all off, everyone seems to know a guy who knows a guy who knows a guy that had a laser pistol reflect off of his shades. BiMex came into popularity with the Marines after its 'Save the Colonies and Look Cool Doing It' ad campaign." icon_state = "bigsunglasses" item_state = "bigsunglasses" + eye_protection = EYE_PROTECTION_FLASH clothing_traits = list(TRAIT_BIMEX) flags_equip_slot = SLOT_EYES|SLOT_FACE flags_obj = OBJ_IS_HELMET_GARB 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 c98e254cef2c..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 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..2ce4beefedea 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 + 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 + + 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 - . = wristblades_internal(usr, FALSE) + return attachment_internal(usr, FALSE) -/obj/item/clothing/gloves/yautja/hunter/proc/wristblades_internal(mob/living/carbon/human/caller, forced = 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()) @@ -723,7 +875,7 @@ 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 f9863a1c179c..a2c36d979072 100644 --- a/code/modules/cm_preds/yaut_items.dm +++ b/code/modules/cm_preds/yaut_items.dm @@ -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" @@ -915,10 +908,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 @@ -1002,6 +997,7 @@ icon_state = null ///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_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/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 a5d92e4980dc..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 @@ -44,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) 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/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 ea32b0e5de72..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) @@ -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) @@ -1354,6 +1363,7 @@ 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) @@ -1513,6 +1523,7 @@ 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 @@ -1832,6 +1844,7 @@ 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 @@ -1994,6 +2007,7 @@ 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 @@ -2155,6 +2169,7 @@ assignment = JOB_UPP_BRIG_GENERAL rank = JOB_UPP_BRIG_GENERAL role_comm_title = "Kol." + minimap_icon = "upp_co" paygrades = list(PAY_SHORT_UO7 = JOB_PLAYTIME_TIER_0) skills = /datum/skills/upp/commander @@ -2320,6 +2335,7 @@ 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 @@ -2481,6 +2497,7 @@ 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 @@ -2642,6 +2659,7 @@ 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 92d74dea1b98..88d7305bc0a3 100644 --- a/code/modules/mob/living/carbon/human/human.dm +++ b/code/modules/mob/living/carbon/human/human.dm @@ -772,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 @@ -990,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() @@ -1350,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) 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/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/abilities/general_powers.dm b/code/modules/mob/living/carbon/xenomorph/abilities/general_powers.dm index eb7ac8bde612..7c6a99499d1e 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) @@ -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/queen/queen_abilities.dm b/code/modules/mob/living/carbon/xenomorph/abilities/queen/queen_abilities.dm index ebcd29ded29d..b93d6d848b44 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 @@ -50,11 +50,11 @@ 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 +75,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) 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/sentinel/sentinel_abilities.dm b/code/modules/mob/living/carbon/xenomorph/abilities/sentinel/sentinel_abilities.dm index fdd1164c1479..0aaf6f1270c0 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 @@ -6,7 +6,7 @@ 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 @@ -17,7 +17,7 @@ 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 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/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 b39cbbb15e7b..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) @@ -112,6 +112,6 @@ 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/hivelord/resin_whisperer.dm b/code/modules/mob/living/carbon/xenomorph/strains/castes/hivelord/resin_whisperer.dm index 2d3429df4050..11d9e7312b55 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 @@ -44,13 +44,13 @@ 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 +91,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/organs/limbs.dm b/code/modules/organs/limbs.dm index d2019f40ac00..f914924faf5f 100644 --- a/code/modules/organs/limbs.dm +++ b/code/modules/organs/limbs.dm @@ -277,6 +277,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 +371,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) 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_attachables.dm b/code/modules/projectiles/gun_attachables.dm index dc97d3452b86..2847021c4775 100644 --- a/code/modules/projectiles/gun_attachables.dm +++ b/code/modules/projectiles/gun_attachables.dm @@ -2996,9 +2996,16 @@ Defined in conflicts.dm of the #defines folder. to_chat(user, SPAN_WARNING("[src] is full.")) return - var/datum/reagent/to_remove - if(length(fuel_holder.reagents.reagent_list)) - to_remove = fuel_holder.reagents.reagent_list[1] + 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) 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 97fac52bcd40..273e225dcab1 100644 --- a/code/modules/shuttle/shuttles/dropship.dm +++ b/code/modules/shuttle/shuttles/dropship.dm @@ -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/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 64d0858fdfac..1b49cd04b155 100644 --- a/code/modules/vehicles/hardpoints/hardpoint_ammo/minigun_ammo.dm +++ b/code/modules/vehicles/hardpoints/hardpoint_ammo/minigun_ammo.dm @@ -1,7 +1,7 @@ /obj/item/ammo_magazine/hardpoint/ltaaap_minigun name = "LTAA-AP Minigun Magazine" icon = 'icons/obj/items/weapons/guns/ammo_by_faction/uscm.dmi' - desc = "A primary armament minigun magazine." + 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 = "ltaa" w_class = SIZE_LARGE //Primary weapon ammo should probably all be the same w_class 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 54d5c0b4de24..500d5bf96f76 100644 --- a/colonialmarines.dme +++ b/colonialmarines.dme @@ -132,6 +132,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" @@ -350,6 +351,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" @@ -418,6 +420,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" @@ -1003,6 +1006,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" @@ -1521,6 +1525,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" @@ -1530,6 +1535,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" @@ -1556,6 +1562,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" @@ -1862,6 +1869,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-6641.yml b/html/changelogs/AutoChangeLog-pr-6641.yml deleted file mode 100644 index cc9d6b34b37d..000000000000 --- a/html/changelogs/AutoChangeLog-pr-6641.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "Byte-Boxer" -delete-after: True -changes: - - rscadd: "Added 12 new hairstyles for marines!" \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-6808.yml b/html/changelogs/AutoChangeLog-pr-6808.yml deleted file mode 100644 index d2627f337133..000000000000 --- a/html/changelogs/AutoChangeLog-pr-6808.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "Blundir" -delete-after: True -changes: - - imageadd: "resprite of majority of attachments" \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-6907.yml b/html/changelogs/AutoChangeLog-pr-6907.yml deleted file mode 100644 index be783c740fe8..000000000000 --- a/html/changelogs/AutoChangeLog-pr-6907.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "Rem1, Mistfrag" -delete-after: True -changes: - - spellcheck: "Converts UPP Ranks to follow USSR ranks without the silly looking Latinization." \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-7048.yml b/html/changelogs/AutoChangeLog-pr-7048.yml deleted file mode 100644 index 5aaa49f318cf..000000000000 --- a/html/changelogs/AutoChangeLog-pr-7048.yml +++ /dev/null @@ -1,5 +0,0 @@ -author: "TheManWithNoHands" -delete-after: True -changes: - - 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" \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-7066.yml b/html/changelogs/AutoChangeLog-pr-7066.yml deleted file mode 100644 index 5d530c84a4a1..000000000000 --- a/html/changelogs/AutoChangeLog-pr-7066.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "Zenith00000" -delete-after: True -changes: - - imageadd: "replaced some old icons from floors.dmi" \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-7150.yml b/html/changelogs/AutoChangeLog-pr-7150.yml deleted file mode 100644 index f6d6fab7a375..000000000000 --- a/html/changelogs/AutoChangeLog-pr-7150.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "deathrobotpunch" -delete-after: True -changes: - - balance: "more items have been added to the arcade machine prize pool." \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-7237.yml b/html/changelogs/AutoChangeLog-pr-7237.yml deleted file mode 100644 index b2d00c593680..000000000000 --- a/html/changelogs/AutoChangeLog-pr-7237.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "cuberound" -delete-after: True -changes: - - balance: "splints act as and look like nanosplints in faction clash" \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-7286.yml b/html/changelogs/AutoChangeLog-pr-7286.yml deleted file mode 100644 index c5d87d4b7c10..000000000000 --- a/html/changelogs/AutoChangeLog-pr-7286.yml +++ /dev/null @@ -1,5 +0,0 @@ -author: "CapCamIII" -delete-after: True -changes: - - 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." \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-7299.yml b/html/changelogs/AutoChangeLog-pr-7299.yml deleted file mode 100644 index 144ebd9e28bf..000000000000 --- a/html/changelogs/AutoChangeLog-pr-7299.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "VileBeggar" -delete-after: True -changes: - - 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." \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-7304.yml b/html/changelogs/AutoChangeLog-pr-7304.yml deleted file mode 100644 index 02faba42908d..000000000000 --- a/html/changelogs/AutoChangeLog-pr-7304.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "Ansekishoku" -delete-after: True -changes: - - rscadd: "Added 4 new hairs to the game." \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-7305.yml b/html/changelogs/AutoChangeLog-pr-7305.yml deleted file mode 100644 index ddce1c2be74b..000000000000 --- a/html/changelogs/AutoChangeLog-pr-7305.yml +++ /dev/null @@ -1,6 +0,0 @@ -author: "thevandie" -delete-after: True -changes: - - rscadd: "Fiorina Corporate Liaison" - - rscadd: "Kutjevo Corporate Liaison" - - rscadd: "WY Headsets to WY roles on Fiorina" \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-7313.yml b/html/changelogs/AutoChangeLog-pr-7313.yml deleted file mode 100644 index e60008229d6d..000000000000 --- a/html/changelogs/AutoChangeLog-pr-7313.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "VileBeggar" -delete-after: True -changes: - - 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." \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-7318.yml b/html/changelogs/AutoChangeLog-pr-7318.yml deleted file mode 100644 index 7a12250b19a5..000000000000 --- a/html/changelogs/AutoChangeLog-pr-7318.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "BlackCrystalic" -delete-after: True -changes: - - bugfix: "Now ejecting chambered bullet from smartgun drop /datum/ammo/bullet/smartgun type bullet only" \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-7321.yml b/html/changelogs/AutoChangeLog-pr-7321.yml deleted file mode 100644 index e609681bdc12..000000000000 --- a/html/changelogs/AutoChangeLog-pr-7321.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "BlackCrystalic" -delete-after: True -changes: - - bugfix: "Underbarel flamer no more can drain fuel from empty tanks" \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-7325.yml b/html/changelogs/AutoChangeLog-pr-7325.yml deleted file mode 100644 index 5803631d1b94..000000000000 --- a/html/changelogs/AutoChangeLog-pr-7325.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "BlackCrystalic" -delete-after: True -changes: - - bugfix: "No more multiple surgeries on same operation table for 2x and more patients at same time" \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-7334.yml b/html/changelogs/AutoChangeLog-pr-7334.yml deleted file mode 100644 index 01d6588be077..000000000000 --- a/html/changelogs/AutoChangeLog-pr-7334.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "BlackCrystalic" -delete-after: True -changes: - - qol: "Discord Certify only visible if you don't have linked discord acc" \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-7344.yml b/html/changelogs/AutoChangeLog-pr-7344.yml deleted file mode 100644 index 97b7bd826e35..000000000000 --- a/html/changelogs/AutoChangeLog-pr-7344.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "So-mii" -delete-after: True -changes: - - balance: "Removes flash protection from BiMex shades" \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-7350.yml b/html/changelogs/AutoChangeLog-pr-7350.yml deleted file mode 100644 index c5193e13e3f3..000000000000 --- a/html/changelogs/AutoChangeLog-pr-7350.yml +++ /dev/null @@ -1,5 +0,0 @@ -author: "TheManWithNoHands" -delete-after: True -changes: - - 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" \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-7355.yml b/html/changelogs/AutoChangeLog-pr-7355.yml deleted file mode 100644 index 7820357e17f9..000000000000 --- a/html/changelogs/AutoChangeLog-pr-7355.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "Stakeyng" -delete-after: True -changes: - - qol: "more items count as helmet accessories (Multiple glasses, walkman/cassettes/cassette pouch, playing cards, uniform patches, candle)" \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-7356.yml b/html/changelogs/AutoChangeLog-pr-7356.yml deleted file mode 100644 index 29260c809f2b..000000000000 --- a/html/changelogs/AutoChangeLog-pr-7356.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "detectivegoogle" -delete-after: True -changes: - - rscadd: "the CL now gets a briefing about the lore of the active map, assuming one has been written." \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-7359.yml b/html/changelogs/AutoChangeLog-pr-7359.yml deleted file mode 100644 index ac615febdbd3..000000000000 --- a/html/changelogs/AutoChangeLog-pr-7359.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "Comxy" -delete-after: True -changes: - - bugfix: "Fixes wall damage multipliers from reflecting to mobs." \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-7360.yml b/html/changelogs/AutoChangeLog-pr-7360.yml deleted file mode 100644 index 6e74322fa41e..000000000000 --- a/html/changelogs/AutoChangeLog-pr-7360.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "harryob" -delete-after: True -changes: - - bugfix: "fixes being able to use hotkeys for humans when you're a dead human" \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-7364.yml b/html/changelogs/AutoChangeLog-pr-7364.yml deleted file mode 100644 index b0ca56020860..000000000000 --- a/html/changelogs/AutoChangeLog-pr-7364.yml +++ /dev/null @@ -1,8 +0,0 @@ -author: "Drdodo" -delete-after: True -changes: - - 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" \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-7366.yml b/html/changelogs/AutoChangeLog-pr-7366.yml deleted file mode 100644 index 730b718fecbb..000000000000 --- a/html/changelogs/AutoChangeLog-pr-7366.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "Blundir" -delete-after: True -changes: - - rscadd: "adds unique APOLLO pda to CE vendor" \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-7369.yml b/html/changelogs/AutoChangeLog-pr-7369.yml deleted file mode 100644 index 78aa3af3aab5..000000000000 --- a/html/changelogs/AutoChangeLog-pr-7369.yml +++ /dev/null @@ -1,5 +0,0 @@ -author: "Katskan" -delete-after: True -changes: - - rscadd: "Pen light added to synthetic points vendor" - - rscdel: "Removed stethoscope from the clothing vendor, left the one in the points vendor" \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-7374.yml b/html/changelogs/AutoChangeLog-pr-7374.yml deleted file mode 100644 index 4adc9b093469..000000000000 --- a/html/changelogs/AutoChangeLog-pr-7374.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "Red-byte3D" -delete-after: True -changes: - - code_imp: "Praetorian one letter vars begone" \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-7378.yml b/html/changelogs/AutoChangeLog-pr-7378.yml deleted file mode 100644 index d5a3c1224f0e..000000000000 --- a/html/changelogs/AutoChangeLog-pr-7378.yml +++ /dev/null @@ -1,5 +0,0 @@ -author: "Nomoresolvalou, Thwomper" -delete-after: True -changes: - - rscadd: "Added 1 new hunter armor and 5 new hunter masks" - - imageadd: "Added sprites for the new cosmetics, made by Thwomper" \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-7379.yml b/html/changelogs/AutoChangeLog-pr-7379.yml deleted file mode 100644 index d904b367354e..000000000000 --- a/html/changelogs/AutoChangeLog-pr-7379.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "efzapa" -delete-after: True -changes: - - balance: "Escape Pods can no longer be burrowed into or tunneled." \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-7382.yml b/html/changelogs/AutoChangeLog-pr-7382.yml deleted file mode 100644 index 1ed98b65f5bf..000000000000 --- a/html/changelogs/AutoChangeLog-pr-7382.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "Killfish" -delete-after: True -changes: - - qol: "Paralyzing Slash now makes you slash regardless of intent for the duration of the buff." \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-7384.yml b/html/changelogs/AutoChangeLog-pr-7384.yml deleted file mode 100644 index 111f0e67ba9d..000000000000 --- a/html/changelogs/AutoChangeLog-pr-7384.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "Red-byte3D" -delete-after: True -changes: - - code_imp: "fix warrior single letter wars" \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-7385.yml b/html/changelogs/AutoChangeLog-pr-7385.yml deleted file mode 100644 index 7ba9304d75b5..000000000000 --- a/html/changelogs/AutoChangeLog-pr-7385.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "cuberound" -delete-after: True -changes: - - rscadd: "flag for HvH to turn all internal bleeding into normal one" \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-7387.yml b/html/changelogs/AutoChangeLog-pr-7387.yml deleted file mode 100644 index 8132cdf9bfd2..000000000000 --- a/html/changelogs/AutoChangeLog-pr-7387.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "kiVts" -delete-after: True -changes: - - bugfix: "Dropships notify about hostile xeno flying on them again." \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-7394.yml b/html/changelogs/AutoChangeLog-pr-7394.yml deleted file mode 100644 index b22675e23d27..000000000000 --- a/html/changelogs/AutoChangeLog-pr-7394.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "Blundir" -delete-after: True -changes: - - bugfix: "fixes double bun hairstyle overriding normal bun hairstyle" \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-7424.yml b/html/changelogs/AutoChangeLog-pr-7424.yml new file mode 100644 index 000000000000..ec3e71d89263 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-7424.yml @@ -0,0 +1,5 @@ +author: "efzapa" +delete-after: True +changes: + - 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." \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-7427.yml b/html/changelogs/AutoChangeLog-pr-7427.yml new file mode 100644 index 000000000000..c4ef1f51f8fe --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-7427.yml @@ -0,0 +1,10 @@ +author: "thevandie" +delete-after: True +changes: + - 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" \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-7487.yml b/html/changelogs/AutoChangeLog-pr-7487.yml new file mode 100644 index 000000000000..c7089bcf10d5 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-7487.yml @@ -0,0 +1,4 @@ +author: "BOBAMA" +delete-after: True +changes: + - balance: "You can now go on Ovi and build Hive Cores anywhere in the Atmospheric Processor on Chance's Claim" \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-7490.yml b/html/changelogs/AutoChangeLog-pr-7490.yml new file mode 100644 index 000000000000..a9d6b7594c3b --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-7490.yml @@ -0,0 +1,4 @@ +author: "detectivegoogle Drathek" +delete-after: True +changes: + - balance: "Morphers generate huggers twice as fast if queen is on ovi" \ No newline at end of file diff --git a/html/changelogs/archive/2024-10.yml b/html/changelogs/archive/2024-10.yml index 8214dfc8245d..c159768eaf68 100644 --- a/html/changelogs/archive/2024-10.yml +++ b/html/changelogs/archive/2024-10.yml @@ -211,3 +211,239 @@ 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..9b7fe5840749 --- /dev/null +++ b/html/changelogs/archive/2024-11.yml @@ -0,0 +1,115 @@ +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 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/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 da115d4c5d79..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 84b32921dbe7..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/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/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/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 b63cffee2f78..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) @@ -47965,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, @@ -48499,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, @@ -49085,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" @@ -49534,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, @@ -49635,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) @@ -49767,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{ @@ -50281,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, @@ -50752,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{ @@ -56266,9 +56318,9 @@ crx dlM crx crx -crx +tIJ dFo -doE +rSC doE cDb cGS @@ -57434,11 +57486,11 @@ crx crx crx dlM -crx +tIJ crx crx dFo -doE +pAn doE alh cMC @@ -57670,7 +57722,7 @@ cMJ cUk crx crx -crx +trD dFo doE doE @@ -57686,7 +57738,7 @@ cDX cDX cDX cDX -cDX +niQ cDX cDX cDX @@ -57929,7 +57981,7 @@ djl djl djl djl -djl +xMh djl djl djl @@ -58386,7 +58438,7 @@ vGu dws bhp mfH -bhp +dWU bhp mfH bhp @@ -58401,7 +58453,7 @@ vGu dws dws vGu -dws +uli dws dws tlh @@ -58606,7 +58658,7 @@ doE cAV cuJ cuJ -cuJ +kcc cuJ cuJ cuJ @@ -58629,7 +58681,7 @@ djk djk djk djk -djk +wkI djk djk eCk 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..82defc080934 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" @@ -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,6 +5816,13 @@ }, /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) @@ -5930,6 +5935,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, @@ -6125,6 +6134,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 +6208,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 +6232,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 +6285,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 +6372,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 +6437,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 +6548,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, @@ -6654,10 +6675,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 +6747,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 +6790,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 +6816,14 @@ }, /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) "cwU" = ( /obj/effect/decal/warning_stripes{ icon_state = "W-corner" @@ -7130,6 +7163,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 +7227,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,6 +7365,13 @@ "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, @@ -7367,6 +7419,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, @@ -7465,6 +7526,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 +7543,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 +7679,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 +7752,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 +7769,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 +7790,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 +7806,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" @@ -7944,6 +8034,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 +8057,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 +8111,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 +8133,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 +8253,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 +8294,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 +8347,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 +8365,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 +8558,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 +8590,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 +8602,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 +8650,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 +8738,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; @@ -8677,6 +8784,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 +8919,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 +8963,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 +9116,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 +9292,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 +9581,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 +9605,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, @@ -9584,11 +9709,6 @@ /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 @@ -9677,16 +9797,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 +9899,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 +9940,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 +9954,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 +9964,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 +10014,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 +10101,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 +10305,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 +10359,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 +10386,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 +10403,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 +10633,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 +10686,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 +10733,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) @@ -10623,6 +10756,10 @@ }, /turf/open/floor/shiva/multi_tiles, /area/shiva/interior/colony/research_hab) +"hzh" = ( +/obj/effect/landmark/structure_spawner/setup/distress/xeno_weed_node, +/turf/open/floor/shiva/north, +/area/shiva/interior/colony/deck) "hzJ" = ( /turf/closed/wall/shiva/prefabricated/reinforced, /area/shiva/exterior/lz1_valley) @@ -10776,6 +10913,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 +10948,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 +11170,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{ @@ -11183,6 +11320,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, @@ -11221,6 +11362,10 @@ /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 +11555,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 +11588,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, @@ -11682,12 +11837,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 +11895,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; @@ -11770,14 +11913,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 +11952,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) @@ -12027,12 +12164,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 +12179,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 +12235,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) @@ -12266,6 +12395,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 +12651,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 +12664,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 +12749,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,6 +12815,12 @@ /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, @@ -12684,13 +12841,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 +12868,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, @@ -12758,13 +12912,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 +13051,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, @@ -12958,13 +13099,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 +13181,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, @@ -13423,6 +13565,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 +13589,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) @@ -13676,6 +13830,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 +13928,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 +13985,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, @@ -13861,6 +14017,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 +14167,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 +14196,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 +14231,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/interior/aerodrome) "lyh" = ( /obj/item/lightstick/red/spoke/planted{ layer = 2.99; @@ -14096,6 +14268,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 +14401,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 +14421,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 +14449,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 @@ -14280,12 +14474,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 +14596,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 +14641,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 +14689,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 +14723,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 +14756,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 +14789,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 +14861,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, @@ -14840,13 +15043,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/deck) "myR" = ( /obj/structure/prop/invuln/ice_prefab/trim{ dir = 8 @@ -14975,6 +15175,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 +15351,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; @@ -15392,11 +15602,6 @@ /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" @@ -15518,6 +15723,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 +15833,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 +15978,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) @@ -15922,6 +16132,12 @@ }, /turf/open/auto_turf/ice/layer1, /area/shiva/interior/caves/cp_camp) +"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 +16249,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 +16259,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 +16379,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 +16425,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 +16512,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 +16650,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 +16700,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 +16793,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 +16818,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 +16883,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 +16895,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 +16990,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) @@ -16934,6 +17180,13 @@ }, /turf/open/floor/shiva/north, /area/shiva/interior/colony/deck) +"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 +17548,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 +17563,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, @@ -17429,6 +17682,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 +17767,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{ @@ -17615,6 +17868,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, @@ -17798,6 +18055,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, @@ -18119,10 +18380,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 +18433,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 +18504,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 @@ -18312,6 +18578,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 @@ -18528,6 +18801,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 +18927,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 +18962,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 +19033,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 +19051,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 +19145,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, @@ -19049,10 +19354,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 +19373,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 +19501,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 +19604,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 +19619,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 +19737,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, @@ -19591,6 +19906,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/deck) "sxT" = ( /obj/structure/flora/grass/tallgrass/ice, /turf/open/auto_turf/snow/layer0, @@ -19626,12 +19945,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; @@ -19875,6 +20188,17 @@ }, /turf/open/floor/plating, /area/shiva/interior/colony/deck) +"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 +20212,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 +20292,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{ @@ -20140,6 +20474,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{ @@ -20294,19 +20633,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 @@ -20469,6 +20795,13 @@ }, /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 +20946,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 +20999,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 +21064,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 +21152,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 +21222,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 +21533,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 +21627,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 +21640,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; @@ -21362,12 +21715,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 +21770,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 +21812,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 +21848,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 +21878,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 @@ -21778,6 +22150,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 +22293,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 +22450,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; @@ -22098,15 +22481,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 +22502,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 +22517,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 +22607,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{ @@ -22718,6 +23107,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 +23128,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) @@ -23062,16 +23459,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, @@ -23397,6 +23784,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 +23882,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 +23902,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 +23978,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, @@ -23846,6 +24223,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 +24237,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 +26740,7 @@ mFm mFm uRn mFm -mFm +ouY xYx mFm nNd @@ -26424,7 +26812,7 @@ aFO aFO aFO aFO -aFO +vAv xAS oRH oRH @@ -26516,7 +26904,7 @@ mFm fOE mFm mFm -mFm +ouY mFm xYx mFm @@ -26588,7 +26976,7 @@ elf too xAS oRH -aFO +vAv aFO xAS aFO @@ -26746,7 +27134,7 @@ aFO aFO xAS xAS -oRH +uBt uIO oRH oRH @@ -26842,7 +27230,7 @@ mFm mFm mFm xYx -mFm +ouY mFm caS caS @@ -27753,7 +28141,7 @@ iQq kLM kLM uqb -kLM +jtc uqb puZ puZ @@ -28074,7 +28462,7 @@ cQW cQW iQq iQq -iQq +fDx kLM kLM ath @@ -28400,7 +28788,7 @@ kLM cQW iQq kLM -kLM +jtc wgM kLM ath @@ -28623,7 +29011,7 @@ wgX mFm mFm mFm -aWb +eQr hlO jMD caS @@ -28943,7 +29331,7 @@ mhP mFm wMj wMj -iuK +mbd mFm kEh jMD @@ -29081,7 +29469,7 @@ mFm mFm mFm mFm -mFm +dkY mFm mFm mFm @@ -29093,7 +29481,7 @@ iuK mFm mFm mFm -mFm +lJv mFm mFm mFm @@ -29179,10 +29567,10 @@ tlB tlB hBq tlB -tlB +bqz tlB xAS -aFO +jYX tlB xAS tlB @@ -29240,17 +29628,17 @@ caS caS mFm mFm +dkY mFm mFm mFm mFm mFm +dkY mFm mFm mFm -mFm -mFm -iuK +tMv iuK mFm mFm @@ -29259,7 +29647,7 @@ mFm mFm mFm mFm -mFm +lJv mFm mFm mFm @@ -29272,7 +29660,7 @@ ftm umj hjx vOd -slj +ihk mFm hlO kAp @@ -29668,7 +30056,7 @@ aFO aFO xAS tlB -tlB +bqz tlB xAS aFO @@ -30009,11 +30397,11 @@ kLM iQq iQq iQq +crJ iQq iQq iQq -iQq -iQq +crJ kLM kLM qoU @@ -30168,7 +30556,7 @@ kLM knI iQq iQq -iQq +crJ iQq iQq iQq @@ -30488,20 +30876,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 +31037,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 +31199,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 +31361,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 +31523,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 +31685,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 +31847,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 +32009,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 +32171,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 +32333,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 +32495,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 +32657,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 +32823,13 @@ iMA iMA iMA uKZ -ehV -ofw -aQJ -kyD -kyD -tHd -kop +uGs +dKD +pHd +hbY +hbY +aJt +qDh huz cio ieD @@ -32597,13 +32985,13 @@ ohq mKB cLq iMA -avx -voo -tHd -kyD -kyD -tHd -tpg +jUM +vou +aJt +hbY +hbY +aJt +wme exX qIr azS @@ -32759,13 +33147,13 @@ pvv fRg xQa iMA -avx -kop -tHd -kyD -kyD -tHd -tpg +jUM +qDh +aJt +hbY +hbY +aJt +wme exX alW arW @@ -32921,13 +33309,13 @@ pvv fRg uKZ uKZ -vqV -tHd -tHd -kyD -kyD -kyD -tHd +ecg +aJt +aJt +hbY +hbY +hbY +aJt huz pJM ayZ @@ -33083,13 +33471,13 @@ khz fRg iMA nIA -scp -tHd -kyD -kyD -tHd -kyD -kyD +tOX +aJt +hbY +hbY +aJt +hbY +hbY huz aQq axJ @@ -33245,13 +33633,13 @@ pvv oCG kjM oCG -kyD -kyD -kyD -tHd -ofw -tHd -kyD +hbY +hbY +hbY +aJt +dKD +aJt +hbY huz huz avz @@ -33407,14 +33795,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 +33957,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 +34119,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 +34281,13 @@ ftr obb vHX iMA -ehV -tHd -kyD -kyD -tHd -kop -kop +uGs +aJt +hbY +hbY +aJt +qDh +qDh huz huz auh @@ -34055,13 +34443,13 @@ bKV krm iXx iMA -ehV -kop -tHd -kyD -nAs -kop -ajE +uGs +qDh +aJt +hbY +gZn +qDh +qXQ huz qSW arZ @@ -34217,13 +34605,13 @@ iMA iMA iMA uKZ -ehV -kop -tHd -kyD -kyD -tHd -ajd +uGs +qDh +aJt +hbY +hbY +aJt +cWI huz fjS anJ @@ -34375,16 +34763,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 +34925,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 +35087,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 +35249,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 +35411,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 +35573,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 +35735,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 +35897,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 +36059,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 +36221,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 +36383,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 +36545,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 +36707,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 +36860,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 +37022,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 +37184,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 +37346,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 +37508,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 +37670,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 +37832,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 +37997,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 +38161,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 +38324,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 +38487,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 +38650,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 +38813,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 +38977,13 @@ kyD kyD kyD jMf -jMf -kop -kop -jMf -kop -kop -tHd +saY +qDh +qDh +saY +qDh +qDh +aJt jMf jMf jMf @@ -48136,10 +48524,10 @@ pLf asz asz asz -ndb -pCI -gmV -vTc +bBx +oIT +kLL +aXD asz asz asz @@ -48173,7 +48561,7 @@ gpz gpz bJj bJj -bJj +efO gpz bJj bJj @@ -48298,11 +48686,11 @@ pLf asz crF aXH -tHD +wli crF crF tHD -uEx +qKB crF fNE qud @@ -48329,7 +48717,7 @@ jrg jrg bJj bJj -gpz +cux gpz gpz gpz @@ -48511,7 +48899,7 @@ puZ (152,1,1) = {" acH acT -ajO +nrt ajO acT agt @@ -48622,10 +49010,10 @@ pLf asz asz asz -tpL -orO -orO -tJY +sNk +iNt +iNt +usQ asz asz asz @@ -48814,16 +49202,16 @@ jrg amu amu amu -bJj -fXX -gpz -bJj -bJj +ean +gWc +jMB +ean +oEA jrg jrg -bJj -gpz -osE +ean +jMB +lsR sax sax sax @@ -49140,13 +49528,13 @@ fXX fXX osE osE -gpz +cux gpz jrg jrg bJj bJj -osE +dIE osE sax sax @@ -49270,17 +49658,17 @@ asz aUX aWB gTU -wnK +pCj wnK wnK aXH rZt -rZt +dAt rZt asz asz rZt -rZt +dAt hCY hCY fNE @@ -49646,7 +50034,7 @@ puZ acH acT aQX -ajO +nrt acT agA aoK @@ -49785,14 +50173,14 @@ jrg jrg amu fXX -fXX +vtf amu jrg bJj gpz bJj bJj -bJj +efO osE bJj amu @@ -49811,7 +50199,7 @@ ajO ajO acT aoK -aoK +ifI aoK aoK apj @@ -49978,11 +50366,11 @@ aoK aoK acT iJY +aff agh agh agh -agh -kbJ +aqz agh agh xbP @@ -50272,7 +50660,7 @@ amu lAb fXX fXX -fXX +vtf fXX fXX fXX @@ -50404,7 +50792,7 @@ asz rZt rZt rZt -gGf +gCe bDx asz kXt @@ -50576,7 +50964,7 @@ rZt asz asz hLB -rZt +dAt rZt asz asz @@ -50617,7 +51005,7 @@ puZ (165,1,1) = {" acH acT -aKq +uFi ajO acT aim @@ -50788,7 +51176,7 @@ agh anR acT iJY -agh +aff agh axG aek @@ -50919,7 +51307,7 @@ rAH ukp kVd uzu -ukp +xUA ukp jrg amu @@ -51201,7 +51589,7 @@ kaC kaC xHv xHv -xHv +lxD xHv wXs lSU @@ -51209,12 +51597,12 @@ lSU tSI rZt gLv -rZt +dAt gLv afF wBf wnK -dTU +wFB wnK asz kbZ @@ -51253,7 +51641,7 @@ bJj bJj amu gpz -gpz +cux amu amu fXX @@ -51269,7 +51657,7 @@ ajO ajO aSa maW -maW +hdF agh nfg acT @@ -51436,7 +51824,7 @@ agh nfg acT iJY -agh +aff agh axG acT @@ -51572,7 +51960,7 @@ xgc bJj bJj bJj -bJj +efO bJj fXX osE @@ -51605,12 +51993,12 @@ acT ajO aDn cbt -agh +aff agh bFC umm agh -hqC +uIx hqC agh uXQ @@ -51726,7 +52114,7 @@ uzu ukp xgc ukp -ukp +xUA ukp pLf ukp @@ -51751,7 +52139,7 @@ puZ (172,1,1) = {" acH anq -bVS +xyi acT afx agh @@ -51779,13 +52167,13 @@ uXQ fkb agh agh -agh +aff agh agh fkb sYu sYu -sYu +alG sYu sYu sYu @@ -51855,7 +52243,7 @@ bme lSU twi flN -flN +pOn flN kEs kEs @@ -52017,7 +52405,7 @@ mIL uIE flN flN -flN +eSo flN flN eit @@ -52025,16 +52413,16 @@ kEs kEs flN rMI -dTU +wFB dTU rMI goj chU -goj +hFk chU chU chU -goj +hFk chU aiD asz @@ -52079,11 +52467,11 @@ ajV aDn aDn agh -maW +hdF maW ajO iJY -agh +aff agh agh axG @@ -52176,14 +52564,14 @@ oQl oQl mIL fQX -gaz +aRa uIE flN -flN -gCL +eSo +jQi flN kEs -flN +mEQ flN vTc rMI @@ -52217,7 +52605,7 @@ ukp bJj bJj bJj -gpz +cux bJj bJj bJj @@ -52249,7 +52637,7 @@ agh agh agh agh -agh +aff axG acT iEp @@ -52341,7 +52729,7 @@ ood mIL lqu flN -eit +lIA flN kEs kEs @@ -52364,7 +52752,7 @@ goj fNE aud miD -ptr +bIl ptr rZt aCB @@ -52503,7 +52891,7 @@ ood pqj vwn uIE -flN +pOn kEs flN flN @@ -52568,9 +52956,9 @@ amh aly amh acT -bdT -maW -bdT +hvd +fgj +hvd acT acT acT @@ -52659,13 +53047,13 @@ jAL jAL mIL vJu -mIL +oiy ood fQX jAL mIL lSU -uIE +oaW flN kEs agw @@ -52678,11 +53066,11 @@ lSU wOO goj chU -goj +hFk lfk rZt uII -aiD +lJf chU goj fNE @@ -52724,7 +53112,7 @@ puZ acH acT ajO -ajO +nrt aDn acT acT @@ -52893,7 +53281,7 @@ ajO ajO aSa axG -maW +hdF axG aek vhG @@ -53051,7 +53439,7 @@ cbW ajO ajO aQX -ajO +nrt ajO aDn axG @@ -53153,7 +53541,7 @@ oQl oQl lSU dwQ -eBG +tgJ dwQ dwQ elw @@ -53180,7 +53568,7 @@ asz jrg jrg jrg -osE +dIE bJj bJj bJj @@ -53191,7 +53579,7 @@ bJj bJj bJj bJj -bJj +efO gpz bJj bJj @@ -53216,14 +53604,14 @@ acT acT acT acT -tWv -axG -bdT +cwx +dEh +hvd aek cJy agh agh -agh +aff agh agh agh @@ -53232,7 +53620,7 @@ agh ahy agh agh -agh +aff uXQ acT agK @@ -53245,7 +53633,7 @@ agh uXQ ajw umm -agh +aff agh uXQ ajw @@ -53336,7 +53724,7 @@ oag asz aud rZt -rZt +dAt tiw asz jrg @@ -53481,7 +53869,7 @@ lSU lSU dwQ oaO -dwQ +fdo dwQ dwQ bXo @@ -53509,7 +53897,7 @@ bJj bJj bJj bJj -bJj +efO bJj bJj gpz @@ -53563,7 +53951,7 @@ vKx cBe cBe cBe -mfr +rps agh agh uXQ @@ -53650,11 +54038,11 @@ lSU lQm goj chU -goj +hFk dqH rZt sCl -onM +mdz chU goj fNE @@ -53681,7 +54069,7 @@ osE bJj bJj gpz -bJj +efO jrg jrg sax @@ -53703,7 +54091,7 @@ amP amU aoe bhS -amP +aeo amU aek scN @@ -53893,7 +54281,7 @@ agh feR acT aeh -agh +aff agh agh kdW @@ -54046,7 +54434,7 @@ agh uyJ acT aia -tCi +nSZ agh mah umm @@ -54293,7 +54681,7 @@ dwQ dwQ adI adj -dwQ +fdo adH lSU goj @@ -54491,7 +54879,7 @@ jrg jrg pxA flN -rZt +dAt dwQ pxA puZ @@ -54509,11 +54897,11 @@ adX bhS amP amP -amP +aeo amP aos amP -amP +aeo amP gBr aek @@ -54614,7 +55002,7 @@ ors lSU lSU dwQ -dwQ +fdo lSU ada ady @@ -54622,11 +55010,11 @@ adE lSU goj goj +hFk goj goj goj -goj -goj +hFk goj goj wnK @@ -54639,7 +55027,7 @@ bJj osE bJj bJj -gpz +cux gpz bJj bJj @@ -54686,7 +55074,7 @@ vOP mfr agh agh -agh +aff agh agh agh @@ -54791,7 +55179,7 @@ rZt kmO rZt rZt -rZt +dAt rZt rZt rZt @@ -54833,11 +55221,11 @@ adX bhS amP amP +aeo amP amP amP -amP -amP +aeo amP amU aek @@ -55024,7 +55412,7 @@ ovc aVQ qOD mms -mms +hzh mms xjg nMZ @@ -55105,7 +55493,7 @@ fgK lSU chU gAV -gAV +lAP gAV gAV gAV @@ -55343,7 +55731,7 @@ eAZ qDT acT aoK -ovc +jbr ovc acT qOD @@ -55442,7 +55830,7 @@ asz asz rZt flN -rZt +dAt dwQ flN flN @@ -55497,7 +55885,7 @@ oYw oYw gQR agh -agh +aff agh agh gQR @@ -55513,7 +55901,7 @@ dOf mms mms rDn -jVp +mxS joP mms mms @@ -55643,12 +56031,12 @@ acT axG maW axG -bhS +lmg qGq amP amP amP -amP +aeo amU knC aSi @@ -55675,7 +56063,7 @@ ljM igN igN igN -igN +sxS joP mms mms @@ -55780,14 +56168,14 @@ pxA mWE pJA wnK -mwF +fww mwF mwF mwF vKu bJi bJi -chU +rOL mwF pxA flN @@ -55801,7 +56189,7 @@ puZ (197,1,1) = {" acH axG -axG +tef axG iWa axG @@ -55814,7 +56202,7 @@ amP amU ajO aSi -aSi +oRc aSi aSi eAZ @@ -55914,7 +56302,7 @@ jDv oQl asz chU -gAV +lAP chU adT rZt @@ -56003,7 +56391,7 @@ qEC acT mms mms -mms +hzh mms mms sNi @@ -56030,7 +56418,7 @@ jAN asR atD auV -gxN +lvy gxN gxN axV @@ -56094,7 +56482,7 @@ bUe rZt chU rZt -chU +rOL dwQ wnK pxA @@ -56291,12 +56679,12 @@ dbQ amP dbQ xBo -bhS +lmg amP sHc acT xoi -amP +aeo amU aek eAZ @@ -56313,15 +56701,15 @@ acT gWF amP iNS -amP +aeo amP amP gcP acT acT wxu -bhI -pNq +hst +kkw amP amU ajO @@ -56412,7 +56800,7 @@ goj goj pxA vKu -wnK +pCj wnK cSn pxA @@ -56469,7 +56857,7 @@ oYw aDn aDn axG -axG +tef axG axG bhS @@ -56612,7 +57000,7 @@ puZ acH bhS amP -amP +aeo amP acT bhS @@ -56627,7 +57015,7 @@ eAZ eAZ oYw aSi -aSi +oRc aSi knC maW @@ -56724,13 +57112,13 @@ bgC rZt rZt chU -gAV +lAP chU rZt asz biM biM -biM +meQ goj lpA uWA @@ -56814,7 +57202,7 @@ acT wHZ amP amP -amP +aeo amP amj acT @@ -56907,7 +57295,7 @@ pxA pxA wnK wnK -wnK +pCj wnK wnK pxA @@ -56915,7 +57303,7 @@ rZt vKu vKu wnK -vKu +sQU wnK vKu wnK @@ -57226,7 +57614,7 @@ kQJ vKu wnK vKu -wnK +pCj vKu kap rZt @@ -57279,20 +57667,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 +57692,11 @@ alx amP amP acT -nSO -nSO -nSO -nSO -nSO +jLT +kqO +kqO +kqO +jLT puZ puZ puZ @@ -57401,7 +57789,7 @@ rZt vKu vKu wnK -vKu +sQU wnK vKu wnK @@ -57460,7 +57848,7 @@ aae gXS ajO ajO -ajO +nrt ajO ajO amP @@ -57468,7 +57856,7 @@ amP gXS wje nSO -kPl +fpp nSO nSO puZ @@ -57534,7 +57922,7 @@ eSt wFB dTU rZt -gAV +lAP rZt dTU asz @@ -57542,7 +57930,7 @@ asz asz asz asz -goj +hFk goj fNE chU @@ -57708,7 +58096,7 @@ biM biM fNE chU -vKu +sQU vQm pxA rZt @@ -57746,7 +58134,7 @@ puZ acH acT afm -amP +aeo amU axG axG @@ -57757,7 +58145,7 @@ tef axG okM axG -axG +tef axG axG axG @@ -57861,7 +58249,7 @@ goj goj djO goj -wnK +pCj rZt rZt fNE @@ -57874,7 +58262,7 @@ wnK vFX pxA iQe -qaF +nlt chU kyu drx @@ -58042,7 +58430,7 @@ gFb sfM oHF wnK -wnK +pCj wnK pxA lYG @@ -58116,7 +58504,7 @@ nSO nSO kPl kPl -nSO +bMW wje kPl puZ @@ -58269,7 +58657,7 @@ nSO aDw kPl kPl -kPl +fpp kPl nSO nSO @@ -58352,12 +58740,12 @@ rZt vKu vKu vKu -vKu +sQU vKu vKu vKu toN -vKu +sQU vKu dgF hEE @@ -58413,7 +58801,7 @@ axG mKf wje wje -nSO +bMW nSO kPl kPl @@ -58570,7 +58958,7 @@ amP amP gXS amU -amP +aeo gXS fjs aah @@ -58584,7 +58972,7 @@ aOu nSO kPl kPl -nSO +bMW nSO nSO nSO @@ -58598,7 +58986,7 @@ nSO kPl kPl kPl -nSO +bMW nSO nSO kPl @@ -58667,11 +59055,11 @@ oQl asz tqs rZt -goj +hFk rZt fHM goj -wnK +pCj rZt vKu wnK @@ -58859,13 +59247,13 @@ euA euA bJi euA -euA +tPu euA euA bJi bJi chU -mwF +fww rZt twi kue @@ -58880,7 +59268,7 @@ puZ acH acT aga -amP +aeo amU axG amP @@ -58891,7 +59279,7 @@ hms hms hms hms -cnk +vei amP bhI gXS @@ -59015,7 +59403,7 @@ pxA pxA bJi rZt -dTU +wFB dTU dTU dTU @@ -59066,7 +59454,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 a91c0373595c..14a0d7f584a7 100644 --- a/maps/map_files/LV624/LV624.dmm +++ b/maps/map_files/LV624/LV624.dmm @@ -11122,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, @@ -13723,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, @@ -15489,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, @@ -15816,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, @@ -17506,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, @@ -17821,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) @@ -18614,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, @@ -19145,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) @@ -20034,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, @@ -27834,7 +27873,7 @@ aJF aJF uRE uRE -uRE +viY uRE uRE aJF @@ -28060,7 +28099,7 @@ uzH uzH uzH uzH -uzH +iJK uzH uzH uzH @@ -28522,7 +28561,7 @@ aRg aRg aCi aRg -odw +twz aRg wLz tZD @@ -28751,7 +28790,7 @@ aRg aKO aRg aEw -aRg +qnh wLz tZD aAp @@ -29664,7 +29703,7 @@ aRg aRg aEw aRg -wLz +qUL gef mxW oOf @@ -30119,7 +30158,7 @@ aRg aRg aRg aZT -aRg +qnh wLz lUb tZD @@ -31692,7 +31731,7 @@ aAp nmO aZP aDv -aDv +nfi aDv aRx aXX @@ -31710,7 +31749,7 @@ aDv aDv aDv aOB -wHp +sBp wLz aDv tZD @@ -32153,12 +32192,12 @@ aDv aRx aXX aXX -aXX +dkq aXX aXX azD aEs -aDv +mpW aDv aDv aRx @@ -32616,7 +32655,7 @@ aXX aZP aDv aCI -aDv +mpW aRx twg aXX @@ -32842,7 +32881,7 @@ ado aXX aXX aZP -aDv +nfi aDv aDv aRx diff --git a/maps/map_files/New_Varadero/New_Varadero.dmm b/maps/map_files/New_Varadero/New_Varadero.dmm index 02f546e52bda..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"; @@ -24555,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 @@ -24585,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; @@ -24612,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) @@ -24919,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, @@ -24999,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, @@ -25094,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, @@ -25387,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, @@ -25440,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 @@ -25850,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 @@ -25897,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, @@ -25948,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 @@ -25981,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 @@ -26082,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, @@ -26105,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; @@ -26416,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, @@ -26580,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 @@ -26638,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"; @@ -26867,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 @@ -26950,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, @@ -26972,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{ @@ -27342,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, @@ -27584,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 @@ -27616,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 @@ -28011,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, @@ -28395,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; @@ -28442,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; @@ -28521,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) @@ -28646,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 @@ -29080,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) @@ -29362,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, @@ -29594,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" @@ -29682,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{ @@ -29900,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 @@ -29970,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, @@ -30196,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{ @@ -30210,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{ @@ -30321,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, @@ -30657,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, @@ -30727,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, @@ -31990,9 +32146,9 @@ xCn oPQ xCn cBI -xCn -xCn -ljt +jQa +jQa +vmC pGs pGs pGs @@ -32172,10 +32328,10 @@ xCn oPQ xCn cBI -xCn -oPQ -oPQ -xCn +jQa +rgz +rgz +jQa pGs pGs pGs @@ -32354,12 +32510,12 @@ xCn srg xCn cBI -xCn -xCn -oPQ -kAL -xCn -fHk +jQa +jQa +rgz +qwE +jQa +abL jQa jQa jQa @@ -32536,12 +32692,12 @@ srg srg xCn fzc -xCn -oVt -xCn -xCn -kAL -xCn +jQa +uCG +jQa +jQa +qwE +jQa gxQ jQa jQa @@ -32718,12 +32874,12 @@ tqh tqh tqh uJT -srg -xCn -xCn -xCn -xCn -xCn +geo +jQa +jQa +jQa +jQa +jQa jQa jQa jQa @@ -32900,12 +33056,12 @@ mEA sBk ksn pGc -srg -xCn -xCn -xCn -xCn -xCn +geo +jQa +jQa +jQa +jQa +jQa jQa jQa jQa @@ -33082,12 +33238,12 @@ aJc hDA xrA pGc -srg -xCn -xCn -xCn -xCn -xCn +geo +jQa +jQa +jQa +jQa +jQa jQa jQa jQa @@ -33264,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 @@ -33446,12 +33602,12 @@ gwC odD rjE fay -qul -qul -uHY -xCn -xCn -srg +pGs +pGs +gxQ +jQa +vYW +neq vYW vYW vYW @@ -33629,8 +33785,8 @@ ftA fay fay fay -ebr -ebr +pGs +pGs pKK vYW loA @@ -33811,8 +33967,8 @@ hBX eEY xhx fay -ebr -ebr +pGs +pGs vYW vYW hto @@ -33993,9 +34149,9 @@ eWR oXi gEy fay -ebr -ebr -ebr +pGs +pGs +pGs vYW vYW vYW @@ -34175,9 +34331,9 @@ izs oyi wvI fay -ebr -ebr -ebr +pGs +pGs +pGs vYW vYW uQa @@ -34357,8 +34513,8 @@ ltW qQF okB fay -ebr -ebr +pGs +pGs vYW vYW uQa @@ -34539,7 +34695,7 @@ ltW qQF eXr fay -ebr +pGs vYW neq vYW @@ -41565,11 +41721,11 @@ wMw wMw wMw wMw +tkY wMw wMw wMw -wMw -wMw +tkY wMw kME wMw @@ -41932,15 +42088,15 @@ wMw wMw wMw wMw -wMw +tkY wMw wMw nFB wMw sIQ +lni wMw -wMw -wMw +lni wMw oJm hyr @@ -42304,7 +42460,7 @@ wMw wMw wMw wMw -wMw +lni sTT bgE jTL @@ -44669,7 +44825,7 @@ miF mrC wMw wMw -wMw +hHz wMw xVQ kyz @@ -45190,15 +45346,18 @@ fZB asx wMw wMw +rwO wMw wMw wMw wMw +rwO wMw wMw wMw wMw wMw +rwO wMw wMw wMw @@ -45207,10 +45366,7 @@ wMw wMw wMw wMw -wMw -wMw -wMw -wMw +hHz wMw wMw mrC @@ -50156,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 @@ -50338,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 @@ -50520,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 @@ -50703,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 @@ -50884,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 @@ -51069,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 @@ -51251,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 @@ -51433,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 @@ -51617,14 +51773,14 @@ wOO wOO kBZ kBZ -ryD -ryD -ryD -ryD +aNT +aNT +aNT +aNT lDm -xJZ +kkT joV -ryD +aNT kBZ hPj wVf @@ -51800,12 +51956,12 @@ wOO kBZ kBZ kBZ -ryD +aNT kBZ -wqb +rVG smE -xJZ -ryD +kkT +aNT jeW joV hPj @@ -51984,12 +52140,12 @@ kBZ kBZ kBZ kBZ -wqb -viK -xJZ -ryD -ryD -ryD +rVG +jcl +kkT +aNT +aNT +aNT wVf wVf rpT @@ -52166,12 +52322,12 @@ hlp kBZ kBZ kBZ -wqb -viK -xJZ -ryD -ryD -ryD +rVG +jcl +kkT +aNT +aNT +aNT sPs cYa lVB @@ -52347,13 +52503,13 @@ tlT mQh kBZ kBZ -ryD +aNT hcI -wXs -xJZ -ryD -ryD -ryD +qnl +kkT +aNT +aNT +aNT sPs etE swi @@ -52528,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 @@ -52711,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 @@ -52893,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 @@ -53078,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 @@ -53259,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 @@ -53441,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 @@ -53623,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 @@ -53806,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 @@ -53987,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 @@ -54169,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 @@ -54353,16 +54509,16 @@ rrr wOO fga uwJ -xJZ -viK -kbQ +kkT +jcl +aNT kbQ qIF kbQ qIF uet eyt -wqb +ouy rpd viK xJZ @@ -54534,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 @@ -54572,7 +54728,7 @@ eyt eyt eyt wqb -xJZ +xNc viK xJZ xJZ @@ -54715,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 @@ -54848,10 +55004,10 @@ wlB aQN wlB wlB -bbK +vbK wlB iQr -iQr +caE bSQ qNu wlB @@ -54897,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 @@ -55079,10 +55235,10 @@ kBZ kBZ kBZ kBZ -wqb -rDD -xJZ -viK +rVG +wkL +kkT +jcl stw ouy kbQ @@ -55090,7 +55246,7 @@ kbQ kbQ eyt eyt -wqb +ouy rDD viK gha @@ -55197,7 +55353,7 @@ wlB wlB lTg wlB -wlB +knR wlB wlB jwX @@ -55261,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 @@ -55373,7 +55529,7 @@ dYd wlB kAH lTg -wlB +knR wlB wlB wlB @@ -55383,7 +55539,7 @@ wlB lTg wlB wlB -mdg +hIt wlB beK cVq @@ -55443,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 @@ -55626,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 @@ -55761,7 +55917,7 @@ wlB wlB tfc tCV -iQr +caE wlB ghW wlB @@ -55802,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 @@ -55950,7 +56106,7 @@ wlB wlB nCl wlB -xmL +eev cFw cFw cFw @@ -55988,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 @@ -56171,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 @@ -56352,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 @@ -56534,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 @@ -56717,14 +56873,14 @@ vVH vVH vVH gfu -xJZ -xJZ +kkT +kkT gfu -sny +peY sVr -ryD -ryD -xJZ +aNT +aNT +kkT iLc dUL bPk @@ -57952,7 +58108,7 @@ kgp kgp kgp wlB -cFw +xju cFw xmL cFw @@ -58862,7 +59018,7 @@ hPq kgp nCl wlB -nwq +hCK cFw ihY ihY @@ -59406,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..fa20f05f5e1d 100644 --- a/maps/map_files/Sorokyne_Strata/Sorokyne_Strata.dmm +++ b/maps/map_files/Sorokyne_Strata/Sorokyne_Strata.dmm @@ -20396,6 +20396,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 @@ -23681,6 +23685,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 @@ -26643,6 +26651,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, @@ -28529,6 +28541,10 @@ /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, @@ -29130,6 +29146,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, @@ -29761,6 +29781,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 @@ -30367,6 +30391,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, @@ -34760,6 +34788,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, @@ -40865,7 +40897,7 @@ aac wXw qPu uhM -wXw +nxc rNI rNI bvE @@ -41042,7 +41074,7 @@ uTt tJX bvE rNI -bvE +jpC rNI bxh aac @@ -41391,7 +41423,7 @@ aac aac bwA rNI -rNI +oKr bvE bvE bwv @@ -41757,7 +41789,7 @@ bvE bvD mcX rxL -bvD +caw bvE rNI bvE @@ -41928,7 +41960,7 @@ bxC bvD bvD bvD -bvD +caw bvM mcX rxL @@ -42110,7 +42142,7 @@ bwt bwb jLc bwt -bwt +epz bwt aac aac @@ -44006,7 +44038,7 @@ buK tFA wSb wSb -bvE +pAZ bvD bvD bvD @@ -44707,7 +44739,7 @@ wSb tFA rni bvD -bvE +pAZ bvE bvE xTU @@ -45059,7 +45091,7 @@ wSb bvD bvD bvD -bvD +xgU bvD xTU bwt @@ -45946,7 +45978,7 @@ kBL bwt bvE bvE -bvD +mpU bvD bwI bxH @@ -46126,7 +46158,7 @@ bvD bvD bvD bvE -bvD +mpU bvD bvE bvE @@ -46298,7 +46330,7 @@ naw bvE bvE bvD -bvD +mpU bvD bvE bvE diff --git a/maps/map_files/USS_Almayer/USS_Almayer.dmm b/maps/map_files/USS_Almayer/USS_Almayer.dmm index 82f6025d8a88..21f5bc72a9fb 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, @@ -26300,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, @@ -26530,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{ @@ -27993,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" = ( @@ -28393,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{ @@ -28674,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, @@ -29407,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{ @@ -29701,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{ @@ -30238,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 @@ -30447,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{ @@ -31139,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{ @@ -31814,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{ @@ -32654,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{ @@ -32926,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{ @@ -33254,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" = ( @@ -33424,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{ @@ -33781,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, @@ -33881,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) @@ -34058,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, @@ -34319,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 @@ -34425,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, @@ -35233,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; @@ -36547,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, @@ -36797,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" = ( @@ -37678,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, @@ -38557,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) @@ -38586,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{ @@ -39260,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, @@ -40376,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, @@ -41337,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) @@ -42255,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, @@ -42684,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 @@ -42840,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, @@ -42913,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, @@ -44055,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" = ( @@ -44063,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, @@ -44191,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{ @@ -45229,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 }, @@ -45504,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, @@ -45715,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{ @@ -46553,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 @@ -46603,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 @@ -46617,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 @@ -46975,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, @@ -47233,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 @@ -47252,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" = ( @@ -47623,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"; @@ -48753,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{ @@ -49359,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" = ( @@ -50536,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" = ( @@ -51498,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"; @@ -51529,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" = ( @@ -51552,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{ @@ -51706,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, @@ -51884,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; @@ -52130,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, @@ -52545,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) @@ -52591,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" = ( @@ -53142,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{ @@ -53666,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, @@ -53701,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{ @@ -54006,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, @@ -55197,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" = ( @@ -55393,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, @@ -55795,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{ @@ -56895,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, @@ -56956,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) @@ -57202,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 @@ -57463,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, @@ -58204,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{ @@ -59023,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, @@ -59874,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, @@ -60234,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{ @@ -61150,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 @@ -61857,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{ @@ -62679,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" = ( @@ -63119,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, @@ -63182,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{ @@ -63564,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) @@ -64142,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, @@ -64461,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) @@ -64513,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{ @@ -65127,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) @@ -65414,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, @@ -66010,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, @@ -66563,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{ @@ -67096,10 +67353,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 +67377,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 +67403,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 +68399,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 +68931,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 +69415,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 +73261,7 @@ aaa aaa aaa aaa -aaa +bdH aaa aab aaa @@ -73191,27 +73445,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 +73648,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 +73851,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 +74054,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 +74257,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 +74460,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 +74663,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 +74866,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,8 +75069,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 +aab aaa aaa aaa @@ -74836,13 +75116,10 @@ aaa aaa aaa aaa -aab aaa aaa -aKQ aaa aaa -aab aaa aaa aaa @@ -74914,10 +75191,14 @@ aaa aaa aaa aaa +aab aaa aaa +"} +(29,1,1) = {" aaa aaa +aab aaa aaa aaa @@ -74937,14 +75218,10 @@ aaa aaa aaa aaa -aab aaa aaa -"} -(29,1,1) = {" aaa aaa -aab aaa aaa aaa @@ -74995,10 +75272,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 +aab aaa aaa aaa @@ -75039,13 +75340,10 @@ aaa aaa aaa aaa -aab aaa aaa -aKQ aaa aaa -aab aaa aaa aaa @@ -75096,10 +75394,14 @@ aaa aaa aaa aaa +aab aaa aaa +"} +(30,1,1) = {" aaa aaa +aab aaa aaa aaa @@ -75140,14 +75442,10 @@ aaa aaa aaa aaa -aab aaa aaa -"} -(30,1,1) = {" aaa aaa -aab aaa aaa aaa @@ -75161,6 +75459,15 @@ aaa aaa aaa aaa +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH +bdH aaa aaa aaa @@ -75168,87 +75475,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 -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 -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 -aab -aaa -aaa -aKQ -aaa -aaa -aab +aab aaa aaa aaa @@ -75424,27 +75678,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 +75881,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 +76084,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 +76287,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 +76490,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 +76693,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 +76896,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 +77099,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 +77302,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 +77506,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 +77551,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 +77709,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 +77912,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 +78115,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 +78318,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 +78521,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 +78724,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 +78923,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 +79130,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 +79333,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 +79536,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 +79739,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 +79783,10 @@ aaa aaa aaa aaa -aab aaa aaa -aKQ aaa aaa -aab aaa aaa aaa @@ -79520,62 +79795,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 +79942,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 +80145,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 +80348,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 +80766,9 @@ aaa aaa aaa aaa -aaa -aaa -aaa +bdH +bdH +bdH aaa aaa aaa @@ -80711,17 +80965,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 +81168,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 +81203,10 @@ aaa aaa aaa aaa -aab aaa aaa -aKQ aaa aaa -aab aaa aaa aaa @@ -80942,61 +81216,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 +81371,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 +81574,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 +81776,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 +81979,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 +82182,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 +82386,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 +82589,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 +82792,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 +82995,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 +83202,9 @@ aaa aaa aaa aaa -aaa -aaa -aaa +bdH +bdH +bdH aaa aaa aaa @@ -95688,6 +95942,7 @@ gLl gvu xCB tJm +rnN aoe aoe aoe @@ -95705,9 +95960,8 @@ aoe aoe aoe aoe -aoe -aoe -hwB +rnN +gvu xCB kaj vIo @@ -95890,27 +96144,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 +96347,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 +96549,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 +96755,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 +96872,7 @@ gGJ qjN qjN qjN -qjN +bho xtM baZ sbE @@ -96702,21 +96956,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 +97158,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 +97362,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 +97565,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 +97769,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 +97972,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 +98175,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 +98378,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 +98581,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 +98785,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 +98893,9 @@ bkE bQM rlZ izY -rlZ -rlZ -rlZ +xsw +bZn +kFv izY rlZ hZN @@ -98734,23 +98988,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 +99096,9 @@ bkE bRP rlZ rlZ -xsw -bZn -kFv +phW +kan +eTB rlZ rlZ siW @@ -98938,20 +99192,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 +99299,8 @@ bst cjW rlZ rlZ -oRy -kan +pnC +dBH biy boX rlZ @@ -99248,7 +99502,7 @@ vhX akQ rlZ rlZ -pnC +duO dBH bky ryt @@ -99654,7 +99908,7 @@ vhX gDW rlZ rlZ -wYr +duO dBH bky ryt @@ -99857,8 +100111,8 @@ xMs cjW rlZ rlZ -kSC -kan +wYr +dBH quv rZB rlZ @@ -100060,9 +100314,9 @@ bgw eXb rlZ rlZ -thP -beW -bgP +kSC +kan +oRy rlZ rlZ hAU @@ -100263,9 +100517,9 @@ bgw fbw rlZ rlZ -pqD -pqD -pqD +thP +beW +bgP rlZ rlZ rFH @@ -100466,9 +100720,9 @@ bgy fxZ rlZ aZK -vYt -fDj -eBZ +pqD +pqD +pqD hBc rlZ pKZ @@ -100669,9 +100923,9 @@ bgw icw qni klH -tgV -tgV -tgV +vYt +fDj +eBZ klH qni uah @@ -100872,9 +101126,9 @@ bgw jxi rlZ rlZ -rlZ -rlZ -rlZ +tgV +tgV +tgV rlZ rlZ nrN @@ -102031,7 +102285,7 @@ bdH bdH bdH bdH -aaa +bdH aaa aaa aaa @@ -102643,7 +102897,7 @@ bdH aaa aaa aaa -aaa +bdH aaa aaa aaa @@ -103048,7 +103302,7 @@ aaa aaa aaa aaa -aaa +bdH aaa aaa aaa diff --git a/maps/predship/huntership.dmm b/maps/predship/huntership.dmm index bfb7fcbb5cb1..c87360912eec 100644 --- a/maps/predship/huntership.dmm +++ b/maps/predship/huntership.dmm @@ -33,100 +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{ - pixel_y = 10 - }, -/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{ - pixel_y = 10 - }, -/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{ - pixel_y = 10 - }, -/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{ - pixel_y = 10 - }, -/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{ - pixel_y = 10 - }, -/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{ - pixel_y = 10 - }, -/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{ @@ -141,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"; @@ -157,20 +93,10 @@ anchored = 1; color = "#FFE55C"; icon_state = "pred_mask_elder_n"; - pixel_y = 39 + 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; @@ -178,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"; @@ -198,13 +118,6 @@ }, /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 @@ -245,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/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/item/clothing/mask/gas/yautja/hunter{ + pixel_y = 27; + anchored = 1 + }, +/obj/structure/platform/stair_cut{ + icon_state = "kutjevo_platform_sm_stair" + }, +/turf/open/shuttle/predship, /area/yautja) "az" = ( /obj/structure/window/phoronreinforced{ @@ -264,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, @@ -402,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, @@ -474,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) @@ -508,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{ @@ -574,7 +448,7 @@ }, /obj/item/clothing/mask/gas/yautja/hunter{ anchored = 1; - pixel_y = 30 + pixel_y = 20 }, /turf/open/floor/corsat/squareswood/north, /area/yautja) @@ -667,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) @@ -676,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" = ( @@ -741,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) @@ -1324,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" = ( @@ -1434,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{ @@ -1616,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"; @@ -1674,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, @@ -1686,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" = ( @@ -1752,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) @@ -1823,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) @@ -1847,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{ @@ -1878,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{ @@ -1910,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"; @@ -1979,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"; @@ -2024,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" @@ -2126,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 @@ -2139,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 @@ -2147,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; @@ -2226,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; @@ -2412,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) @@ -2422,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" @@ -2493,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{ @@ -2674,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" @@ -2710,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" @@ -2754,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) @@ -2789,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) @@ -2824,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" = ( @@ -2849,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{ @@ -2900,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{ @@ -2922,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" @@ -3033,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 @@ -3083,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) = {" @@ -4183,7 +4186,7 @@ bj as bJ aY -ZM +dS cj bL an @@ -4468,7 +4471,7 @@ aa ae bj bj -bL +ah bL bL bj @@ -4899,9 +4902,9 @@ bj bj bj bj -bj -bj -bj +sx +sx +sx bj bj bj @@ -4964,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 @@ -5036,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 @@ -5108,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 @@ -5180,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 @@ -5252,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 @@ -5324,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 @@ -5396,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 @@ -5468,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 @@ -5540,12 +5543,12 @@ aa aa ae bj -aj -iL -QK -cP +SO +JH +df +JH +tg cP -ar cP Fh Fh @@ -5612,12 +5615,12 @@ aa aa ae bj -ag -GP -dS -bL -bL -ti +hZ +cP +df +cP +aw +cP cP Fh cZ @@ -5684,12 +5687,12 @@ aa aa ae bj -ak -ap -bZ -cP +un +JH +df +JH +tg cP -ar cP Fh Fh @@ -5756,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 @@ -5828,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 @@ -5900,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 @@ -5972,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 @@ -6044,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 @@ -6116,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 @@ -6188,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 @@ -6260,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 @@ -6339,9 +6342,9 @@ bj bj bj bj -bj -bj -bj +sx +sx +sx bj bj bj @@ -6794,7 +6797,7 @@ bv bv bv bj -gb +og JH JH JH @@ -7011,7 +7014,7 @@ gG bL Fy dl -JH +gb bj bj bj 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 f39fcea2a2cf..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 === 4 || access_level >= 6) && ( + {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(