vg Holomaps (#2844)

Ports vorestation's implementation of /vg/'s holomaps.

Holomaps are an in-game object that shows a map of (most) of the station with departments highlighted, to aid in navigation around the station. Maintenance, high-security, and asteroid areas are excluded from the maps.

Adds approximately 1.5 seconds to server boot to generate maps.

Holomaps were added at:

Arrivals shuttle dock, north of checkpoint.
Surface level lift.
By entrance to security on main level.
North of the kitchen.
South of Engineering, near tech storage.
Beside the IA office.
Near the lift on each sub-level department.
This commit is contained in:
Lohikar
2017-06-27 12:40:40 -05:00
committed by skull132
parent f3e6ab619e
commit 300f238111
19 changed files with 477 additions and 19 deletions
+3
View File
@@ -33,6 +33,7 @@
#include "code\__defines\machinery.dm"
#include "code\__defines\master_controller.dm"
#include "code\__defines\math_physics.dm"
#include "code\__defines\minimap.dm"
#include "code\__defines\mining.dm"
#include "code\__defines\misc.dm"
#include "code\__defines\mobs.dm"
@@ -180,6 +181,7 @@
#include "code\controllers\subsystems\wireless.dm"
#include "code\controllers\subsystems\initialization\asteroid.dm"
#include "code\controllers\subsystems\initialization\atoms.dm"
#include "code\controllers\subsystems\initialization\minimap.dm"
#include "code\controllers\subsystems\initialization\misc_early.dm"
#include "code\controllers\subsystems\initialization\misc_late.dm"
#include "code\controllers\subsystems\initialization\xenoarch.dm"
@@ -500,6 +502,7 @@
#include "code\game\machinery\seed_extractor.dm"
#include "code\game\machinery\Sleeper.dm"
#include "code\game\machinery\spaceheater.dm"
#include "code\game\machinery\station_holomap.dm"
#include "code\game\machinery\status_display.dm"
#include "code\game\machinery\status_display_ai.dm"
#include "code\game\machinery\status_display_snowflakes.dm"
+41
View File
@@ -0,0 +1,41 @@
//
// Constants and standard colors for the holomap
//
#define HOLOMAP_ICON 'icons/480x480.dmi' // Icon file to start with when drawing holomaps (to get a 480x480 canvas).
#define HOLOMAP_ICON_SIZE 480 // Pixel width & height of the holomap icon. Used for auto-centering etc.
#define ui_holomap "CENTER-7, CENTER-7" // Screen location of the holomap "hud"
// Holomap colors
#define HOLOMAP_OBSTACLE "#FFFFFFDD" // Color of walls and barriers
#define HOLOMAP_PATH "#66666699" // Color of floors
#define HOLOMAP_HOLOFIER "#79FF79" // Whole map is multiplied by this to give it a green holoish look
#define HOLOMAP_AREACOLOR_COMMAND "#386d8099"
#define HOLOMAP_AREACOLOR_SECURITY "#AE121299"
#define HOLOMAP_AREACOLOR_MEDICAL "#FFFFFFA5"
#define HOLOMAP_AREACOLOR_SCIENCE "#A154A699"
#define HOLOMAP_AREACOLOR_ENGINEERING "#F1C23199"
#define HOLOMAP_AREACOLOR_CARGO "#E06F0099"
#define HOLOMAP_AREACOLOR_HALLWAYS "#FFFFFF66"
#define HOLOMAP_AREACOLOR_ARRIVALS "#0000FFCC"
#define HOLOMAP_AREACOLOR_ESCAPE "#FF0000CC"
#define HOLOMAP_AREACOLOR_DORMS "#5bc1c199"
// If someone can come up with a non-conflicting color for the lifts, please update this.
#define HOLOMAP_AREACOLOR_LIFTS null
// Handy defines to lookup the pixel offsets for this Z-level. Cache these if you use them in a loop tho.
// Commenting these out for now. Replace if we ever datumize our maps.
/*#define HOLOMAP_PIXEL_OFFSET_X(zLevel) ((using_map.holomap_offset_x.len >= zLevel) ? using_map.holomap_offset_x[zLevel] : 0)
#define HOLOMAP_PIXEL_OFFSET_Y(zLevel) ((using_map.holomap_offset_y.len >= zLevel) ? using_map.holomap_offset_y[zLevel] : 0)
#define HOLOMAP_LEGEND_X(zLevel) ((using_map.holomap_legend_x.len >= zLevel) ? using_map.holomap_legend_x[zLevel] : 96)
#define HOLOMAP_LEGEND_Y(zLevel) ((using_map.holomap_legend_y.len >= zLevel) ? using_map.holomap_legend_y[zLevel] : 96)*/
#define HOLOMAP_PIXEL_OFFSET_X(zlevel) ((HOLOMAP_ICON_SIZE - world.maxx) / 2)
#define HOLOMAP_PIXEL_OFFSET_Y(zlevel) ((HOLOMAP_ICON_SIZE - world.maxx) / 2)
#define HOLOMAP_LEGEND_X(zlevel) 96
#define HOLOMAP_LEGEND_Y(zlevel) 96
#define HOLOMAP_EXTRA_STATIONMAP "stationmapformatted"
#define HOLOMAP_EXTRA_STATIONMAPAREAS "stationareas"
#define HOLOMAP_EXTRA_STATIONMAPSMALL "stationmapsmall"
+7 -6
View File
@@ -1,9 +1,10 @@
#define SS_INIT_JOBS 20
#define SS_INIT_MISC_FIRST 19
#define SS_INIT_SEEDS 18 // Plant controller setup.
#define SS_INIT_ASTEROID 17 // Asteroid generation.
#define SS_INIT_SHUTTLE 16 // Shuttle setup.
#define SS_INIT_PARALLAX 15 // Parallax image cache generation. Must run before ghosts are able to join.
#define SS_INIT_JOBS 21
#define SS_INIT_MISC_FIRST 20
#define SS_INIT_SEEDS 19 // Plant controller setup.
#define SS_INIT_ASTEROID 18 // Asteroid generation.
#define SS_INIT_SHUTTLE 17 // Shuttle setup.
#define SS_INIT_PARALLAX 16 // Parallax image cache generation. Must run before ghosts are able to join.
#define SS_INIT_HOLOMAP 15
#define SS_INIT_ATOMS 14 // World initialization. Will trigger lighting updates. Observers can join after this loads.
#define SS_INIT_POWER 13 // Initial powernet build.
#define SS_INIT_CARGO 12 // Random warehouse generation. Runs after SSatoms because it assumes objects are initialized when it runs.
+13
View File
@@ -19,6 +19,7 @@ var/list/global_huds
var/obj/screen/thermal
var/obj/screen/meson
var/obj/screen/science
var/obj/screen/holomap
/datum/global_hud/proc/setup_overlay(var/icon_state)
var/obj/screen/screen = new /obj/screen()
@@ -50,6 +51,18 @@ var/list/global_huds
meson = setup_overlay("meson_hud")
science = setup_overlay("science_hud")
// The holomap screen object is actually totally invisible.
// Station maps work by setting it as an images location before sending to client, not
// actually changing the icon or icon state of the screen object itself!
// Why do they work this way? I don't know really, that is how /vg/ designed them, but since they DO
// work this way, we can take advantage of their immutability by making them part of
// the global_hud (something we have and /vg/ doesn't) instead of an instance per mob.
holomap = new /obj/screen()
holomap.name = "holomap"
holomap.icon = null
holomap.screen_loc = ui_holomap
holomap.mouse_opacity = 0
var/obj/screen/O
var/i
//that nasty looking dither you get when you're short-sighted
@@ -0,0 +1,117 @@
// Minimap generation system adapted from vorestation, adapted from /vg/.
// Seems to be much simpler/saner than /vg/'s implementation.
// Turfs that will be colored as HOLOMAP_ROCK
#define IS_ROCK(tile) (istype(tile, /turf/simulated/mineral) || istype(tile, /turf/simulated/floor/asteroid) || istype(tile, /turf/simulated/open))
// Turfs that will be colored as HOLOMAP_OBSTACLE
#define IS_OBSTACLE(tile) ((!istype(tile, /turf/space) && istype(tile.loc, /area/mine/unexplored)) \
|| istype(tile, /turf/simulated/wall) \
|| istype(tile, /turf/unsimulated/mineral) \
|| (istype(tile, /turf/unsimulated/wall)) \
|| (locate(/obj/structure/grille) in tile))
// Turfs that will be colored as HOLOMAP_PATH
#define IS_PATH(tile) ((istype(tile, /turf/simulated/floor) && !istype(tile, /turf/simulated/floor/asteroid)) \
|| istype(tile, /turf/unsimulated/floor) \
|| (locate(/obj/structure/lattice/catwalk) in tile))
/var/datum/controller/subsystem/minimap/SSminimap
/datum/controller/subsystem/minimap
name = "Holomap"
flags = SS_NO_FIRE
init_order = SS_INIT_HOLOMAP
var/list/holo_minimaps = list()
var/list/extra_minimaps = list()
var/list/station_holomaps = list()
/datum/controller/subsystem/minimap/New()
NEW_SS_GLOBAL(SSminimap)
/datum/controller/subsystem/minimap/Initialize()
holo_minimaps.len = world.maxz
for (var/z in 1 to world.maxz)
holo_minimaps[z] = generateHoloMinimap(z)
log_debug("SSminimap: [holo_minimaps.len] maps.")
for (var/z in config.station_levels)
generateStationMinimap(z)
..()
// Generates the "base" holomap for one z-level, showing only the physical structure of walls and paths.
/datum/controller/subsystem/minimap/proc/generateHoloMinimap(zlevel = 1)
// Save these values now to avoid a bazillion array lookups
var/offset_x = HOLOMAP_PIXEL_OFFSET_X(zlevel)
var/offset_y = HOLOMAP_PIXEL_OFFSET_Y(zlevel)
// Sanity checks - Better to generate a helpful error message now than have DrawBox() runtime
var/icon/canvas = icon(HOLOMAP_ICON, "blank")
if(world.maxx + offset_x > canvas.Width())
crash_with("Minimap for z=[zlevel] : world.maxx ([world.maxx]) + holomap_offset_x ([offset_x]) must be <= [canvas.Width()]")
if(world.maxy + offset_y > canvas.Height())
crash_with("Minimap for z=[zlevel] : world.maxy ([world.maxy]) + holomap_offset_y ([offset_y]) must be <= [canvas.Height()]")
for(var/x = 1 to world.maxx)
for(var/y = 1 to world.maxy)
var/turf/tile = locate(x, y, zlevel)
if(tile && tile.loc:holomapAlwaysDraw())
if(IS_ROCK(tile))
continue
if(IS_OBSTACLE(tile))
canvas.DrawBox(HOLOMAP_OBSTACLE, x + offset_x, y + offset_y)
else if(IS_PATH(tile))
canvas.DrawBox(HOLOMAP_PATH, x + offset_x, y + offset_y)
CHECK_TICK
return canvas
/datum/controller/subsystem/minimap/proc/generateStationMinimap(zlevel)
// Save these values now to avoid a bazillion array lookups
var/offset_x = HOLOMAP_PIXEL_OFFSET_X(zlevel)
var/offset_y = HOLOMAP_PIXEL_OFFSET_Y(zlevel)
// Sanity checks - Better to generate a helpful error message now than have DrawBox() runtime
var/icon/canvas = icon(HOLOMAP_ICON, "blank")
if(world.maxx + offset_x > canvas.Width())
crash_with("Minimap for z=[zlevel] : world.maxx ([world.maxx]) + holomap_offset_x ([offset_x]) must be <= [canvas.Width()]")
if(world.maxy + offset_y > canvas.Height())
crash_with("Minimap for z=[zlevel] : world.maxy ([world.maxy]) + holomap_offset_y ([offset_y]) must be <= [canvas.Height()]")
for(var/x = 1 to world.maxx)
for(var/y = 1 to world.maxy)
var/turf/tile = locate(x, y, zlevel)
if(tile && tile.loc)
var/area/areaToPaint = tile.loc
if(areaToPaint.holomap_color)
canvas.DrawBox(areaToPaint.holomap_color, x + offset_x, y + offset_y)
// Save this nice area-colored canvas in case we want to layer it or something I guess
extra_minimaps["[HOLOMAP_EXTRA_STATIONMAPAREAS]_[zlevel]"] = canvas
var/icon/map_base = icon(holo_minimaps[zlevel])
map_base.Blend(HOLOMAP_HOLOFIER, ICON_MULTIPLY)
// Generate the full sized map by blending the base and areas onto the backdrop
var/icon/big_map = icon(HOLOMAP_ICON, "stationmap")
big_map.Blend(map_base, ICON_OVERLAY)
big_map.Blend(canvas, ICON_OVERLAY)
extra_minimaps["[HOLOMAP_EXTRA_STATIONMAP]_[zlevel]"] = big_map
// Generate the "small" map (I presume for putting on wall map things?)
var/icon/small_map = icon(HOLOMAP_ICON, "blank")
small_map.Blend(map_base, ICON_OVERLAY)
small_map.Blend(canvas, ICON_OVERLAY)
small_map.Scale(WORLD_ICON_SIZE, WORLD_ICON_SIZE)
// And rotate it in every direction of course!
var/icon/actual_small_map = icon(small_map)
actual_small_map.Insert(new_icon = small_map, dir = SOUTH)
actual_small_map.Insert(new_icon = turn(small_map, 90), dir = WEST)
actual_small_map.Insert(new_icon = turn(small_map, 180), dir = NORTH)
actual_small_map.Insert(new_icon = turn(small_map, 270), dir = EAST)
extra_minimaps["[HOLOMAP_EXTRA_STATIONMAPSMALL]_[zlevel]"] = actual_small_map
@@ -20,7 +20,8 @@
global_hud.nvg,
global_hud.thermal,
global_hud.meson,
global_hud.science
global_hud.science,
global_hud.holomap
)
// This is kinda important. Set up details of what the hell things are made of.
+32
View File
@@ -586,6 +586,9 @@ area/space/atmosalert()
)
station_area = 1
/area/maintenance/holomapAlwaysDraw()
return FALSE
/area/maintenance/civ
name = "\improper Civilian Maintenance"
icon_state = "maintcentral"
@@ -768,6 +771,7 @@ area/space/atmosalert()
sound_env = LARGE_ENCLOSED
allow_nightmode = 1
station_area = 1
holomap_color = HOLOMAP_AREACOLOR_HALLWAYS
/area/hallway/primary/fore
name = "\improper Fore Primary Hallway"
@@ -801,6 +805,7 @@ area/space/atmosalert()
name = "\improper Escape Shuttle Hallway"
icon_state = "escape"
no_light_control = 1
holomap_color = HOLOMAP_AREACOLOR_ESCAPE
/area/hallway/secondary/construction
name = "\improper Construction Area"
@@ -826,6 +831,7 @@ area/space/atmosalert()
/area/hallway/secondary/entry/dock
name = "\improper Arrival Shuttle Dock"
icon_state = "arrivals_dock"
holomap_color = HOLOMAP_AREACOLOR_ARRIVALS
//Command
@@ -834,6 +840,7 @@ area/space/atmosalert()
icon_state = "bridge"
no_light_control = 1
station_area = 1
holomap_color = HOLOMAP_AREACOLOR_COMMAND
/area/bridge/minibar
name = "\improper Command Break Room"
@@ -869,6 +876,10 @@ area/space/atmosalert()
name = "\improper Command - Captain's Office"
icon_state = "captain"
sound_env = MEDIUM_SOFTFLOOR
holomap_color = HOLOMAP_AREACOLOR_COMMAND
/area/crew_quarters/heads
holomap_color = HOLOMAP_AREACOLOR_COMMAND
/area/crew_quarters/heads/hop
name = "\improper Command - HoP's Office"
@@ -904,6 +915,7 @@ area/space/atmosalert()
name = "\improper Research Server Room"
icon_state = "server"
station_area = 1
holomap_color = HOLOMAP_AREACOLOR_SCIENCE
//Crew
@@ -922,11 +934,13 @@ area/space/atmosalert()
name = "\improper Dormitories"
icon_state = "Sleep"
allow_nightmode = 1
holomap_color = HOLOMAP_AREACOLOR_DORMS
/area/crew_quarters/sleep/engi_wash
name = "\improper Engineering Washroom"
icon_state = "toilet"
sound_env = SMALL_ENCLOSED
holomap_color = HOLOMAP_AREACOLOR_ENGINEERING
/area/crew_quarters/sleep/bedrooms
name = "\improper Dormitory Bedroom One"
@@ -944,18 +958,22 @@ area/space/atmosalert()
/area/crew_quarters/sleep/engineering
name = "\improper Engineering Dormitories"
icon_state = "Sleep"
holomap_color = HOLOMAP_AREACOLOR_ENGINEERING
/area/crew_quarters/sleep/security
name = "\improper Security Dormitories"
icon_state = "Sleep"
holomap_color = HOLOMAP_AREACOLOR_SECURITY
/area/crew_quarters/sleep/research
name = "\improper Research Dormitories"
icon_state = "Sleep"
holomap_color = HOLOMAP_AREACOLOR_SCIENCE
/area/crew_quarters/sleep/medical
name = "\improper Medical Dormitories"
icon_state = "Sleep"
holomap_color = HOLOMAP_AREACOLOR_MEDICAL
/area/crew_quarters/sleep_male
name = "\improper Male Dorm"
@@ -1114,6 +1132,7 @@ area/space/atmosalert()
'sound/ambience/ambisin4.ogg'
)
station_area = 1
holomap_color = HOLOMAP_AREACOLOR_ENGINEERING
/area/engineering/atmos
name = "\improper Atmospherics"
@@ -1280,6 +1299,7 @@ area/space/atmosalert()
/area/medical
station_area = 1
holomap_color = HOLOMAP_AREACOLOR_MEDICAL
/area/medical/medbay
name = "\improper Medbay Hallway - Port"
@@ -1417,6 +1437,7 @@ area/space/atmosalert()
/area/medical/genetics
name = "\improper Genetics Lab"
icon_state = "genetics"
holomap_color = HOLOMAP_AREACOLOR_SCIENCE
/area/medical/genetics_cloning
name = "\improper Cloning Lab"
@@ -1437,6 +1458,7 @@ area/space/atmosalert()
/area/security
no_light_control = 1
station_area = 1
holomap_color = HOLOMAP_AREACOLOR_SECURITY
/area/security/main
name = "\improper Security Office"
@@ -1518,6 +1540,10 @@ area/space/atmosalert()
/area/security/nuke_storage
name = "\improper Vault"
icon_state = "nuke_storage"
holomap_color = null
/area/security/nuke_storage/holomapAlwaysDraw()
return FALSE
/area/security/checkpoint
name = "\improper Security Checkpoint"
@@ -1555,6 +1581,7 @@ area/space/atmosalert()
name = "\improper Quartermasters"
icon_state = "quart"
station_area = 1
holomap_color = HOLOMAP_AREACOLOR_CARGO
/area/quartermaster/office
name = "\improper Cargo Office"
@@ -1595,6 +1622,7 @@ area/space/atmosalert()
//rnd (Research and Development
/area/rnd
station_area = 1
holomap_color = HOLOMAP_AREACOLOR_SCIENCE
/area/rnd/research
name = "\improper Research and Development"
@@ -1943,6 +1971,9 @@ area/space/atmosalert()
/area/turret_protected
station_area = 1
/area/turret_protected/holomapAlwaysDraw()
return FALSE
/area/turret_protected/ai_upload
name = "\improper AI Upload Chamber"
icon_state = "ai_upload"
@@ -2034,6 +2065,7 @@ area/space/atmosalert()
ambience = list('sound/ambience/ambisin2.ogg', 'sound/ambience/signal.ogg', 'sound/ambience/signal.ogg', 'sound/ambience/ambigen10.ogg')
no_light_control = 1
station_area = 1
holomap_color = HOLOMAP_AREACOLOR_ENGINEERING
/area/tcommsat/entrance
name = "\improper Telecoms Teleporter"
+9
View File
@@ -6,6 +6,7 @@
/area
var/global/global_uid = 0
var/uid
var/holomap_color // Color of this area on the holomap. Must be a hex color (as string) or null.
/area/Initialize(mapload)
icon_state = "white"
@@ -385,3 +386,11 @@ var/list/mob/living/forced_ambiance_list = new
if (turfs.len)
return pick(turfs)
else return null
// Whether the turfs in the area should be drawn onto the "base" holomap.
/area/proc/holomapAlwaysDraw()
return TRUE
/area/shuttle/holomapAlwaysDraw()
return FALSE
+5
View File
@@ -13,6 +13,8 @@
name = "Mine"
icon_state = "unexplored"
/area/mine/unexplored/holomapAlwaysDraw()
return FALSE
//S
@@ -33,6 +35,7 @@
/area/outpost/mining_main
icon_state = "outpost_mine_main"
station_area = 1
holomap_color = HOLOMAP_AREACOLOR_CARGO
/area/outpost/mining_main/dorms
name = "Mining Dormitory"
@@ -61,6 +64,7 @@
/area/outpost/engineering
icon_state = "outpost_engine"
station_area = 1
holomap_color = HOLOMAP_AREACOLOR_ENGINEERING
/area/outpost/engineering/hallway
name = "Engineering Sublevel Hallway"
@@ -86,6 +90,7 @@
/area/outpost/research
icon_state = "outpost_research"
station_area = 1
holomap_color = HOLOMAP_AREACOLOR_SCIENCE
/area/outpost/research/hallway
name = "Research Sublevel Hallway"
+223
View File
@@ -0,0 +1,223 @@
/obj/machinery/station_map
name = "station holomap"
desc = "A virtual map of the surrounding station."
icon = 'icons/obj/machines/stationmap.dmi'
icon_state = "station_map"
anchored = 1
density = 0
use_power = 1
idle_power_usage = 10
active_power_usage = 500
light_color = "#64C864"
light_power = 1
light_range = 2
var/light_power_on = 1
var/light_range_on = 2
layer = 3.25 // Above windows.
var/mob/watching_mob = null
var/image/small_station_map = null
var/image/floor_markings = null
var/image/panel = null
var/original_zLevel = 1 // zLevel on which the station map was initialized.
var/bogus = TRUE // set to 0 when you initialize the station map on a zLevel that has its own icon formatted for use by station holomaps.
var/datum/station_holomap/holomap_datum
/obj/machinery/station_map/Destroy()
SSminimap.station_holomaps -= src
stopWatching()
QDEL_NULL(holomap_datum)
return ..()
/obj/machinery/station_map/Initialize()
holomap_datum = new()
original_zLevel = loc.z
SSminimap.station_holomaps += src
flags |= ON_BORDER // Why? It doesn't help if its not density
bogus = FALSE
var/turf/T = get_turf(src)
original_zLevel = T.z
if(!("[HOLOMAP_EXTRA_STATIONMAP]_[original_zLevel]" in SSminimap.extra_minimaps))
bogus = TRUE
holomap_datum.initialize_holomap_bogus()
update_icon()
return
holomap_datum.initialize_holomap(T, reinit = TRUE)
small_station_map = image(SSminimap.extra_minimaps["[HOLOMAP_EXTRA_STATIONMAPSMALL]_[original_zLevel]"], dir = dir)
small_station_map.layer = LIGHTING_LAYER + 0.1
floor_markings = image('icons/obj/machines/stationmap.dmi', "decal_station_map")
floor_markings.dir = src.dir
update_icon()
/obj/machinery/station_map/attack_hand(var/mob/user)
if(watching_mob && (watching_mob != user))
to_chat(user, "<span class='warning'>Someone else is currently watching the holomap.</span>")
return
if(user.loc != loc)
to_chat(user, "<span class='warning'>You need to stand in front of \the [src].</span>")
return
startWatching(user)
// Let people bump up against it to watch
/obj/machinery/station_map/Bumped(var/atom/movable/AM)
if(!watching_mob && isliving(AM) && AM.loc == loc)
startWatching(AM)
// In order to actually get Bumped() we need to block movement. We're (visually) on a wall, so people
// couldn't really walk into us anyway. But in reality we are on the turf in front of the wall, so bumping
// against where we seem is actually trying to *exit* our real loc
/obj/machinery/station_map/CheckExit(atom/movable/mover as mob|obj, turf/target as turf)
// log_debug("[src] (dir=[dir]) CheckExit([mover], [target]) get_dir() = [get_dir(target, loc)]")
if(get_dir(target, loc) == dir) // Opposite of "normal" since we are visually in the next turf over
return FALSE
else
return TRUE
/obj/machinery/station_map/proc/startWatching(var/mob/user)
if(isliving(user) && anchored && !(stat & (NOPOWER|BROKEN)))
if(user.client)
holomap_datum.station_map.loc = global_hud.holomap // Put the image on the holomap hud
holomap_datum.station_map.alpha = 0 // Set to transparent so we can fade in
animate(holomap_datum.station_map, alpha = 255, time = 5, easing = LINEAR_EASING)
flick("station_map_activate", src)
user.client.screen |= global_hud.holomap
user.client.images |= holomap_datum.station_map
watching_mob = user
moved_event.register(watching_mob, src, /obj/machinery/station_map/proc/checkPosition)
destroyed_event.register(watching_mob, src, /obj/machinery/station_map/proc/stopWatching)
update_use_power(2)
if(bogus)
to_chat(user, "<span class='warning'>The holomap failed to initialize. This area of space cannot be mapped.</span>")
else
to_chat(user, "<span class='notice'>A hologram of the station appears before your eyes.</span>")
/obj/machinery/station_map/attack_ai(var/mob/living/silicon/robot/user)
return // TODO - Implement for AI ~Leshana
// user.station_holomap.toggleHolomap(user, isAI(user))
/obj/machinery/station_map/machinery_process()
if((stat & (NOPOWER|BROKEN)) || !anchored)
stopWatching()
/obj/machinery/station_map/proc/checkPosition()
if(!watching_mob || (watching_mob.loc != loc) || (dir != watching_mob.dir))
stopWatching()
/obj/machinery/station_map/proc/stopWatching()
if(watching_mob)
if(watching_mob.client)
animate(holomap_datum.station_map, alpha = 0, time = 5, easing = LINEAR_EASING)
var/mob/M = watching_mob
addtimer(CALLBACK(src, .proc/clear_image, M, holomap_datum.station_map), 5, TIMER_CLIENT_TIME)//we give it time to fade out
moved_event.unregister(watching_mob, src)
destroyed_event.unregister(watching_mob, src)
watching_mob = null
update_use_power(1)
/obj/machinery/station_map/proc/clear_image(mob/M, image/I)
if (M.client)
M.client.images -= I
/obj/machinery/station_map/power_change()
. = ..()
update_icon()
if(stat & NOPOWER) // Maybe port /vg/'s autolights? Done manually for now.
set_light(0)
else
set_light(light_range_on, light_power_on)
/obj/machinery/station_map/proc/set_broken()
stat |= BROKEN
update_icon()
/obj/machinery/station_map/update_icon()
cut_overlays()
if(stat & BROKEN)
icon_state = "station_mapb"
else if((stat & NOPOWER) || !anchored)
icon_state = "station_map0"
else
icon_state = "station_map"
if(bogus)
holomap_datum.initialize_holomap_bogus()
else
small_station_map.icon = SSminimap.extra_minimaps["[HOLOMAP_EXTRA_STATIONMAPSMALL]_[original_zLevel]"]
add_overlay(small_station_map)
holomap_datum.initialize_holomap(get_turf(src))
// Put the little "map" overlay down where it looks nice
if(floor_markings)
floor_markings.dir = src.dir
floor_markings.pixel_x = -src.pixel_x
floor_markings.pixel_y = -src.pixel_y
add_overlay(floor_markings)
if(panel_open)
add_overlay("station_map-panel")
else
cut_overlay("station_map-panel")
/*/obj/machinery/station_map/attackby(obj/item/weapon/W as obj, mob/user as mob)
src.add_fingerprint(user)
if(default_deconstruction_screwdriver(user, W))
return
if(default_deconstruction_crowbar(user, W))
return
return ..()*/ // Uncomment this if/when this is made constructable.
/obj/machinery/station_map/ex_act(severity)
switch(severity)
if(1)
qdel(src)
if(2)
if (prob(50))
qdel(src)
else
set_broken()
if(3)
if (prob(25))
set_broken()
// TODO: Make these constructable.
// Simple datum to keep track of a running holomap. Each machine capable of displaying the holomap will have one.
/datum/station_holomap
var/image/station_map
var/image/cursor
var/image/legend
/datum/station_holomap/proc/initialize_holomap(turf/T, isAI = null, mob/user = null, reinit = FALSE)
if(!station_map || reinit)
station_map = image(SSminimap.extra_minimaps["[HOLOMAP_EXTRA_STATIONMAP]_[T.z]"])
if(!cursor || reinit)
cursor = image('icons/misc/holomap_markers.dmi', "you")
if(!legend || reinit)
legend = image('icons/effects/64x64.dmi', "legend")
if(isAI)
T = get_turf(user.client.eye)
cursor.pixel_x = (T.x - 6 + HOLOMAP_PIXEL_OFFSET_X(T.z)) * PIXEL_MULTIPLIER
cursor.pixel_y = (T.y - 6 + HOLOMAP_PIXEL_OFFSET_Y(T.z)) * PIXEL_MULTIPLIER
legend.pixel_x = HOLOMAP_LEGEND_X(T.z)
legend.pixel_y = HOLOMAP_LEGEND_Y(T.z)
station_map.overlays |= cursor
station_map.overlays |= legend
/datum/station_holomap/proc/initialize_holomap_bogus()
station_map = image('icons/480x480.dmi', "stationmap")
legend = image('icons/effects/64x64.dmi', "notfound")
legend.pixel_x = 7 * WORLD_ICON_SIZE
legend.pixel_y = 7 * WORLD_ICON_SIZE
station_map.overlays |= legend
@@ -10,3 +10,5 @@
var/lift_floor_name = null
var/lift_announce_str = "Ding!"
var/arrival_sound = 'sound/machines/ding.ogg'
holomap_color = HOLOMAP_AREACOLOR_LIFTS
+4
View File
@@ -0,0 +1,4 @@
author: Lohikar
delete-after: True
changes:
- rscadd: "Ported another server's implementation of /vg/'s holomaps."
BIN
View File
Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.0 KiB

After

Width:  |  Height:  |  Size: 45 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.9 KiB

+5 -3
View File
@@ -1021,7 +1021,7 @@
"tG" = (/obj/effect/floor_decal/corner/lime{icon_state = "corner_white";dir = 5},/turf/simulated/floor/tiled/white,/area/medical/patient_wing)
"tH" = (/obj/machinery/light{dir = 1},/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 4},/obj/effect/floor_decal/corner/lime{dir = 10},/turf/simulated/floor/tiled/white,/area/medical/patient_wing)
"tI" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/green{d1 = 4;d2 = 8;icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/effect/floor_decal/corner/lime{icon_state = "corner_white";dir = 8},/turf/simulated/floor/tiled/white,/area/medical/patient_wing)
"tJ" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/structure/cable/green{d1 = 2;d2 = 4;icon_state = "2-4"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/effect/floor_decal/corner/lime{dir = 10},/turf/simulated/floor/tiled/white,/area/medical/patient_wing)
"tJ" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/structure/cable/green{d1 = 2;d2 = 4;icon_state = "2-4"},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/effect/floor_decal/corner/lime{dir = 10},/obj/machinery/station_map{pixel_y = 32},/turf/simulated/floor/tiled/white,/area/medical/patient_wing)
"tK" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/structure/cable/green{d1 = 4;d2 = 8;icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plating,/area/maintenance/sublevel)
"tL" = (/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable/green{d1 = 4;d2 = 8;icon_state = "4-8"},/obj/machinery/door/airlock/maintenance{req_access = list(5)},/turf/simulated/floor/plating,/area/maintenance/sublevel)
"tM" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{icon_state = "intact-supply";dir = 9},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 9},/obj/structure/cable/green{d1 = 1;d2 = 8;icon_state = "1-8"},/turf/simulated/floor/plating,/area/maintenance/sublevel)
@@ -2232,6 +2232,8 @@
"QV" = (/obj/machinery/atmospherics/pipe/simple/visible/yellow,/obj/machinery/light_switch{pixel_x = 27;pixel_y = 0},/turf/simulated/floor/tiled,/area/outpost/research/isolation_monitoring)
"QW" = (/obj/machinery/light_switch{pixel_y = 27},/turf/simulated/floor/tiled/dark{name = "cooled dark floor";temperature = 278},/area/medical/morgue)
"QX" = (/obj/machinery/door/window/westleft{name = "Virology Isolation Cell Ceta";req_access = list(39)},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/effect/floor_decal/corner/lime{icon_state = "corner_white";dir = 9},/obj/machinery/door/firedoor,/turf/simulated/floor/tiled/white,/area/medical/virology)
"QY" = (/obj/machinery/station_map{dir = 1;pixel_y = -32},/turf/simulated/floor/tiled,/area/outpost/engineering/hallway)
"QZ" = (/obj/effect/floor_decal/corner/mauve{icon_state = "corner_white";dir = 5},/obj/machinery/station_map{pixel_y = 32},/turf/simulated/floor/tiled/white,/area/outpost/research/hallway)
(1,1,1) = {"
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
@@ -2325,7 +2327,7 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaecCcfagagagagagagagagag
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaecRcQagagagagagagagagagcibAbBJXajbDcTcWcVcXcYcZdadbdcdaddddddddddaFaFdeaFaFarcYcYcYcYcYcYleleleleleleleaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaebRcfcgagagagagagagagagdfdgbBdhdiagdjagaudmdldndodpdndndqdndrdndsdtdndudndndqdndvdwdxdycYcYcYcYleleleleaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaebRcfagagagagagagagagagdzdAbBdBdidididicTdDdCQLdCdFdEdEdGdEdHdEdIdJdEdKdEdEdGdEdLdEdMdNdOdQdPdRleleleleaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaedScQagagagagagagagagcgdTdUbBdVdiagagagagcXdWdYdXdZdndndqdndndndneadndndndndqdndndnebecdOeeeddRleleleleaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaedScQagagagagagagagagcgdTdUbBdVdiagagagagcXdWdYdXdZdndndqdndndndneadnQYdndndqdndndnebecdOeeeddRleleleleaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeefcfagagagagagagagagagcibAbBKnegehKocoagdmcYcYcYejeicYcYcYcYcYcYcYcYcYcYcYcYcYcYdoekelcYcYcYcYemleleleaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeencQagagagagagagagagagcicDbBaeaeeoepaeaeaeeqesereteseseuevaaaalelelelelelelelecYdqewdqcYleleleleleleleaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaebRcfcgagagcgagagagagcgcibAbBagagaKKpeyagaeezeseAeBeseCeCevaalelelelelelelelelecYdnebeDcYleleleleleleleaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
@@ -2384,7 +2386,7 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaleleaaaaaaaaaaaaaaaaaaaaaaaaaaaaqkuKuLuMuNuOuPuQuRqkuTuSpltjuUuVuWtjuXuYuZtqvavbvceQvdeQeQeQeQeQeQeQeQeQNZOheQveleleaaaaaaaaaaaaaaaaaaaaleletCvftzvgvhvivivjvkvlvmnWnWvnvonWaaleleleleNtMrMstGtGvpMvvruFNuleleleleleuIvtvvvuvwvxvzvyuJaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaleleleleleleleleleleaaaaaaaaaaaaqkvAvBvCsAvDvEvFvGqkvHvIoYtjvJvKvLtjvMvNvOtqvPvQvReQvdeQvSvTvSvUaaaaaaeQeQeQeQaaleleaaaaaaaaaaaaaaaaaaaaleleuyvVvWvXuttzvZwawbwcwdsXwfwewgnWaaoOwhwhwhwhwhwhMwwhwhwiwkwjvsleleleleleuIwmwnwovwwpwqwruJaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaleleleleleleleleleleleleleleaaqkqkqkwswtqkqkqkqkqnqnwuqnqnqneQeQeQeQeQeQeQeQeQeQeQvdeQwvwwwxvUaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalelewywywywywyvYwzsVwBnWNYwCwEwDwFnWnWnWwHwGwGwIwHQWwGwJwhwKwNwLwlaaaaleleleuIwMwQwOvwwPwSwRuJaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalelelelelelelelelelelelelelelenUwTnXnXnXwUwVnXnXwWwXnZnXwYqneQeQeQeQufueueueueueuewZeQwwwwwwvUaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalelesXurPousuttzwzxaxexbxcxdQQxfxhxgxjnWxkwGwGwIwHwGwGxlwhxmvrxqwlwlwlxnxoxpuIxrxtxsvwxuxvxuuJaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalelelelelelelelelelelelelelelenUwTnXnXnXwUwVnXQZwWwXnZnXwYqneQeQeQeQufueueueueueuewZeQwwwwwwvUaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalelesXurPousuttzwzxaxexbxcxdQQxfxhxgxjnWxkwGwGwIwHwGwGxlwhxmvrxqwlwlwlxnxoxpuIxrxtxsvwxuxvxuuJaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaleleleleleleleleleleleleleleomornHonoxovotxwxyxxxyxzxAplqneQeQeQeQvdeQeQeQeQeQeQeQeQxBvUvUvUvUvUvUaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaleleletCxCtzvgxEvixDxHtCxFtzxGxKxIxJtzxLnWwHwGwGxNxMwGwGxQwhvqvruFxOJVxUxPxRxSxTxVxZxWxXxVyaxVxYleaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalelelelelelelebQleleleleleleomornHyboXycoRoRoRoRMxyeygyfyhueueueyiwZeQvUykyjylvUynymywyoyxypypypvUaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaleleleleuyvVvWvXuttzyqyrtCystzxGytyuxGtzyvnWwHwGwGyzyyyyyyyAyCyByEyDyGyFyIyHyKyJyMyLyOyNySyPyVBSyQleaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaleleleleleleleleaaleleleleleleleleomuTyRyWqnqnqnqnqnqnqnoroNplqneQeQeQeQeQeQvUyYyXzavUzbyZzdzczhypypzivUaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalelelelewywywywywyvYzetzuyzftztztzAwQGQGzjnWwHwGwGzlwHwGwGznwhzkzpzmzmzmzuzozmzmzmzxzqzrzsztzyzvwlaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+9 -5
View File
@@ -5794,7 +5794,7 @@
"chv" = (/obj/effect/floor_decal/corner/paleblue/full{icon_state = "corner_white_full";dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/central_one)
"chw" = (/obj/turbolift_map_holder/aurora/civilian,/turf/simulated/floor/plating,/area/turbolift/main_station)
"chx" = (/obj/structure/cable{d1 = 1;d2 = 2;icon_state = "1-2";pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4},/obj/effect/landmark{name = "Observer-Start"},/turf/simulated/floor/tiled,/area/hallway/primary/central_one)
"chy" = (/obj/effect/floor_decal/corner/paleblue{icon_state = "corner_white";dir = 6},/obj/machinery/camera/network/civilian_west{c_tag = "Central Corridor - Camera 6";dir = 8},/obj/structure/noticeboard{pixel_x = 32},/turf/simulated/floor/tiled,/area/hallway/primary/central_one)
"chy" = (/obj/effect/floor_decal/corner/paleblue{icon_state = "corner_white";dir = 6},/obj/machinery/camera/network/civilian_west{c_tag = "Central Corridor - Camera 6";dir = 8},/obj/machinery/station_map{dir = 8;pixel_x = 32},/turf/simulated/floor/tiled,/area/hallway/primary/central_one)
"chz" = (/obj/structure/grille,/obj/machinery/door/firedoor,/obj/structure/window/reinforced,/obj/structure/window/reinforced{icon_state = "rwindow";dir = 4},/obj/structure/window/reinforced{icon_state = "rwindow";dir = 8},/obj/structure/window/reinforced{tag = "icon-rwindow (NORTH)";icon_state = "rwindow";dir = 1},/turf/simulated/floor/plating,/area/hallway/primary/central_one)
"chA" = (/obj/effect/floor_decal/corner/paleblue{icon_state = "corner_white";dir = 9},/obj/machinery/light{dir = 8;icon_state = "tube1";pixel_y = 0},/turf/simulated/floor/tiled,/area/hallway/primary/central_one)
"chB" = (/turf/simulated/floor/plating,/area/turbolift/main_station_aux)
@@ -6349,6 +6349,10 @@
"cse" = (/obj/machinery/iv_drip,/obj/machinery/light_switch{pixel_x = -24;pixel_y = 0},/turf/simulated/floor/tiled/white,/area/medical/surgerywing)
"csf" = (/obj/machinery/portable_atmospherics/hydroponics,/obj/machinery/atmospherics/portables_connector{dir = 8},/obj/effect/floor_decal/corner/green{icon_state = "corner_white";dir = 6},/obj/machinery/light_switch{pixel_x = 24;pixel_y = 0},/turf/simulated/floor/tiled/white,/area/rnd/xenobiology/xenoflora)
"csg" = (/obj/structure/bed/padded,/obj/item/weapon/bedsheet/mime,/obj/machinery/light_switch{pixel_y = 28},/turf/simulated/floor/wood,/area/crew_quarters/sleep/main)
"csh" = (/obj/machinery/station_map{dir = 8;pixel_x = 32},/turf/simulated/floor/tiled,/area/hallway/primary/starboard)
"csi" = (/obj/machinery/station_map{dir = 1;pixel_y = -32},/turf/simulated/floor/tiled,/area/engineering/foyer)
"csj" = (/obj/effect/floor_decal/corner/paleblue{icon_state = "corner_white";dir = 6},/obj/structure/noticeboard{pixel_x = 32},/turf/simulated/floor/tiled,/area/hallway/primary/central_one)
"csk" = (/obj/machinery/station_map{dir = 8;pixel_x = 32},/turf/simulated/floor/tiled,/area/hallway/primary/aft)
(1,1,1) = {"
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
@@ -6456,7 +6460,7 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaabaabaabaabaq
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaatSaaaatSaabaabaabaabaqAaqAaqAaqAaqAaabaabaabaabaabaabaabaabaabaabaabaabaoKatTatTatTatTatUasMapHauhaugaljaljaljaljauialjaukaujcjoaoQaoQaulaumaoQaoQaoQaljapRapRapRapRapRapRamkauoaunamkauqaufauramkamkamkcrOavDavDavDavDausakSakScmjauuautamlamlatnatnapnauvamlauwauxauxauzauyamlakkakkakkakkakkakkakkaaUaaUaaUaupauBauAauIauGauJaflafqauKauMauLauOauNauPauNauOauNceuaflaflaflauRauCauDauDauDauDauDauDauDauDaagalXauEabQaacaacaacauFauSauSauSauHaacaacaacaagaacaabaabaabaabauTauWauUauYauXavbavaavcauQaveavdavhavfaabaabaaaaaaaaaaaaaaaaaaaaaaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaajRajRajRajRauVaabaabaqAatSaqAatSaqAatSaabaabaabaabaabaabaabaabaabaabaabaabaoKavjavlavkauZavpasMapHavuavtavwavvavxavgavFaviavNavGaoPaoOavgavRavmaoOavnavoaljaljaljaljaljaljaljavqavravsavUavTavYavWawaavyccLavAavBcrPcrQavDanNaiNaiNaiNavEawbamlamlatnatnawcatDamlavHapnavIavJavKamlavLavMavMawgavOavPavQawlawiaaUawmawnavVavVawoavMavMavXaoLcjNawpavZawpawqawpavZawpavMavMavMavMawuawsauDawdawdawdawecscawvauDawhawwawhawhaaQaabaabaabaabaabaabaabaabaabaacaagaacaabaabaabawjaqtawkawxasSauXawAawzawCauQasSawEawkaqtawFaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaatSajRawrawrawrawGawtaabaabawtawtawtawtawtaabaabaabaabaabaabaabaabaabaabaabawtaoKcjnawHawIawKawJarMawyavuawLawMawBawNawDavFaviawPawOawSawRawRawTawRawRawRawUaxbawXaxgaxgaxgaxhaxiavqaxmawQaxpaxoaxraxqawVccMccNccOawWawWccQavDanNaiNaaaaiNarcawbamlamlamlamlamlaxuamlawYapnapnawZaxaamlaxvaxcaxdacoaxeabIabIaxfaxwaaUaxxaxzaaUaxjaxkaxlaxAaxnaxCaxnaxEaxFaxEaxnaxEaxHaxEaxnaxsaxsaxtaxJabKauDaxKaxMaxLawfaxyaxQaxOaxBaxRaJNawhaabaabaabcevatScevatScevaabaabaacaagaacaabaabaabaabasPaxUaxSasSaxGaxVaxIaxXaxWasSaxYaxZasPaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaajRaxNawrawrawGawtawtawtawtawtawtawtawtawtawtawtawtawtawtawtawtawtawtawtawtayaaxPaycaybaydaxTayfayeayhaygayjayiaylaykaynaymayrayoaytaymaymayuaymayyaymayAayEayDaymaymaymayFayGavqayHaypayqayKaysccRayOayvcrRccTccUaywcrSavDanNaiNaaaaiNayxayPayzayQayBayCaySayRamlayTapnapnapnayUamlayVayIayJayZayWayMayNazaabIazdavZazfaxkaxkazjaznazlazpazoaxnazqayXayYaxnazqayXcoyaxnaztazbazcaxJabKauDazuazeazvazgazhaACazwazkazxaxDawhaabaabceyazmazmazmazmazmcezaabaacaagaacaabaabaabaabazyazAazzasSazDasGazrasGazEasSazFazIatZaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaajRaxNawrawrawGawtawtawtawtawtawtawtawtawtawtawtawtawtawtawtawtawtawtawtawtayaaxPaycaybaydaxTayfayeayhaygayjayiaylaykaynaymayrayoaytaymaymayuaymayyaymayAayEayDaymaymaymayFayGavqayHaypayqayKaysccRayOayvcrRccTccUaywcrSavDanNaiNaaaaiNayxayPayzayQayBayCaySayRamlayTapnapnapnayUamlayVayIayJayZayWayMayNazaabIazdavZazfaxkaxkazjaznazlazpazoaxnazqayXayYaxnazqayXcoyaxnaztazbazcaxJabKauDazuazeazvazgazhaACazwazkazxcshawhaabaabceyazmazmazmazmazmcezaabaacaagaacaabaabaabaabazyazAazzasSazDasGazrasGazEasSazFazIatZaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaatSajRawrawrawrawGawtaabaabaabawtawtawtawtawtaabaabaabaabaabaabaabaabaabaabawtaoKawHawHazJazMazLazNascazPazOawMawBazQazBaoOazCazSazRazYazGazGazGazGazHazGazZaAaazKaAdaAbaAkaAjaAlavqaAmawQaAqaAoazTcrTayLayLazVazWazWazWazWazWanNaiNaaaaiNazXaAraAuaAtayBaAyaAAaAzamlaADapnapnapnaxaamlaAEaAeaAfacoavOaAgaAhaAiabIavOaAIaAKaAJaALaxkaAnaAMaApaANaxnaAOaAsaAPaxnaAOaAsaAQaxnaAvaAwaAxaxJabKauDaARaAUaASaABawfaAWazwaxDaAXcjpawhaabaabatSazmazmazmazmazmatSaabaacabMaacaabaabaabaabauTaBaaAZaBdaBbaBfaBeaBhaBgaBnaBkaBoavfaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaajRajRajRajRaATaabaabaabaqAatSaqAatSaqAatSaqAaabaabaabaabaabaabaabaabaabaabaoKavjavlavkaoKaBqaAVapHavuaBsaBtaAYaBvaBuaBxaBcawPavGaByaoQaBFaBDaBHaBGaBGaBIaoQaBHaBIaoQaBLaBKaBMavqavqaBiaBjaBNaBlcrUcjqcrVazVaBmaBPaBOaBpaBQanNaiNaaaaiNaiNaiNaBrcmkayBaBRaBUaBTamlaBVapnapnapnaxaamlaBwaCeaBZaBzaBAaBBajzabIaBCaBAaAIaCfaBEaChaCgaCjaCiaBJaCkaxnaClaCoaClaxnaClaCpaClaxnaxnaxnaxnaCsaCrauDaCtaxMaCuaBSawfaCwaCvcfNaCxaBWawhaabaabceyazmazmazmazmazmcezaabaCaaCbaCaaCaaCaaCaaCaaCaaCaaCcaCdaqtaqtaCBaqtaqtaCcaCdaqtaqtaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaatSaaaatSaaaaaaaaaaabaabaqAaqAaqAaqAaqAaqAaabaabaabaabaabaabaabaabaabaabaoKaCCaCDaCDaCFaCEasMapHavuaCGaljaljaljaljaljaljaukaCHaCJaCIaCmaCnaCKaCKaINaINaCLaCqaCMaoQaCOaCNaCUaCTaCXaCVaCyaCNaCzaCYaDaaCZaDdaDbaDfaDeaDiaDgaDjaiNaaaaaaaaaaiNaiNawbayBaDkaDraDpamlamlaDtcfOcfOamlamlaDuaCPaCQaCQaCRaCQaCQaCQaCQaCSaAIazfaBEaDEaDAaDFaCWaDHaDGaDKaDIaAsaDLaDcaDMaDRaDOaDSaDhaKoaDUaDZabKauDaDlaDmaDnaDoaEaaDqaEbaDsaEcaEeawhaabaabatSazmazmazmazmazmatSaabaCaaDvaDwaDxaDyaDzaEgaDBaCaaDCaDDaEhaEkaEjaEoaEmaDJaDDaqtaaaaabaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
@@ -6474,7 +6478,7 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaabaaaaaaaaaaaaaaaaaaaaaaabaabaabaabaabaabaabaSgaQUaQUaQUaQUaQUafQagCagCagCagCagCaaQaabaabaabaKwbLhcmxaKwaKwaKwaKwavzazUazUazUazUcfSaUPaUQazUaVQaVSaVRaVUazUazUazUazUazUaITaQzaVYaVVciucoKaUXaUXaUYaUXaUZaVaaUXaVbaWaaUXaUXcivaVdaVeaVfciwcixaWcaViaVjaVkaVmciyaVmaVncgAaVgcizciAciBaVfaVqaIiaxDaxDaJLaVraxDaxDaJKaxDaxDaVsaJMaxDaJNaVtaxDaxDaxDaJLaVuaVvaVvaWjaxDaPvaxDaWlaWkaWmaVAaWoaWnaVDaVEaOMaVFaVGaVHaWpaGFaWraWqaWtaWsaVNaVOcmyaWuaOUaWvaSaaSaaWxaWwaVTaWyaPOaPNaWzaVWaVWaVWaVWaVWaLXaVXaTPaTPaTPaWBaLXaTPaTRaWbaLXaaaaaaaaaaaaaaaaaaaaaaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaabaabafGaQUaQUaQUaQUaQUaRxagCagCagCagCagCaeLaabaabaabaKwaWDaWCaWeaWeaWeaWeaWEaWgaWgaWgaWgaWgaWhaWgaWiaWFaWHaWGaWIcoLaWIaWIaWIaWIaWNaWJaWQaWPaWTaWTaWTaWTaWWaWVaWTaWXaWTaWTaWTaWZaWTciCaXbaXaaXdaXcaXkaXcaXcaXcaXcaXlaXlaXlaXlaXlaXlaXlaXmaXlaXdaXoaXpaLPaLPaLPaLPaLPaLPaLPaLPaLPaLPaXqaLPaLPaXraLPaLPaLPaLPaLPaLPaLPcoMaLPaXsaxDaOMaOMaXtaOMaOMaOMaOMaOMaOMaWKaWLaWMaXuaWOaOUaOUaXxaXwaWRaVOaRXaWSaOUaXyaWUaXzaXBaXAaWYaPaaXIaXHaXJaVWaXLaXKaXMaXfaLXaLXaLXaLXaLXaLXaLXaXiaXjaLXaLXaaaaaaaaaaaaaaaaaaaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqAaqAaaQaSgaQUaQUaQUaQUaQUafQagCagCagCagCagCaeLaqAaabaabaKwaKzaXNaKwaKwaKwaKwavzaXOazUazUaXPazUazUazUaXnaXQaDaaDacfTaDaaDaaDaaDaaDaaDaaXRaXTaXSaXVaXUaUXaUXaUXaXWaUXaUXaUXaUXaUXaXvaUXaXXaVdaVeaVfaVgaYaaVgaYcaVgaYcciDaYdblCaYcaVgaYcaVgaYeaXCaXDaXEaXFaDsaXGaDsaYfaXGcgkaDsaYhaYgcjvaYgcfUaYlaYmaYgccEaYnaYnaYnccFaYocoNaDsaYqaYpaYwaYraYyaYyaYyaYAaYyaYBcmzaYyaYCaWMaYEaYDaOUaRXaYHaYFaRXaYbaRXaYKaOUaPaaYLaPaaPaaPaaPaaPaaPOaPNawAaVWaYNaYMaYRaYOaLXaYiaYiaYiaYiaYiaLXaQtaRPaYkaaaaaaaaaaaaaaaaaaaaaaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeLafGaQUaQUaQUaQUaQUaRxagCagCagCagCagCaeLaaaaabaabaKwaKzaYSaKwaabaabaabavzaYTaZbaYVaPAcoOazUaZfaZhaZgazUazUaPAaPAaYsaYtaYtaYtaYuaYvaPAaUlaUlaUlaUlaUlaUlaZiaYxaYxaYxaYxaYxaYxaYxaYxaYxaYxaYxaVfchucglaUmaUmaYzaYzaYzaYzaYzaYzaYzcgmbffaVfaUmawhawhawhaZxaZraZzaZyaYGaYGaZAaYGaYIaYIaYIaYIaYIaYIaYJaZBaZCaZCaYJaZGaYJaYJaZKaZIaYPaYPaYPaYPaYPaYQaYQaYQaYQaYQaZMaWMaZOaZNaOUaYUaZPaYWaYXaYUaRXaYYaOUaYZaZaaZRaZcaZdaPaaZeaZTaOcaOgaZVaZYaZWaZZaZkaLXaYiaYiaYiaYiaYiaLXaQtaTnaYkaaaaaaaaaaaaaaaaaaaaaaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeLafGaQUaQUaQUaQUaQUaRxagCagCagCagCagCaeLaaaaabaabaKwaKzaYSaKwaabaabaabavzaYTaZbaYVaPAcoOazUaZfaZhaZgazUcsiaPAaPAaYsaYtaYtaYtaYuaYvaPAaUlaUlaUlaUlaUlaUlaZiaYxaYxaYxaYxaYxaYxaYxaYxaYxaYxaYxaVfchucglaUmaUmaYzaYzaYzaYzaYzaYzaYzcgmbffaVfaUmawhawhawhaZxaZraZzaZyaYGaYGaZAaYGaYIaYIaYIaYIaYIaYIaYJaZBaZCaZCaYJaZGaYJaYJaZKaZIaYPaYPaYPaYPaYPaYQaYQaYQaYQaYQaZMaWMaZOaZNaOUaYUaZPaYWaYXaYUaRXaYYaOUaYZaZaaZRaZcaZdaPaaZeaZTaOcaOgaZVaZYaZWaZZaZkaLXaYiaYiaYiaYiaYiaLXaQtaTnaYkaaaaaaaaaaaaaaaaaaaaaaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeLaSgaQUaQUaQUaQUaQUafQagCagCagCagCagCaeLaaaaabaabaKwaKzaXNaKwaabaabaabaabaabaabaabaaQaZoaZoaZobabaZoaZoaZoaZoaaQaaQaaQaaQaaQaaQaaQaaQaabaabaabaabaabaZqbaeaZsaZtaZuaZvaZwbafbahbagbajbaiaYxbakaYaaVgciEcoPaYzaZDaZDaZDaZDaZDaYzaZHbancfVaUmaabaabawhaZJaxDaNsbapaYGaZLbarbaqaYIbaxbazaZQbaDaZSaYJbaEaZUaZUbaGbaFaZXbaIbaKbaJbaNbacbadbaPbaQaYQbaUbaTbaUaYQbaWbaVbaZbalaOUbbbbbfbaobbgaYUaRXbbhaOUbbibasbatbaubavaPabawaPOaRjaRlaVWbbkbaybbnaVWaLXaYiaYiaYiaYiaYiaLXaQtaRPaYkaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeLafGaQUaQUaQUaQUaQUaRxagCagCagCagCagCaeLaaaaaaaabaKwaKzaXNaKwaabaabaabaabbbpbbqbbqbbrbaHbbtbbsbbubaLbaMbbvaZobcfbcfaKzaKzaKzaKzaKzaZqaZqaZqaZqaZqaZqaZqbaeaZsaZtaZwbaObbxaZsbbzbaRbaSbbAbbBaVgbbEbbCciFciGaYzaZDaZDaZDcmbaZDaYzaZmaZpaVgaUmaabaabawhbbaaxDbbGbbcaYGbbdbbebbIaYIbbMbbPbbNbbjbbRaYJbblbbmbblaYJbbVbbYbbWbccbcbbcebcdbchbcgbbwaYQbcibbybcjaYQbckaWMaWMaWMaOUbclbcnbbDbcocoQaRXbcraOUbcsbbHbcubbJbbKaPabbLbcwbcvbbOaVWbcxbbQbcyaVWaLXaYiaYiaYiaYiaYiaLXaQtaRPaYkaaaaaaaaaaaaaaaaaaaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeLaSgaQUaQUaQUaQUaQUafQagCagCagCagCagCaeLaaaaaaaaaaKwaKzaXNaKwaabaabaabaabbczbcBbbXbcCbbZbcabcDbcFbcEbbZbcIaZoaKzaKzaKzaKzaMfaKzbcJchqbcLbcNbcNceGceGceGbcOaZsaZsaZsaZsaZsaZsbaSbcPbcmbcSbcTaVgaYaciHciIciGaYzaZDaZDaZDbcqaZDaYzbdOaZpbcVbctbctbctbctbctbctbctbctaYGaYGaYGaYGaYIbcYbdabcZbcZbdbaYJaYJaYJaYJaYJbdcbcAbbWbdebddbdhbdfbdibcGbcHaYQbdkbdjbcKbdlbdobdnbdqbdpaOUaOUaOUaOUaOUaOUbcQaOUaOUaPabcRaPaaPaaPaaPaaqtbdraqtbdsaVWaZkbdtbduaVWaLXaYiaYiaYiaYiaYiaLXaQtaRPaYkaYkaYkaYkaYkaaaaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
@@ -6486,7 +6490,7 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaaaaaaaaaaaaaaaaaaaaaaKwbiYaXNaKwaKwaKwaKwaKwaKwaKwaKwaKwaKwaKwaKwaKwaKwbeZbiZbiZbiZcjjaKwaKwaYxbjObjbbjcbjdbjebjPbjSbjhbjibjhbjTbjkbjlbjmbjnbjnbjUbjpbjpbjWbjYaVgbkaciHciIciGaYzchBchBchBchOchBaYzbdOaZpaVgbgybkfbkhbkgbkjbkibkkbjEbkmbklbkpbkobjLbkqbjLbjLbgebksbjNbkwbkxbhvbhvbhvbjQbjRbkzbkybkAbjVbkBbjXbkCbjZbkEbkDbkGbkFbkIbkHbkKbkJbkMbkLbfnbkNbkObkObkObkObkPbknaabaabaabaabaabbkQasGbkRasGbkSbkrbkWcgFbkubkvbkXaabaabaabaabaabaaaaaaaaaaabaabaabaabaabaabaabaaaaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaaaaaaaaaaaaaaaaaaaaaaKwaMhblableblcblcblcblcblcblfblcblcblcblcblcchnblcblgbiZbliblhcjkbljbljblkblmbllbloblnblqblpbltblsblvblublyblwblAbkTbkUbkUbkVbgRbgRblBbjYaVgaYaaZjciKciGaYzchBchBchBcmcchBaYzaZmaZpaVgbctblHblbblIbldblJblLblKblNblMblPblOblNblQblSblRblTblNblNblUblXbhvbitblrbjQbhvbmcblYbmebmdbmhblxbmkbjZblzbmlbmnbmmblDbfnbfnbfnbfnbfnblEblFblFblFblFblFbhqblGaabaabaabaabaabbmobmqbmpbmybmvbmAbmzbmCbmBbmFbmEaabaabaabaabaabaabaaaaaaaaaaabaabaabaabaabaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaaaaaaaaaaaaaaaaaaaKwaKwaKwaKwaKwaKwaKwaKwaKwaKwaKwaKwaKwaKwaKwaKwaKzbaebiZbmIbmGcjjaKwaKwaYxbmMblVblWbmObjebmPblZbmbcsdcoTbmRbmQaZsbmSbgRbmfbmgcoUbmTaYxbjYaVgaYaaVgciMcoVaYzchWchBchBchBchBaYzaVgaZpaVgbmjbmUbmWbmVbnabmZbmjbmjbncbnbbmrbmsbmtbmubnebmwbmxbnfbjLbngbnhbhvbhvbhvceNbhvbnpbnkbmDbnrbnvbnvbnwbjZbmHbnxbmJbmKbmLbjZbnybmNbnAbnzbnCbnBbnEbnDbnFblFbhqblGaabaabaabaabaabbnGasGbkRasGbnHbkubmXbktbkubmYbnJaabaabaabaabaabaabaabaabaabaabaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaabaqAaqAaqAaZqbcWbnLbnKbnNbndcjjaabaabaYxbnObnOceOceObnQbnPbnPbnRbnibnjbnSbmQaZsbnlbnlbnmbnnbnobnoaYxbnTbiXaYaaZjaUmaUmaYzaYzaYzaYzaYzaYzaYzaZmaZpaVgbohbogbojboiboobolboqbopbjLborbozbnIbnIbnIboBboAboCbnIbnMboHbjLcgbboJbjLbjLboLboPboOboSboQbnUboTbnWbnXbnYboUboabnYboVbocbodboWbofboXboZboYbpabokbpbblFbhqbomaabaabaabaabaabbonawAbkRbpcbonbpebpdbpfbkubosbotaabaabaabaabaabclQaabaabaabaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaabaqAaqAaqAaZqbcWbnLbnKbnNbndcjjaabaabaYxbnObnOceOceObnQbnPbnPbnRbnibnjbnSbmQaZsbnlbnlbnmbnnbnobnoaYxbnTbiXaYacsjaUmaUmaYzaYzaYzaYzaYzaYzaYzaZmaZpaVgbohbogbojboiboobolboqbopbjLborbozbnIbnIbnIboBboAboCbnIbnMboHbjLcgbboJbjLbjLboLboPboOboSboQbnUboTbnWbnXbnYboUboabnYboVbocbodboWbofboXboZboYbpabokbpbblFbhqbomaabaabaabaabaabbonawAbkRbpcbonbpebpdbpfbkubosbotaabaabaabaabaabclQaabaabaabaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaabaabaaaaaaaabaabaabaabaabaabaabaqAaqAaZqbfwbaebouboubouboubouboubouboubouaYxaYxaYxbovaZsbowboxboxboybpgaZsaZsaZsaZsaYxaYxaYxaYxaYxbphaYaaVgciWaVgbkcbfUcoWcoXbkcaVgciWaVgaZpboIbplboKbpmboMboNboNbpobpnbppbngboRbpqbpsbprbpvbpubpzbpwbjFbpAbpBbpBbpBbpCbpBbpDbpFbpEbpGbpFbpFbpFbpHbpDbpFbpIbpLbpKbpObpMbpUbpPbpYbpWbqabpZbqbbptbqdblFbhqbgBaaaaabaabaabaqtaqtbqjbqgcmAaqtaqtbhRbhRbpxbpybhRaabaabaabaabaabaaaaaaaaaaabaaaaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaabaabaabaabaabaabaabaabaqAaqAaZqbqkbqlboubqnbqmbqpbqobqrbqqbqtboubqubpJcmdbpJbpJbpJbpJbpJbqwbqvbqzbpNbqBbqAbpQbpRbpSbpTbpQcoYaYaaVgciYaVgaYcaVgcidaVgaYcaVgciYaVgaZpbqcbqObqebqfbqPbqhbqibqSbqRbqUbqTbqWbqVbqYbqXbqZbqsbracoZbrebrdbrfbqxbqybrgbrhbnXbribqCbrjbqEbrkbnYbrlbqHbqIbrmbrnbqLbrobqNbrqbrpbqQbrrbrtbrsbrxbrwbryblFbhqbgBaaaaabaabaabaqtaqtasGbkRasGaqtaqtaabaabaabaabaabaabaaaaaaaabaabaabaaaaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaabaaaaqAaabaabaabaabaqAaqAaZqbiYbrDboubrEbrbbrcbrFbrHbrGbrKbrJbrMbrLbrQbrNbrNbrNbrNbrSbrNbrUbrNbrWbrNbrZbsbbsabsabpJbsdbjYaYacgwbmiciecieciecieciecieciebmibshbsjbsibsmboNbsnbqebqebrBbrCbspbsrbsqcpabstbsxbrIbszbsybsAbnIbsCbsBbsEbrObrObrObrObrObrObrObrObrObrObrPbsFbrRbrRbrRbrRbrRbrRbrRbsGbrTbsHbrVbqabsMbrXbrYbsPblFbhqbgBaaaaaaaaaaqtaqtceQaKFaKybbOceRaqtaqtaabaabaabaabaabaaaaabaabaaaaaaaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
@@ -6512,7 +6516,7 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaqAaqAaabaabaZqaMfaZqbJJbJKaZqbeZbFLcfbcfbcfbcfbcfbbFLbGibJLbLebJNbLfbJPbFNbLgbHhbJRbLibFNbJTbJubLjbJubLkbFNbLlcmebBkbFRbJwbJxbJwbFRbLnbKfbIOcnIcnncnycnncnMcohbDAbEAbIQbKbbISbEycjBbEybEycjGcjGcjGbEybFUbJAbKSchcbJCaabaabaaabgBbgBbgBbgBbgBbgBbgBaabaabbKcbLpbKeaabaabaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaabaabaabaaaaaaaaaaaaaaaaYkaRPbLqbLvaYkaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaqAaqAaabaabaZqaKzaZqbKhbKibLwbgpbFLbFLbFLbFLbFLbFLbFLbGibKkbKlbLBbLxcmFbFNbKobHhbHhbKpbFNbFNbJubLEbJubFNbFNbrDaKzaKzbFRbJwbJXbLmbFRbKsbLGcgEcnecnecnQcnecnecnebDAbEAbGpbKubKvbKwbKwbKwbKwbKwbKwbKwbLKbHGbKybKSchdbKzaabaabaaaaaaaaaaaaaaaaaaaabaabaabaabbKAbLMbKAaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaabaabaabaabaabaaaaaaaaaaaaaYkaYkaYkaYkaYkaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqAaabaabaqAaZqaKzaZqbKCaKzaZqbLNbLObcMbcMbcMbcMbLPaKwbGibGibKGbLQbKIbGibFNbKJbHhbKKbLWbFNbKMbKNcptbKNbKMbFNbaebKOaKzbKrbKrbKrbKrbKrbLZbMdbKacnecnVcnWcnXcnecnZbDAbKUbKVbMebKXbKYbITbKZbLacjJcjJcjJbIhbMgbDAbKSbLcbLcaabaabaabaabaabaabaaaaabaabaabaabaabbLdbMhbLdaabaabaabaabaaaaaaaaaaaaaaaaaaaaaaabaabaabaaaaaaaaaaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaqAaZqaKzaZqaZqaZqaZqaZqaZqaZqaZqaZqaZqbeZaKwbGibGibGicmGbGibGibFNbFNbMnbFNbFNbFNbKMbKNbKMbKNbKMbFNbMoaZqbLhbKrbKPbKQbKRbKrbIObKfbIOcnecnVcoccodcnecnZbDAbDAbDAbDAbDAbDAbDAbDAbDAbDAbDAbDAbMvbDAbDAbKSbLcaabaabaabaabaabaaaaaaaaaaabaabaabaabaabaabbMwaabaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaqAaZqaKzaZqaZqaZqaZqaZqaZqaZqaZqaZqaZqbeZaKwbGibGibGicmGbGibGibFNbFNbMnbFNbFNbFNbKMbKNbKMbKNbKMbFNbMoaZqbLhbKrbKPbKQbKRbKrbIObKfcskcnecnVcoccodcnecnZbDAbDAbDAbDAbDAbDAbDAbDAbDAbDAbDAbDAbMvbDAbDAbKSbLcaabaabaabaabaabaaaaaaaaaaabaabaabaabaabaabbMwaabaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaZqaKzaKzaZqbLobMybMxbLrbLsbLtbvTbMGcmYaMfcmZcmIaZqbMHcmJcmJcmJcmJbMHbFNaabbFNbKMbLzbKMbLAbKMbFNbaebMJaKzbKrbMpbMqbMqbMsbMrciqbLHbGCbLIbLIbLIbLIbLIbDAbDAbDAbLJbLJbMPbLLbLLbMTbMRbMUbMUbMVbMUbMUbMWbLcaaaaabaaaaaaaaaaaaaaaaaaaaaaabaabaabaabaabaabaabaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaZqbcWaKzaZqbvTbLRbvTbLSbLTbvUbvTaZqbeZcmZcnbcmZaZqaZqaZqaZqaZqaZqaZqbFNaabbFNbKMbKMbMXbKMbKMbFNbaebLXaKzbKrbLCbLDbMMbKrcpubKfcpvbGCbLIbLYbNibMabMbbMcbNkbLIbNlbLIbMfbLIbLIbNpbNmbLcbMibLcbLcbLJbLcbLcaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaabaabaabaabaabaabaabaaaaaaaaaaaaaaaaaaaaaaabaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaZqbfwaMfaZqbvTaKzbMjbMkbMlbLSbvTaZqbMzbcMbcMcncbcMbcMbcMcmHbcMbLPaKwaKwaKwbFNbNqbNrbNrbNrbNsbFNbrDbLXaKzbKrbKrbKrbKrbKrbNwbKfbIObNxcmfbMtbMtbMtbMtbMtccIbLIbNBbNDbNCbNEbLIbNGbNFbLcbMAbMBbLJbLJbLcbLcbLcbLcbLcbLcbLcbLcbLcbLcbLcbLcaaaaaaaaaaabaabaabaabaabaaaaaaaaaaaaaaaaaaaaaaabaabaaaaabaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+5 -4
View File
@@ -827,7 +827,7 @@
"pU" = (/obj/structure/grille,/obj/structure/window/reinforced{icon_state = "rwindow";dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/sign/directions/medical{dir = 4;icon_state = "direction_med";pixel_x = 0;pixel_y = 8;tag = "icon-direction_med (EAST)"},/obj/structure/sign/directions/science{dir = 4;icon_state = "direction_sci";pixel_y = 0;tag = "icon-direction_sci (EAST)"},/obj/structure/sign/directions/security{dir = 4;icon_state = "direction_sec";pixel_x = 0;pixel_y = -8;tag = "icon-direction_sec (EAST)"},/turf/simulated/floor/plating,/area/hallway/secondary/entry/fore)
"pV" = (/turf/simulated/floor/airless,/area/solar/starboard)
"pW" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/green{d1 = 1;d2 = 2;icon_state = "1-2"},/obj/machinery/camera/network/civilian_east{c_tag = "Surface - Corridor Camera 10";dir = 8},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/fore)
"pX" = (/obj/effect/floor_decal/corner/paleblue{icon_state = "corner_white";dir = 4},/obj/effect/floor_decal/corner/paleblue{icon_state = "corner_white";dir = 8},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/fore)
"pX" = (/obj/effect/floor_decal/corner/paleblue{icon_state = "corner_white";dir = 4},/obj/effect/floor_decal/corner/paleblue{icon_state = "corner_white";dir = 8},/obj/machinery/station_map{dir = 8;pixel_x = 32},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/fore)
"pY" = (/obj/structure/closet/emcloset,/obj/effect/floor_decal/corner/paleblue{icon_state = "corner_white";dir = 4},/obj/effect/floor_decal/corner/paleblue{icon_state = "corner_white";dir = 8},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/fore)
"pZ" = (/obj/structure/table/standard,/obj/random/tech_supply,/obj/random/tech_supply,/obj/item/device/radio/intercom{pixel_x = -32},/obj/random/tech_supply,/obj/random/tech_supply,/obj/machinery/light{dir = 8},/turf/simulated/floor/tiled,/area/storage/primary)
"qa" = (/obj/machinery/hologram/holopad,/obj/effect/landmark/start{name = "Assistant"},/turf/simulated/floor/tiled,/area/storage/primary)
@@ -845,7 +845,7 @@
"qm" = (/obj/structure/reagent_dispensers/watertank,/turf/simulated/floor/tiled,/area/storage/primary)
"qn" = (/obj/structure/cable/yellow{d1 = 1;d2 = 8;icon_state = "1-8"},/obj/structure/cable/yellow{d1 = 2;d2 = 8;icon_state = "2-8"},/turf/simulated/floor/airless,/area/solar/starboard)
"qo" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{icon_state = "rwindow";dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/sign/directions/cryo{pixel_y = -4},/obj/structure/sign/directions/civ{dir = 4;icon_state = "direction_civ";pixel_y = 4;tag = "icon-direction_civ (EAST)"},/turf/simulated/floor/plating,/area/hallway/secondary/entry/fore)
"qp" = (/obj/structure/sign/double/map/left{pixel_y = 32},/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor/tiled,/area/hallway/secondary/entry/fore)
"qp" = (/obj/machinery/atmospherics/unary/vent_pump/on,/turf/simulated/floor/tiled,/area/hallway/secondary/entry/fore)
"qq" = (/obj/effect/floor_decal/corner/paleblue/full{icon_state = "corner_white_full";dir = 1},/obj/structure/sign/drop{pixel_x = 32},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/fore)
"qr" = (/obj/effect/floor_decal/corner/paleblue{icon_state = "corner_white";dir = 5},/obj/structure/bed/chair/comfy/teal{dir = 4;icon_state = "comfychair_preview"},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/fore)
"qs" = (/obj/machinery/airlock_sensor{frequency = 1380;id_tag = "arrivals_surface_sensor";pixel_x = 25;pixel_y = 0},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 2;frequency = 1380;id_tag = "arrivals_surface_pump"},/obj/machinery/light/small/emergency{dir = 8},/obj/machinery/embedded_controller/radio/airlock/airlock_controller{frequency = 1380;id_tag = "arrivals_surface_airlock";pixel_x = -32;req_access = list(13);tag_airpump = "arrivals_surface_pump";tag_chamber_sensor = "arrivals_surface_sensor";tag_exterior_door = "arrivals_surface_outer";tag_interior_door = "arrivals_surface_inner"},/turf/simulated/floor/plating,/area/hallway/secondary/entry/fore)
@@ -863,7 +863,7 @@
"qE" = (/obj/structure/table/standard,/obj/random/tech_supply,/obj/random/tech_supply,/obj/machinery/alarm{dir = 4;icon_state = "alarm0";pixel_x = -22},/obj/random/tech_supply,/obj/random/tech_supply,/turf/simulated/floor/tiled,/area/storage/primary)
"qF" = (/obj/structure/disposalpipe/segment,/obj/machinery/light{dir = 8;icon_state = "tube1";pixel_y = 0},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/fore)
"qG" = (/obj/machinery/access_button{command = "cycle_interior";frequency = 1380;master_tag = "arrivals_surface_airlock";name = "interior access button";pixel_x = -23;pixel_y = 25;req_access = list(13)},/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor/tiled,/area/hallway/secondary/entry/fore)
"qH" = (/obj/structure/sign/double/map/right{pixel_y = 32},/obj/machinery/alarm{dir = 8;icon_state = "alarm0";pixel_x = 24},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/fore)
"qH" = (/obj/machinery/alarm{dir = 8;icon_state = "alarm0";pixel_x = 24},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/fore)
"qI" = (/obj/structure/bed/chair{dir = 1},/obj/item/device/radio/intercom{dir = 4;name = "Station Intercom (General)";pixel_x = 27},/obj/machinery/light/small/emergency{dir = 8},/obj/machinery/camera/network/command{c_tag = "Bridge - Pod 1";dir = 4},/turf/simulated/shuttle/floor,/area/shuttle/escape_pod1/station)
"qJ" = (/obj/structure/cryofeed,/turf/simulated/floor/tiled/white,/area/crew_quarters/sleep/cryo)
"qK" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/turf/simulated/floor/tiled,/area/storage/primary)
@@ -2158,6 +2158,7 @@
"SD" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/window/reinforced{icon_state = "rwindow";dir = 4},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/port)
"SE" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/machinery/door/firedoor,/obj/structure/window/reinforced{dir = 8},/obj/structure/sign/securearea{desc = "A warning sign which reads 'KEEP CLEAR OF DOCKING AREA'.";name = "KEEP CLEAR: DOCKING AREA";pixel_y = 0},/turf/simulated/floor/plating,/area/hallway/secondary/entry/port)
"SF" = (/obj/structure/flora/pottedplant/random,/obj/machinery/light_switch{pixel_x = 0;pixel_y = -32},/turf/simulated/floor/tiled,/area/crew_quarters/sleep/cryo)
"SG" = (/obj/effect/floor_decal/corner/lime{icon_state = "corner_white";dir = 5},/obj/machinery/station_map{dir = 2;pixel_x = 0;pixel_y = 32},/turf/simulated/floor/tiled,/area/hallway/secondary/entry/fore)
(1,1,1) = {"
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
@@ -2259,7 +2260,7 @@ aaaaaaaaacaadwdVdxaadwdVdxaadwdVdxaaacaaaaajajajaPaXaPbcbgbgbybybybXejegdOekekek
aaaaaaaaacaadwdVdxaadwdVdxaadwdVdxaaacaaaaajajajaPaXaPbcbgbgbybybybXeMeFdOekepepepeGepeNepeGepepepekdObXdDcdeIeJeKbgbgbgajajajajajajaaaaaauzuzuzuzLvLvLvLvLvLvLvLvLvuzuzuzuzaaaaereSePeTeOePeTeUeQaaaaaaaaJUeHKSeLJUaaaaaaaaeReWeVfaeXeVfafbeAaaaaaabWbWbWbWbWbWbWbWbWbWbWbWbWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaabacacabffdwdVdxaadwdVdxaadwdVdxaaacaaeYeZeZeZeZaXaPbcbgbgbybybybXfjfodOekfcfdfeeGepfrepeGepfgfhekdOfifscdfkflfmfnbgbgajajajajajajaaaaaauzuzuzuzLvLvLvLvLvLvLvLvLvuzuzuzftfpfpfqfwfvfBfufvfCfDfxaaaaaaaaLbLcfzKLLbaaaaaaaafAfIfFfNfEfFfNfOfGfHfHfPbWbWbWbWbWbWbWbWbWbWbWbWbWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaacaaaaaaaaaafJaaaaaafJaaaaaafJaaaafKfLfMfRfQfSeZaXaPbcbgbgbybybybXfUgadOekepepepeGepgbepeGepepepekdOfTgcfVfWfXfYfZbgbgajajajajajajaaaaaauzuzuzuzLvLvLvLvLvLvLvLvLvuzuzuzgegdgmglgnfufufufugffDggaabqevexbqghgighbqevexbqaagjfIfEfEgkfEfEgpgogrgqgsbWbWbWbWbWbWbWbWbWbWbWbWbWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaacaagvgugwgtgtgtgtgtgtgtgtgtgtgxgzgygBgAgDgCgFgEgGaPbcbgbgbybybybXgKgOdOgPgHgIgJeyekgQekeygLgMgNgRdOgUgTdhgYgShbhcbgbgajajajajajajaaaaaauzuzuzuzLvLvLvLvLvLvLvLvLvuzuzuzgVfpgWgXhdgZhafufugfheerbqbqhghfhfhfhhhfhjhfhnbqbqeAhpfEfEhifEfEhrhkhlfHhmbWbWbWbWbWbWbWbWbWbWbWbWbWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaacaagvgugwgtgtgtgtgtgtgtgtgtgtgxgzgygBgAgDgCgFgEgGaPbcbgbgbybybybXgKgOdOgPgHgIgJeyekgQekeygLgMgNgRdOgUgTdhgYgShbhcbgbgajajajajajajaaaaaauzuzuzuzLvLvLvLvLvLvLvLvLvuzuzuzgVfpgWgXhdgZhafufugfheerbqbqhghfSGhfhhhfhjhfhnbqbqeAhpfEfEhifEfEhrhkhlfHhmbWbWbWbWbWbWbWbWbWbWbWbWbWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaacaaaaaaaaaahsaaaaaahsaaaaaahsaaaafKfLhohthqhBeZhIaPbcbgbgbybybybXhJhudOekhvhwhxeGepgbepeGhxhyhzekdOhAhKhChDhEhFhGbgbgajajajajajajaaaauzuzuzuzuzuzLvLvLvLvLvLvLvuzuzuzuzuzuzhHhMhNfvhOfufvhOfDhLhXhWhZhPhQhRhShThUhViahfichYfIfFfNhifFfNifidibaaaabWbWbWbWbWbWbWbWbWbWbWbWbWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaabacacabaadwihdxaadwihdxaaimihdxaaacaaieeZeZeZeZaXaPbcbgbgbybybybXdDcddOekepepepeGepinepeGepepepekdOigiocdfkiiijikbgbgajajajajajajaaaauzuzuzuzuzuzLvLvLvLvLvLvLvuzuzuzuzuzuzhHiliriqisipiuitiwiviyixiAiziCiBiEiDiGiFiHiAiJiIiMiLiNiKiYiOjdjbibaaaabWbWbWbWbWbWbWbWbWbWbWbWbWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaacaadwihdxaadwihdxaaimihdxaaacaaajajajajaPaXaPbcbgbgbybybybXdDcddOekiPiQiRiSepeNepiTiUiViWekdOiXjecdiZeJeKbgbgbgajajajajajajaaaaaauzuzuzuzLvLvLvLvLvLvLvLvLvuzuzuzuzuzhHjajffvfBjcfvfBjljgjnjmjhdYjidYdYdYjidYjjcqjkhYjofFfNhifFfNifjpibaaaabWbWbWbWbWbWbWbWbWbWbWbWbWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa