diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 8bdd7871c65c..6f97d58eddf3 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -106,8 +106,7 @@ jobs: run: | sudo dpkg --add-architecture i386 sudo apt update || true - sudo apt install lib32z1 git pkg-config libssl-dev:i386 libssl-dev zlib1g-dev:i386 curl gcc libdbus-1-dev - sudo apt install gcc:i386 + sudo apt install zlib1g-dev:i386 tools/ci/install_rustg.sh - name: Compile & Run Unit Tests run: | diff --git a/_maps/map_files/RandomRuins/SpaceRuins/moonoutpost19.dmm b/_maps/map_files/RandomRuins/SpaceRuins/moonoutpost19.dmm index 09f32f0d372b..9346dea8c35e 100644 --- a/_maps/map_files/RandomRuins/SpaceRuins/moonoutpost19.dmm +++ b/_maps/map_files/RandomRuins/SpaceRuins/moonoutpost19.dmm @@ -7,7 +7,7 @@ dir = 1 }, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ac" = ( /obj/structure/sign/directions/medical{ pixel_x = -32; @@ -18,10 +18,10 @@ icon_state = "caution"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ad" = ( /turf/simulated/floor/plating/asteroid/airless, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ae" = ( /obj/effect/turf_decal/stripes/asteroid/line{ dir = 4 @@ -32,14 +32,14 @@ /turf/simulated/floor/plating/asteroid/airless{ icon_state = "asteroidplating" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "af" = ( /obj/effect/spawner/random_spawners/wall_rusted_always, /turf/simulated/wall/r_wall, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ag" = ( /turf/simulated/wall/r_wall, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ah" = ( /obj/structure/cable{ d1 = 1; @@ -50,24 +50,24 @@ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ai" = ( /obj/structure/railing/corner, /turf/simulated/floor/plasteel{ icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "aj" = ( /obj/effect/decal/cleanable/dirt, /mob/living/simple_animal/hostile/alien, /turf/simulated/floor/plating{ icon_state = "asteroidplating" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ak" = ( /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "al" = ( /obj/structure/railing/cap{ dir = 10 @@ -75,7 +75,7 @@ /turf/simulated/floor/plasteel{ icon_state = "green" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "am" = ( /obj/structure/window/reinforced, /obj/structure/chair{ @@ -86,14 +86,14 @@ dir = 1; icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ao" = ( /obj/structure/closet/crate, /obj/item/flashlight/flare, /obj/item/flashlight/flare, /obj/item/flashlight/flare, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ap" = ( /obj/machinery/shower{ dir = 8 @@ -101,7 +101,7 @@ /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/machinery/atmospherics/pipe/simple/hidden/supply, /turf/simulated/floor/noslip, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "aq" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/delivery/partial{ @@ -111,7 +111,7 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "as" = ( /obj/structure/table/reinforced, /obj/machinery/door/window/reinforced/normal, @@ -119,7 +119,7 @@ dir = 8; icon_state = "dark" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "at" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/blood/tracks{ @@ -131,7 +131,7 @@ pixel_y = 8 }, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "au" = ( /obj/effect/turf_decal/stripes/asteroid/line{ dir = 1 @@ -141,12 +141,12 @@ }, /obj/structure/flora/ausbushes/fullgrass, /turf/simulated/floor/plating/asteroid/airless, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "av" = ( /turf/simulated/floor/plating/asteroid/airless{ icon_state = "asteroid2" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "aw" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 9 @@ -161,7 +161,7 @@ /turf/simulated/floor/plasteel{ icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ax" = ( /obj/machinery/computer/arcade/recruiter{ dir = 1 @@ -170,7 +170,7 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ay" = ( /obj/effect/turf_decal/stripes/asteroid/line{ dir = 1 @@ -181,10 +181,10 @@ /turf/simulated/floor/plating/asteroid/airless{ icon_state = "asteroid10" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "aA" = ( /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "aB" = ( /obj/structure/railing, /obj/item/storage/toolbox/mechanical{ @@ -195,7 +195,7 @@ /turf/simulated/floor/plasteel{ icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "aC" = ( /obj/structure/table/glass, /obj/machinery/atmospherics/pipe/simple/hidden{ @@ -204,7 +204,7 @@ /turf/simulated/floor/plasteel{ icon_state = "whitehall" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "aD" = ( /obj/structure/toilet{ pixel_y = 8 @@ -214,14 +214,14 @@ /turf/simulated/floor/plasteel{ icon_state = "freezerfloor" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "aE" = ( /obj/structure/railing{ dir = 1 }, /obj/structure/chair/sofa/bench/right, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "aF" = ( /obj/structure/window/reinforced, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ @@ -232,7 +232,7 @@ }, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "aG" = ( /obj/structure/table/reinforced, /obj/machinery/door/window/reinforced/normal{ @@ -250,14 +250,14 @@ dir = 8; icon_state = "dark" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "aH" = ( /obj/structure/railing/cap{ dir = 8 }, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "aI" = ( /obj/structure/railing{ dir = 4 @@ -272,7 +272,7 @@ pixel_x = -2 }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "aJ" = ( /obj/structure/railing, /obj/effect/turf_decal/stripes/asteroid/line, @@ -282,34 +282,34 @@ /turf/simulated/floor/plating/asteroid/airless{ icon_state = "asteroid12" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "aK" = ( /obj/structure/window/reinforced{ dir = 4 }, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "aL" = ( /turf/simulated/wall, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "aM" = ( /obj/effect/spawner/random_spawners/wall_rusted_always, /turf/simulated/wall, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "aN" = ( /obj/machinery/door/airlock/medical/glass{ req_access_txt = "271"; name = "Storage Room" }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "aO" = ( /obj/structure/table/glass/reinforced/titanium, /turf/simulated/floor/plasteel{ icon_state = "black" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "aP" = ( /obj/effect/turf_decal/stripes/asteroid/line{ dir = 1 @@ -318,7 +318,7 @@ dir = 1 }, /turf/simulated/floor/plating/asteroid/airless, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "aQ" = ( /obj/structure/disposaloutlet{ dir = 8 @@ -332,7 +332,7 @@ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "aR" = ( /obj/structure/railing/cap{ dir = 1 @@ -345,7 +345,7 @@ icon_state = "whitehall"; dir = 6 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "aS" = ( /obj/structure/railing, /obj/effect/turf_decal/stripes/asteroid/line, @@ -355,7 +355,7 @@ /turf/simulated/floor/plating/asteroid/airless{ icon_state = "asteroid8" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "aU" = ( /turf/simulated/floor/mineral/titanium, /area/ruin/space/powered) @@ -363,7 +363,7 @@ /obj/effect/decal/remains/human, /obj/structure/flora/ausbushes/fullgrass, /turf/simulated/floor/plating/asteroid/airless, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "aW" = ( /obj/structure/window/reinforced{ dir = 1 @@ -376,7 +376,7 @@ dir = 9; icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "aX" = ( /obj/structure/railing{ dir = 8 @@ -387,7 +387,7 @@ icon_state = "black"; dir = 10 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "aY" = ( /obj/structure/chair/office/light{ dir = 1 @@ -395,7 +395,7 @@ /turf/simulated/floor/plasteel{ icon_state = "black" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "aZ" = ( /obj/machinery/door/poddoor/impassable{ id_tag = "awaymlock" @@ -405,7 +405,7 @@ name = "Medical Ward" }, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ba" = ( /obj/machinery/door/airlock/multi_tile/glass{ req_access_txt = "271" @@ -413,14 +413,14 @@ /turf/simulated/floor/plasteel{ icon_state = "freezerfloor" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "bb" = ( /obj/machinery/door/airlock/multi_tile/glass, /turf/simulated/floor/plasteel{ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "bd" = ( /obj/structure/sign/nosmoking_1{ pixel_x = 32 @@ -430,7 +430,7 @@ icon_state = "caution"; dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "be" = ( /obj/structure/chair/sofa/bench/left{ dir = 4 @@ -439,7 +439,7 @@ icon_state = "caution"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "bf" = ( /obj/structure/window/reinforced{ dir = 4 @@ -449,7 +449,7 @@ dir = 5; icon_state = "black" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "bh" = ( /obj/structure/rack, /obj/effect/spawner/lootdrop/maintenance, @@ -457,39 +457,39 @@ icon_state = "caution"; dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "bi" = ( /obj/structure/railing{ dir = 1 }, /obj/structure/chair/sofa/bench/left, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "bj" = ( /obj/machinery/door/airlock/maintenance_hatch, /obj/structure/barricade/wooden/crude{ layer = 4 }, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "bk" = ( /obj/machinery/economy/vending/snack, /turf/simulated/floor/plasteel{ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "bl" = ( /obj/structure/chair/office{ dir = 4 }, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "bm" = ( /obj/structure/closet, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "bp" = ( /obj/structure/table/reinforced, /obj/structure/window/reinforced{ @@ -503,7 +503,7 @@ dir = 8; icon_state = "dark" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "bq" = ( /obj/structure/table/reinforced, /obj/item/book/manual/wiki/security_space_law, @@ -512,14 +512,14 @@ dir = 8; icon_state = "dark" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "bs" = ( /obj/structure/table/glass, /turf/simulated/floor/plasteel{ icon_state = "whitehall"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "bt" = ( /obj/structure/bed, /obj/item/bedsheet/medical, @@ -531,7 +531,7 @@ icon_state = "whitecorner"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "bu" = ( /obj/structure/railing{ dir = 4 @@ -539,11 +539,11 @@ /obj/structure/rack, /obj/effect/spawner/lootdrop/maintenance, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "bv" = ( /obj/structure/ore_box, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "bw" = ( /obj/structure/window/reinforced{ dir = 1 @@ -552,7 +552,7 @@ dir = 4 }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "bx" = ( /obj/machinery/door/airlock/external/glass, /turf/simulated/floor/mineral/titanium, @@ -560,7 +560,7 @@ "bz" = ( /obj/structure/girder, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "bB" = ( /obj/machinery/light/small{ dir = 4 @@ -573,7 +573,7 @@ dir = 4; icon_state = "black" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "bC" = ( /obj/machinery/atmospherics/unary/cryo_cell, /obj/structure/window/reinforced{ @@ -584,7 +584,7 @@ }, /obj/effect/turf_decal/delivery/white/hollow, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "bD" = ( /obj/structure/railing{ dir = 1 @@ -594,7 +594,7 @@ dir = 8; icon_state = "dark" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "bE" = ( /obj/effect/turf_decal/stripes/corner, /obj/structure/sign/vacuum{ @@ -609,7 +609,7 @@ icon_state = "caution"; dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "bF" = ( /obj/structure/railing, /obj/effect/turf_decal/stripes/asteroid/end{ @@ -620,7 +620,7 @@ }, /obj/structure/flora/ausbushes/sparsegrass, /turf/simulated/floor/plating/asteroid/airless, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "bG" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/cobweb, @@ -630,7 +630,7 @@ dir = 9; icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "bH" = ( /obj/structure/sign/restroom{ pixel_y = -32 @@ -638,7 +638,7 @@ /obj/machinery/light/small, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "bJ" = ( /obj/structure/table/reinforced, /obj/machinery/door/window/reinforced/normal{ @@ -648,14 +648,14 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "bK" = ( /obj/effect/turf_decal/delivery, /turf/simulated/floor/plasteel{ dir = 8; icon_state = "dark" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "bN" = ( /obj/structure/window/reinforced{ dir = 1 @@ -668,15 +668,15 @@ dir = 4 }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "bO" = ( /obj/item/cigbutt, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "bP" = ( /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "bS" = ( /obj/effect/turf_decal/loading_area/white{ dir = 1 @@ -685,7 +685,7 @@ icon_state = "caution"; dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "bU" = ( /obj/structure/rack, /obj/effect/spawner/lootdrop/maintenance, @@ -693,7 +693,7 @@ dir = 8; icon_state = "dark" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "bW" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 @@ -702,11 +702,11 @@ color = "red" }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "bY" = ( /obj/structure/railing, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "bZ" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 5 @@ -715,7 +715,7 @@ dir = 5 }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ca" = ( /obj/structure/railing/cap{ dir = 8 @@ -723,30 +723,30 @@ /turf/simulated/floor/plasteel/stairs{ dir = 1 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "cb" = ( /obj/structure/railing/corner, /turf/simulated/floor/plasteel/stairs{ dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "cc" = ( /obj/structure/flora/tree/jungle/small, /obj/structure/flora/rock/pile/largejungle, /turf/simulated/floor/grass, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "cd" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 }, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ce" = ( /obj/structure/window/reinforced, /obj/machinery/light/small, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "cf" = ( /obj/effect/decal/cleanable/blood/tracks{ color = "red"; @@ -761,13 +761,13 @@ icon_state = "whitehall"; dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ch" = ( /obj/structure/chair/office{ dir = 8 }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ci" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply, /obj/structure/cable{ @@ -778,22 +778,22 @@ /turf/simulated/floor/plasteel/stairs{ dir = 1 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "cj" = ( /obj/structure/chair/office/dark{ dir = 1 }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "cm" = ( /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "cn" = ( /obj/effect/turf_decal/stripes/asteroid/line{ dir = 8 }, /turf/simulated/floor/plating/asteroid/airless, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "co" = ( /obj/structure/railing/cap{ dir = 1 @@ -805,11 +805,11 @@ icon_state = "yellowsiding"; dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "cp" = ( /obj/effect/landmark/damageturf, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "cq" = ( /obj/structure/railing/corner{ dir = 4 @@ -817,17 +817,17 @@ /turf/simulated/floor/plasteel/stairs{ dir = 1 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "cr" = ( /obj/effect/landmark/damageturf, /turf/simulated/floor/plating/airless, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "cs" = ( /obj/structure/flora/ausbushes/sunnybush, /obj/structure/flora/ausbushes/ppflowers, /obj/structure/window/full/basic, /turf/simulated/floor/grass, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ct" = ( /obj/structure/railing, /obj/machinery/optable, @@ -836,7 +836,7 @@ icon_state = "darkblue"; dir = 1 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "cv" = ( /obj/structure/table/glass/reinforced/titanium, /obj/machinery/door_control{ @@ -852,7 +852,7 @@ id = "awaycargogate" }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "cw" = ( /obj/machinery/sleeper, /obj/effect/turf_decal/delivery/white/hollow, @@ -860,7 +860,7 @@ /turf/simulated/floor/plasteel{ icon_state = "whitehall" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "cx" = ( /obj/machinery/door/airlock/security/glass{ req_access_txt = "271" @@ -872,14 +872,14 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "cy" = ( /obj/structure/closet, /obj/effect/decal/cleanable/cobweb2, /turf/simulated/floor/plating{ icon_state = "asteroidplating" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "cA" = ( /obj/effect/turf_decal/stripes/line{ dir = 8 @@ -888,7 +888,7 @@ icon_state = "caution"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "cB" = ( /obj/structure/railing{ dir = 4 @@ -898,7 +898,7 @@ icon_state = "caution"; dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "cC" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 10 @@ -906,7 +906,7 @@ /turf/simulated/floor/plasteel{ icon_state = "blackcorner" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "cD" = ( /obj/structure/railing/cap{ dir = 5 @@ -919,7 +919,7 @@ }, /obj/effect/landmark/damageturf, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "cF" = ( /obj/structure/barricade/wooden/crude{ layer = 4 @@ -929,7 +929,7 @@ req_access_txt = "271" }, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "cI" = ( /obj/structure/extinguisher_cabinet{ pixel_x = 32 @@ -940,7 +940,7 @@ dir = 5; icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "cJ" = ( /obj/structure/table/reinforced, /obj/effect/decal/cleanable/dirt, @@ -948,7 +948,7 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "cK" = ( /obj/effect/turf_decal/stripes/line{ dir = 4 @@ -957,13 +957,13 @@ dir = 8; icon_state = "dark" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "cL" = ( /obj/effect/decal/cleanable/blood/splatter{ color = "red" }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "cM" = ( /obj/effect/turf_decal/stripes/line{ dir = 1 @@ -972,7 +972,7 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "cN" = ( /obj/machinery/bodyscanner{ dir = 4 @@ -984,7 +984,7 @@ /turf/simulated/floor/plasteel{ icon_state = "whitehall" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "cR" = ( /obj/structure/window/reinforced, /obj/structure/window/reinforced{ @@ -997,7 +997,7 @@ dir = 5 }, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "cS" = ( /obj/effect/decal/cleanable/cobweb2, /obj/structure/largecrate, @@ -1008,7 +1008,7 @@ dir = 1; icon_state = "black" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "cY" = ( /obj/structure/railing{ dir = 8 @@ -1021,7 +1021,7 @@ }, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "da" = ( /obj/structure/chair{ dir = 8 @@ -1030,18 +1030,18 @@ icon_state = "black"; dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "db" = ( /obj/structure/flora/ausbushes/fullgrass, /turf/simulated/floor/plating/asteroid/ancient, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "dc" = ( /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel{ icon_state = "black"; dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "dd" = ( /obj/structure/table/glass, /obj/machinery/light/small{ @@ -1055,7 +1055,7 @@ /turf/simulated/floor/plasteel{ icon_state = "darkblue" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "df" = ( /obj/structure/railing{ dir = 1 @@ -1063,7 +1063,7 @@ /obj/structure/rack, /obj/effect/spawner/lootdrop/maintenance, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "dg" = ( /obj/structure/shuttle/engine/propulsion/burst{ dir = 4 @@ -1080,7 +1080,7 @@ /turf/simulated/floor/plasteel{ icon_state = "freezerfloor" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "dj" = ( /obj/structure/closet/crate, /turf/simulated/floor/mineral/titanium, @@ -1088,26 +1088,26 @@ "dk" = ( /obj/structure/window/reinforced, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "dm" = ( /obj/effect/turf_decal/stripes/asteroid/line, /obj/structure/flora/ausbushes/fullgrass, /obj/structure/railing/corner, /turf/simulated/floor/plating/asteroid/ancient, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "dn" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/machinery/atmospherics/pipe/simple/hidden/supply, /turf/simulated/floor/plasteel{ icon_state = "freezerfloor" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "do" = ( /obj/structure/flora/ausbushes/fullgrass, /turf/simulated/floor/plating/asteroid/airless{ icon_state = "asteroid12" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "dp" = ( /obj/structure/window/reinforced{ dir = 8 @@ -1120,7 +1120,7 @@ icon_state = "white"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ds" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 5 @@ -1132,7 +1132,7 @@ icon_state = "cautioncorner"; dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "dt" = ( /obj/effect/turf_decal/stripes/asteroid/corner{ dir = 8 @@ -1165,30 +1165,30 @@ dir = 8; icon_state = "dark" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "dw" = ( /turf/simulated/floor/plasteel{ icon_state = "whitehall" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "dx" = ( /obj/machinery/suit_storage_unit/standard_unit, /turf/simulated/floor/plasteel{ icon_state = "black"; dir = 6 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "dz" = ( /obj/structure/flora/ausbushes/fernybush, /obj/structure/flora/ausbushes/brflowers, /obj/structure/window/full/basic, /turf/simulated/floor/grass, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "dA" = ( /turf/simulated/floor/plating/asteroid/airless{ icon_state = "asteroid1" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "dB" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 @@ -1200,20 +1200,20 @@ dir = 9; icon_state = "whitecorner" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "dD" = ( /obj/structure/closet/walllocker/emerglocker{ pixel_y = 32 }, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "dE" = ( /obj/effect/turf_decal/loading_area/white, /turf/simulated/floor/plasteel{ icon_state = "caution"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "dG" = ( /obj/machinery/door/poddoor/impassable{ id_tag = "awaycontlockdown" @@ -1223,7 +1223,7 @@ name = "Specimen Containtment Zone" }, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "dH" = ( /obj/structure/window/reinforced{ dir = 8 @@ -1235,7 +1235,7 @@ icon_state = "white"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "dK" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/cobweb2, @@ -1245,18 +1245,18 @@ /turf/simulated/floor/plasteel{ icon_state = "freezerfloor" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "dL" = ( /turf/simulated/floor/plasteel{ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "dM" = ( /turf/simulated/floor/plasteel/stairs{ dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "dN" = ( /obj/effect/turf_decal/stripes/asteroid/line{ dir = 1 @@ -1266,7 +1266,7 @@ }, /obj/structure/flora/ausbushes/sparsegrass, /turf/simulated/floor/plating/asteroid/airless, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "dO" = ( /obj/structure/table/glass/reinforced/plastitanium, /obj/item/clipboard, @@ -1278,7 +1278,7 @@ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "dQ" = ( /obj/structure/table/glass, /obj/structure/railing{ @@ -1291,7 +1291,7 @@ icon_state = "whitecorner"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "dR" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/blood/splatter{ @@ -1302,20 +1302,20 @@ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "dS" = ( /obj/effect/decal/cleanable/generic, /turf/simulated/floor/plating{ icon_state = "asteroidplating" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "dT" = ( /obj/machinery/light/small, /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 }, /turf/simulated/floor/carpet/royalblue, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "dU" = ( /obj/machinery/computer/arcade/orion_trail{ dir = 1 @@ -1324,18 +1324,18 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "dV" = ( /obj/structure/reagent_dispensers/fueltank, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "dW" = ( /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel{ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "dX" = ( /obj/structure/sign/security{ pixel_y = 32 @@ -1344,13 +1344,13 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "dY" = ( /turf/simulated/floor/plasteel{ dir = 9; icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "eb" = ( /obj/structure/closet/crate/can, /obj/effect/spawner/lootdrop/maintenance, @@ -1358,7 +1358,7 @@ icon_state = "showroomfloor"; temperature = 273.15 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ed" = ( /obj/effect/turf_decal/stripes/line{ dir = 1 @@ -1373,14 +1373,14 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ee" = ( /obj/structure/table/glass/reinforced/titanium, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "eg" = ( /turf/simulated/floor/grass, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "eh" = ( /obj/effect/turf_decal/caution{ dir = 4 @@ -1393,7 +1393,7 @@ icon_state = "caution"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ek" = ( /obj/effect/turf_decal/stripes/asteroid/line, /obj/effect/decal/cleanable/dirt, @@ -1401,19 +1401,19 @@ dir = 8 }, /turf/simulated/floor/plating/asteroid/ancient, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "el" = ( /obj/machinery/door/airlock, /turf/simulated/floor/plasteel{ icon_state = "freezerfloor" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "em" = ( /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel{ icon_state = "blackcorner" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "eo" = ( /obj/machinery/door/poddoor/impassable{ id_tag = "awaymlock" @@ -1423,7 +1423,7 @@ name = "Medical Ward" }, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ep" = ( /obj/effect/decal/cleanable/blood/splatter{ color = "red" @@ -1431,14 +1431,14 @@ /turf/simulated/floor/plasteel{ icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "eq" = ( /obj/effect/turf_decal/loading_area/white{ dir = 1 }, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "er" = ( /obj/structure/window/reinforced{ dir = 8 @@ -1451,11 +1451,11 @@ icon_state = "black"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "es" = ( /obj/structure/flora/ausbushes/fernybush, /turf/simulated/floor/grass, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ev" = ( /obj/structure/chair{ dir = 8 @@ -1464,7 +1464,7 @@ icon_state = "whitehall"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ew" = ( /obj/machinery/computer/security{ desc = "Used to access the various cameras on the outpost."; @@ -1475,7 +1475,7 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ey" = ( /obj/item/kirbyplants, /obj/machinery/light/small{ @@ -1485,7 +1485,7 @@ dir = 1; icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ez" = ( /obj/structure/chair{ dir = 8 @@ -1500,16 +1500,16 @@ pixel_x = 32 }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "eA" = ( /turf/simulated/floor/plasteel{ icon_state = "freezerfloor" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "eC" = ( /obj/structure/flora/ausbushes/sparsegrass, /turf/simulated/floor/plating/asteroid/ancient, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "eE" = ( /obj/machinery/light/small{ dir = 8 @@ -1527,11 +1527,11 @@ icon_state = "caution"; dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "eJ" = ( /obj/structure/flora/junglebush/large, /turf/simulated/floor/grass, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "eK" = ( /obj/item/kirbyplants, /obj/effect/decal/cleanable/dirt, @@ -1544,7 +1544,7 @@ icon_state = "caution"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "eL" = ( /obj/structure/extinguisher_cabinet{ pixel_x = -32 @@ -1557,13 +1557,13 @@ dir = 8; icon_state = "black" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "eM" = ( /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel{ icon_state = "freezerfloor" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "eO" = ( /obj/structure/mirror{ pixel_x = -28 @@ -1577,7 +1577,7 @@ /turf/simulated/floor/plasteel{ icon_state = "freezerfloor" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "eR" = ( /obj/structure/railing{ dir = 8 @@ -1586,13 +1586,13 @@ dir = 8; icon_state = "black" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "eU" = ( /turf/simulated/floor/plasteel{ dir = 4; icon_state = "black" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "eW" = ( /obj/structure/railing/corner{ dir = 1 @@ -1600,7 +1600,7 @@ /turf/simulated/floor/plasteel/stairs{ dir = 1 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "eX" = ( /obj/structure/barricade/wooden/crude{ layer = 4 @@ -1609,7 +1609,7 @@ req_access_txt = "271" }, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "eZ" = ( /obj/structure/window/reinforced{ dir = 1 @@ -1621,7 +1621,7 @@ /obj/effect/turf_decal/box, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "fc" = ( /obj/structure/railing{ dir = 4 @@ -1643,7 +1643,7 @@ icon_state = "yellowcornersiding"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "fd" = ( /obj/effect/turf_decal/stripes/asteroid/line{ dir = 8 @@ -1651,14 +1651,14 @@ /turf/simulated/floor/plating/asteroid/airless{ icon_state = "asteroid6" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "fe" = ( /obj/structure/railing{ dir = 8 }, /obj/structure/closet/crate, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ff" = ( /obj/structure/chair/stool{ dir = 4 @@ -1679,7 +1679,7 @@ icon_state = "1-8" }, /turf/simulated/floor/engine, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "fi" = ( /obj/structure/chair/wheelchair, /obj/effect/turf_decal/delivery/white, @@ -1687,11 +1687,11 @@ icon_state = "white"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "fl" = ( /obj/structure/closet/crate, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "fm" = ( /obj/effect/decal/cleanable/cobweb, /obj/item/clothing/suit/storage/labcoat, @@ -1705,43 +1705,43 @@ icon_state = "whitecorner"; dir = 1 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "fn" = ( /obj/machinery/door/airlock/centcom{ req_access_txt = "271" }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "fp" = ( /obj/structure/window/reinforced{ dir = 8 }, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "fq" = ( /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "fr" = ( /obj/structure/window/reinforced{ dir = 4 }, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "fs" = ( /obj/structure/chair/sofa/bench, /turf/simulated/floor/plasteel{ dir = 1; icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "fv" = ( /obj/structure/flora/ausbushes/fullgrass, /turf/simulated/floor/plating/asteroid/airless, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "fw" = ( /obj/structure/flora/ash/rock/style_random, /turf/simulated/floor/plating/asteroid/airless, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "fx" = ( /obj/structure/filingcabinet/chestdrawer, /obj/effect/turf_decal/stripes/corner{ @@ -1754,18 +1754,18 @@ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "fy" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 8 }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "fA" = ( /obj/structure/mopbucket, /obj/item/mop, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "fB" = ( /obj/structure/railing{ dir = 1 @@ -1777,32 +1777,32 @@ dir = 4 }, /turf/simulated/floor/plating/asteroid/airless, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "fC" = ( /obj/item/kirbyplants, /turf/simulated/floor/plasteel{ icon_state = "black"; dir = 10 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "fD" = ( /obj/structure/chair, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "fF" = ( /turf/simulated/floor/plasteel{ icon_state = "black"; dir = 6 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "fG" = ( /obj/structure/fans/tiny, /obj/machinery/door/poddoor{ id_tag = "awaycargogate1" }, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "fI" = ( /obj/machinery/atmospherics/pipe/simple/visible, /obj/machinery/atmospherics/meter, @@ -1810,7 +1810,7 @@ dir = 4 }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "fJ" = ( /obj/structure/table/reinforced, /obj/machinery/door/window/reinforced/normal{ @@ -1830,26 +1830,26 @@ dir = 8; icon_state = "dark" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "fK" = ( /turf/simulated/floor/plasteel{ dir = 5; icon_state = "black" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "fM" = ( /turf/simulated/floor/plasteel{ icon_state = "caution"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "fP" = ( /obj/structure/railing{ dir = 4 }, /obj/structure/closet/l3closet/general, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "fQ" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/machinery/atmospherics/pipe/simple/hidden/supply, @@ -1859,7 +1859,7 @@ name = "Cafeteria" }, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "fR" = ( /obj/machinery/light/small{ dir = 4 @@ -1869,24 +1869,24 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "fV" = ( /obj/structure/flora/ausbushes/sparsegrass, /turf/simulated/floor/plating/asteroid/airless, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "fX" = ( /obj/structure/grille/broken, /obj/effect/decal/cleanable/glass, /obj/effect/landmark/damageturf, /turf/simulated/floor/plating/airless, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "fY" = ( /obj/item/stack/sheet/mineral/titanium, /obj/effect/decal/cleanable/glass, /obj/effect/decal/cleanable/molten_object/large, /obj/effect/landmark/damageturf, /turf/simulated/floor/plating/airless, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "gb" = ( /obj/machinery/light/small{ dir = 4 @@ -1897,7 +1897,7 @@ /turf/simulated/floor/plasteel/stairs{ dir = 1 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "gc" = ( /obj/structure/chair/sofa/bench/right{ dir = 4 @@ -1909,7 +1909,7 @@ icon_state = "caution"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "gd" = ( /obj/structure/sign/directions/science{ dir = 1; @@ -1918,34 +1918,34 @@ /obj/structure/chair, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ge" = ( /obj/structure/flora/ausbushes/fullgrass, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plating/asteroid/ancient, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "gf" = ( /obj/structure/railing{ dir = 4 }, /obj/structure/filingcabinet/chestdrawer, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "gg" = ( /obj/structure/flora/ausbushes/grassybush, /obj/machinery/light/small, /turf/simulated/floor/grass, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "gh" = ( /obj/effect/decal/cleanable/dirt, /mob/living/simple_animal/hostile/alien, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "gi" = ( /turf/simulated/floor/plating/asteroid/airless{ icon_state = "asteroid4" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "gj" = ( /obj/structure/railing, /obj/structure/railing/cap{ @@ -1954,14 +1954,14 @@ /turf/simulated/floor/plasteel{ icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "gk" = ( /obj/machinery/atmospherics/unary/portables_connector{ dir = 1 }, /obj/machinery/atmospherics/portable/canister/oxygen, /turf/simulated/floor/plating/asteroid/ancient, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "gl" = ( /obj/structure/window/reinforced, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ @@ -1972,7 +1972,7 @@ }, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "gm" = ( /obj/effect/turf_decal/delivery/partial{ dir = 1 @@ -1985,7 +1985,7 @@ /turf/simulated/floor/plasteel{ icon_state = "dark" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "gn" = ( /obj/machinery/economy/vending/coffee, /obj/effect/decal/cleanable/cobweb, @@ -1993,7 +1993,7 @@ dir = 9; icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "go" = ( /obj/structure/railing, /obj/structure/largecrate, @@ -2001,7 +2001,7 @@ icon_state = "caution"; dir = 6 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "gq" = ( /obj/structure/railing/corner{ dir = 1 @@ -2017,7 +2017,7 @@ pixel_x = 2 }, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "gr" = ( /obj/effect/turf_decal/delivery/red/partial{ dir = 1 @@ -2026,22 +2026,22 @@ icon_state = "whitehall"; dir = 1 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "gs" = ( /obj/machinery/economy/vending/snack, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "gt" = ( /obj/machinery/economy/vending/cola, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "gv" = ( /obj/item/kirbyplants, /turf/simulated/floor/plasteel{ dir = 5; icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "gw" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/blood/splatter{ @@ -2051,7 +2051,7 @@ icon_state = "yellowcornersiding"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "gx" = ( /obj/structure/closet/secure_closet/freezer/kitchen, /obj/effect/decal/cleanable/dirt, @@ -2059,7 +2059,7 @@ icon_state = "showroomfloor"; temperature = 273.15 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "gy" = ( /obj/item/reagent_containers/food/snacks/xenomeatbreadslice{ pixel_y = 5 @@ -2073,7 +2073,7 @@ /turf/simulated/floor/plasteel{ icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "gz" = ( /obj/machinery/light{ active_power_consumption = 0; @@ -2084,21 +2084,21 @@ color = "red" }, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "gA" = ( /obj/structure/flora/ausbushes/grassybush, /obj/structure/flora/ausbushes, /obj/structure/flora/ausbushes/ywflowers, /obj/structure/window/full/basic, /turf/simulated/floor/grass, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "gB" = ( /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel{ icon_state = "cautioncorner"; dir = 1 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "gC" = ( /obj/effect/decal/cleanable/greenglow, /obj/effect/landmark/damageturf, @@ -2108,11 +2108,11 @@ stat = 2 }, /turf/simulated/floor/plating/airless, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "gD" = ( /obj/structure/girder, /turf/simulated/floor/plating/airless, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "gE" = ( /obj/effect/turf_decal/stripes/asteroid/line{ dir = 1 @@ -2123,19 +2123,19 @@ /turf/simulated/floor/plating/asteroid/airless{ icon_state = "asteroid5" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "gH" = ( /obj/structure/fans/tiny, /obj/machinery/door/airlock/external, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "gJ" = ( /obj/effect/turf_decal/stripes/asteroid/line, /obj/structure/railing, /turf/simulated/floor/plating/asteroid/airless{ icon_state = "asteroidplating" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "gL" = ( /obj/effect/turf_decal/stripes/line{ dir = 4 @@ -2147,7 +2147,7 @@ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "gM" = ( /obj/machinery/shower{ dir = 4 @@ -2156,12 +2156,12 @@ dir = 8 }, /turf/simulated/floor/noslip, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "gN" = ( /obj/machinery/light/small, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "gO" = ( /obj/structure/chair/comfy/shuttle{ dir = 8 @@ -2175,28 +2175,28 @@ dir = 9; icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "gS" = ( /obj/structure/chair{ dir = 8 }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "gT" = ( /obj/structure/flora/rock/pile, /turf/simulated/floor/grass, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "gU" = ( /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel{ icon_state = "whitehall" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "gV" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "gW" = ( /obj/effect/landmark/damageturf, /obj/machinery/door/airlock/titanium{ @@ -2204,7 +2204,7 @@ name = "Escape Pod Hatch" }, /turf/simulated/floor/mineral/titanium/airless, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "gX" = ( /obj/structure/rack, /obj/effect/decal/cleanable/cobweb2, @@ -2213,7 +2213,7 @@ dir = 5; icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "gZ" = ( /obj/structure/railing{ dir = 1 @@ -2227,7 +2227,7 @@ pixel_y = 8 }, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "hc" = ( /obj/effect/decal/cleanable/dirt, /mob/living/simple_animal/hostile/alien, @@ -2235,7 +2235,7 @@ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "he" = ( /obj/effect/turf_decal/stripes/asteroid/corner{ dir = 8 @@ -2246,23 +2246,23 @@ /turf/simulated/floor/plating/asteroid/airless{ icon_state = "asteroidplating" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "hf" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "hg" = ( /turf/simulated/floor/plasteel{ icon_state = "yellowsiding"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "hh" = ( /turf/simulated/floor/plasteel{ icon_state = "whitehall"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "hi" = ( /obj/structure/falsewall/rock_ancient, /obj/effect/decal/cleanable/blood/tracks{ @@ -2274,7 +2274,7 @@ pixel_y = 9 }, /turf/simulated/floor/plating/asteroid/ancient, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "hj" = ( /obj/structure/window/reinforced, /obj/structure/window/reinforced{ @@ -2286,7 +2286,7 @@ icon_state = "caution"; dir = 6 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "hk" = ( /obj/structure/table/reinforced, /obj/structure/window/reinforced{ @@ -2302,7 +2302,7 @@ dir = 8; icon_state = "dark" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "hl" = ( /obj/structure/window/reinforced{ dir = 1 @@ -2314,12 +2314,12 @@ dir = 8; icon_state = "dark" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "hm" = ( /obj/structure/closet/cabinet, /obj/item/clothing/under/suit/navy, /turf/simulated/floor/carpet, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "hn" = ( /obj/structure/railing/corner{ dir = 8 @@ -2328,14 +2328,14 @@ /turf/simulated/floor/plasteel{ icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ho" = ( /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel{ icon_state = "darkbluefull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "hp" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/blood/xeno{ @@ -2345,7 +2345,7 @@ icon_state = "white"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "hq" = ( /obj/item/storage/toolbox/mechanical{ pixel_x = 2; @@ -2356,7 +2356,7 @@ icon_state = "caution"; dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "hr" = ( /obj/structure/window/reinforced{ dir = 8 @@ -2366,14 +2366,14 @@ icon_state = "white"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "hs" = ( /obj/item/kirbyplants, /turf/simulated/floor/plasteel{ dir = 8; icon_state = "dark" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "hu" = ( /turf/simulated/wall/mineral/titanium, /area/ruin/space/powered) @@ -2387,7 +2387,7 @@ /turf/simulated/floor/plating/asteroid/airless{ icon_state = "asteroidplating" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "hw" = ( /obj/structure/cable{ d1 = 4; @@ -2402,7 +2402,7 @@ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "hx" = ( /obj/machinery/light/small{ dir = 8 @@ -2418,7 +2418,7 @@ icon_state = "caution"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "hy" = ( /obj/effect/turf_decal/stripes/corner{ dir = 4 @@ -2431,11 +2431,11 @@ icon_state = "caution"; dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "hz" = ( /obj/structure/flora/junglebush, /turf/simulated/floor/grass, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "hA" = ( /obj/structure/chair/sofa/bench{ dir = 4 @@ -2444,7 +2444,7 @@ icon_state = "caution"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "hC" = ( /obj/structure/chair/office/dark{ dir = 8 @@ -2453,7 +2453,7 @@ dir = 8; icon_state = "dark" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "hD" = ( /obj/structure/chair/office/dark{ dir = 1 @@ -2463,10 +2463,10 @@ dir = 8; icon_state = "dark" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "hE" = ( /turf/simulated/floor/carpet, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "hF" = ( /obj/structure/table/reinforced, /obj/structure/window/reinforced{ @@ -2477,33 +2477,33 @@ dir = 8; icon_state = "dark" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "hG" = ( /turf/simulated/floor/plating/asteroid/airless{ icon_state = "asteroid10" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "hH" = ( /obj/effect/decal/remains/xeno, /turf/simulated/floor/plating/asteroid/airless{ icon_state = "asteroid8" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "hI" = ( /turf/simulated/floor/plating/asteroid/airless{ icon_state = "asteroid5" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "hK" = ( /obj/machinery/door/airlock/external/glass, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "hL" = ( /turf/simulated/floor/plasteel{ icon_state = "showroomfloor"; temperature = 273.15 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "hN" = ( /obj/structure/railing, /obj/structure/railing{ @@ -2512,7 +2512,7 @@ /turf/simulated/floor/plasteel{ icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "hO" = ( /obj/effect/spawner/window/shuttle, /turf/simulated/floor/plating, @@ -2522,7 +2522,7 @@ color = "red" }, /turf/simulated/floor/plating/asteroid/ancient, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "hQ" = ( /obj/effect/turf_decal/stripes/asteroid/line{ dir = 5 @@ -2533,7 +2533,7 @@ /turf/simulated/floor/plating/asteroid/airless{ icon_state = "asteroidplating" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "hR" = ( /obj/structure/window/reinforced{ dir = 1 @@ -2542,21 +2542,21 @@ dir = 4 }, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "hS" = ( /obj/structure/railing{ dir = 1 }, /obj/structure/closet, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "hT" = ( /obj/structure/window/reinforced{ dir = 1 }, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "hU" = ( /obj/structure/table/reinforced, /obj/machinery/door/window/reinforced/normal{ @@ -2571,7 +2571,7 @@ dir = 8; icon_state = "dark" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "hV" = ( /obj/structure/railing, /obj/structure/closet/secure_closet, @@ -2587,12 +2587,12 @@ dir = 8; icon_state = "dark" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "hW" = ( /obj/structure/bed, /obj/item/bedsheet, /turf/simulated/floor/carpet, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "hX" = ( /obj/structure/table/reinforced, /obj/machinery/door/window/reinforced/normal{ @@ -2603,30 +2603,30 @@ dir = 8; icon_state = "dark" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "hY" = ( /obj/effect/decal/cleanable/blood/oil{ color = "black" }, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "hZ" = ( /obj/structure/flora/ausbushes/sparsegrass, /turf/simulated/floor/plating/asteroid/airless{ icon_state = "asteroid8" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ia" = ( /turf/simulated/floor/plasteel{ icon_state = "dark" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ib" = ( /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel{ icon_state = "dark" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ic" = ( /obj/structure/railing{ dir = 4 @@ -2639,11 +2639,11 @@ dir = 1 }, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "id" = ( /obj/structure/largecrate, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ie" = ( /obj/effect/decal/cleanable/blood/splatter{ color = "red" @@ -2651,7 +2651,7 @@ /turf/simulated/floor/plating{ icon_state = "asteroidplating" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "if" = ( /obj/structure/bed, /obj/item/bedsheet/medical, @@ -2659,14 +2659,14 @@ /turf/simulated/floor/plasteel{ icon_state = "whitehall" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ig" = ( /obj/machinery/door/poddoor/impassable{ id_tag = "awaymlock" }, /obj/effect/spawner/window/reinforced/grilled, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ii" = ( /obj/machinery/light/small{ dir = 1 @@ -2679,14 +2679,14 @@ dir = 1; icon_state = "escape" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ij" = ( /obj/structure/fans/tiny, /obj/machinery/door/poddoor/multi_tile/impassable/four_tile_ver{ id_tag = "awaycargogate" }, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "il" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 @@ -2696,7 +2696,7 @@ icon_state = "white"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "im" = ( /obj/effect/turf_decal/stripes/asteroid/corner{ dir = 4 @@ -2707,14 +2707,14 @@ /turf/simulated/floor/plating/asteroid/airless{ icon_state = "asteroidplating" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "in" = ( /obj/structure/largecrate, /obj/effect/decal/cleanable/cobweb2, /turf/simulated/floor/plating{ icon_state = "asteroidplating" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "io" = ( /obj/item/kirbyplants, /obj/structure/sign/directions/engineering{ @@ -2728,7 +2728,7 @@ icon_state = "caution"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "iq" = ( /obj/structure/railing{ dir = 1 @@ -2738,7 +2738,7 @@ }, /obj/effect/turf_decal/stripes/asteroid/line, /turf/simulated/floor/plating/asteroid/airless, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ir" = ( /obj/structure/railing{ dir = 1 @@ -2750,7 +2750,7 @@ /turf/simulated/floor/plating/asteroid/airless{ icon_state = "asteroid8" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "is" = ( /obj/structure/railing/cap{ dir = 5 @@ -2759,7 +2759,7 @@ dir = 1; icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "it" = ( /obj/structure/railing/cap{ dir = 1 @@ -2768,20 +2768,20 @@ dir = 1; icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "iu" = ( /obj/structure/railing{ dir = 1 }, /obj/structure/table, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "iv" = ( /turf/simulated/floor/plasteel{ dir = 1; icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "iw" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 8 @@ -2794,13 +2794,13 @@ dir = 1; icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ix" = ( /turf/simulated/floor/plasteel{ icon_state = "white"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "iy" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/blood/tracks{ @@ -2812,13 +2812,13 @@ pixel_y = -1 }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "iz" = ( /obj/structure/flora/ausbushes/stalkybush, /obj/structure/flora/ausbushes/ppflowers, /obj/structure/window/full/basic, /turf/simulated/floor/grass, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "iA" = ( /obj/effect/decal/cleanable/blood/splatter{ color = "red" @@ -2828,7 +2828,7 @@ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "iB" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/table, @@ -2836,7 +2836,7 @@ icon_state = "black"; dir = 1 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "iC" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, @@ -2844,7 +2844,7 @@ dir = 8; icon_state = "green" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "iD" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 8 @@ -2858,14 +2858,14 @@ dir = 1; icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "iE" = ( /obj/effect/decal/cleanable/blood/splatter{ color = "red" }, /obj/effect/decal/remains/human, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "iF" = ( /obj/machinery/door/window/reinforced/normal{ dir = 8 @@ -2873,13 +2873,13 @@ /turf/simulated/floor/plasteel/stairs{ dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "iG" = ( /turf/simulated/floor/plasteel{ icon_state = "black"; dir = 1 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "iI" = ( /obj/machinery/door/window/reinforced/normal{ dir = 4 @@ -2887,21 +2887,21 @@ /turf/simulated/floor/plasteel/stairs{ dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "iJ" = ( /obj/machinery/light/small, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "iL" = ( /turf/simulated/floor/plating/asteroid/airless{ icon_state = "asteroid6" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "iM" = ( /turf/simulated/floor/plating/asteroid/airless{ icon_state = "asteroid12" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "iN" = ( /obj/effect/turf_decal/caution{ dir = 4 @@ -2913,21 +2913,21 @@ icon_state = "caution"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "iO" = ( /obj/effect/turf_decal/delivery/white/partial, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel{ icon_state = "whitehall" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "iP" = ( /obj/structure/window/reinforced{ dir = 4 }, /obj/structure/window/reinforced, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "iQ" = ( /obj/structure/kitchenspike, /obj/effect/decal/cleanable/cobweb, @@ -2935,7 +2935,7 @@ icon_state = "showroomfloor"; temperature = 273.15 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "iR" = ( /obj/structure/railing{ dir = 1 @@ -2947,7 +2947,7 @@ /turf/simulated/floor/plating/asteroid/airless{ icon_state = "asteroid12" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "iS" = ( /obj/structure/table/reinforced, /obj/structure/window/reinforced{ @@ -2964,11 +2964,11 @@ dir = 8; icon_state = "dark" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "iT" = ( /obj/structure/fans/tiny, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "iW" = ( /obj/structure/chair{ dir = 4 @@ -2977,19 +2977,19 @@ icon_state = "black"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "iX" = ( /obj/structure/bed, /obj/item/bedsheet, /obj/effect/decal/cleanable/cobweb2, /turf/simulated/floor/carpet, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "iY" = ( /obj/structure/flora/junglebush, /obj/structure/flora/ausbushes/brflowers, /obj/structure/window/full/basic, /turf/simulated/floor/grass, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "iZ" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply, /obj/structure/cable{ @@ -3002,24 +3002,24 @@ name = "Workshop" }, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ja" = ( /obj/machinery/economy/arcade/claw, /turf/simulated/floor/plasteel{ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "jb" = ( /turf/simulated/floor/plating{ icon_state = "asteroidplating" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "jc" = ( /turf/simulated/floor/plasteel{ icon_state = "black" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "jf" = ( /obj/machinery/atmospherics/unary/cryo_cell, /obj/structure/window/reinforced{ @@ -3030,7 +3030,7 @@ }, /obj/effect/turf_decal/delivery/white/hollow, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "jg" = ( /obj/structure/railing{ dir = 9 @@ -3038,14 +3038,14 @@ /turf/simulated/floor/plasteel{ icon_state = "whitecorner" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "jh" = ( /obj/structure/closet/emcloset, /turf/simulated/floor/plasteel{ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ji" = ( /obj/effect/turf_decal/stripes/asteroid/line{ dir = 8 @@ -3056,19 +3056,19 @@ /turf/simulated/floor/plating/asteroid/airless{ icon_state = "asteroidplating" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "jj" = ( /obj/item/kirbyplants, /turf/simulated/floor/plasteel{ icon_state = "caution"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "jk" = ( /obj/structure/flora/ausbushes/ppflowers, /obj/structure/flora/ash/rock/style_random, /turf/simulated/floor/grass, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "jl" = ( /obj/structure/table/reinforced, /obj/structure/railing/cap{ @@ -3083,7 +3083,7 @@ dir = 8; icon_state = "dark" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "jm" = ( /obj/structure/railing{ dir = 1 @@ -3093,19 +3093,19 @@ dir = 8; icon_state = "dark" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "jn" = ( /obj/machinery/door/airlock/centcom, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel{ icon_state = "freezerfloor" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "jo" = ( /obj/structure/closet/cabinet, /obj/item/clothing/under/misc/assistantformal, /turf/simulated/floor/carpet, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "jp" = ( /obj/structure/railing, /obj/item/kirbyplants, @@ -3113,24 +3113,24 @@ dir = 8; icon_state = "dark" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "jq" = ( /obj/structure/window/reinforced{ dir = 1 }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "jr" = ( /obj/item/kirbyplants, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "jt" = ( /obj/structure/railing/cap, /obj/structure/railing/cap{ dir = 5 }, /turf/simulated/floor/plating/asteroid/airless, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "jw" = ( /obj/structure/table/reinforced, /obj/machinery/door/window/reinforced/normal{ @@ -3141,19 +3141,19 @@ dir = 8; icon_state = "dark" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "jx" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/grille/broken, /obj/structure/rack, /obj/effect/spawner/lootdrop/maintenance, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "jy" = ( /obj/effect/decal/cleanable/dirt, /obj/item/trash/candy, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "jz" = ( /obj/effect/turf_decal/stripes/line{ dir = 4 @@ -3165,7 +3165,7 @@ dir = 8; icon_state = "dark" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "jB" = ( /obj/structure/window/reinforced{ dir = 8 @@ -3177,22 +3177,22 @@ dir = 8; icon_state = "dark" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "jC" = ( /obj/effect/landmark/damageturf, /mob/living/simple_animal/hostile/alien, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "jD" = ( /obj/structure/closet/crate, /turf/simulated/floor/plasteel/stairs{ dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "jE" = ( /obj/structure/grille, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "jF" = ( /obj/structure/railing, /obj/effect/turf_decal/stripes/asteroid/end{ @@ -3202,13 +3202,13 @@ dir = 8 }, /turf/simulated/floor/plating/asteroid/airless, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "jH" = ( /turf/simulated/floor/plasteel{ icon_state = "cautioncorner"; dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "jI" = ( /obj/structure/window/reinforced{ dir = 1 @@ -3221,7 +3221,7 @@ dir = 5; icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "jJ" = ( /obj/structure/window/reinforced, /obj/machinery/computer/security{ @@ -3233,7 +3233,7 @@ dir = 8; icon_state = "dark" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "jK" = ( /obj/structure/railing{ dir = 4 @@ -3242,17 +3242,17 @@ icon_state = "caution"; dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "jL" = ( /obj/structure/closet/emcloset, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "jM" = ( /obj/structure/chair/office/dark{ dir = 4 }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "jP" = ( /obj/structure/railing, /obj/effect/turf_decal/stripes/asteroid/line, @@ -3260,7 +3260,7 @@ dir = 1 }, /turf/simulated/floor/plating/asteroid/airless, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "jQ" = ( /obj/machinery/door/poddoor/shutters{ dir = 2 @@ -3272,24 +3272,24 @@ dir = 4; icon_state = "blackcorner" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "jS" = ( /turf/simulated/floor/plasteel{ icon_state = "cautioncorner"; dir = 1 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "jU" = ( /obj/structure/flora/ausbushes/fullgrass, /obj/structure/flora/ausbushes/ywflowers, /obj/structure/window/full/basic, /turf/simulated/floor/grass, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "jW" = ( /turf/simulated/floor/plating/asteroid/airless{ icon_state = "asteroid8" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "jY" = ( /obj/structure/chair{ dir = 4 @@ -3304,7 +3304,7 @@ icon_state = "caution"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "jZ" = ( /obj/effect/turf_decal/stripes/corner{ dir = 8 @@ -3320,7 +3320,7 @@ icon_state = "whitecorner"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ka" = ( /obj/structure/railing/corner{ dir = 4 @@ -3329,12 +3329,12 @@ icon_state = "caution"; dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "kb" = ( /obj/structure/closet, /obj/item/storage/box/lights/mixed, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "kc" = ( /obj/structure/railing{ dir = 1 @@ -3353,7 +3353,7 @@ /turf/simulated/floor/plating/asteroid/airless{ icon_state = "asteroid6" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "kd" = ( /obj/structure/window/reinforced, /obj/structure/window/reinforced{ @@ -3364,7 +3364,7 @@ dir = 1; icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ke" = ( /obj/structure/window/reinforced, /obj/structure/chair{ @@ -3378,7 +3378,7 @@ dir = 1; icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "kf" = ( /obj/structure/rack, /obj/effect/spawner/lootdrop/maintenance, @@ -3386,7 +3386,7 @@ dir = 1; icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "kg" = ( /obj/item/kirbyplants, /obj/effect/landmark/damageturf, @@ -3394,7 +3394,7 @@ dir = 6; icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "kh" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/door/poddoor/impassable{ @@ -3405,11 +3405,11 @@ name = "Research Division" }, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ki" = ( /obj/machinery/door/airlock/external, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "kj" = ( /obj/structure/window/reinforced{ dir = 1 @@ -3420,13 +3420,13 @@ }, /obj/effect/turf_decal/box, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "kk" = ( /turf/simulated/floor/plasteel{ icon_state = "caution"; dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "km" = ( /obj/effect/turf_decal/stripes/line{ dir = 8 @@ -3435,17 +3435,17 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ko" = ( /obj/structure/railing, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel{ icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "kp" = ( /turf/simulated/floor/plating/asteroid/ancient, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "kr" = ( /obj/effect/turf_decal/stripes/corner{ dir = 1 @@ -3455,7 +3455,7 @@ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ks" = ( /obj/structure/window/reinforced{ dir = 8 @@ -3474,7 +3474,7 @@ icon_state = "yellowsiding"; dir = 9 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ku" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/portable/scrubber, @@ -3482,7 +3482,7 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "kw" = ( /obj/structure/window/reinforced{ dir = 1 @@ -3495,14 +3495,14 @@ icon_state = "black"; dir = 1 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "kx" = ( /obj/structure/table/glass, /turf/simulated/floor/plasteel{ icon_state = "white"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ky" = ( /obj/structure/railing/cap{ dir = 9 @@ -3510,7 +3510,7 @@ /turf/simulated/floor/plasteel/stairs{ dir = 1 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "kz" = ( /obj/structure/cable{ d2 = 2; @@ -3520,14 +3520,14 @@ id = "mo19rdoffice" }, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "kB" = ( /obj/item/kirbyplants, /obj/structure/railing{ dir = 10 }, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "kC" = ( /obj/machinery/light/small{ dir = 8 @@ -3542,7 +3542,7 @@ icon_state = "whitehall"; dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "kE" = ( /obj/effect/turf_decal/stripes/line{ dir = 4 @@ -3552,14 +3552,14 @@ dir = 8; icon_state = "dark" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "kG" = ( /obj/item/kirbyplants, /obj/effect/decal/cleanable/cobweb, /turf/simulated/floor/plasteel{ icon_state = "whitecorner" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "kJ" = ( /obj/machinery/power/port_gen/pacman{ desc = "A portable generator for emergency backup power."; @@ -3569,13 +3569,13 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "kM" = ( /obj/structure/flora/ausbushes/sunnybush, /obj/structure/flora/ausbushes/ywflowers, /obj/structure/window/full/basic, /turf/simulated/floor/grass, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "kN" = ( /obj/item/kirbyplants, /obj/machinery/atmospherics/unary/vent_pump/on{ @@ -3590,7 +3590,7 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "kO" = ( /obj/machinery/computer/security/telescreen{ desc = "Used for monitoring the research division and the labs within."; @@ -3599,7 +3599,7 @@ pixel_y = 32 }, /turf/simulated/floor/carpet/royalblue, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "kQ" = ( /obj/structure/window/reinforced{ dir = 1 @@ -3612,11 +3612,11 @@ icon_state = "black"; dir = 1 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "kR" = ( /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/engine, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "kW" = ( /obj/machinery/door/airlock/centcom{ req_access_txt = "271" @@ -3625,7 +3625,7 @@ dir = 1; icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "kX" = ( /obj/structure/table/reinforced, /obj/structure/window/reinforced, @@ -3637,18 +3637,18 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "kZ" = ( /obj/structure/flora/rock/jungle, /turf/simulated/floor/grass, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "la" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 }, /mob/living/simple_animal/hostile/alien, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "lc" = ( /obj/machinery/shieldwallgen{ locked = 0; @@ -3660,7 +3660,7 @@ }, /obj/effect/turf_decal/box, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "li" = ( /obj/structure/railing{ dir = 1 @@ -3669,13 +3669,13 @@ dir = 8; icon_state = "dark" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "lk" = ( /obj/machinery/light/small, /turf/simulated/floor/plasteel{ icon_state = "black" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "lm" = ( /obj/effect/turf_decal/stripes/asteroid/line, /obj/effect/decal/cleanable/dirt, @@ -3683,20 +3683,20 @@ /turf/simulated/floor/plating{ icon_state = "asteroidplating" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "lo" = ( /obj/structure/barricade/wooden{ layer = 4 }, /obj/effect/spawner/window/reinforced/grilled, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "lp" = ( /turf/simulated/floor/plasteel{ dir = 9; icon_state = "black" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "lq" = ( /obj/machinery/door/airlock{ req_access_txt = "271" @@ -3708,20 +3708,20 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "lv" = ( /obj/structure/largecrate, /turf/simulated/floor/plating{ icon_state = "asteroidplating" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "lz" = ( /obj/machinery/photocopier, /turf/simulated/floor/plasteel{ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "lC" = ( /obj/item/reagent_containers/food/snacks/beans, /obj/item/reagent_containers/food/snacks/beans{ @@ -3741,7 +3741,7 @@ icon_state = "black"; dir = 9 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "lD" = ( /obj/item/kirbyplants, /obj/machinery/light/small, @@ -3749,7 +3749,7 @@ /turf/simulated/floor/plasteel{ icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "lF" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 @@ -3763,7 +3763,7 @@ icon_state = "caution"; dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "lH" = ( /obj/machinery/power/port_gen/pacman{ desc = "A portable generator for emergency backup power."; @@ -3778,7 +3778,7 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "lI" = ( /obj/item/kirbyplants, /obj/effect/decal/cleanable/dirt, @@ -3786,7 +3786,7 @@ icon_state = "caution"; dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "lL" = ( /obj/structure/railing{ dir = 8 @@ -3797,39 +3797,39 @@ icon_state = "4-8" }, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "lM" = ( /obj/structure/closet/firecloset, /obj/structure/window/reinforced{ dir = 1 }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "lN" = ( /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel{ icon_state = "black"; dir = 1 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "lP" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/machinery/atmospherics/pipe/simple/hidden/supply, /turf/simulated/floor/carpet/royalblue, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "lQ" = ( /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel{ dir = 8; icon_state = "dark" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "lS" = ( /obj/structure/flora/ausbushes/sparsegrass, /turf/simulated/floor/plating/asteroid/airless{ icon_state = "asteroid4" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "lT" = ( /obj/structure/chair/office/dark{ dir = 8 @@ -3839,23 +3839,23 @@ dir = 8; icon_state = "dark" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "lX" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/machinery/atmospherics/pipe/simple/hidden/supply, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "lY" = ( /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel{ icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "mb" = ( /obj/structure/closet/cabinet, /obj/effect/spawner/lootdrop/maintenance, /turf/simulated/floor/carpet, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "md" = ( /obj/structure/chair/sofa/bench/left{ dir = 1 @@ -3864,7 +3864,7 @@ /turf/simulated/floor/plasteel{ icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "mh" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 8 @@ -3878,7 +3878,7 @@ icon_state = "4-8" }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "mj" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/stripes/line, @@ -3886,7 +3886,7 @@ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "mk" = ( /obj/effect/turf_decal/stripes/line{ dir = 4 @@ -3899,7 +3899,7 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "mm" = ( /obj/machinery/conveyor/east{ id = "awayfusrodah" @@ -3908,7 +3908,7 @@ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "mn" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 @@ -3920,14 +3920,14 @@ dir = 8; icon_state = "cautioncorner" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "mq" = ( /obj/machinery/atmospherics/unary/outlet_injector/on{ dir = 4; volume_rate = 200 }, /turf/simulated/floor/plating/asteroid/airless, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "mr" = ( /obj/machinery/light/small{ dir = 8 @@ -3937,7 +3937,7 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ms" = ( /obj/machinery/door/window{ dir = 8 @@ -3948,7 +3948,7 @@ /turf/simulated/floor/plasteel/stairs{ dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "mt" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 6 @@ -3960,7 +3960,7 @@ /turf/simulated/floor/plasteel{ icon_state = "cautioncorner" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "mu" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/delivery/partial{ @@ -3970,21 +3970,21 @@ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "mv" = ( /obj/item/kirbyplants, /turf/simulated/floor/plasteel{ dir = 10; icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "mw" = ( /obj/structure/alien/resin/wall, /turf/simulated/floor/plasteel{ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "mx" = ( /obj/machinery/shieldwallgen{ locked = 0; @@ -3993,7 +3993,7 @@ /obj/structure/cable, /obj/effect/turf_decal/box, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "my" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 @@ -4002,7 +4002,7 @@ dir = 8; icon_state = "cautioncorner" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "mz" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/blood/splatter{ @@ -4011,7 +4011,7 @@ /turf/simulated/floor/plasteel{ icon_state = "whitehall" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "mB" = ( /obj/machinery/economy/vending/cigarette, /obj/machinery/light/small{ @@ -4026,7 +4026,7 @@ dir = 8; icon_state = "escape" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "mC" = ( /obj/effect/decal/cleanable/blood/tracks{ color = "red"; @@ -4038,7 +4038,7 @@ icon_state = "whitehall"; dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "mH" = ( /obj/machinery/light/small{ dir = 1 @@ -4053,26 +4053,26 @@ dir = 1; icon_state = "escape" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "mJ" = ( /turf/simulated/floor/plasteel{ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "mK" = ( /obj/effect/turf_decal/stripes/line, /obj/structure/alien/resin/wall, /obj/machinery/atmospherics/air_sensor, /turf/simulated/floor/engine, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "mM" = ( /obj/machinery/floodlight, /turf/simulated/floor/plasteel{ icon_state = "yellowsiding"; dir = 5 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "mS" = ( /obj/machinery/conveyor/east{ id = "awayfusrodah" @@ -4094,7 +4094,7 @@ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "mT" = ( /obj/item/kitchen/knife, /obj/item/kitchen/rollingpin, @@ -4103,7 +4103,7 @@ icon_state = "showroomfloor"; temperature = 273.15 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "mU" = ( /obj/machinery/shieldwallgen{ locked = 0; @@ -4125,7 +4125,7 @@ }, /obj/effect/turf_decal/box, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "mV" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 @@ -4137,7 +4137,7 @@ }, /mob/living/simple_animal/hostile/alien/sentinel, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "mW" = ( /obj/effect/decal/cleanable/cobweb, /obj/machinery/computer/security{ @@ -4147,7 +4147,7 @@ /turf/simulated/floor/plating{ icon_state = "asteroidplating" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "mX" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 8 @@ -4156,7 +4156,7 @@ dir = 4 }, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "na" = ( /obj/structure/sign/nosmoking_1{ pixel_x = -32 @@ -4176,7 +4176,7 @@ icon_state = "tracks" }, /turf/simulated/floor/plasteel/stairs, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "nc" = ( /obj/structure/reagent_dispensers/water_cooler, /obj/machinery/light/small{ @@ -4187,28 +4187,28 @@ dir = 9; icon_state = "black" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "nf" = ( /obj/effect/turf_decal/stripes/corner{ dir = 8 }, /obj/structure/alien/resin/wall, /turf/simulated/floor/engine, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ng" = ( /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel{ icon_state = "darkblue"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "nh" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 6 }, /turf/simulated/floor/carpet/royalblue, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "nk" = ( /obj/structure/sign/electricshock{ pixel_y = 32 @@ -4218,7 +4218,7 @@ dir = 1; icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "nl" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 8 @@ -4235,23 +4235,23 @@ }, /obj/effect/spawner/window/reinforced/tinted/grilled, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "nm" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 5 }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "nn" = ( /obj/effect/spawner/window/reinforced/tinted/grilled, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "nt" = ( /turf/simulated/floor/plasteel{ dir = 8; icon_state = "black" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "nu" = ( /obj/structure/lattice, /obj/item/stack/sheet/plasteel, @@ -4261,14 +4261,14 @@ /obj/machinery/door/airlock, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/carpet, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "nx" = ( /obj/machinery/door/airlock/centcom{ req_access_txt = "271"; name = "Engineering Division" }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ny" = ( /obj/effect/landmark/damageturf, /turf/simulated/floor/plating/airless, @@ -4280,7 +4280,7 @@ dir = 8; icon_state = "dark" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "nA" = ( /obj/structure/rack, /obj/item/flashlight/flare, @@ -4291,7 +4291,7 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "nC" = ( /obj/structure/closet/secure_closet, /obj/machinery/camera{ @@ -4304,7 +4304,7 @@ icon_state = "black"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "nE" = ( /obj/structure/cable{ d1 = 1; @@ -4317,7 +4317,7 @@ icon_state = "2-8" }, /turf/simulated/floor/engine, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "nG" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/blood/splatter{ @@ -4327,14 +4327,14 @@ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "nI" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/machinery/atmospherics/pipe/manifold/hidden/supply{ dir = 4 }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "nJ" = ( /obj/structure/railing/cap{ dir = 10 @@ -4349,7 +4349,7 @@ dir = 4; icon_state = "green" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "nK" = ( /obj/structure/cable{ d1 = 1; @@ -4360,7 +4360,7 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "nO" = ( /obj/structure/reagent_dispensers/water_cooler, /obj/machinery/light/small{ @@ -4371,14 +4371,14 @@ icon_state = "black"; dir = 9 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "nQ" = ( /obj/structure/railing, /obj/structure/closet/cardboard, /turf/simulated/floor/plasteel{ icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "nV" = ( /obj/effect/turf_decal/stripes/line{ dir = 1 @@ -4387,7 +4387,7 @@ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "nW" = ( /obj/structure/railing{ dir = 10 @@ -4396,7 +4396,7 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "nX" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 8 @@ -4406,14 +4406,14 @@ }, /mob/living/simple_animal/hostile/alien, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "nZ" = ( /obj/structure/window/reinforced, /turf/simulated/floor/plasteel{ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "oc" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 8 @@ -4428,13 +4428,13 @@ }, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "od" = ( /obj/structure/chair/office/dark, /turf/simulated/floor/plasteel{ icon_state = "black" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "oh" = ( /obj/structure/sign/poster/contraband/lusty_xenomorph{ pixel_y = 32 @@ -4445,7 +4445,7 @@ dir = 5; icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "oi" = ( /obj/structure/chair/office/dark{ dir = 4 @@ -4460,7 +4460,7 @@ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ok" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/machinery/atmospherics/pipe/simple/hidden/supply, @@ -4471,13 +4471,13 @@ }, /mob/living/simple_animal/hostile/alien, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "on" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 5 }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "oo" = ( /obj/structure/chair/office/dark, /obj/effect/decal/cleanable/dirt, @@ -4485,14 +4485,14 @@ icon_state = "white"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "op" = ( /mob/living/simple_animal/hostile/alien/sentinel, /turf/simulated/floor/plasteel{ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "or" = ( /obj/machinery/light/small{ dir = 4 @@ -4501,13 +4501,13 @@ /obj/structure/window/basic, /obj/effect/spawner/lootdrop/maintenance, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ot" = ( /obj/structure/railing{ dir = 8 }, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ov" = ( /obj/effect/turf_decal/caution/stand_clear/white{ dir = 4 @@ -4516,14 +4516,14 @@ icon_state = "caution"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ow" = ( /obj/structure/window/reinforced, /obj/machinery/atmospherics/unary/vent_scrubber/on{ dir = 8 }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "oA" = ( /obj/effect/decal/cleanable/blood/tracks{ color = "red"; @@ -4536,7 +4536,7 @@ /turf/simulated/floor/plating{ icon_state = "asteroidplating" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "oD" = ( /obj/machinery/atmospherics/unary/vent_scrubber/on{ dir = 1 @@ -4544,7 +4544,7 @@ /turf/simulated/floor/plasteel{ icon_state = "escape" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "oF" = ( /obj/structure/chair/sofa/bench/left, /obj/machinery/camera{ @@ -4556,7 +4556,7 @@ icon_state = "whitecorner"; dir = 1 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "oH" = ( /obj/effect/turf_decal/stripes/line, /obj/structure/cable{ @@ -4573,7 +4573,7 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "oJ" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/blood/tracks{ @@ -4585,7 +4585,7 @@ pixel_y = 9 }, /turf/simulated/floor/plating/asteroid/ancient, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "oL" = ( /obj/structure/rack, /obj/structure/window/reinforced{ @@ -4593,7 +4593,7 @@ }, /obj/effect/spawner/lootdrop/maintenance, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "oM" = ( /obj/structure/chair{ dir = 1 @@ -4602,7 +4602,7 @@ /turf/simulated/floor/plasteel{ icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "oP" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/light{ @@ -4615,12 +4615,12 @@ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "oR" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/grille/broken, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "oS" = ( /obj/structure/railing{ dir = 8 @@ -4629,7 +4629,7 @@ /turf/simulated/floor/plasteel/stairs{ dir = 1 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "oT" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/machinery/atmospherics/pipe/simple/hidden/supply, @@ -4637,14 +4637,14 @@ dir = 4; icon_state = "green" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "oU" = ( /obj/item/kirbyplants, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel{ icon_state = "freezerfloor" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "oX" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/machinery/atmospherics/pipe/simple/hidden/supply, @@ -4652,7 +4652,7 @@ /turf/simulated/floor/plasteel{ icon_state = "greencorner" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "oZ" = ( /obj/effect/decal/cleanable/blood/splatter{ color = "red" @@ -4667,14 +4667,14 @@ pixel_x = 10 }, /turf/simulated/floor/plating/asteroid/ancient, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "pa" = ( /obj/structure/table, /turf/simulated/floor/plasteel{ dir = 5; icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "pe" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 8 @@ -4691,13 +4691,13 @@ }, /obj/effect/spawner/window/reinforced/grilled, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ph" = ( /obj/structure/flora/ausbushes/fullgrass, /turf/simulated/floor/plating/asteroid/airless{ icon_state = "asteroid4" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "pi" = ( /obj/effect/turf_decal/loading_area{ dir = 4 @@ -4709,20 +4709,20 @@ /turf/simulated/floor/plasteel{ icon_state = "escape" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "pm" = ( /obj/structure/largecrate, /turf/simulated/floor/plasteel{ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "pn" = ( /obj/structure/flora/ausbushes/sparsegrass, /turf/simulated/floor/plating/asteroid/airless{ icon_state = "asteroid3" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "pp" = ( /obj/structure/cable{ d1 = 1; @@ -4737,7 +4737,7 @@ /obj/item/clothing/gloves/color/yellow, /obj/structure/table/reinforced, /turf/simulated/floor/engine, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "pq" = ( /obj/structure/railing/cap{ dir = 5 @@ -4747,7 +4747,7 @@ dir = 4; icon_state = "blackcorner" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "pr" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/machinery/atmospherics/pipe/simple/hidden/supply, @@ -4758,7 +4758,7 @@ icon_state = "1-2" }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ps" = ( /obj/structure/window/reinforced{ dir = 1 @@ -4768,7 +4768,7 @@ }, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "pt" = ( /obj/structure/railing{ dir = 1 @@ -4776,7 +4776,7 @@ /obj/structure/rack, /obj/item/flashlight/flare/glowstick, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "pu" = ( /obj/effect/decal/cleanable/greenglow, /obj/structure/railing/cap{ @@ -4786,19 +4786,19 @@ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "pz" = ( /turf/simulated/floor/plasteel{ icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "pB" = ( /obj/structure/rack, /obj/item/paicard{ pixel_x = -4 }, /turf/simulated/floor/carpet/royalblue, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "pD" = ( /obj/structure/chair/sofa/bench/right{ dir = 4 @@ -4807,12 +4807,12 @@ icon_state = "caution"; dir = 10 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "pE" = ( /turf/simulated/floor/plasteel{ icon_state = "yellowsiding" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "pF" = ( /obj/structure/reagent_dispensers/water_cooler, /obj/effect/decal/cleanable/dirt, @@ -4820,7 +4820,7 @@ icon_state = "escape"; dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "pI" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 9 @@ -4829,17 +4829,17 @@ icon_state = "blackcorner"; dir = 1 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "pK" = ( /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plating/asteroid/ancient, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "pL" = ( /obj/structure/rack, /obj/effect/decal/cleanable/cobweb2, /obj/effect/spawner/lootdrop/maintenance, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "pN" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/blood/xeno{ @@ -4850,7 +4850,7 @@ desc = "They look like the remains of something... alien. The front of skull appears to have been completely obliterated." }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "pP" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 6 @@ -4860,7 +4860,7 @@ icon_state = "white"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "pQ" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 5 @@ -4878,11 +4878,11 @@ dir = 8; icon_state = "cautioncorner" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "pR" = ( /obj/structure/closet/secure_closet/freezer/fridge, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "pS" = ( /obj/machinery/light/small{ dir = 8 @@ -4892,7 +4892,7 @@ /turf/simulated/floor/plasteel{ icon_state = "dark" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "pV" = ( /obj/machinery/door/poddoor/impassable{ id_tag = "awayscilock" @@ -4902,7 +4902,7 @@ name = "Research Division" }, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "pW" = ( /obj/effect/turf_decal/stripes/line, /obj/structure/cable{ @@ -4914,12 +4914,12 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "pZ" = ( /obj/effect/decal/cleanable/dirt, /obj/item/reagent_containers/food/snacks/badrecipe, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "qa" = ( /obj/structure/chair/sofa/bench{ dir = 8 @@ -4934,7 +4934,7 @@ icon_state = "caution"; dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "qb" = ( /obj/structure/railing/cap{ dir = 10 @@ -4946,7 +4946,7 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "qc" = ( /obj/effect/decal/cleanable/dirt, /mob/living/simple_animal/hostile/alien/sentinel, @@ -4954,7 +4954,7 @@ icon_state = "caution"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "qj" = ( /obj/structure/railing/cap{ dir = 9 @@ -4962,7 +4962,7 @@ /turf/simulated/floor/plasteel{ icon_state = "dark" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "qm" = ( /obj/structure/cable{ d1 = 1; @@ -4977,7 +4977,7 @@ id = "mo19rdoffice" }, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "qo" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 @@ -4988,7 +4988,7 @@ /turf/simulated/floor/plasteel{ icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "qp" = ( /obj/structure/railing{ dir = 8 @@ -4997,7 +4997,7 @@ icon_state = "yellowsiding"; dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "qq" = ( /obj/structure/table/reinforced, /obj/item/clipboard{ @@ -5012,7 +5012,7 @@ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "qr" = ( /obj/structure/window/reinforced{ dir = 8 @@ -5021,7 +5021,7 @@ dir = 8 }, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "qt" = ( /obj/machinery/power/smes{ input_level = 10000; @@ -5031,14 +5031,14 @@ }, /obj/structure/cable, /turf/simulated/floor/engine, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "qu" = ( /obj/item/kirbyplants, /turf/simulated/floor/plasteel{ dir = 5; icon_state = "escape" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "qv" = ( /obj/structure/disposalpipe/segment{ desc = "An underfloor disposal pipe. This one has been applied with an acid-proof coating."; @@ -5050,14 +5050,14 @@ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "qx" = ( /obj/machinery/door/airlock/centcom{ req_access_txt = "271"; name = "Cafeteria" }, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "qA" = ( /obj/effect/decal/cleanable/blood/tracks{ color = "red"; @@ -5070,7 +5070,7 @@ /turf/simulated/floor/plating{ icon_state = "asteroidplating" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "qB" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 5 @@ -5083,7 +5083,7 @@ dir = 6; icon_state = "escape" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "qC" = ( /obj/structure/chair/sofa/bench/left{ dir = 8 @@ -5097,7 +5097,7 @@ icon_state = "caution"; dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "qD" = ( /obj/machinery/atmospherics/unary/vent_pump/on{ dir = 4 @@ -5106,14 +5106,14 @@ icon_state = "white"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "qF" = ( /obj/structure/closet/firecloset, /turf/simulated/floor/plasteel{ dir = 1; icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "qI" = ( /obj/structure/railing{ dir = 1 @@ -5122,7 +5122,7 @@ dir = 1; icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "qM" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/machinery/atmospherics/pipe/simple/hidden/supply, @@ -5134,7 +5134,7 @@ icon_state = "1-2" }, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "qQ" = ( /obj/machinery/kitchen_machine/grill, /obj/machinery/light/small{ @@ -5145,7 +5145,7 @@ icon_state = "showroomfloor"; temperature = 273.15 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "qS" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/cobweb2, @@ -5155,14 +5155,14 @@ /turf/simulated/floor/plasteel{ icon_state = "dark" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "qY" = ( /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel{ dir = 4; icon_state = "black" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "re" = ( /obj/structure/railing/cap{ dir = 8 @@ -5174,14 +5174,14 @@ icon_state = "darkblue"; dir = 1 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "rf" = ( /obj/structure/bed, /obj/item/bedsheet, /obj/effect/decal/cleanable/cobweb2, /obj/item/toy/plushie/lizardplushie, /turf/simulated/floor/carpet, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ri" = ( /obj/item/radio/off{ pixel_x = -8 @@ -5201,7 +5201,7 @@ /obj/item/coin/antagtoken/syndicate, /obj/structure/table, /turf/simulated/floor/plating/asteroid/ancient, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "rk" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/landmark/damageturf, @@ -5212,7 +5212,7 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "rl" = ( /obj/structure/sink{ dir = 8; @@ -5223,7 +5223,7 @@ icon_state = "darkblue"; dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "rm" = ( /obj/structure/railing/cap, /obj/structure/railing/cap{ @@ -5236,7 +5236,7 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ro" = ( /obj/structure/railing/cap, /obj/structure/alien/resin/wall, @@ -5244,7 +5244,7 @@ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "rp" = ( /obj/effect/decal/cleanable/blood/xeno{ color = "green" @@ -5253,7 +5253,7 @@ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "rq" = ( /obj/structure/railing/cap{ dir = 6 @@ -5261,7 +5261,7 @@ /turf/simulated/floor/plasteel/stairs{ dir = 1 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "rs" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/remains/human, @@ -5277,27 +5277,27 @@ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ru" = ( /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel{ dir = 10; icon_state = "green" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "rv" = ( /turf/simulated/floor/plasteel{ icon_state = "whitehall"; dir = 1 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "rx" = ( /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel{ dir = 9; icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ry" = ( /obj/structure/table/reinforced, /obj/item/clothing/glasses/meson, @@ -5308,7 +5308,7 @@ }, /obj/item/paper/fluff/ruins/moonoutpost19/engineering, /turf/simulated/floor/engine, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "rB" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 8 @@ -5318,7 +5318,7 @@ dir = 8; icon_state = "escape" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "rC" = ( /obj/structure/railing/corner{ dir = 8 @@ -5326,7 +5326,7 @@ /turf/simulated/floor/plating/asteroid/airless{ icon_state = "asteroid5" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "rD" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 10 @@ -5336,7 +5336,7 @@ dir = 1; icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "rE" = ( /obj/effect/decal/cleanable/blood/tracks{ color = "red"; @@ -5346,26 +5346,26 @@ dir = 8 }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "rG" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/flora/ausbushes/sparsegrass, /turf/simulated/floor/plating/asteroid/ancient, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "rH" = ( /obj/item/kirbyplants, /turf/simulated/floor/plasteel{ dir = 10; icon_state = "escape" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "rJ" = ( /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel{ dir = 1; icon_state = "black" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "rK" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 @@ -5385,14 +5385,14 @@ icon_state = "whitecorner"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "rL" = ( /obj/structure/chair/sofa/bench/left, /turf/simulated/floor/plasteel{ dir = 1; icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "rN" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 @@ -5401,11 +5401,11 @@ icon_state = "white"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "rP" = ( /obj/structure/flora/ash/rock/style_random, /turf/simulated/floor/plating/asteroid/ancient, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "rQ" = ( /obj/structure/railing/cap, /obj/effect/decal/cleanable/blood/splatter{ @@ -5415,7 +5415,7 @@ icon_state = "yellowsiding"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "rS" = ( /obj/structure/cable{ d1 = 1; @@ -5434,7 +5434,7 @@ stat = 2 }, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "rT" = ( /obj/structure/window/reinforced{ dir = 8 @@ -5447,7 +5447,7 @@ icon_state = "black"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "rV" = ( /obj/machinery/door/airlock{ req_access_txt = "271"; @@ -5457,13 +5457,13 @@ dir = 8; icon_state = "green" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "rW" = ( /turf/simulated/floor/plasteel{ icon_state = "escapecorner"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "rY" = ( /obj/machinery/atmospherics/unary/vent_pump/on{ dir = 8 @@ -5472,13 +5472,13 @@ icon_state = "caution"; dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "rZ" = ( /obj/machinery/door/airlock/maintenance_hatch{ req_access_txt = "271" }, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "sa" = ( /obj/structure/sign/radiation/rad_area{ pixel_y = 32 @@ -5489,14 +5489,14 @@ /turf/simulated/floor/plasteel/stairs{ dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "sc" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/blood/splatter{ color = "red" }, /turf/simulated/floor/carpet, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "se" = ( /obj/effect/turf_decal/stripes/asteroid/corner{ dir = 8 @@ -5504,7 +5504,7 @@ /turf/simulated/floor/plating{ icon_state = "asteroidplating" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "sg" = ( /obj/effect/decal/cleanable/cobweb, /obj/structure/railing, @@ -5512,7 +5512,7 @@ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "sh" = ( /obj/machinery/recharger{ pixel_y = 4 @@ -5524,7 +5524,7 @@ }, /obj/structure/table/reinforced, /turf/simulated/floor/engine, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "si" = ( /obj/structure/cable{ d1 = 1; @@ -5532,7 +5532,7 @@ icon_state = "1-2" }, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "sj" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/machinery/atmospherics/pipe/simple/hidden/supply, @@ -5540,7 +5540,7 @@ icon_state = "black"; dir = 1 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "sk" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 @@ -5557,7 +5557,7 @@ icon_state = "cautioncorner"; dir = 1 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "sl" = ( /obj/effect/turf_decal/stripes/line{ dir = 6 @@ -5569,11 +5569,11 @@ }, /obj/structure/alien/resin/wall, /turf/simulated/floor/engine, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "sm" = ( /obj/effect/decal/cleanable/cobweb, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "sn" = ( /obj/structure/table/reinforced, /obj/machinery/door/poddoor/shutters/preopen{ @@ -5586,7 +5586,7 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "so" = ( /obj/structure/railing/corner{ dir = 8 @@ -5594,7 +5594,7 @@ /turf/simulated/floor/plating/asteroid/airless{ icon_state = "asteroid6" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "sp" = ( /obj/item/kirbyplants, /obj/structure/railing, @@ -5607,7 +5607,7 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "sq" = ( /obj/structure/chair/office/dark{ dir = 4 @@ -5617,7 +5617,7 @@ dir = 8; icon_state = "dark" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "sv" = ( /obj/machinery/power/terminal{ dir = 1 @@ -5627,15 +5627,15 @@ icon_state = "0-2" }, /turf/simulated/floor/engine, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "sy" = ( /obj/effect/decal/cleanable/dirt, /turf/simulated/wall/r_wall, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "sF" = ( /obj/effect/spawner/random_spawners/wall_rusted_always, /turf/simulated/wall/indestructible/riveted, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "sK" = ( /obj/structure/chair/sofa/bench/left{ dir = 8 @@ -5644,34 +5644,34 @@ icon_state = "escape"; dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "sL" = ( /obj/machinery/door/airlock/external/glass, /turf/simulated/floor/plating/asteroid/ancient, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "sR" = ( /obj/structure/chair/sofa/bench/left, /obj/effect/decal/cleanable/cobweb2, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "sV" = ( /obj/structure/flora/ausbushes/fullgrass, /turf/simulated/floor/grass, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "sY" = ( /obj/machinery/light/small, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel{ icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "sZ" = ( /obj/structure/chair/office/dark, /turf/simulated/floor/plasteel{ dir = 8; icon_state = "dark" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "tb" = ( /obj/structure/sign/securearea{ pixel_x = -32 @@ -5683,14 +5683,14 @@ icon_state = "caution"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "tc" = ( /obj/structure/railing{ dir = 4 }, /obj/item/kirbyplants, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "td" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/machinery/atmospherics/pipe/simple/hidden/supply, @@ -5698,7 +5698,7 @@ icon_state = "cautioncorner"; dir = 1 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "te" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 10 @@ -5708,7 +5708,7 @@ }, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "tf" = ( /obj/effect/turf_decal/stripes/line{ dir = 4 @@ -5720,20 +5720,20 @@ }, /obj/machinery/atmospherics/air_sensor, /turf/simulated/floor/engine, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "th" = ( /obj/structure/chair/office/dark{ dir = 1 }, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "tj" = ( /obj/structure/railing/cap, /obj/structure/flora/ash/rock/style_random, /obj/structure/flora/ausbushes/sparsegrass, /turf/simulated/floor/plating/asteroid/airless, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "tk" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 10 @@ -5753,7 +5753,7 @@ pixel_x = 2 }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "tl" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply, /obj/effect/decal/cleanable/blood/tracks{ @@ -5765,21 +5765,21 @@ pixel_x = 2 }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "tm" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 9 }, /obj/effect/landmark/damageturf, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "to" = ( /obj/structure/railing{ dir = 4 }, /obj/structure/flora/ausbushes/sparsegrass, /turf/simulated/floor/plating/asteroid/airless, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "tp" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 10 @@ -5791,11 +5791,11 @@ }, /obj/machinery/atmospherics/pipe/manifold4w/hidden/supply, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "tv" = ( /obj/structure/largecrate, /turf/simulated/floor/plating/asteroid/ancient, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "tw" = ( /obj/structure/table/reinforced, /obj/structure/window/reinforced{ @@ -5808,12 +5808,12 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "tx" = ( /obj/structure/window/reinforced, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "tD" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/noticeboard{ @@ -5822,12 +5822,12 @@ /turf/simulated/floor/plasteel{ icon_state = "dark" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "tE" = ( /obj/structure/closet/crate/secure/loot, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "tG" = ( /obj/structure/cable{ d1 = 1; @@ -5841,7 +5841,7 @@ icon_state = "whitecorner"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "tI" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/blood/splatter{ @@ -5850,7 +5850,7 @@ /turf/simulated/floor/plating{ icon_state = "asteroidplating" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "tR" = ( /obj/structure/table/reinforced, /obj/structure/window/reinforced{ @@ -5863,7 +5863,7 @@ icon_state = "white"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "tV" = ( /obj/effect/decal/cleanable/blood/splatter{ color = "red" @@ -5872,21 +5872,21 @@ dir = 1; icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "tW" = ( /obj/structure/grille/broken, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "tX" = ( /turf/simulated/wall/indestructible/rock, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "tY" = ( /obj/machinery/economy/vending/dinnerware, /turf/simulated/floor/plasteel{ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "tZ" = ( /obj/structure/railing/corner{ dir = 4 @@ -5898,7 +5898,7 @@ stat = 2 }, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ub" = ( /obj/structure/cable, /obj/machinery/power/smes{ @@ -5908,7 +5908,7 @@ outputting = 0 }, /turf/simulated/floor/engine, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "uf" = ( /obj/structure/window/reinforced, /mob/living/simple_animal/hostile/alien/drone, @@ -5916,14 +5916,14 @@ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ug" = ( /obj/structure/railing{ dir = 6 }, /obj/structure/chair, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "uh" = ( /obj/effect/turf_decal/stripes/corner{ dir = 4 @@ -5938,12 +5938,12 @@ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "uj" = ( /obj/effect/decal/remains/human, /obj/item/reagent_containers/hypospray/autoinjector/survival, /turf/simulated/floor/plating/asteroid/airless, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "up" = ( /obj/structure/chair/sofa/bench{ dir = 8 @@ -5952,7 +5952,7 @@ icon_state = "escape"; dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ur" = ( /obj/machinery/light/small{ active_power_consumption = 0; @@ -5965,7 +5965,7 @@ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "uv" = ( /obj/structure/railing/cap{ dir = 9 @@ -5973,7 +5973,7 @@ /turf/simulated/floor/plating/asteroid/airless{ icon_state = "asteroid12" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "uw" = ( /obj/structure/chair/comfy/brown{ dir = 8 @@ -5983,14 +5983,14 @@ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "uA" = ( /obj/structure/closet/crate, /turf/simulated/floor/plasteel{ icon_state = "white"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "uG" = ( /obj/structure/railing{ dir = 4 @@ -5998,7 +5998,7 @@ /turf/simulated/floor/plasteel/stairs{ dir = 1 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "uJ" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/machinery/atmospherics/pipe/simple/hidden/supply, @@ -6016,7 +6016,7 @@ }, /obj/effect/spawner/window/reinforced/tinted/grilled, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "uM" = ( /obj/machinery/light/small, /obj/structure/noticeboard{ @@ -6025,7 +6025,7 @@ /turf/simulated/floor/plasteel{ icon_state = "black" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "uO" = ( /obj/structure/table/reinforced, /obj/item/storage/fancy/vials, @@ -6033,14 +6033,14 @@ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "uP" = ( /obj/effect/turf_decal/stripes/line{ dir = 9 }, /obj/structure/alien/resin/wall, /turf/simulated/floor/engine, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "uR" = ( /obj/effect/decal/cleanable/blood/tracks{ color = "red"; @@ -6050,7 +6050,7 @@ dir = 1 }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "uS" = ( /obj/structure/railing{ dir = 8 @@ -6062,7 +6062,7 @@ icon_state = "black"; dir = 9 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "uT" = ( /obj/structure/railing/cap{ dir = 10 @@ -6071,26 +6071,26 @@ icon_state = "yellowsiding"; dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "uV" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/cobweb2, /turf/simulated/floor/plating{ icon_state = "asteroidplating" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "uX" = ( /obj/structure/table/glass/reinforced/titanium, /obj/item/paper_bin, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "va" = ( /obj/machinery/economy/vending/cola, /turf/simulated/floor/plasteel{ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "vd" = ( /obj/structure/cable{ d1 = 1; @@ -6103,14 +6103,14 @@ icon_state = "4-8" }, /turf/simulated/floor/engine, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ve" = ( /obj/structure/window/reinforced{ dir = 8 }, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "vf" = ( /obj/machinery/light/small{ dir = 1 @@ -6120,7 +6120,7 @@ dir = 1; icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "vh" = ( /obj/structure/rack, /obj/item/mecha_parts/core, @@ -6129,26 +6129,26 @@ /turf/simulated/floor/plasteel{ icon_state = "dark" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "vm" = ( /obj/machinery/atmospherics/portable/canister/air, /turf/simulated/floor/plasteel{ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "vn" = ( /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel{ icon_state = "black" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "vq" = ( /obj/structure/railing/cap{ dir = 1 }, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "vy" = ( /obj/structure/railing/cap{ dir = 1 @@ -6159,14 +6159,14 @@ /turf/simulated/floor/plasteel/stairs{ dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "vz" = ( /obj/machinery/atmospherics/pipe/simple/hidden, /turf/simulated/floor/plasteel{ icon_state = "whitehall"; dir = 1 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "vA" = ( /obj/structure/table/reinforced, /obj/item/paper_bin{ @@ -6182,7 +6182,7 @@ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "vB" = ( /obj/item/kirbyplants, /obj/machinery/light/small{ @@ -6192,7 +6192,7 @@ icon_state = "escape"; dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "vC" = ( /obj/structure/bed, /obj/item/bedsheet/medical, @@ -6201,26 +6201,26 @@ icon_state = "whitehall"; dir = 1 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "vD" = ( /obj/structure/railing{ dir = 1 }, /turf/simulated/floor/plating/asteroid/airless, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "vF" = ( /obj/structure/table, /turf/simulated/floor/plasteel{ icon_state = "whitecorner"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "vH" = ( /obj/structure/railing/cap{ dir = 4 }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "vL" = ( /obj/structure/noticeboard{ pixel_y = 32 @@ -6229,14 +6229,14 @@ dir = 1 }, /turf/simulated/floor/carpet/royalblue, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "vN" = ( /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel{ icon_state = "showroomfloor"; temperature = 273.15 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "vO" = ( /obj/structure/chair/office/dark{ dir = 4 @@ -6247,14 +6247,14 @@ dir = 8; icon_state = "dark" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "vS" = ( /obj/structure/alien/resin/door, /turf/simulated/floor/plasteel{ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "vT" = ( /obj/structure/railing/cap{ dir = 6 @@ -6262,7 +6262,7 @@ /turf/simulated/floor/plasteel{ icon_state = "dark" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "vV" = ( /obj/structure/flora/ausbushes/pointybush, /obj/structure/flora/ausbushes/ppflowers, @@ -6270,7 +6270,7 @@ dir = 4 }, /turf/simulated/floor/grass, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "vY" = ( /obj/structure/railing, /obj/structure/railing{ @@ -6283,7 +6283,7 @@ /turf/simulated/floor/plasteel{ icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "wb" = ( /obj/effect/decal/cleanable/blood/tracks{ color = "red"; @@ -6295,7 +6295,7 @@ icon_state = "white"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "wc" = ( /obj/effect/decal/cleanable/blood/tracks{ color = "red"; @@ -6307,7 +6307,7 @@ icon_state = "darkbluecorners"; dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "wd" = ( /obj/structure/table/reinforced, /obj/structure/window/reinforced{ @@ -6320,7 +6320,7 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "we" = ( /obj/structure/reagent_dispensers/water_cooler, /obj/structure/sign/poster/contraband/donut_corp{ @@ -6331,7 +6331,7 @@ dir = 8; icon_state = "escape" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "wh" = ( /obj/item/chair{ dir = 4; @@ -6342,17 +6342,17 @@ icon_state = "black"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "wj" = ( /obj/structure/railing/cap, /turf/simulated/floor/plasteel/stairs{ dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "wk" = ( /obj/machinery/computer, /turf/simulated/floor/plating/asteroid/ancient, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "wl" = ( /obj/item/stack/ore/slag, /turf/simulated/floor/engine/vacuum, @@ -6367,14 +6367,14 @@ }, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "wp" = ( /obj/item/kirbyplants, /turf/simulated/floor/plasteel{ icon_state = "caution"; dir = 5 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "wq" = ( /obj/machinery/light/small, /obj/structure/closet/l3closet/general, @@ -6382,26 +6382,26 @@ icon_state = "whitehall"; dir = 1 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "wt" = ( /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plating{ icon_state = "asteroidplating" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "wv" = ( /obj/item/kirbyplants, /turf/simulated/floor/plasteel{ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "wC" = ( /obj/structure/closet/cabinet, /obj/effect/decal/cleanable/dirt, /obj/item/clothing/under/syndicate, /turf/simulated/floor/carpet, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "wD" = ( /obj/machinery/economy/vending/cola, /obj/effect/decal/cleanable/dirt, @@ -6409,7 +6409,7 @@ icon_state = "escape"; dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "wF" = ( /obj/structure/window/reinforced{ dir = 4 @@ -6421,26 +6421,26 @@ dir = 8; icon_state = "dark" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "wH" = ( /obj/effect/turf_decal/stripes/line, /turf/simulated/floor/plasteel{ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "wL" = ( /obj/item/reagent_containers/food/drinks/drinkingglass, /obj/structure/table, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "wP" = ( /obj/machinery/door/airlock/engineering/glass{ name = "Engine Room" }, /obj/machinery/door/firedoor/closed, /turf/simulated/floor/plating/airless, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "wQ" = ( /obj/structure/railing{ dir = 4 @@ -6448,7 +6448,7 @@ /obj/structure/rack, /obj/effect/decal/cleanable/cobweb, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "wR" = ( /obj/structure/sign/monkey_paint{ pixel_x = -28; @@ -6461,7 +6461,7 @@ icon_state = "black"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "wS" = ( /obj/machinery/light/small, /obj/effect/decal/cleanable/dirt, @@ -6470,7 +6470,7 @@ }, /obj/effect/decal/remains/human, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "wU" = ( /obj/structure/chair/office/dark, /obj/effect/turf_decal/delivery/red/partial, @@ -6479,7 +6479,7 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "xf" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 @@ -6496,20 +6496,20 @@ /turf/simulated/floor/plasteel{ icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "xh" = ( /obj/structure/railing/cap, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel{ icon_state = "green" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "xi" = ( /obj/effect/landmark/damageturf, /turf/simulated/floor/plasteel/stairs{ dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "xl" = ( /obj/structure/cable{ d1 = 4; @@ -6523,7 +6523,7 @@ icon_state = "whitecorner"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "xm" = ( /obj/structure/window/reinforced{ dir = 4 @@ -6537,7 +6537,7 @@ dir = 4; icon_state = "black" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "xn" = ( /obj/structure/railing{ dir = 4 @@ -6545,13 +6545,13 @@ /turf/simulated/floor/plating/asteroid/airless{ icon_state = "asteroid10" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "xo" = ( /obj/effect/decal/cleanable/cobweb2, /turf/simulated/floor/plating{ icon_state = "asteroidplating" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "xs" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 8 @@ -6570,7 +6570,7 @@ icon_state = "1-8" }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "xt" = ( /obj/structure/railing{ dir = 8 @@ -6582,7 +6582,7 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "xu" = ( /obj/machinery/atmospherics/pipe/manifold/visible{ dir = 1 @@ -6590,12 +6590,12 @@ /turf/simulated/floor/plating{ icon_state = "asteroidplating" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "xw" = ( /obj/structure/closet/crate/can, /obj/effect/spawner/lootdrop/maintenance, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "xz" = ( /obj/structure/sign/lifestar{ pixel_y = 32 @@ -6611,7 +6611,7 @@ dir = 1; icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "xA" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/machinery/atmospherics/pipe/simple/hidden/supply, @@ -6619,7 +6619,7 @@ icon_state = "caution"; dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "xC" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 10 @@ -6631,7 +6631,7 @@ dir = 1; icon_state = "escape" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "xE" = ( /obj/structure/chair/sofa/bench/right{ dir = 1 @@ -6640,7 +6640,7 @@ dir = 6; icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "xF" = ( /obj/structure/chair/sofa/bench/right{ dir = 8 @@ -6649,15 +6649,15 @@ dir = 5; icon_state = "escape" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "xG" = ( /turf/simulated/floor/engine, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "xL" = ( /turf/simulated/floor/plasteel/stairs{ dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "xO" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 @@ -6666,7 +6666,7 @@ /turf/simulated/floor/plasteel{ icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "xS" = ( /obj/structure/railing/cap{ dir = 10 @@ -6677,18 +6677,18 @@ icon_state = "yellowsiding"; dir = 5 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "xW" = ( /obj/machinery/door/airlock, /turf/simulated/floor/carpet, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "xX" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 }, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "xZ" = ( /obj/machinery/disposal/deliveryChute{ dir = 8 @@ -6699,7 +6699,7 @@ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ya" = ( /obj/structure/chair/sofa/bench{ dir = 8 @@ -6711,13 +6711,13 @@ icon_state = "escape"; dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "yb" = ( /obj/machinery/light/small{ dir = 1 }, /turf/simulated/floor/carpet, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "yc" = ( /obj/machinery/computer{ dir = 8 @@ -6726,13 +6726,13 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "yd" = ( /obj/structure/railing, /turf/simulated/floor/plasteel/stairs{ dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "yf" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 10 @@ -6741,7 +6741,7 @@ icon_state = "white"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "yi" = ( /obj/structure/rack, /obj/item/pickaxe, @@ -6750,7 +6750,7 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "yj" = ( /obj/item/storage/belt/utility, /obj/structure/table, @@ -6758,7 +6758,7 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ym" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 @@ -6775,7 +6775,7 @@ icon_state = "white"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ys" = ( /obj/structure/railing{ dir = 8 @@ -6783,7 +6783,7 @@ /turf/simulated/floor/plasteel/stairs{ dir = 1 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "yu" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/machinery/atmospherics/pipe/manifold/hidden/supply{ @@ -6796,7 +6796,7 @@ icon_state = "1-2" }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "yv" = ( /obj/effect/turf_decal/stripes/line, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ @@ -6819,7 +6819,7 @@ icon_state = "whitecorner"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "yx" = ( /obj/structure/window/reinforced{ dir = 8 @@ -6828,14 +6828,14 @@ /obj/machinery/atmospherics/pipe/simple/hidden/supply, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "yy" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 }, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/engine, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "yB" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/table, @@ -6843,7 +6843,7 @@ icon_state = "whitecorner"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "yD" = ( /obj/structure/rack, /obj/effect/turf_decal/delivery, @@ -6857,7 +6857,7 @@ icon_state = "yellowsiding"; dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "yE" = ( /obj/item/stack/sheet/metal, /obj/effect/landmark/damageturf, @@ -6868,12 +6868,12 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "yF" = ( /obj/structure/table/wood, /obj/item/toy/plushie/nianplushie, /turf/simulated/floor/carpet, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "yG" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 8 @@ -6882,7 +6882,7 @@ pixel_y = -3 }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "yI" = ( /obj/structure/railing/cap{ dir = 1 @@ -6891,7 +6891,7 @@ dir = 10 }, /turf/simulated/floor/plating/asteroid/airless, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "yM" = ( /obj/structure/railing/cap{ dir = 4 @@ -6900,13 +6900,13 @@ /turf/simulated/floor/plasteel{ icon_state = "dark" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "yO" = ( /obj/structure/flora/ausbushes/fullgrass, /turf/simulated/floor/plating/asteroid/airless{ icon_state = "asteroid8" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "yQ" = ( /obj/structure/table/glass/reinforced/plastitanium, /obj/machinery/door_control{ @@ -6933,7 +6933,7 @@ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "yR" = ( /obj/item/reagent_containers/food/snacks/xenomeatbreadslice, /obj/item/reagent_containers/food/snacks/xenomeatbreadslice{ @@ -6952,12 +6952,12 @@ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "yU" = ( /obj/item/reagent_containers/food/snacks/candy, /obj/structure/table, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "yX" = ( /obj/structure/railing/cap{ dir = 4 @@ -6970,20 +6970,20 @@ /turf/simulated/floor/plasteel/stairs{ dir = 1 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "yZ" = ( /obj/structure/closet/cabinet, /obj/effect/decal/cleanable/dirt, /obj/effect/spawner/lootdrop/maintenance, /turf/simulated/floor/carpet, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "zh" = ( /obj/item/reagent_containers/food/snacks/badrecipe, /turf/simulated/floor/plasteel{ icon_state = "showroomfloor"; temperature = 273.15 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "zi" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 @@ -7002,7 +7002,7 @@ /turf/simulated/floor/plasteel{ icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "zj" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/machinery/atmospherics/pipe/simple/hidden/supply, @@ -7013,33 +7013,33 @@ icon_state = "1-2" }, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "zl" = ( /obj/structure/closet/firecloset, /turf/simulated/floor/plasteel{ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "zm" = ( /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel{ icon_state = "escapecorner"; dir = 1 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "zn" = ( /obj/effect/spawner/random_spawners/wall_rusted_always, /obj/effect/spawner/random_spawners/wall_rusted_always, /turf/simulated/wall/r_wall, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "zr" = ( /obj/effect/decal/cleanable/cobweb2, /turf/simulated/floor/plasteel{ dir = 6; icon_state = "green" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "zu" = ( /obj/structure/alien/resin/wall, /obj/structure/cable{ @@ -7048,7 +7048,7 @@ icon_state = "1-8" }, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "zv" = ( /obj/structure/rack, /obj/item/reagent_containers/food/snacks/cornchips, @@ -7056,14 +7056,14 @@ dir = 8; icon_state = "escape" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "zw" = ( /obj/machinery/computer/aifixer, /obj/machinery/light/small{ dir = 1 }, /turf/simulated/floor/carpet/royalblue, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "zy" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/machinery/atmospherics/pipe/simple/hidden/supply, @@ -7083,7 +7083,7 @@ icon_state = "1-2" }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "zz" = ( /obj/structure/window/reinforced, /obj/structure/chair/comfy/corp{ @@ -7092,11 +7092,11 @@ /turf/simulated/floor/plasteel{ icon_state = "black" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "zE" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "zG" = ( /obj/structure/window/reinforced, /obj/structure/window/reinforced{ @@ -7107,13 +7107,13 @@ icon_state = "caution"; dir = 10 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "zI" = ( /turf/simulated/floor/plasteel{ dir = 8; icon_state = "escape" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "zK" = ( /obj/item/kirbyplants, /obj/structure/sign/biohazard{ @@ -7131,7 +7131,7 @@ dir = 1; icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "zL" = ( /obj/structure/window/reinforced{ dir = 8 @@ -7143,21 +7143,21 @@ /turf/simulated/floor/plasteel{ icon_state = "freezerfloor" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "zM" = ( /obj/machinery/cooker/deepfryer, /turf/simulated/floor/plasteel{ icon_state = "showroomfloor"; temperature = 273.15 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "zN" = ( /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel{ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "zP" = ( /obj/structure/closet/secure_closet/freezer/fridge, /obj/effect/decal/cleanable/dirt, @@ -7165,7 +7165,7 @@ icon_state = "showroomfloor"; temperature = 273.15 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "zQ" = ( /obj/structure/disposalpipe/segment/corner{ dir = 8 @@ -7180,12 +7180,12 @@ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "zT" = ( /turf/simulated/floor/plating/asteroid/airless{ icon_state = "asteroid3" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "zV" = ( /obj/machinery/economy/vending/medical{ req_access_txt = "271" @@ -7194,24 +7194,24 @@ icon_state = "whitecorner"; dir = 1 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "zW" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/closet, /obj/effect/spawner/lootdrop/maintenance, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Aa" = ( /obj/structure/filingcabinet/chestdrawer, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Ae" = ( /obj/machinery/economy/vending/coffee, /turf/simulated/floor/plasteel{ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Af" = ( /obj/machinery/door/airlock/command/glass{ req_access_txt = "271"; @@ -7224,18 +7224,18 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Aj" = ( /mob/living/simple_animal/hostile/alien/sentinel, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Ak" = ( /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel{ icon_state = "cautioncorner"; dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Al" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/stripes/corner{ @@ -7245,7 +7245,7 @@ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Am" = ( /obj/machinery/atmospherics/pipe/simple/hidden{ dir = 6 @@ -7253,7 +7253,7 @@ /turf/simulated/floor/plasteel/stairs{ dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "An" = ( /obj/structure/punching_bag, /obj/effect/turf_decal/delivery/hollow, @@ -7265,7 +7265,7 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Ao" = ( /obj/effect/turf_decal/stripes/line{ dir = 1 @@ -7274,7 +7274,7 @@ color = "red" }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Ap" = ( /obj/structure/chair{ dir = 1 @@ -7283,7 +7283,7 @@ icon_state = "whitehall"; dir = 1 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Ar" = ( /obj/effect/turf_decal/delivery, /obj/structure/railing{ @@ -7293,7 +7293,7 @@ /turf/simulated/floor/plasteel{ icon_state = "escape" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "As" = ( /obj/structure/closet/secure_closet, /obj/item/clothing/gloves/color/latex, @@ -7306,7 +7306,7 @@ /obj/item/laser_pointer, /obj/item/clothing/suit/storage/labcoat, /turf/simulated/floor/carpet/royalblue, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Av" = ( /obj/effect/decal/cleanable/blood/tracks{ color = "red"; @@ -7320,7 +7320,7 @@ icon_state = "whitehall"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Aw" = ( /obj/machinery/light/small, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ @@ -7333,37 +7333,37 @@ /turf/simulated/floor/plasteel{ icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Ay" = ( /obj/structure/railing{ dir = 5 }, /obj/structure/closet/l3closet/general, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Az" = ( /obj/structure/bed, /obj/item/bedsheet, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/carpet, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "AA" = ( /obj/structure/chair{ dir = 4 }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "AH" = ( /obj/effect/decal/cleanable/dirt, /obj/item/chair{ pixel_y = -3 }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "AI" = ( /obj/structure/table, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "AJ" = ( /obj/effect/decal/cleanable/blood/tracks{ color = "red"; @@ -7373,13 +7373,13 @@ dir = 4 }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "AL" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 10 }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "AM" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/machinery/atmospherics/pipe/simple/hidden/supply, @@ -7390,7 +7390,7 @@ }, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "AN" = ( /obj/structure/grille/broken, /obj/effect/decal/cleanable/glass, @@ -7399,7 +7399,7 @@ icon_state = "medium" }, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "AO" = ( /obj/structure/railing/cap{ dir = 5 @@ -7412,10 +7412,10 @@ /turf/simulated/floor/plasteel/stairs{ dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "AP" = ( /turf/simulated/wall/indestructible/riveted, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "AQ" = ( /obj/machinery/light/small{ dir = 1 @@ -7431,14 +7431,14 @@ icon_state = "yellowsiding"; dir = 1 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "AR" = ( /obj/structure/window/reinforced, /turf/simulated/floor/plasteel{ icon_state = "yellowsiding"; dir = 1 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "AS" = ( /obj/structure/chair/office/dark{ dir = 4 @@ -7448,7 +7448,7 @@ dir = 1; icon_state = "black" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "AV" = ( /obj/structure/table/reinforced, /obj/item/reagent_containers/glass/beaker{ @@ -7467,7 +7467,7 @@ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "AZ" = ( /obj/machinery/atmospherics/unary/tank/air{ dir = 8 @@ -7478,7 +7478,7 @@ icon_state = "yellowsiding"; dir = 6 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Bd" = ( /obj/effect/turf_decal/stripes/line{ dir = 8 @@ -7487,19 +7487,19 @@ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Be" = ( /obj/effect/turf_decal/stripes/corner, /turf/simulated/floor/plasteel{ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Bg" = ( /turf/simulated/floor/plasteel/stairs{ dir = 1 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Bj" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 8 @@ -7512,14 +7512,14 @@ icon_state = "caution"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Bk" = ( /obj/effect/turf_decal/stripes/corner, /turf/simulated/floor/plasteel{ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Br" = ( /obj/structure/railing{ dir = 4 @@ -7531,7 +7531,7 @@ icon_state = "black"; dir = 5 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Bt" = ( /obj/structure/disposalpipe/segment{ desc = "An underfloor disposal pipe. This one has been applied with an acid-proof coating."; @@ -7541,7 +7541,7 @@ /obj/structure/alien/resin/wall, /obj/effect/landmark/damageturf, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Bu" = ( /obj/effect/decal/cleanable/blood/tracks{ color = "red"; @@ -7553,7 +7553,7 @@ pixel_x = 2 }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Bv" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 9 @@ -7565,7 +7565,7 @@ dir = 6; icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Bw" = ( /obj/structure/railing/cap{ dir = 6 @@ -7577,7 +7577,7 @@ dir = 1 }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Bx" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 10 @@ -7588,7 +7588,7 @@ icon_state = "1-2" }, /turf/simulated/floor/engine, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "BA" = ( /obj/structure/railing{ dir = 4 @@ -7600,7 +7600,7 @@ /turf/simulated/floor/plating/asteroid/airless{ icon_state = "asteroid12" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "BB" = ( /obj/structure/railing{ dir = 8 @@ -7610,11 +7610,11 @@ icon_state = "yellowsiding"; dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "BC" = ( /obj/machinery/economy/vending/boozeomat, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "BE" = ( /obj/structure/table/reinforced, /obj/machinery/door/window/reinforced/normal{ @@ -7628,7 +7628,7 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "BF" = ( /obj/item/chair{ pixel_y = -6; @@ -7639,7 +7639,7 @@ icon_state = "yellowsiding"; dir = 1 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "BI" = ( /obj/machinery/door/poddoor/impassable{ id_tag = "awayscilock" @@ -7648,12 +7648,12 @@ req_access_txt = "271" }, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "BK" = ( /obj/structure/railing, /obj/structure/chair, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "BO" = ( /obj/machinery/door/airlock/engineering/glass{ req_access_txt = "271"; @@ -7671,13 +7671,13 @@ icon_state = "4-8" }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "BQ" = ( /obj/structure/railing{ dir = 9 }, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "BY" = ( /obj/structure/railing{ dir = 8 @@ -7687,7 +7687,7 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "BZ" = ( /obj/effect/decal/cleanable/blood/splatter{ color = "red" @@ -7696,20 +7696,20 @@ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Cc" = ( /obj/structure/flora/ausbushes/sparsegrass, /turf/simulated/floor/plating/asteroid/airless{ icon_state = "asteroid6" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Cd" = ( /obj/structure/table, /turf/simulated/floor/plasteel{ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Ci" = ( /obj/structure/railing{ dir = 1 @@ -7718,7 +7718,7 @@ /turf/simulated/floor/plasteel{ icon_state = "whitehall" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Cm" = ( /obj/structure/table/glass/reinforced/plastitanium, /obj/item/paper/fluff/ruins/moonoutpost19/boreraccountant, @@ -7726,7 +7726,7 @@ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Cr" = ( /obj/structure/cable{ d1 = 4; @@ -7741,7 +7741,7 @@ name = "Specimen Containtment Zone" }, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Cs" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/remains/human, @@ -7749,7 +7749,7 @@ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Ct" = ( /obj/machinery/door/airlock/highsecurity{ req_access_txt = "271" @@ -7761,7 +7761,7 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Cv" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 @@ -7780,7 +7780,7 @@ name = "Engineering Division" }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Cw" = ( /obj/item/chair{ pixel_x = 4; @@ -7790,7 +7790,7 @@ icon_state = "black"; dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Cy" = ( /obj/structure/rack, /obj/item/mop, @@ -7799,7 +7799,7 @@ dir = 9; icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "CB" = ( /obj/machinery/economy/vending/coffee, /obj/effect/decal/cleanable/dirt, @@ -7807,7 +7807,7 @@ icon_state = "whitecorner"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "CC" = ( /obj/effect/turf_decal/stripes/line{ dir = 8 @@ -7817,25 +7817,25 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "CE" = ( /obj/structure/table, /turf/simulated/floor/plasteel{ dir = 1; icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "CH" = ( /obj/structure/rack, /obj/effect/decal/cleanable/cobweb2, /obj/effect/spawner/lootdrop/maintenance, /turf/simulated/floor/plating/asteroid/ancient, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "CI" = ( /turf/simulated/floor/plating/asteroid/airless{ icon_state = "asteroidplating" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "CJ" = ( /obj/structure/chair/stool/bar{ dir = 8 @@ -7850,14 +7850,14 @@ dir = 8; icon_state = "escape" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "CL" = ( /obj/structure/filingcabinet/chestdrawer, /turf/simulated/floor/plasteel{ dir = 10; icon_state = "black" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "CM" = ( /obj/structure/cable{ d1 = 4; @@ -7868,7 +7868,7 @@ icon_state = "whitecorner"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "CR" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/machinery/atmospherics/pipe/simple/hidden/supply, @@ -7881,18 +7881,18 @@ /turf/simulated/floor/plasteel{ icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "CS" = ( /turf/simulated/floor/plasteel{ dir = 1; icon_state = "escape" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "CV" = ( /obj/effect/decal/cleanable/cobweb, /obj/machinery/atmospherics/portable/scrubber, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "CW" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 8 @@ -7906,11 +7906,11 @@ icon_state = "1-4" }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "CY" = ( /obj/structure/rack, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "CZ" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 @@ -7920,10 +7920,10 @@ }, /obj/effect/decal/remains/human, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Da" = ( /turf/simulated/floor/plasteel/stairs, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Dc" = ( /obj/structure/chair/sofa/bench/left{ dir = 1 @@ -7932,13 +7932,13 @@ dir = 10; icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Dd" = ( /obj/structure/flora/ausbushes/fullgrass, /turf/simulated/floor/plating/asteroid/airless{ icon_state = "asteroid1" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "De" = ( /obj/structure/closet/crate, /obj/item/reagent_containers/glass/beaker/waterbottle, @@ -7948,14 +7948,14 @@ /turf/simulated/floor/plating{ icon_state = "asteroidplating" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Df" = ( /obj/structure/chair{ dir = 4 }, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Di" = ( /obj/machinery/light{ dir = 8 @@ -7964,7 +7964,7 @@ icon_state = "caution"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Dk" = ( /obj/effect/turf_decal/delivery/white/partial{ dir = 1 @@ -7974,12 +7974,12 @@ icon_state = "whitehall"; dir = 1 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Dl" = ( /obj/structure/rack, /obj/item/tank/internals/emergency_oxygen, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Dn" = ( /obj/structure/railing{ dir = 9 @@ -7989,14 +7989,14 @@ }, /obj/machinery/light/small, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Dp" = ( /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel{ icon_state = "black"; dir = 10 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Dr" = ( /obj/effect/turf_decal/delivery/hollow, /obj/structure/railing{ @@ -8005,7 +8005,7 @@ /turf/simulated/floor/plasteel{ icon_state = "escape" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Ds" = ( /obj/effect/turf_decal/caution/stand_clear{ dir = 8 @@ -8017,7 +8017,7 @@ /turf/simulated/floor/plasteel{ icon_state = "escape" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Dt" = ( /obj/machinery/door/airlock/medical/glass{ req_access_txt = "271" @@ -8032,14 +8032,14 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Dw" = ( /obj/structure/closet/crate, /obj/effect/spawner/lootdrop/maintenance, /turf/simulated/floor/plating{ icon_state = "asteroidplating" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Dy" = ( /obj/item/kirbyplants, /obj/structure/sign/biohazard{ @@ -8052,7 +8052,7 @@ dir = 1; icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "DA" = ( /obj/effect/turf_decal/delivery, /obj/structure/cable{ @@ -8061,13 +8061,13 @@ icon_state = "2-4" }, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "DB" = ( /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel{ icon_state = "cautioncorner" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "DG" = ( /obj/structure/chair/sofa/bench/right{ dir = 8 @@ -8076,7 +8076,7 @@ icon_state = "caution"; dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "DJ" = ( /obj/structure/window/reinforced{ dir = 4 @@ -8089,7 +8089,7 @@ dir = 4; icon_state = "black" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "DK" = ( /obj/structure/railing/cap{ dir = 5 @@ -8098,7 +8098,7 @@ icon_state = "yellowsiding"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "DM" = ( /obj/structure/rack, /obj/machinery/light/small{ @@ -8106,7 +8106,7 @@ }, /obj/effect/spawner/lootdrop/maintenance, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "DO" = ( /obj/machinery/light/small{ dir = 4 @@ -8119,12 +8119,12 @@ /turf/simulated/floor/plasteel{ icon_state = "dark" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "DR" = ( /obj/item/kitchen/utensil/spoon, /obj/structure/table, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "DU" = ( /obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ dir = 1; @@ -8134,18 +8134,18 @@ dir = 10 }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "DV" = ( /obj/structure/closet/crate, /obj/item/reagent_containers/food/snacks/beans, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Ef" = ( /turf/simulated/floor/plasteel{ dir = 8; icon_state = "dark" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Eg" = ( /obj/effect/decal/cleanable/blood/xeno{ color = "green" @@ -8158,7 +8158,7 @@ dir = 4 }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "El" = ( /obj/machinery/light/small{ dir = 1 @@ -8178,7 +8178,7 @@ /turf/simulated/floor/plasteel{ icon_state = "whitehall" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Em" = ( /obj/structure/rack, /obj/effect/decal/cleanable/cobweb2, @@ -8199,7 +8199,7 @@ icon_state = "whitecorner"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Eo" = ( /obj/structure/filingcabinet, /obj/structure/sign/poster/official/fruit_bowl{ @@ -8207,7 +8207,7 @@ }, /obj/item/paper/fluff/ruins/moonoutpost19/rdnote, /turf/simulated/floor/carpet/royalblue, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Ep" = ( /obj/item/kirbyplants, /obj/effect/decal/cleanable/dirt, @@ -8215,7 +8215,7 @@ icon_state = "escape"; dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Er" = ( /obj/structure/railing/corner{ dir = 8 @@ -8229,7 +8229,7 @@ /turf/simulated/floor/plasteel{ icon_state = "black" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Es" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 @@ -8252,13 +8252,13 @@ icon_state = "whitecorner"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Et" = ( /obj/structure/flora/ausbushes/sparsegrass, /turf/simulated/floor/plating/asteroid/airless{ icon_state = "asteroid1" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Ev" = ( /obj/structure/window/reinforced{ dir = 8 @@ -8266,7 +8266,7 @@ /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/machinery/atmospherics/pipe/simple/hidden/supply, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Ex" = ( /obj/structure/table/reinforced, /obj/item/reagent_containers/food/snacks/sliceable/xenomeatbread{ @@ -8277,14 +8277,14 @@ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Ey" = ( /obj/machinery/shower{ dir = 4 }, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/noslip, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "EE" = ( /obj/item/stack/ore/slag, /turf/simulated/floor/plating/airless, @@ -8305,12 +8305,12 @@ icon_state = "whitecorner"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "EH" = ( /obj/effect/turf_decal/stripes/corner, /obj/effect/decal/cleanable/vomit/green, /turf/simulated/floor/engine, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "EL" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 5 @@ -8320,7 +8320,7 @@ }, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "EN" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/greenglow, @@ -8328,18 +8328,18 @@ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "EP" = ( /obj/machinery/light/small, /turf/simulated/floor/plasteel{ icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "EQ" = ( /obj/structure/window/reinforced, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ER" = ( /obj/machinery/atmospherics/pipe/simple/visible{ dir = 5 @@ -8350,7 +8350,7 @@ /turf/simulated/floor/plasteel{ icon_state = "yellowsiding" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ET" = ( /obj/effect/decal/cleanable/cobweb, /obj/structure/table, @@ -8358,7 +8358,7 @@ dir = 9; icon_state = "escape" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "EV" = ( /obj/structure/closet, /obj/item/soap, @@ -8368,14 +8368,14 @@ dir = 6; icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "EZ" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/blood/xeno{ color = "green" }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Fa" = ( /obj/effect/turf_decal/delivery/white/partial{ dir = 1 @@ -8387,13 +8387,13 @@ icon_state = "whitehall"; dir = 1 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Fb" = ( /obj/structure/chair/office/dark{ dir = 4 }, /turf/simulated/floor/plating/asteroid/ancient, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Fc" = ( /obj/structure/cable{ d1 = 1; @@ -8404,7 +8404,7 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Fd" = ( /obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers, /obj/machinery/atmospherics/pipe/manifold/hidden/supply{ @@ -8412,7 +8412,7 @@ }, /mob/living/simple_animal/hostile/alien/sentinel, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Fe" = ( /obj/structure/table/reinforced, /obj/item/stock_parts/cell/high, @@ -8422,7 +8422,7 @@ icon_state = "1-2" }, /turf/simulated/floor/engine, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Ff" = ( /obj/machinery/computer{ dir = 1 @@ -8431,14 +8431,14 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Fk" = ( /obj/item/kirbyplants, /turf/simulated/floor/plasteel{ icon_state = "caution"; dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Fm" = ( /obj/structure/safe, /obj/machinery/light/small{ @@ -8451,7 +8451,7 @@ /turf/simulated/floor/plasteel{ icon_state = "dark" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Fo" = ( /obj/effect/turf_decal/stripes/line{ dir = 1 @@ -8461,7 +8461,7 @@ }, /obj/machinery/atmospherics/air_sensor, /turf/simulated/floor/engine, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Fp" = ( /obj/structure/sink{ dir = 4; @@ -8471,12 +8471,12 @@ icon_state = "showroomfloor"; temperature = 273.15 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Fq" = ( /obj/structure/flora/ausbushes/fullgrass, /obj/structure/flora/ausbushes/brflowers, /turf/simulated/floor/grass, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Fs" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/greenglow, @@ -8486,7 +8486,7 @@ stat = 2 }, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Ft" = ( /obj/effect/turf_decal/stripes/corner, /mob/living/simple_animal/hostile/alien/sentinel, @@ -8497,25 +8497,25 @@ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Fw" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 5 }, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Fz" = ( /obj/structure/disposalpipe/segment/corner{ dir = 8 }, /turf/simulated/wall/r_wall, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "FB" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/rack, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "FC" = ( /obj/structure/closet/crate, /obj/effect/spawner/lootdrop/maintenance, @@ -8523,7 +8523,7 @@ icon_state = "caution"; dir = 10 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "FH" = ( /obj/machinery/atmospherics/unary/vent_pump/on{ dir = 4 @@ -8532,7 +8532,7 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "FM" = ( /obj/structure/railing{ dir = 8 @@ -8541,7 +8541,7 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "FN" = ( /obj/structure/reagent_dispensers/watertank, /obj/effect/decal/cleanable/cobweb2, @@ -8549,7 +8549,7 @@ dir = 5; icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "FO" = ( /obj/item/kirbyplants, /obj/structure/railing{ @@ -8559,7 +8559,7 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "FP" = ( /obj/structure/mopbucket, /obj/machinery/light/small{ @@ -8569,7 +8569,7 @@ dir = 1; icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "FT" = ( /obj/structure/rack, /obj/effect/spawner/lootdrop/maintenance, @@ -8577,7 +8577,7 @@ dir = 9; icon_state = "whitecorner" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "FV" = ( /obj/item/kirbyplants, /obj/effect/decal/cleanable/cobweb, @@ -8585,7 +8585,7 @@ dir = 9; icon_state = "escape" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "FW" = ( /obj/structure/flora/ausbushes/grassybush, /obj/structure/flora/ausbushes/ywflowers, @@ -8593,20 +8593,20 @@ dir = 8 }, /turf/simulated/floor/grass, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "FX" = ( /obj/structure/railing{ dir = 1 }, /obj/structure/chair/sofa/bench, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "FY" = ( /obj/effect/decal/cleanable/cobweb, /turf/simulated/floor/plating{ icon_state = "asteroidplating" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "FZ" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/machinery/atmospherics/pipe/simple/hidden/supply, @@ -8617,7 +8617,7 @@ icon_state = "1-2" }, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Gd" = ( /obj/structure/window/reinforced, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ @@ -8627,14 +8627,14 @@ dir = 4 }, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Ge" = ( /obj/structure/closet/crate/secure/loot, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Gg" = ( /turf/simulated/mineral/ancient, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Gh" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/cobweb2, @@ -8642,7 +8642,7 @@ icon_state = "darkbluecorners"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Gk" = ( /obj/machinery/door/airlock/medical/glass{ req_access_txt = "271"; @@ -8652,7 +8652,7 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Gl" = ( /obj/structure/railing/cap{ dir = 9 @@ -8662,7 +8662,7 @@ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Gp" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/blood/tracks{ @@ -8673,7 +8673,7 @@ dir = 4 }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Gq" = ( /obj/structure/cable{ d1 = 4; @@ -8681,7 +8681,7 @@ icon_state = "4-8" }, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Gs" = ( /obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ dir = 4 @@ -8702,7 +8702,7 @@ icon_state = "tracks" }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Gw" = ( /obj/effect/turf_decal/stripes/line{ dir = 1 @@ -8722,25 +8722,25 @@ dir = 1; icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Gx" = ( /obj/structure/closet/crate/freezer, /turf/simulated/floor/plasteel{ icon_state = "showroomfloor"; temperature = 273.15 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Gy" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/grille/broken, /obj/item/stack/rods, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Gz" = ( /obj/structure/table/wood, /obj/item/toy/plushie/slimeplushie, /turf/simulated/floor/carpet, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "GC" = ( /obj/effect/turf_decal/caution/stand_clear/white{ dir = 8 @@ -8749,7 +8749,7 @@ icon_state = "caution"; dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "GD" = ( /obj/structure/holosign/barrier/engineering, /obj/effect/landmark/damageturf, @@ -8762,7 +8762,7 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "GH" = ( /obj/machinery/light/small{ dir = 8 @@ -8771,7 +8771,7 @@ icon_state = "caution"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "GJ" = ( /obj/structure/railing{ dir = 1 @@ -8787,7 +8787,7 @@ dir = 8; icon_state = "green" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "GL" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/blood/splatter{ @@ -8797,7 +8797,7 @@ icon_state = "yellowsiding"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "GP" = ( /obj/machinery/computer, /obj/structure/window/reinforced{ @@ -8810,19 +8810,19 @@ dir = 1; icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "GS" = ( /obj/structure/grille/broken, /obj/effect/decal/cleanable/glass, /obj/item/stack/rods, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "GT" = ( /obj/effect/turf_decal/stripes/line{ dir = 6 }, /turf/simulated/floor/engine, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "GX" = ( /obj/structure/reagent_dispensers/water_cooler, /obj/effect/decal/cleanable/dirt, @@ -8830,7 +8830,7 @@ icon_state = "whitecorner"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Hb" = ( /obj/structure/table/wood, /obj/item/toy/plushie/greyplushie{ @@ -8841,7 +8841,7 @@ pixel_y = 4 }, /turf/simulated/floor/carpet, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Hd" = ( /obj/machinery/light/small{ dir = 4 @@ -8851,7 +8851,7 @@ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Hg" = ( /obj/structure/table/reinforced, /obj/machinery/door/window{ @@ -8872,7 +8872,7 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Hh" = ( /obj/structure/railing/cap{ dir = 10 @@ -8880,7 +8880,7 @@ /turf/simulated/floor/plasteel/stairs{ dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Hj" = ( /obj/effect/turf_decal/stripes/line{ dir = 4 @@ -8889,7 +8889,7 @@ dir = 8 }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Hm" = ( /obj/structure/railing, /obj/effect/decal/cleanable/blood/splatter{ @@ -8899,14 +8899,14 @@ /turf/simulated/floor/plasteel/stairs{ dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Hp" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 8 }, /obj/structure/table, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Hq" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 @@ -8915,7 +8915,7 @@ icon_state = "whitehall"; dir = 10 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Hr" = ( /obj/structure/railing{ dir = 8 @@ -8928,13 +8928,13 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Hu" = ( /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel{ icon_state = "yellowsiding" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Hv" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 6 @@ -8948,7 +8948,7 @@ icon_state = "2-4" }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Hx" = ( /obj/structure/window/reinforced{ dir = 4 @@ -8957,21 +8957,21 @@ dir = 4 }, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "HA" = ( /obj/item/kirbyplants, /turf/simulated/floor/plasteel{ icon_state = "caution"; dir = 10 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "HE" = ( /obj/structure/chair/sofa/bench/right, /turf/simulated/floor/plasteel{ dir = 1; icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "HL" = ( /obj/machinery/light{ active_power_consumption = 0; @@ -8985,7 +8985,7 @@ icon_state = "2-8" }, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "HM" = ( /obj/structure/table/reinforced, /obj/machinery/cell_charger, @@ -9004,7 +9004,7 @@ pixel_x = 6 }, /turf/simulated/floor/engine, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "HO" = ( /obj/machinery/door/airlock/highsecurity{ req_access_txt = "271"; @@ -9015,13 +9015,13 @@ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "HP" = ( /obj/item/chair{ pixel_y = -3 }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "HU" = ( /obj/structure/rack, /obj/item/stack/sheet/metal/fifty{ @@ -9035,7 +9035,7 @@ /turf/simulated/floor/plasteel{ icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "HV" = ( /obj/structure/rack, /obj/effect/spawner/lootdrop/maintenance, @@ -9044,14 +9044,14 @@ icon_state = "yellowsiding"; dir = 9 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "HW" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/largecrate, /turf/simulated/floor/plating{ icon_state = "asteroidplating" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "HY" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 8 @@ -9063,12 +9063,12 @@ dir = 1; icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Ib" = ( /turf/simulated/floor/plating/asteroid/airless{ icon_state = "asteroid11" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Ic" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/railing{ @@ -9076,15 +9076,15 @@ }, /obj/structure/table, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Ie" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/generic, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "If" = ( /turf/simulated/floor/bluegrid, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Ij" = ( /obj/machinery/light/small{ dir = 1 @@ -9097,13 +9097,13 @@ icon_state = "whitecorner"; dir = 1 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Io" = ( /turf/simulated/floor/plasteel{ icon_state = "darkbluecorners"; dir = 1 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Ip" = ( /obj/structure/cable{ d1 = 1; @@ -9111,7 +9111,7 @@ icon_state = "1-4" }, /turf/simulated/floor/engine, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Iq" = ( /obj/effect/turf_decal/stripes/corner{ dir = 4 @@ -9119,7 +9119,7 @@ /obj/effect/decal/cleanable/dirt, /obj/structure/alien/weeds/node, /turf/simulated/floor/engine, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Ix" = ( /obj/effect/decal/cleanable/blood/splatter{ color = "red" @@ -9128,11 +9128,11 @@ icon_state = "greencorner"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Iz" = ( /obj/structure/reagent_dispensers/watertank, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "IB" = ( /obj/machinery/light/small{ dir = 4 @@ -9142,7 +9142,7 @@ icon_state = "caution"; dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "IC" = ( /obj/structure/railing{ dir = 4 @@ -9151,7 +9151,7 @@ /turf/simulated/floor/plating/asteroid/airless{ icon_state = "asteroid1" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ID" = ( /obj/structure/bed, /obj/item/bedsheet/medical, @@ -9160,7 +9160,7 @@ icon_state = "whitecorner"; dir = 1 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "IE" = ( /obj/structure/window/reinforced{ dir = 1 @@ -9169,7 +9169,7 @@ dir = 1 }, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "IH" = ( /obj/machinery/atmospherics/unary/vent_pump/on, /obj/effect/decal/cleanable/dirt, @@ -9177,7 +9177,7 @@ dir = 1; icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "IJ" = ( /obj/structure/window/reinforced{ dir = 1 @@ -9194,7 +9194,7 @@ icon_state = "black"; dir = 1 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "IM" = ( /obj/structure/chair{ dir = 8 @@ -9207,12 +9207,12 @@ icon_state = "tracks" }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "IN" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply, /obj/effect/landmark/damageturf, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "IO" = ( /obj/structure/reagent_dispensers/water_cooler, /obj/machinery/light/small{ @@ -9223,7 +9223,7 @@ icon_state = "white"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "IS" = ( /obj/effect/turf_decal/stripes/corner, /obj/structure/filingcabinet/chestdrawer, @@ -9235,7 +9235,7 @@ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "IU" = ( /obj/effect/turf_decal/delivery, /obj/machinery/door/airlock/highsecurity{ @@ -9246,11 +9246,11 @@ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "IV" = ( /obj/machinery/light/small, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "IW" = ( /turf/simulated/floor/engine/vacuum, /area/space/nearstation) @@ -9271,27 +9271,27 @@ id_tag = "awayscilock1" }, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Jc" = ( /obj/structure/rack, /turf/simulated/floor/plasteel{ icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Ji" = ( /obj/structure/railing/cap, /turf/simulated/floor/plasteel{ icon_state = "whitehall"; dir = 1 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Jl" = ( /obj/effect/turf_decal/stripes/line{ dir = 10 }, /obj/structure/alien/resin/wall, /turf/simulated/floor/engine, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Jm" = ( /obj/structure/punching_bag, /obj/effect/turf_decal/delivery/hollow, @@ -9299,20 +9299,20 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Jo" = ( /obj/machinery/atmospherics/unary/vent_pump/on, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Jr" = ( /obj/structure/alien/resin/wall, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Ju" = ( /obj/machinery/autolathe, /turf/simulated/floor/engine, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Jv" = ( /obj/effect/decal/cleanable/dirt, /obj/item/chair{ @@ -9324,7 +9324,7 @@ icon_state = "black"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Jx" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/hidden{ @@ -9333,13 +9333,13 @@ /turf/simulated/floor/plasteel{ icon_state = "whitecorner" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Jy" = ( /obj/machinery/atmospherics/unary/vent_pump/on{ dir = 4 }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Jz" = ( /obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ dir = 4; @@ -9347,14 +9347,14 @@ }, /obj/machinery/atmospherics/pipe/simple/hidden/supply, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "JA" = ( /obj/structure/table/glass, /obj/item/storage/backpack/duffel/medical, /turf/simulated/floor/plasteel{ icon_state = "darkblue" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "JB" = ( /obj/item/clothing/gloves/color/black, /obj/item/stack/tape_roll, @@ -9363,18 +9363,18 @@ /turf/simulated/floor/plasteel{ icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "JE" = ( /obj/machinery/door/airlock/external{ req_access_txt = "271" }, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "JG" = ( /obj/structure/flora/ash/rock/style_random, /obj/effect/decal/cleanable/cobweb2, /turf/simulated/floor/plating/asteroid/ancient, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "JI" = ( /obj/structure/railing/cap{ dir = 10 @@ -9383,14 +9383,14 @@ icon_state = "whitehall"; dir = 1 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "JJ" = ( /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel{ icon_state = "black"; dir = 5 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "JK" = ( /obj/effect/turf_decal/delivery/partial, /obj/effect/turf_decal/caution{ @@ -9402,13 +9402,13 @@ /turf/simulated/floor/plasteel{ icon_state = "dark" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "JL" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 9 }, /turf/simulated/floor/carpet/royalblue, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "JN" = ( /obj/structure/chair{ dir = 1 @@ -9419,28 +9419,28 @@ /turf/simulated/floor/plasteel{ icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "JP" = ( /obj/machinery/atmospherics/unary/vent_pump/on, /obj/machinery/newscaster{ pixel_y = 30 }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "JQ" = ( /obj/structure/window/reinforced{ dir = 1 }, /obj/machinery/atmospherics/unary/vent_pump/on, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "JR" = ( /obj/machinery/atmospherics/unary/vent_scrubber/on, /obj/structure/sign/poster/official/nanotrasen_logo{ pixel_y = 32 }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "JS" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/blood/tracks{ @@ -9456,7 +9456,7 @@ icon_state = "whitecorner"; dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "JU" = ( /obj/effect/turf_decal/stripes/line, /obj/machinery/power/apc/off_station/empty_charge{ @@ -9483,21 +9483,21 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "JW" = ( /obj/machinery/light/small{ dir = 1 }, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/carpet, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "JZ" = ( /obj/structure/table/wood, /obj/item/lighter/zippo, /obj/effect/decal/cleanable/dirt, /obj/item/toy/plushie/tabby_cat, /turf/simulated/floor/carpet, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Ka" = ( /obj/item/chair{ pixel_y = -3 @@ -9512,14 +9512,14 @@ pixel_x = 32 }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Kb" = ( /obj/structure/barricade/wooden/crude{ layer = 4 }, /obj/effect/spawner/window/reinforced/grilled, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Kc" = ( /obj/structure/railing/cap, /obj/effect/decal/cleanable/dirt, @@ -9527,14 +9527,14 @@ icon_state = "caution"; dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Kd" = ( /obj/structure/table, /turf/simulated/floor/plasteel{ dir = 9; icon_state = "whitecorner" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Ki" = ( /obj/machinery/light/small{ dir = 4 @@ -9543,7 +9543,7 @@ /turf/simulated/floor/plasteel{ icon_state = "dark" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Km" = ( /obj/structure/railing{ dir = 6 @@ -9552,13 +9552,13 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Kp" = ( /obj/machinery/atmospherics/unary/vent_scrubber/on{ dir = 8 }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Kr" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 @@ -9573,7 +9573,7 @@ }, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Kt" = ( /obj/machinery/light/small{ dir = 4 @@ -9583,34 +9583,34 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Ku" = ( /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel{ icon_state = "green" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Kv" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 8 }, /obj/effect/spawner/window/reinforced/grilled, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Kx" = ( /obj/structure/closet/toolcloset, /turf/simulated/floor/plasteel{ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Kz" = ( /obj/item/kirbyplants, /turf/simulated/floor/plasteel{ icon_state = "escape"; dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "KC" = ( /obj/machinery/disposal/deliveryChute, /obj/structure/disposalpipe/trunk{ @@ -9627,7 +9627,7 @@ }, /obj/machinery/door/window/reinforced/normal, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "KE" = ( /obj/machinery/atmospherics/unary/vent_scrubber/on{ dir = 1 @@ -9636,7 +9636,7 @@ /turf/simulated/floor/plasteel{ icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "KG" = ( /obj/structure/railing/cap{ dir = 9 @@ -9650,7 +9650,7 @@ pixel_y = -1 }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "KI" = ( /obj/structure/cable{ d2 = 8; @@ -9658,13 +9658,13 @@ }, /obj/effect/turf_decal/box, /turf/simulated/floor/engine, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "KJ" = ( /obj/structure/railing{ dir = 4 }, /turf/simulated/floor/plating/asteroid/airless, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "KN" = ( /obj/structure/railing{ dir = 4 @@ -9674,13 +9674,13 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "KO" = ( /turf/simulated/floor/plasteel{ dir = 8; icon_state = "cautioncorner" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "KP" = ( /obj/machinery/light{ dir = 4 @@ -9703,7 +9703,7 @@ icon_state = "caution"; dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "KQ" = ( /obj/effect/decal/cleanable/blood/splatter{ color = "red" @@ -9712,14 +9712,14 @@ icon_state = "white"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "KR" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/blood/splatter{ color = "red" }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "KS" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 @@ -9732,11 +9732,11 @@ icon_state = "escapecorner"; dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "KW" = ( /obj/structure/chair/sofa/bench/right, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "KZ" = ( /obj/machinery/door/poddoor/impassable{ id_tag = "awaycontlockdown" @@ -9747,7 +9747,7 @@ }, /obj/effect/spawner/window/reinforced/tinted/grilled, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "La" = ( /obj/structure/closet/crate/freezer, /obj/item/clothing/mask/facehugger{ @@ -9758,12 +9758,12 @@ /turf/simulated/floor/plasteel{ icon_state = "darkbluecorners" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Lb" = ( /obj/structure/rack, /obj/effect/landmark/damageturf, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Ld" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/blood/tracks{ @@ -9776,7 +9776,7 @@ pixel_x = 2 }, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Lf" = ( /obj/effect/turf_decal/stripes/line{ dir = 1 @@ -9787,7 +9787,7 @@ stat = 2 }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Lj" = ( /obj/effect/decal/cleanable/dirt, /obj/item/chair{ @@ -9799,7 +9799,7 @@ icon_state = "whitehall"; dir = 9 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Lk" = ( /obj/machinery/light/small{ dir = 1 @@ -9810,21 +9810,21 @@ dir = 1; icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Ll" = ( /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel{ dir = 1; icon_state = "escape" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Ln" = ( /obj/effect/decal/cleanable/blood/splatter{ color = "red" }, /obj/structure/flora/ausbushes/fullgrass, /turf/simulated/floor/plating/asteroid/ancient, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Lq" = ( /obj/effect/turf_decal/stripes/corner{ dir = 8 @@ -9833,7 +9833,7 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Lw" = ( /obj/structure/railing{ dir = 4 @@ -9841,7 +9841,7 @@ /turf/simulated/floor/plating/asteroid/airless{ icon_state = "asteroid4" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Lz" = ( /obj/structure/railing{ dir = 4 @@ -9852,17 +9852,17 @@ /turf/simulated/floor/plasteel/stairs{ dir = 1 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "LA" = ( /obj/structure/shuttle/engine/propulsion/burst, /turf/simulated/wall/mineral/titanium, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "LC" = ( /obj/structure/largecrate, /turf/simulated/floor/plating/asteroid/airless{ icon_state = "asteroid3" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "LD" = ( /obj/structure/window/reinforced{ dir = 8 @@ -9872,7 +9872,7 @@ icon_state = "whitecorner"; dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "LG" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/cobweb2, @@ -9881,7 +9881,7 @@ icon_state = "black"; dir = 1 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "LJ" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 5 @@ -9895,7 +9895,7 @@ icon_state = "1-4" }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "LK" = ( /obj/structure/filingcabinet/chestdrawer, /obj/effect/turf_decal/stripes/corner{ @@ -9907,7 +9907,7 @@ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "LL" = ( /obj/structure/table/reinforced, /obj/item/paper_bin{ @@ -9919,7 +9919,7 @@ pixel_x = -7 }, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "LS" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 9 @@ -9929,21 +9929,21 @@ }, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "LY" = ( /obj/structure/railing{ dir = 1 }, /obj/structure/flora/ausbushes/sparsegrass, /turf/simulated/floor/plating/asteroid/airless, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "LZ" = ( /obj/structure/disposalpipe/trunk{ dir = 1 }, /obj/structure/disposaloutlet, /turf/simulated/floor/engine, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Me" = ( /obj/effect/turf_decal/stripes/asteroid/line, /obj/structure/railing, @@ -9953,7 +9953,7 @@ /turf/simulated/floor/plating/asteroid/airless{ icon_state = "asteroidplating" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Mg" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/stripes/line{ @@ -9963,7 +9963,7 @@ icon_state = "whitecorner"; dir = 1 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Mk" = ( /obj/effect/turf_decal/stripes/line{ dir = 4 @@ -9973,20 +9973,20 @@ icon_state = "caution"; dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Ml" = ( /obj/structure/bed, /obj/item/bedsheet, /obj/effect/decal/cleanable/cobweb, /turf/simulated/floor/carpet, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Mn" = ( /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel{ dir = 1; icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Mp" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/railing/corner{ @@ -9996,7 +9996,7 @@ /turf/simulated/floor/plasteel/stairs{ dir = 1 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Mq" = ( /obj/structure/window/reinforced{ dir = 4 @@ -10010,7 +10010,7 @@ dir = 4; icon_state = "black" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Mt" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/machinery/atmospherics/pipe/simple/hidden/supply, @@ -10019,7 +10019,7 @@ icon_state = "black"; dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Mv" = ( /obj/structure/rack, /obj/item/storage/toolbox/mechanical{ @@ -10034,20 +10034,20 @@ /turf/simulated/floor/plasteel{ icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Mx" = ( /obj/machinery/door/airlock/maintenance_hatch{ req_access_txt = "271" }, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "My" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/machinery/atmospherics/pipe/simple/hidden/supply, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Mz" = ( /obj/item/t_scanner, /obj/structure/table, @@ -10055,7 +10055,7 @@ dir = 8; icon_state = "cautioncorner" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "MF" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/newscaster{ @@ -10070,7 +10070,7 @@ icon_state = "black"; dir = 6 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "MG" = ( /obj/effect/turf_decal/stripes/line{ dir = 4 @@ -10083,21 +10083,21 @@ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "MH" = ( /obj/structure/closet/emcloset, /obj/structure/window/basic{ dir = 4 }, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "MI" = ( /obj/structure/chair/sofa/bench, /obj/machinery/light/small{ dir = 1 }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "MJ" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable{ @@ -10106,7 +10106,7 @@ icon_state = "1-2" }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "MK" = ( /obj/machinery/door_control{ id = "awaykitchen"; @@ -10117,7 +10117,7 @@ icon_state = "black"; dir = 5 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "MN" = ( /obj/effect/decal/cleanable/cobweb2, /obj/effect/turf_decal/stripes/corner{ @@ -10127,7 +10127,7 @@ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "MS" = ( /obj/effect/turf_decal/stripes/corner, /obj/machinery/light/small, @@ -10144,7 +10144,7 @@ icon_state = "whitecorner"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "MT" = ( /obj/structure/lattice, /turf/template_noop, @@ -10154,7 +10154,7 @@ dir = 1 }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "MY" = ( /obj/item/kirbyplants, /obj/machinery/atmospherics/unary/vent_scrubber/on, @@ -10163,13 +10163,13 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "MZ" = ( /obj/structure/railing/corner{ dir = 8 }, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Nb" = ( /obj/structure/chair/sofa/bench{ dir = 1 @@ -10177,7 +10177,7 @@ /turf/simulated/floor/plasteel{ icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Nc" = ( /obj/structure/cable{ d2 = 8; @@ -10185,7 +10185,7 @@ }, /obj/effect/spawner/window/reinforced/grilled, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Nd" = ( /obj/structure/filingcabinet/chestdrawer, /obj/effect/decal/cleanable/dirt, @@ -10193,7 +10193,7 @@ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Ne" = ( /obj/structure/table/reinforced, /obj/machinery/flasher_button{ @@ -10216,11 +10216,11 @@ icon_state = "black"; dir = 5 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Ni" = ( /obj/structure/falsewall/rock_ancient, /turf/simulated/floor/plating/asteroid/ancient, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Nm" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 @@ -10236,7 +10236,7 @@ /turf/simulated/floor/plasteel{ icon_state = "cautioncorner" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Nn" = ( /obj/machinery/camera{ c_tag = "South Cafeteria"; @@ -10250,7 +10250,7 @@ dir = 8; icon_state = "escape" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Np" = ( /obj/structure/chair/sofa/bench{ dir = 4 @@ -10262,7 +10262,7 @@ icon_state = "caution"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Nu" = ( /obj/structure/window/reinforced, /obj/structure/window/reinforced{ @@ -10278,12 +10278,12 @@ dir = 5 }, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Nv" = ( /obj/effect/decal/cleanable/cobweb2, /obj/structure/grille/broken, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Nx" = ( /obj/effect/turf_decal/stripes/line{ dir = 8 @@ -10294,7 +10294,7 @@ icon_state = "yellowsiding"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Ny" = ( /obj/structure/alien/resin/wall, /obj/structure/cable{ @@ -10306,7 +10306,7 @@ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "NC" = ( /obj/effect/decal/cleanable/blood/tracks{ color = "red"; @@ -10318,7 +10318,7 @@ pixel_x = 2 }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "NE" = ( /obj/machinery/light/small{ active_power_consumption = 0; @@ -10329,7 +10329,7 @@ /obj/effect/decal/cleanable/cobweb2, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/carpet, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "NF" = ( /obj/structure/railing, /obj/effect/turf_decal/delivery/red/partial{ @@ -10339,14 +10339,14 @@ /turf/simulated/floor/plasteel{ icon_state = "black" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "NJ" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel{ icon_state = "freezerfloor" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "NM" = ( /obj/effect/turf_decal/stripes/line, /obj/machinery/atmospherics/pipe/simple/hidden/supply{ @@ -10361,14 +10361,14 @@ icon_state = "whitecorner"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "NS" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "NT" = ( /obj/effect/decal/cleanable/cobweb, /obj/effect/decal/cleanable/dirt, @@ -10384,14 +10384,14 @@ /turf/simulated/floor/plating{ icon_state = "asteroidplating" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "NU" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/blood/oil{ color = "black" }, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "NZ" = ( /obj/structure/table/reinforced, /obj/structure/window/reinforced{ @@ -10407,7 +10407,7 @@ dir = 8; icon_state = "dark" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Oa" = ( /obj/structure/chair/sofa/bench{ dir = 1 @@ -10416,13 +10416,13 @@ /turf/simulated/floor/plasteel{ icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Ob" = ( /obj/structure/flora/ausbushes/sparsegrass, /turf/simulated/floor/plating/asteroid/airless{ icon_state = "asteroid12" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Oc" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/blood/splatter{ @@ -10432,7 +10432,7 @@ icon_state = "white"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Od" = ( /obj/item/kirbyplants, /obj/effect/decal/cleanable/cobweb, @@ -10440,7 +10440,7 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Oe" = ( /obj/structure/table/reinforced, /obj/machinery/door/window/reinforced/normal{ @@ -10450,18 +10450,18 @@ icon_state = "white"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Of" = ( /obj/structure/rack, /obj/effect/spawner/lootdrop/maintenance, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Og" = ( /turf/simulated/floor/plasteel{ icon_state = "black"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Oi" = ( /obj/effect/decal/cleanable/blood/tracks{ color = "red"; @@ -10474,7 +10474,7 @@ /turf/simulated/floor/plating{ icon_state = "asteroidplating" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Oj" = ( /obj/structure/table/glass, /obj/item/storage/fancy/donut_box, @@ -10483,7 +10483,7 @@ icon_state = "black"; dir = 1 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Ol" = ( /obj/machinery/atmospherics/unary/vent_pump/on{ dir = 4 @@ -10497,7 +10497,7 @@ dir = 1 }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Om" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 @@ -10507,7 +10507,7 @@ /turf/simulated/floor/plasteel{ icon_state = "cautioncorner" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "On" = ( /obj/structure/safe/floor{ known_by = list("captain") @@ -10519,7 +10519,7 @@ /obj/item/coin/mythril, /obj/item/coin/adamantine, /turf/simulated/floor/carpet/royalblue, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Oo" = ( /obj/item/kirbyplants, /obj/machinery/light/small{ @@ -10532,21 +10532,21 @@ icon_state = "whitecorner"; dir = 1 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Op" = ( /obj/structure/window/reinforced, /obj/structure/table, /turf/simulated/floor/plasteel{ icon_state = "black" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Oq" = ( /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel{ icon_state = "yellowsiding"; dir = 6 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Os" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/machinery/atmospherics/pipe/simple/hidden/supply, @@ -10556,7 +10556,7 @@ icon_state = "1-2" }, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Ot" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/machinery/atmospherics/pipe/simple/hidden/supply, @@ -10566,13 +10566,13 @@ }, /obj/effect/decal/remains/human, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Ou" = ( /obj/structure/rack, /turf/simulated/floor/plasteel{ icon_state = "escape" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Ox" = ( /obj/machinery/light{ active_power_consumption = 0; @@ -10580,7 +10580,7 @@ status = 2 }, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "OD" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/machinery/atmospherics/pipe/simple/hidden/supply, @@ -10588,7 +10588,7 @@ icon_state = "black"; dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "OE" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 8 @@ -10598,10 +10598,10 @@ }, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "OG" = ( /turf/simulated/wall/mineral/titanium, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "OL" = ( /obj/structure/railing/cap{ dir = 1 @@ -10611,7 +10611,7 @@ dir = 1; icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "OM" = ( /obj/effect/decal/cleanable/cobweb, /obj/item/shard{ @@ -10621,7 +10621,7 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ON" = ( /turf/template_noop, /area/space/nearstation) @@ -10631,7 +10631,7 @@ icon_state = "black"; dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "OP" = ( /obj/machinery/light/small{ dir = 4 @@ -10642,7 +10642,7 @@ icon_state = "caution"; dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "OR" = ( /obj/structure/railing{ dir = 10 @@ -10659,7 +10659,7 @@ icon_state = "darkblue"; dir = 1 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "OT" = ( /obj/effect/turf_decal/delivery/partial{ dir = 4 @@ -10673,13 +10673,13 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "OW" = ( /obj/structure/railing{ dir = 10 }, /turf/simulated/floor/plating/asteroid/airless, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "OX" = ( /obj/structure/cable{ d1 = 4; @@ -10691,7 +10691,7 @@ color = "green" }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "OZ" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 @@ -10700,7 +10700,7 @@ dir = 8; icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Pa" = ( /obj/structure/table/glass, /obj/machinery/light/small{ @@ -10710,7 +10710,7 @@ /turf/simulated/floor/plasteel{ icon_state = "darkblue" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Pd" = ( /obj/machinery/light/small{ active_power_consumption = 0; @@ -10719,21 +10719,21 @@ status = 2 }, /turf/simulated/floor/carpet, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Pf" = ( /obj/structure/railing/cap{ dir = 1 }, /obj/structure/flora/ausbushes/sparsegrass, /turf/simulated/floor/plating/asteroid/airless, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Ph" = ( /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel{ icon_state = "caution"; dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Pj" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply, /obj/structure/cable{ @@ -10745,7 +10745,7 @@ dir = 1; icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Po" = ( /obj/structure/alien/resin/wall, /obj/effect/decal/cleanable/dirt, @@ -10753,7 +10753,7 @@ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Pq" = ( /obj/effect/turf_decal/stripes/line{ dir = 8 @@ -10761,10 +10761,10 @@ /obj/structure/alien/resin/wall, /obj/machinery/atmospherics/air_sensor, /turf/simulated/floor/engine, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Pr" = ( /turf/simulated/floor/carpet/royalblue, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Ps" = ( /obj/effect/turf_decal/stripes/line{ dir = 4 @@ -10773,7 +10773,7 @@ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Pt" = ( /obj/structure/chair/comfy/brown{ dir = 4 @@ -10782,7 +10782,7 @@ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Pv" = ( /obj/structure/chair/office/dark{ dir = 4 @@ -10791,18 +10791,18 @@ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "PA" = ( /turf/simulated/floor/plasteel{ icon_state = "yellowsiding"; dir = 10 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "PB" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/grille, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "PE" = ( /obj/effect/decal/cleanable/dirt, /obj/item/reagent_containers/food/snacks/badrecipe, @@ -10810,7 +10810,7 @@ icon_state = "showroomfloor"; temperature = 273.15 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "PF" = ( /obj/machinery/door/airlock/security{ req_access_txt = "271"; @@ -10820,25 +10820,25 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "PK" = ( /obj/machinery/light/small, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel{ icon_state = "freezerfloor" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "PL" = ( /obj/effect/decal/cleanable/cobweb2, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "PM" = ( /obj/machinery/atmospherics/unary/vent_pump/on{ dir = 4 }, /obj/effect/landmark/damageturf, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "PP" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 8 @@ -10851,20 +10851,20 @@ icon_state = "tracks" }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "PQ" = ( /obj/item/kirbyplants, /turf/simulated/floor/plasteel{ dir = 6; icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "PS" = ( /obj/structure/flora/ausbushes/sparsegrass, /turf/simulated/floor/plating/asteroid/airless{ icon_state = "asteroid5" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "PT" = ( /obj/effect/turf_decal/stripes/line{ dir = 5 @@ -10876,7 +10876,7 @@ }, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/engine, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "PU" = ( /obj/effect/decal/cleanable/blood/splatter{ color = "red" @@ -10885,7 +10885,7 @@ icon_state = "caution"; dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "PY" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/machinery/atmospherics/pipe/simple/hidden/supply, @@ -10906,19 +10906,19 @@ id_tag = "awayscilock1" }, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "PZ" = ( /obj/structure/railing{ dir = 8 }, /turf/simulated/floor/plating/asteroid/airless, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Qc" = ( /obj/structure/railing/cap{ dir = 10 }, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Qe" = ( /obj/structure/railing/cap{ dir = 1 @@ -10928,14 +10928,14 @@ dir = 1; icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Qf" = ( /obj/effect/landmark/damageturf, /turf/simulated/floor/plasteel{ icon_state = "caution"; dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Qh" = ( /obj/structure/cable{ d1 = 2; @@ -10943,7 +10943,7 @@ icon_state = "2-8" }, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Qj" = ( /obj/machinery/light/small{ active_power_consumption = 0; @@ -10953,11 +10953,11 @@ }, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/carpet, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Qk" = ( /mob/living/simple_animal/hostile/alien, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Ql" = ( /obj/structure/chair/sofa/bench/right{ dir = 1 @@ -10971,12 +10971,12 @@ /turf/simulated/floor/plasteel{ icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Qm" = ( /obj/structure/flora/junglebush, /obj/structure/flora/ausbushes/ywflowers, /turf/simulated/floor/grass, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Qn" = ( /obj/machinery/atmospherics/unary/vent_scrubber/on{ dir = 8 @@ -10988,7 +10988,7 @@ icon_state = "whitecorner"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Qt" = ( /obj/structure/window/reinforced{ dir = 8 @@ -11001,7 +11001,7 @@ icon_state = "black"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Qu" = ( /obj/structure/rack, /obj/item/stack/sheet/mineral/plasma{ @@ -11014,7 +11014,7 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Qv" = ( /obj/machinery/atmospherics/pipe/simple/visible{ dir = 10 @@ -11022,7 +11022,7 @@ /turf/simulated/floor/plating{ icon_state = "asteroidplating" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Qx" = ( /obj/structure/table/reinforced, /obj/machinery/door/window{ @@ -11032,7 +11032,7 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Qy" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/machinery/atmospherics/pipe/simple/hidden/supply, @@ -11042,7 +11042,7 @@ icon_state = "1-2" }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Qz" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/blood/tracks{ @@ -11052,7 +11052,7 @@ icon_state = "tracks" }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "QB" = ( /obj/structure/sign/biohazard{ pixel_y = 32 @@ -11060,7 +11060,7 @@ /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/delivery, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "QD" = ( /obj/machinery/light/small, /obj/effect/decal/cleanable/dirt, @@ -11069,14 +11069,14 @@ dir = 10; icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "QE" = ( /obj/structure/table/reinforced, /turf/simulated/floor/plasteel{ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "QF" = ( /obj/structure/railing{ dir = 4 @@ -11087,7 +11087,7 @@ }, /obj/effect/spawner/lootdrop/maintenance, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "QG" = ( /obj/structure/railing{ dir = 1 @@ -11096,7 +11096,7 @@ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "QI" = ( /obj/structure/railing/cap{ dir = 10 @@ -11105,11 +11105,11 @@ icon_state = "darkbluefull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "QK" = ( /obj/machinery/light/small, /turf/simulated/floor/carpet/royalblue, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "QL" = ( /obj/effect/decal/cleanable/glass, /obj/item/shard{ @@ -11117,7 +11117,7 @@ }, /obj/item/stack/rods, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "QM" = ( /obj/structure/railing/cap{ dir = 1 @@ -11126,7 +11126,7 @@ dir = 1; icon_state = "blackcorner" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "QO" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 8 @@ -11139,45 +11139,45 @@ name = "Cafeteria" }, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "QP" = ( /obj/effect/landmark/damageturf, /turf/simulated/floor/plasteel/stairs, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "QQ" = ( /obj/machinery/atmospherics/pipe/simple/visible{ dir = 5 }, /turf/simulated/floor/plating/asteroid/ancient, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "QS" = ( /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel{ icon_state = "whitecorner"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "QT" = ( /obj/machinery/light/small{ dir = 1 }, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "QW" = ( /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel{ icon_state = "white"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "QX" = ( /obj/structure/alien/weeds/node, /turf/simulated/floor/plasteel{ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "QZ" = ( /obj/structure/alien/resin/wall, /obj/structure/cable{ @@ -11186,7 +11186,7 @@ icon_state = "4-8" }, /turf/simulated/floor/plasteel/stairs, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Rc" = ( /obj/effect/turf_decal/stripes/line, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ @@ -11210,7 +11210,7 @@ icon_state = "whitecorner"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Rf" = ( /obj/effect/turf_decal/stripes/line, /obj/effect/decal/cleanable/dirt, @@ -11223,7 +11223,7 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Rg" = ( /obj/machinery/door/airlock/freezer{ req_access_txt = "271" @@ -11232,13 +11232,13 @@ icon_state = "showroomfloor"; temperature = 273.15 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Rh" = ( /obj/structure/flora/ausbushes/sparsegrass, /turf/simulated/floor/plating/asteroid/airless{ icon_state = "asteroid10" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Ri" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply, /obj/effect/decal/cleanable/blood/splatter{ @@ -11246,7 +11246,7 @@ }, /obj/effect/decal/remains/human, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Rl" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/machinery/atmospherics/pipe/simple/hidden/supply, @@ -11254,7 +11254,7 @@ dir = 8 }, /turf/simulated/floor/plasteel/stairs, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Ro" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 @@ -11272,7 +11272,7 @@ icon_state = "cautioncorner"; dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Rr" = ( /obj/effect/turf_decal/stripes/line{ dir = 4 @@ -11281,7 +11281,7 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Ru" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 10 @@ -11290,14 +11290,14 @@ dir = 10 }, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Rv" = ( /obj/structure/rack, /obj/effect/spawner/lootdrop/maintenance, /turf/simulated/floor/plating{ icon_state = "asteroidplating" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "RA" = ( /obj/structure/flora/rock, /turf/simulated/floor/engine/vacuum, @@ -11306,7 +11306,7 @@ /obj/structure/table/reinforced, /obj/structure/alien/egg/burst, /turf/simulated/floor/engine, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "RD" = ( /obj/machinery/door/airlock/multi_tile/glass{ req_access_txt = "271" @@ -11317,20 +11317,20 @@ /turf/simulated/floor/plasteel{ icon_state = "freezerfloor" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "RF" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "RH" = ( /obj/machinery/kitchen_machine/oven, /turf/simulated/floor/plasteel{ icon_state = "showroomfloor"; temperature = 273.15 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "RI" = ( /obj/structure/railing/cap{ dir = 8 @@ -11339,7 +11339,7 @@ /turf/simulated/floor/plasteel{ icon_state = "dark" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "RK" = ( /obj/effect/turf_decal/stripes/corner{ dir = 4 @@ -11348,7 +11348,7 @@ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "RN" = ( /obj/structure/sign/radiation/rad_area{ pixel_y = 32 @@ -11359,7 +11359,7 @@ /turf/simulated/floor/plasteel/stairs{ dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "RQ" = ( /obj/effect/turf_decal/delivery/hollow, /obj/machinery/porta_turret{ @@ -11368,35 +11368,35 @@ lethal = 1 }, /turf/simulated/floor/bluegrid, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "RU" = ( /obj/machinery/atmospherics/pipe/simple/hidden{ dir = 8 }, /obj/effect/spawner/window/reinforced/grilled, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Sa" = ( /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel{ dir = 8; icon_state = "cautioncorner" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Sb" = ( /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel{ icon_state = "caution"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Sc" = ( /obj/machinery/computer/monitor/secret{ dir = 4 }, /obj/structure/cable, /turf/simulated/floor/engine, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Sd" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/machinery/atmospherics/pipe/manifold/hidden/supply{ @@ -11410,7 +11410,7 @@ icon_state = "1-2" }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Sg" = ( /obj/structure/table/reinforced, /obj/structure/window/reinforced{ @@ -11423,7 +11423,7 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Si" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/blood/xeno{ @@ -11433,7 +11433,7 @@ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Sj" = ( /obj/structure/chair/office/dark{ dir = 4 @@ -11442,28 +11442,28 @@ icon_state = "black"; dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Sk" = ( /obj/structure/flora/ausbushes/fernybush, /obj/structure/flora/ausbushes/ppflowers, /turf/simulated/floor/grass, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Sm" = ( /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel{ icon_state = "whitehall"; dir = 10 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Sp" = ( /mob/living/simple_animal/cockroach, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Sq" = ( /turf/simulated/floor/plasteel{ icon_state = "green" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "St" = ( /obj/structure/table/reinforced, /obj/machinery/door/window, @@ -11475,24 +11475,24 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Su" = ( /obj/structure/closet/crate, /turf/simulated/floor/plasteel{ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Sv" = ( /obj/structure/flora/ausbushes/fullgrass, /turf/simulated/floor/plating/asteroid/airless{ icon_state = "asteroid10" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Sx" = ( /obj/effect/decal/cleanable/greenglow, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Sz" = ( /obj/effect/landmark/damageturf, /obj/structure/cable{ @@ -11504,7 +11504,7 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "SG" = ( /obj/structure/railing{ dir = 4 @@ -11514,7 +11514,7 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "SI" = ( /obj/structure/table/glass, /obj/effect/decal/cleanable/dirt, @@ -11524,14 +11524,14 @@ icon_state = "whitehall"; dir = 1 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "SL" = ( /obj/effect/turf_decal/stripes/corner{ dir = 1 }, /obj/structure/alien/resin/wall, /turf/simulated/floor/engine, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "SO" = ( /obj/effect/turf_decal/stripes/asteroid/line, /obj/structure/railing, @@ -11539,7 +11539,7 @@ /turf/simulated/floor/plating{ icon_state = "asteroidplating" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ST" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 @@ -11554,7 +11554,7 @@ /turf/simulated/floor/plasteel{ icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "SV" = ( /obj/structure/chair/stool/bar{ dir = 8 @@ -11563,7 +11563,7 @@ dir = 8; icon_state = "escape" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Tc" = ( /obj/machinery/computer{ dir = 4 @@ -11572,7 +11572,7 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Td" = ( /obj/structure/weightmachine/stacklifter, /obj/effect/turf_decal/delivery/hollow, @@ -11580,7 +11580,7 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Te" = ( /obj/machinery/shieldwallgen{ locked = 0; @@ -11600,7 +11600,7 @@ }, /obj/effect/turf_decal/box, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Tf" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 @@ -11611,7 +11611,7 @@ /turf/simulated/floor/plasteel{ icon_state = "cautioncorner" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Ti" = ( /obj/machinery/door/airlock/command/glass{ req_access_txt = "271"; @@ -11626,7 +11626,7 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Tm" = ( /obj/structure/railing/cap{ dir = 9 @@ -11636,7 +11636,7 @@ icon_state = "whitehall"; dir = 6 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Tn" = ( /obj/structure/cable{ d1 = 1; @@ -11651,7 +11651,7 @@ id = "mo19rdoffice" }, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Tr" = ( /obj/effect/decal/cleanable/dirt, /mob/living/simple_animal/hostile/alien, @@ -11659,7 +11659,7 @@ icon_state = "white"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Tu" = ( /obj/structure/railing/corner{ dir = 8 @@ -11668,7 +11668,7 @@ dir = 8; icon_state = "black" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Tv" = ( /obj/structure/chair/sofa/bench/right{ dir = 1 @@ -11677,7 +11677,7 @@ /turf/simulated/floor/plasteel{ icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Tw" = ( /obj/machinery/light/small{ active_power_consumption = 0; @@ -11687,7 +11687,7 @@ }, /obj/effect/decal/cleanable/cobweb2, /turf/simulated/floor/carpet, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Tx" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/machinery/atmospherics/pipe/simple/hidden/supply, @@ -11696,14 +11696,14 @@ dir = 1; icon_state = "escape" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Tz" = ( /obj/structure/chair/office/dark, /turf/simulated/floor/plasteel{ icon_state = "white"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "TB" = ( /obj/structure/table/reinforced, /obj/structure/window/reinforced{ @@ -11719,14 +11719,14 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "TD" = ( /obj/structure/chair/comfy/corp, /turf/simulated/floor/plasteel{ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "TF" = ( /obj/structure/cable{ d1 = 1; @@ -11736,7 +11736,7 @@ /turf/simulated/floor/plasteel/stairs{ dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "TI" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 @@ -11753,14 +11753,14 @@ icon_state = "whitecorner"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "TK" = ( /obj/structure/bed, /obj/item/bedsheet, /obj/effect/decal/cleanable/cobweb, /obj/item/toy/plushie/voxplushie, /turf/simulated/floor/carpet, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "TO" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/machinery/atmospherics/pipe/simple/hidden/supply, @@ -11770,7 +11770,7 @@ /turf/simulated/floor/plasteel{ icon_state = "freezerfloor" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "TS" = ( /obj/machinery/reagentgrinder, /obj/structure/table, @@ -11778,7 +11778,7 @@ icon_state = "whitecorner"; dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "TW" = ( /obj/structure/railing/cap{ dir = 1 @@ -11788,7 +11788,7 @@ icon_state = "yellowsiding"; dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "TY" = ( /obj/structure/sign/biohazard{ pixel_y = -32 @@ -11806,7 +11806,7 @@ icon_state = "1-8" }, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "TZ" = ( /obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers, /obj/machinery/atmospherics/pipe/manifold/hidden/supply, @@ -11815,7 +11815,7 @@ dir = 8; icon_state = "cautioncorner" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Ua" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/chair/office/dark{ @@ -11825,7 +11825,7 @@ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Ub" = ( /obj/structure/filingcabinet, /obj/structure/sign/poster/contraband/fun_police{ @@ -11835,7 +11835,7 @@ icon_state = "black"; dir = 1 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Ue" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/machinery/atmospherics/pipe/simple/hidden/supply, @@ -11847,7 +11847,7 @@ dir = 4; icon_state = "green" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Ug" = ( /obj/structure/chair, /obj/machinery/light/small{ @@ -11857,7 +11857,7 @@ icon_state = "yellowsiding"; dir = 1 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Ul" = ( /obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ dir = 4 @@ -11873,7 +11873,7 @@ color = "red" }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Un" = ( /obj/item/shard{ icon_state = "medium" @@ -11883,14 +11883,14 @@ dir = 1; icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Up" = ( /obj/item/chair{ pixel_y = 1; dir = 4 }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Ur" = ( /obj/structure/cable{ d1 = 2; @@ -11898,7 +11898,7 @@ icon_state = "2-4" }, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Ut" = ( /obj/item/chair{ dir = 4; @@ -11909,7 +11909,7 @@ icon_state = "black"; dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Uu" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/machinery/atmospherics/pipe/simple/hidden/supply, @@ -11922,7 +11922,7 @@ icon_state = "1-2" }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Uv" = ( /obj/machinery/flasher{ pixel_x = 28 @@ -11937,7 +11937,7 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Uz" = ( /obj/structure/barricade/wooden/crude{ layer = 4 @@ -11953,7 +11953,7 @@ req_access_txt = "271" }, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "UA" = ( /obj/structure/table/glass/reinforced/plastitanium, /obj/machinery/computer/id_upgrader, @@ -11961,7 +11961,7 @@ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "UB" = ( /obj/structure/weightmachine/weightlifter, /obj/effect/turf_decal/delivery/hollow, @@ -11974,30 +11974,30 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "UD" = ( /mob/living/simple_animal/hostile/alien/drone, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "UF" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 10 }, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "UG" = ( /obj/structure/rack, /obj/effect/decal/cleanable/cobweb2, /obj/item/stack/cable_coil, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "UH" = ( /obj/structure/railing/cap{ dir = 6 }, /turf/simulated/floor/plasteel/stairs, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "UI" = ( /obj/structure/railing{ dir = 4 @@ -12013,7 +12013,7 @@ icon_state = "yellowsiding"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "UK" = ( /obj/structure/railing{ dir = 10 @@ -12023,7 +12023,7 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "UO" = ( /obj/structure/lattice, /obj/item/shard{ @@ -12036,7 +12036,7 @@ dir = 1 }, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "UV" = ( /obj/effect/turf_decal/stripes/corner{ dir = 1 @@ -12046,12 +12046,12 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "UX" = ( /obj/structure/alien/resin/wall, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "UZ" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 6 @@ -12060,11 +12060,11 @@ dir = 6 }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Va" = ( /obj/machinery/door/airlock/maintenance_hatch, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Vf" = ( /obj/effect/turf_decal/stripes/line{ dir = 4 @@ -12073,7 +12073,7 @@ icon_state = "caution"; dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Vg" = ( /obj/machinery/atmospherics/unary/vent_pump/on{ dir = 8 @@ -12082,7 +12082,7 @@ dir = 4; icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Vh" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 5 @@ -12091,7 +12091,7 @@ icon_state = "blackcorner"; dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Vi" = ( /obj/effect/turf_decal/delivery/white/partial, /obj/machinery/atmospherics/pipe/simple/hidden{ @@ -12106,18 +12106,18 @@ /turf/simulated/floor/plasteel{ icon_state = "whitecorner" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Vl" = ( /obj/structure/railing, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Vm" = ( /obj/structure/railing/corner{ dir = 4 }, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Vo" = ( /obj/structure/closet/crate/can, /obj/effect/decal/cleanable/cobweb2, @@ -12126,13 +12126,13 @@ dir = 5; icon_state = "escape" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Vs" = ( /obj/effect/decal/cleanable/dirt, /obj/item/kitchen/utensil/fork, /obj/structure/table, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Vv" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 8 @@ -12144,7 +12144,7 @@ }, /obj/structure/table, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Vx" = ( /obj/machinery/light/small{ dir = 1 @@ -12153,14 +12153,14 @@ dir = 1; icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Vy" = ( /obj/machinery/floodlight, /turf/simulated/floor/plasteel{ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "VC" = ( /obj/structure/window/reinforced{ dir = 8 @@ -12173,14 +12173,14 @@ icon_state = "yellowsiding"; dir = 10 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "VG" = ( /obj/item/kirbyplants, /turf/simulated/floor/plasteel{ icon_state = "caution"; dir = 9 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "VH" = ( /obj/structure/cable{ d1 = 1; @@ -12188,7 +12188,7 @@ icon_state = "1-2" }, /turf/simulated/floor/engine, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "VK" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 10 @@ -12201,7 +12201,7 @@ icon_state = "escape"; dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "VL" = ( /obj/effect/turf_decal/stripes/asteroid/line{ dir = 1 @@ -12212,7 +12212,7 @@ /turf/simulated/floor/plating/asteroid/airless{ icon_state = "asteroidplating" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "VM" = ( /obj/structure/rack, /obj/item/flashlight/flare, @@ -12222,18 +12222,18 @@ dir = 1; icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "VN" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 9 }, /turf/simulated/wall/r_wall, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "VO" = ( /obj/machinery/computer, /obj/effect/decal/cleanable/cobweb, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "VR" = ( /obj/structure/chair{ dir = 1 @@ -12242,7 +12242,7 @@ dir = 10; icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "VS" = ( /obj/structure/disposalpipe/segment{ desc = "An underfloor disposal pipe. This one has been applied with an acid-proof coating."; @@ -12255,12 +12255,12 @@ icon_state = "1-8" }, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "VT" = ( /obj/structure/bed, /obj/structure/closet/crate/secure/loot, /turf/simulated/floor/carpet, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "VU" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/blood/xeno{ @@ -12270,7 +12270,7 @@ icon_state = "darkbluefull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "VV" = ( /obj/structure/railing{ dir = 4 @@ -12283,7 +12283,7 @@ icon_state = "yellowsiding"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "VX" = ( /obj/machinery/shower{ dir = 8 @@ -12294,17 +12294,17 @@ dir = 4 }, /turf/simulated/floor/noslip, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Wb" = ( /obj/effect/decal/cleanable/blood/xeno{ color = "green" }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Wd" = ( /obj/effect/spawner/window/reinforced/grilled, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "We" = ( /obj/machinery/door/airlock/maintenance_hatch{ req_access_txt = "271" @@ -12314,12 +12314,12 @@ }, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Wg" = ( /obj/structure/lattice, /obj/machinery/door/firedoor/closed, /turf/template_noop, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Wi" = ( /obj/effect/decal/cleanable/blood/splatter{ color = "red" @@ -12328,20 +12328,20 @@ icon_state = "black"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Wl" = ( /obj/structure/flora/ausbushes/fullgrass, /turf/simulated/floor/plating/asteroid/airless{ icon_state = "asteroid6" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Wn" = ( /obj/item/kirbyplants, /turf/simulated/floor/plasteel{ dir = 1; icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Wo" = ( /obj/machinery/light/small{ dir = 4 @@ -12354,24 +12354,24 @@ icon_state = "caution"; dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Wp" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/machinery/atmospherics/pipe/simple/hidden/supply, /turf/simulated/floor/plasteel/stairs, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Wq" = ( /turf/simulated/floor/plasteel{ icon_state = "yellowsiding"; dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Ws" = ( /turf/simulated/floor/plasteel{ icon_state = "whitehall"; dir = 5 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Wv" = ( /obj/structure/railing{ dir = 8 @@ -12381,7 +12381,7 @@ }, /obj/structure/table, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Wz" = ( /obj/machinery/light/small, /obj/structure/table, @@ -12389,7 +12389,7 @@ dir = 10; icon_state = "escape" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "WE" = ( /obj/structure/railing, /obj/item/cigbutt{ @@ -12404,7 +12404,7 @@ }, /obj/item/reagent_containers/food/drinks/cans/beer, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "WF" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable{ @@ -12416,14 +12416,14 @@ icon_state = "caution"; dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "WG" = ( /obj/machinery/door/airlock/vault{ locked = 1; req_access_txt = "271" }, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "WH" = ( /obj/effect/spawner/lootdrop/maintenance, /obj/structure/table, @@ -12431,14 +12431,14 @@ icon_state = "whitecorner"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "WJ" = ( /obj/item/kirbyplants, /obj/structure/railing{ dir = 9 }, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "WK" = ( /obj/effect/turf_decal/stripes/asteroid/corner{ dir = 1 @@ -12456,18 +12456,18 @@ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "WN" = ( /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/carpet, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "WS" = ( /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel{ icon_state = "escapecorner"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "WU" = ( /obj/machinery/light{ active_power_consumption = 0; @@ -12482,7 +12482,7 @@ icon_state = "2-4" }, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "WW" = ( /obj/structure/cable{ d1 = 1; @@ -12493,7 +12493,7 @@ icon_state = "black"; dir = 1 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "WX" = ( /obj/item/stack/rods, /turf/template_noop, @@ -12506,7 +12506,7 @@ color = "red" }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Xb" = ( /obj/structure/disposalpipe/segment{ desc = "An underfloor disposal pipe. This one has been applied with an acid-proof coating."; @@ -12517,14 +12517,14 @@ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Xc" = ( /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel{ icon_state = "black"; dir = 6 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Xd" = ( /obj/effect/turf_decal/delivery/white/partial{ dir = 1 @@ -12533,7 +12533,7 @@ icon_state = "whitehall"; dir = 1 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Xg" = ( /obj/structure/railing{ dir = 4 @@ -12543,7 +12543,7 @@ icon_state = "yellowsiding"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Xi" = ( /obj/machinery/computer, /obj/structure/window/reinforced{ @@ -12553,7 +12553,7 @@ dir = 1; icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Xl" = ( /obj/item/shard{ icon_state = "medium" @@ -12574,7 +12574,7 @@ dir = 8; icon_state = "green" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Xp" = ( /obj/structure/chair{ dir = 8 @@ -12584,7 +12584,7 @@ dir = 6; icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Xq" = ( /obj/structure/cable{ d1 = 4; @@ -12595,7 +12595,7 @@ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Xr" = ( /obj/machinery/atmospherics/unary/thermomachine/freezer/on{ dir = 1 @@ -12603,7 +12603,7 @@ /turf/simulated/floor/plating{ icon_state = "asteroidplating" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Xs" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/machinery/atmospherics/pipe/simple/hidden/supply, @@ -12615,7 +12615,7 @@ icon_state = "tracks" }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Xv" = ( /obj/machinery/reagentgrinder, /obj/item/reagent_containers/food/drinks/shaker{ @@ -12624,7 +12624,7 @@ }, /obj/structure/table, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Xw" = ( /obj/machinery/processor{ dir = 4 @@ -12633,7 +12633,7 @@ icon_state = "showroomfloor"; temperature = 273.15 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Xz" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/machinery/atmospherics/pipe/simple/hidden/supply, @@ -12644,13 +12644,13 @@ }, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "XB" = ( /obj/structure/railing{ dir = 10 }, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "XD" = ( /obj/structure/chair/sofa/bench/right{ dir = 8 @@ -12659,13 +12659,13 @@ icon_state = "escape"; dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "XE" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 }, /turf/simulated/floor/carpet/royalblue, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "XF" = ( /obj/structure/table/reinforced, /obj/item/taperecorder{ @@ -12675,7 +12675,7 @@ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "XH" = ( /obj/structure/railing{ dir = 1 @@ -12690,7 +12690,7 @@ dir = 4; icon_state = "green" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "XK" = ( /obj/machinery/camera{ c_tag = "Exterior Hangar"; @@ -12698,7 +12698,7 @@ network = list("MO19") }, /turf/simulated/floor/plating/asteroid/airless, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "XL" = ( /obj/structure/window/reinforced{ dir = 4 @@ -12708,7 +12708,7 @@ icon_state = "whitecorner"; dir = 1 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "XM" = ( /obj/structure/filingcabinet, /obj/structure/sign/mech{ @@ -12719,7 +12719,7 @@ icon_state = "black"; dir = 1 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "XN" = ( /obj/machinery/reagentgrinder, /obj/machinery/light/small{ @@ -12734,7 +12734,7 @@ icon_state = "showroomfloor"; temperature = 273.15 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "XO" = ( /obj/structure/railing/cap{ dir = 4 @@ -12742,7 +12742,7 @@ /turf/simulated/floor/plasteel/stairs{ dir = 1 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "XR" = ( /obj/structure/chair{ dir = 1 @@ -12755,7 +12755,7 @@ icon_state = "whitecorner"; dir = 1 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "XU" = ( /obj/item/airlock_electronics, /obj/item/stack/cable_coil, @@ -12763,14 +12763,14 @@ /turf/simulated/floor/plasteel{ icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "XW" = ( /obj/structure/closet/l3closet/general, /turf/simulated/floor/plasteel{ icon_state = "whitecorner"; dir = 1 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "XX" = ( /obj/structure/closet/crate/can, /obj/effect/spawner/lootdrop/maintenance, @@ -12778,13 +12778,13 @@ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "XY" = ( /obj/item/kirbyplants, /turf/simulated/floor/plasteel{ icon_state = "whitehall" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Yd" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 6 @@ -12794,7 +12794,7 @@ icon_state = "blackcorner"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Ye" = ( /obj/structure/window/reinforced{ dir = 4 @@ -12805,11 +12805,11 @@ /turf/simulated/floor/plasteel{ icon_state = "black" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Yh" = ( /obj/effect/decal/cleanable/cobweb, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Yi" = ( /obj/structure/railing/cap, /obj/effect/turf_decal/stripes/corner{ @@ -12825,7 +12825,7 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Yj" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/door/airlock/engineering/glass{ @@ -12833,7 +12833,7 @@ name = "Engineering Division" }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Yk" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/delivery/white/partial, @@ -12841,7 +12841,7 @@ icon_state = "black"; dir = 1 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Yl" = ( /obj/structure/mirror{ pixel_x = -28 @@ -12853,7 +12853,7 @@ /turf/simulated/floor/plasteel{ icon_state = "freezerfloor" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Yt" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 10 @@ -12866,7 +12866,7 @@ icon_state = "escapecorner"; dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Yu" = ( /obj/structure/toilet{ pixel_y = 8 @@ -12876,7 +12876,7 @@ /turf/simulated/floor/plasteel{ icon_state = "freezerfloor" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Yw" = ( /obj/machinery/chem_master, /obj/effect/decal/cleanable/dirt, @@ -12884,13 +12884,13 @@ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Yy" = ( /obj/structure/chair/office/dark{ dir = 1 }, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Yz" = ( /obj/machinery/light/small{ active_power_consumption = 0; @@ -12908,7 +12908,7 @@ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "YB" = ( /obj/machinery/door/poddoor/impassable{ id_tag = "awaymlock" @@ -12919,7 +12919,7 @@ name = "Medical Ward" }, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "YC" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 5 @@ -12934,18 +12934,18 @@ pixel_x = 2 }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "YJ" = ( /obj/structure/table, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "YK" = ( /obj/structure/railing{ dir = 8 }, /mob/living/simple_animal/hostile/alien/sentinel, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "YL" = ( /obj/structure/railing{ dir = 4 @@ -12961,14 +12961,14 @@ icon_state = "yellowsiding"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "YM" = ( /obj/machinery/door/airlock/engineering/glass{ req_access_txt = "271"; name = "Workshop" }, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "YQ" = ( /obj/structure/railing{ dir = 8 @@ -12981,7 +12981,7 @@ icon_state = "yellowsiding"; dir = 4 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "YS" = ( /obj/structure/alien/resin/wall, /obj/structure/cable{ @@ -12990,7 +12990,7 @@ icon_state = "1-2" }, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "YX" = ( /obj/structure/railing, /obj/effect/turf_decal/delivery/red/partial{ @@ -13002,7 +13002,7 @@ icon_state = "black"; dir = 10 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "YY" = ( /obj/structure/chair{ dir = 4 @@ -13017,18 +13017,18 @@ icon_state = "caution"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Za" = ( /obj/structure/holosign/barrier/engineering, /obj/effect/landmark/damageturf, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Zb" = ( /obj/machinery/door/airlock/external/glass{ locked = 1 }, /turf/simulated/floor/catwalk, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Zf" = ( /obj/effect/decal/cleanable/dirt, /mob/living/simple_animal/hostile/alien/queen/large{ @@ -13039,7 +13039,7 @@ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Zg" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 10 @@ -13054,7 +13054,7 @@ }, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Zh" = ( /obj/effect/decal/cleanable/molten_object/large, /obj/effect/decal/cleanable/glass, @@ -13066,14 +13066,14 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Zi" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 8 }, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Zj" = ( /obj/effect/turf_decal/delivery/white/partial{ dir = 1 @@ -13081,7 +13081,7 @@ /turf/simulated/floor/plasteel{ icon_state = "black" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Zk" = ( /obj/machinery/atmospherics/unary/tank/air{ dir = 8 @@ -13095,7 +13095,7 @@ icon_state = "yellowsiding"; dir = 5 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Zn" = ( /obj/machinery/light/small{ dir = 8 @@ -13103,7 +13103,7 @@ /turf/simulated/floor/plasteel{ icon_state = "dark" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Zp" = ( /obj/effect/spawner/lootdrop/maintenance, /obj/structure/table, @@ -13111,7 +13111,7 @@ dir = 10; icon_state = "escape" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Zq" = ( /obj/structure/rack, /obj/item/taperecorder{ @@ -13119,7 +13119,7 @@ }, /obj/item/storage/secure/briefcase, /turf/simulated/floor/carpet/royalblue, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Zu" = ( /obj/machinery/computer, /obj/structure/window/reinforced{ @@ -13132,7 +13132,7 @@ dir = 1; icon_state = "caution" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Zw" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/machinery/atmospherics/pipe/simple/hidden/supply, @@ -13143,14 +13143,14 @@ icon_state = "1-2" }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "Zz" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 6 }, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ZA" = ( /obj/structure/railing{ dir = 1 @@ -13164,7 +13164,7 @@ /turf/simulated/floor/plasteel{ icon_state = "whitecorner" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ZC" = ( /obj/structure/railing, /obj/effect/turf_decal/stripes/asteroid/line, @@ -13173,21 +13173,21 @@ }, /obj/structure/flora/ausbushes/sparsegrass, /turf/simulated/floor/plating/asteroid/airless, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ZE" = ( /obj/machinery/door/airlock/external/glass, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ZI" = ( /obj/effect/decal/cleanable/cobweb2, /obj/structure/table, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ZK" = ( /obj/machinery/light/small, /mob/living/simple_animal/cockroach, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ZL" = ( /obj/structure/alien/resin/wall, /obj/structure/cable{ @@ -13199,7 +13199,7 @@ dir = 5; icon_state = "cafeteria" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ZN" = ( /obj/structure/chair/office/dark{ dir = 4 @@ -13209,7 +13209,7 @@ icon_state = "darkfull"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ZO" = ( /obj/effect/turf_decal/stripes/line{ dir = 5 @@ -13221,7 +13221,7 @@ }, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/engine, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ZP" = ( /obj/machinery/door/airlock/medical/glass{ req_access_txt = "271" @@ -13233,7 +13233,7 @@ icon_state = "white"; dir = 8 }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ZR" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/space_heater, @@ -13241,7 +13241,7 @@ dir = 8 }, /turf/simulated/floor/plating, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ZU" = ( /obj/machinery/kitchen_machine/microwave{ pixel_x = -3; @@ -13249,13 +13249,13 @@ }, /obj/structure/table, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ZV" = ( /obj/structure/flora/ausbushes/fullgrass, /turf/simulated/floor/plating/asteroid/airless{ icon_state = "asteroid5" }, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) "ZX" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 @@ -13266,7 +13266,7 @@ pixel_y = -4 }, /turf/simulated/floor/plasteel, -/area/ruin/space/unpowered) +/area/ruin/space/moonbase19) (1,1,1) = {" aa diff --git a/_maps/map_files/RandomRuins/SpaceRuins/syndie_space_base.dmm b/_maps/map_files/RandomRuins/SpaceRuins/syndie_space_base.dmm index d8e6c1eb9300..0afd68199276 100644 --- a/_maps/map_files/RandomRuins/SpaceRuins/syndie_space_base.dmm +++ b/_maps/map_files/RandomRuins/SpaceRuins/syndie_space_base.dmm @@ -1506,7 +1506,7 @@ /turf/simulated/floor/plating/asteroid/airless, /area/ruin/unpowered/syndicate_space_base/inner) "ig" = ( -/obj/structure/kitchenspike, +/obj/machinery/kitchen_machine/candy_maker, /turf/simulated/floor/plasteel{ icon_state = "cafeteria" }, @@ -5033,8 +5033,8 @@ }, /area/ruin/unpowered/syndicate_space_base/dormitories) "BJ" = ( -/obj/machinery/kitchen_machine/candy_maker, /obj/machinery/light, +/obj/machinery/kitchen_machine/oven, /turf/simulated/floor/plasteel{ icon_state = "cafeteria" }, diff --git a/code/__DEFINES/dcs/signals.dm b/code/__DEFINES/dcs/signals.dm index 3c9b1d1ec2d8..4be8046aecdc 100644 --- a/code/__DEFINES/dcs/signals.dm +++ b/code/__DEFINES/dcs/signals.dm @@ -564,6 +564,8 @@ ///from base of obj/item/pre_attack(): (atom/target, mob/user, params) #define COMSIG_ITEM_PRE_ATTACK "item_pre_attack" #define COMPONENT_NO_ATTACK (1<<0) +///from base of obj/item/pre_attack(): (atom/target, mob/user, params) +#define COMSIG_ITEM_BEING_ATTACKED "item_being_attacked" ///from base of obj/item/afterattack(): (atom/target, mob/user, params) #define COMSIG_ITEM_AFTERATTACK "item_afterattack" ///from base of obj/item/attack_qdeleted(): (atom/target, mob/user, params) diff --git a/code/__DEFINES/hud.dm b/code/__DEFINES/hud.dm index 79df39c740ac..e2b9380850c4 100644 --- a/code/__DEFINES/hud.dm +++ b/code/__DEFINES/hud.dm @@ -26,6 +26,7 @@ #define DIAG_TRACK_HUD "21"// Mech tracking beacon #define DIAG_AIRLOCK_HUD "22" // Airlock shock overlay #define GLAND_HUD "23"//Gland indicators for abductors +#define JANI_HUD "24" // Sign overlay over cleanable decals //by default everything in the hud_list of an atom is an image //a value in hud_list with one of these will change that behavior @@ -40,20 +41,21 @@ #define DATA_HUD_DIAGNOSTIC_BASIC 5 #define DATA_HUD_DIAGNOSTIC_ADVANCED 6 #define DATA_HUD_HYDROPONIC 7 +#define DATA_HUD_JANITOR 8 //antag HUD defines -#define ANTAG_HUD_CULT 8 -#define ANTAG_HUD_REV 9 -#define ANTAG_HUD_OPS 10 -#define ANTAG_HUD_WIZ 11 -#define ANTAG_HUD_SHADOW 12 -#define ANTAG_HUD_TRAITOR 13 -#define ANTAG_HUD_NINJA 14 -#define ANTAG_HUD_CHANGELING 15 -#define ANTAG_HUD_VAMPIRE 16 -#define ANTAG_HUD_ABDUCTOR 17 -#define DATA_HUD_ABDUCTOR 18 -#define ANTAG_HUD_EVENTMISC 19 -#define ANTAG_HUD_BLOB 20 +#define ANTAG_HUD_CULT 9 +#define ANTAG_HUD_REV 10 +#define ANTAG_HUD_OPS 11 +#define ANTAG_HUD_WIZ 12 +#define ANTAG_HUD_SHADOW 13 +#define ANTAG_HUD_TRAITOR 14 +#define ANTAG_HUD_NINJA 15 +#define ANTAG_HUD_CHANGELING 16 +#define ANTAG_HUD_VAMPIRE 17 +#define ANTAG_HUD_ABDUCTOR 18 +#define DATA_HUD_ABDUCTOR 19 +#define ANTAG_HUD_EVENTMISC 20 +#define ANTAG_HUD_BLOB 21 // Notification action types #define NOTIFY_JUMP "jump" diff --git a/code/__DEFINES/mob_defines.dm b/code/__DEFINES/mob_defines.dm index efd9a4d2991d..497c229f08dd 100644 --- a/code/__DEFINES/mob_defines.dm +++ b/code/__DEFINES/mob_defines.dm @@ -199,6 +199,8 @@ #define INVISIBILITY_ABSTRACT 101 #define UNHEALING_EAR_DAMAGE 100 +#define DIRECTION_LOCK_SLOWDOWN 3 + //Human sub-species #define isabductor(A) (is_species(A, /datum/species/abductor)) #define isgolem(A) (is_species(A, /datum/species/golem)) diff --git a/code/__DEFINES/role_preferences.dm b/code/__DEFINES/role_preferences.dm index 81d48274aa9d..b7138d067920 100644 --- a/code/__DEFINES/role_preferences.dm +++ b/code/__DEFINES/role_preferences.dm @@ -18,7 +18,6 @@ #define ROLE_PAI "pAI" #define ROLE_CULTIST "cultist" #define ROLE_BLOB "blob" -#define ROLE_NINJA "space ninja" #define ROLE_MONKEY "monkey" #define ROLE_GANG "gangster" #define ROLE_ABDUCTOR "abductor" @@ -30,12 +29,10 @@ // Role tags for EVERYONE! #define ROLE_DEMON "demon" #define ROLE_SENTIENT "sentient animal" -#define ROLE_POSIBRAIN "positronic brain" #define ROLE_GUARDIAN "guardian" #define ROLE_MORPH "morph" #define ROLE_ERT "emergency response team" #define ROLE_NYMPH "Dionaea" -#define ROLE_GSPIDER "giant spider" #define ROLE_TSPIDER "terror spider" #define ROLE_DRONE "drone" #define ROLE_DEATHSQUAD "deathsquad" @@ -55,18 +52,15 @@ GLOBAL_LIST_INIT(special_roles, list( ROLE_BLOB, // Blob ROLE_CHANGELING = /datum/game_mode/changeling, // Changeling ROLE_CULTIST = /datum/game_mode/cult, // Cultist - ROLE_GSPIDER, // Giant spider ROLE_GUARDIAN, // Guardian ROLE_MORPH, // Morph ROLE_OPERATIVE = /datum/game_mode/nuclear, // Operative ROLE_PAI, // PAI - ROLE_POSIBRAIN, // Positronic brain ROLE_REVENANT, // Revenant ROLE_REV = /datum/game_mode/revolution, // Revolutionary ROLE_SENTIENT, // Sentient animal ROLE_DEMON, // Slaguther demon ROLE_ELITE, // Lavaland Elite - ROLE_NINJA, // Space ninja ROLE_TRADER, // Trader ROLE_TRAITOR = /datum/game_mode/traitor, // Traitor ROLE_VAMPIRE = /datum/game_mode/vampire, // Vampire diff --git a/code/__DEFINES/rolebans.dm b/code/__DEFINES/rolebans.dm index ec5dd31daa8a..c400ddb5c3ee 100644 --- a/code/__DEFINES/rolebans.dm +++ b/code/__DEFINES/rolebans.dm @@ -8,13 +8,11 @@ GLOBAL_LIST_INIT(antag_roles, list( ROLE_ALIEN, ROLE_CULTIST, ROLE_BLOB, - ROLE_NINJA, ROLE_VAMPIRE, ROLE_DEMON, ROLE_REVENANT, ROLE_GUARDIAN, ROLE_MORPH, - ROLE_GSPIDER, ROLE_TSPIDER, )) diff --git a/code/__HELPERS/unsorted.dm b/code/__HELPERS/unsorted.dm index 6ceb6382b3b6..43afefb691ac 100644 --- a/code/__HELPERS/unsorted.dm +++ b/code/__HELPERS/unsorted.dm @@ -1171,55 +1171,6 @@ GLOBAL_LIST_INIT(can_embed_types, typecacheof(list( if(is_type_in_typecache(W, GLOB.can_embed_types)) return 1 -/proc/is_hot(obj/item/W as obj) - if(W.tool_behaviour == TOOL_WELDER) - if(W.tool_enabled) - return 2500 - else - return 0 - if(istype(W, /obj/item/lighter)) - var/obj/item/lighter/O = W - if(O.lit) - return 1500 - else - return 0 - if(istype(W, /obj/item/match)) - var/obj/item/match/O = W - if(O.lit) - return 1000 - else - return 0 - if(istype(W, /obj/item/clothing/mask/cigarette)) - var/obj/item/clothing/mask/cigarette/O = W - if(O.lit) - return 1000 - else - return 0 - if(istype(W, /obj/item/candle)) - var/obj/item/candle/O = W - if(O.lit) - return 1000 - else - return 0 - if(istype(W, /obj/item/flashlight/flare)) - var/obj/item/flashlight/flare/O = W - if(O.on) - return 1000 - else - return 0 - if(istype(W, /obj/item/gun/energy/plasmacutter)) - return 3800 - if(istype(W, /obj/item/melee/energy)) - var/obj/item/melee/energy/O = W - if(O.active) - return 3500 - else - return 0 - if(istype(W, /obj/item/assembly/igniter)) - return 20000 - else - return 0 - //Whether or not the given item counts as sharp in terms of dealing damage /proc/is_sharp(obj/O) if(!O) diff --git a/code/_onclick/click.dm b/code/_onclick/click.dm index 5a0c22cbdbae..5cbbc279a538 100644 --- a/code/_onclick/click.dm +++ b/code/_onclick/click.dm @@ -252,11 +252,9 @@ return var/face_dir = get_cardinal_dir(src, A) if(!face_dir || forced_look == face_dir || A == src) - forced_look = null - to_chat(src, "Cancelled direction lock.") + clear_forced_look() return - forced_look = face_dir - to_chat(src, "You are now facing [dir2text(forced_look)]. To cancel this, shift-middleclick yourself.") + set_forced_look(A, FALSE) /* Middle shift-control-click @@ -266,13 +264,13 @@ return /mob/living/MiddleShiftControlClickOn(atom/A) + if(incapacitated()) + return var/face_uid = A.UID() if(forced_look == face_uid || A == src) - forced_look = null - to_chat(src, "Cancelled direction lock.") + clear_forced_look() return - forced_look = face_uid - to_chat(src, "You are now facing [A]. To cancel this, shift-middleclick yourself.") + set_forced_look(A, TRUE) // In case of use break glass /* diff --git a/code/_onclick/hud/action_button.dm b/code/_onclick/hud/action_button.dm index fa915e6e58fb..bca000eac812 100644 --- a/code/_onclick/hud/action_button.dm +++ b/code/_onclick/hud/action_button.dm @@ -1,8 +1,10 @@ /obj/screen/movable/action_button + desc = "CTRL-Shift click on this button to bind it to a hotkey." var/datum/action/linked_action var/actiontooltipstyle = "" screen_loc = null var/ordered = TRUE + var/datum/keybinding/mob/trigger_action_button/linked_keybind /obj/screen/movable/action_button/MouseDrop(over_object) if(locked && could_be_click_lag()) // in case something bad happend and game realised we dragged our ability instead of pressing it @@ -32,6 +34,9 @@ /obj/screen/movable/action_button/Click(location,control,params) var/list/modifiers = params2list(params) + if(modifiers["ctrl"] && modifiers["shift"]) + INVOKE_ASYNC(src, PROC_REF(set_to_keybind), usr) + return TRUE if(usr.next_click > world.time) return FALSE usr.changeNext_click(1) @@ -58,9 +63,32 @@ animate(src, transform = matrix(), time = 0.4 SECONDS, alpha = 255) return TRUE +/obj/screen/movable/action_button/proc/set_to_keybind(mob/user) + var/keybind_to_set_to = uppertext(input(user, "What keybind do you want to set this action button to?") as text) + if(keybind_to_set_to) + if(linked_keybind) + clean_up_keybinds(user) + var/datum/keybinding/mob/trigger_action_button/triggerer = new + triggerer.linked_action = linked_action + user.client.active_keybindings[keybind_to_set_to] += list(triggerer) + linked_keybind = triggerer + triggerer.binded_to = keybind_to_set_to + to_chat(user, "[src] has been binded to [keybind_to_set_to]!") + else if(linked_keybind) + clean_up_keybinds(user) + to_chat(user, "Your active keybinding on [src] has been cleared.") + /obj/screen/movable/action_button/AltClick(mob/user) return linked_action.AltTrigger() +/obj/screen/movable/action_button/proc/clean_up_keybinds(mob/owner) + if(linked_keybind) + owner.client.active_keybindings[linked_keybind.binded_to] -= (linked_keybind) + if(!length(owner.client.active_keybindings[linked_keybind.binded_to])) + owner.client.active_keybindings[linked_keybind.binded_to] = null + owner.client.active_keybindings -= linked_keybind.binded_to + QDEL_NULL(linked_keybind) + //Hide/Show Action Buttons ... Button /obj/screen/movable/action_button/hide_toggle name = "Hide Buttons" @@ -121,7 +149,14 @@ /obj/screen/movable/action_button/MouseEntered(location, control, params) . = ..() if(!QDELETED(src)) - openToolTip(usr, src, params, title = name, content = desc, theme = actiontooltipstyle) + if(!linked_keybind) + openToolTip(usr, src, params, title = name, content = desc, theme = actiontooltipstyle) + else + var/list/desc_information = list() + desc_information += desc + desc_information += "This action is currently bound to the [linked_keybind.binded_to] key." + desc_information = desc_information.Join(" ") + openToolTip(usr, src, params, title = name, content = desc_information, theme = actiontooltipstyle) /obj/screen/movable/action_button/MouseExited() closeToolTip(usr) diff --git a/code/_onclick/hud/alert.dm b/code/_onclick/hud/alert.dm index 9d94e5f5ca60..0b70b7f28f08 100644 --- a/code/_onclick/hud/alert.dm +++ b/code/_onclick/hud/alert.dm @@ -337,6 +337,16 @@ or shoot a gun to move around via Newton's 3rd Law of Motion." var/mob/living/L = usr return L.resist() +/obj/screen/alert/direction_lock + name = "Direction Lock" + desc = "You are facing only one direction, slowing your movement down. Click here to stop the direction lock." + icon_state = "direction_lock" + +/obj/screen/alert/direction_lock/Click() + if(isliving(usr)) + var/mob/living/L = usr + return L.clear_forced_look() + //Constructs /obj/screen/alert/holy_fire name = "Holy Fire" diff --git a/code/_onclick/item_attack.dm b/code/_onclick/item_attack.dm index ea78bd776953..abde11138fa9 100644 --- a/code/_onclick/item_attack.dm +++ b/code/_onclick/item_attack.dm @@ -26,12 +26,17 @@ /obj/item/proc/pre_attack(atom/A, mob/living/user, params) //do stuff before attackby! if(SEND_SIGNAL(src, COMSIG_ITEM_PRE_ATTACK, A, user, params) & COMPONENT_CANCEL_ATTACK_CHAIN) return TRUE - if(is_hot(src) && A.reagents && !ismob(A)) + + if(SEND_SIGNAL(A, COMSIG_ITEM_BEING_ATTACKED, src, user, params) & COMPONENT_CANCEL_ATTACK_CHAIN) + return TRUE + + var/temperature = get_heat() + if(temperature && A.reagents && !ismob(A) && !istype(A, /obj/item/clothing/mask/cigarette)) var/reagent_temp = A.reagents.chem_temp - var/time = (reagent_temp / 10) / (is_hot(src) / 1000) + var/time = (reagent_temp / 10) / (temperature / 1000) if(do_after_once(user, time, TRUE, user, TRUE, attempt_cancel_message = "You stop heating up [A].")) to_chat(user, "You heat [A] with [src].") - A.reagents.temperature_reagents(is_hot(src)) + A.reagents.temperature_reagents(temperature) return TRUE //return FALSE to avoid calling attackby after this proc does stuff // No comment diff --git a/code/datums/action.dm b/code/datums/action.dm index 52e96b4d63bd..0bdd5c4a0a36 100644 --- a/code/datums/action.dm +++ b/code/datums/action.dm @@ -26,8 +26,10 @@ button.linked_action = src button.name = name button.actiontooltipstyle = buttontooltipstyle - if(desc) - button.desc = desc + var/list/our_description = list() + our_description += desc + our_description += button.desc + button.desc = our_description.Join(" ") /datum/action/Destroy() if(owner) @@ -55,6 +57,7 @@ return if(M.client) M.client.screen -= button + button.clean_up_keybinds(M) button.moved = FALSE //so the button appears in its normal position when given to another owner. button.locked = FALSE M.actions -= src @@ -69,9 +72,6 @@ Trigger() return FALSE -/datum/action/proc/Process() - return - /datum/action/proc/override_location() // Override to set coordinates manually return @@ -113,7 +113,6 @@ else button.icon = button_icon button.icon_state = background_icon_state - button.desc = desc ApplyIcon(button) var/obj/effect/proc_holder/spell/S = target @@ -565,7 +564,10 @@ var/obj/effect/proc_holder/spell/S = target S.action = src name = S.name - desc = S.desc + var/list/our_description = list() + our_description += S.desc + our_description += button.desc + button.desc = our_description.Join(" ") button_icon = S.action_icon button_icon_state = S.action_icon_state background_icon_state = S.action_background_icon_state diff --git a/code/datums/atom_hud.dm b/code/datums/atom_hud.dm index ff924e697d1e..e79861e5877e 100644 --- a/code/datums/atom_hud.dm +++ b/code/datums/atom_hud.dm @@ -10,6 +10,7 @@ GLOBAL_LIST_INIT(huds, list( DATA_HUD_DIAGNOSTIC_BASIC = new/datum/atom_hud/data/diagnostic/basic(), DATA_HUD_DIAGNOSTIC_ADVANCED = new/datum/atom_hud/data/diagnostic/advanced(), DATA_HUD_HYDROPONIC = new/datum/atom_hud/data/hydroponic(), + DATA_HUD_JANITOR = new/datum/atom_hud/data/janitor(), ANTAG_HUD_CULT = new/datum/atom_hud/antag(), ANTAG_HUD_REV = new/datum/atom_hud/antag(), ANTAG_HUD_OPS = new/datum/atom_hud/antag(), diff --git a/code/datums/components/_component.dm b/code/datums/components/_component.dm index 27ee68f0189d..4c4ea93241a2 100644 --- a/code/datums/components/_component.dm +++ b/code/datums/components/_component.dm @@ -259,20 +259,6 @@ /datum/component/proc/InheritComponent(datum/component/C, i_am_original) return - -/** - * Called on a component when a component of the same type was added to the same parent with [COMPONENT_DUPE_SELECTIVE] - * - * See [/datum/component/var/dupe_mode] - * - * `C`'s type will always be the same of the called component - * - * return TRUE if you are absorbing the component, otherwise FALSE if you are fine having it exist as a duplicate component - */ -/datum/component/proc/CheckDupeComponent(datum/component/C, ...) - return - - /** * Callback Just before this component is transferred * @@ -443,12 +429,6 @@ var/list/arguments = raw_args.Copy() arguments[1] = new_comp var/make_new_component = TRUE - for(var/i in GetComponents(new_type)) - var/datum/component/C = i - if(C.CheckDupeComponent(arglist(arguments))) - make_new_component = FALSE - QDEL_NULL(new_comp) - break if(!new_comp && make_new_component) new_comp = new nt(raw_args) else if(!new_comp) diff --git a/code/datums/keybindings/mob_keybinds.dm b/code/datums/keybindings/mob_keybinds.dm index c870739da56e..c2f782dd024d 100644 --- a/code/datums/keybindings/mob_keybinds.dm +++ b/code/datums/keybindings/mob_keybinds.dm @@ -224,3 +224,13 @@ /datum/keybinding/mob/target/l_foot name = "Target Left Foot" body_part = BODY_ZONE_PRECISE_L_FOOT + +/datum/keybinding/mob/trigger_action_button // Don't add a name to this, shouldn't show up in the prefs menu + var/datum/action/linked_action + var/binded_to // these are expected to actually get deleted at some point, to prevent hard deletes we need to know where to remove them from the clients list + +/datum/keybinding/mob/trigger_action_button/down(client/C) + . = ..() + if(C.mob.next_click > world.time) + return + linked_action.Trigger() diff --git a/code/datums/position_point_vector.dm b/code/datums/position_point_vector.dm index f1e5ffc05b51..1cad3b52899f 100644 --- a/code/datums/position_point_vector.dm +++ b/code/datums/position_point_vector.dm @@ -23,7 +23,7 @@ return ATAN2((b.y - a.y), (b.x - a.x)) /// For positions with map x/y/z and pixel x/y so you don't have to return lists. Could use addition/subtraction in the future I guess. -/datum/position +/datum/position var/x = 0 var/y = 0 var/z = 0 @@ -68,7 +68,7 @@ return new /datum/point_precise(src) /// A precise point on the map in absolute pixel locations based on world.icon_size. Pixels are FROM THE EDGE OF THE MAP! -/datum/point_precise +/datum/point_precise var/x = 0 var/y = 0 var/z = 0 @@ -83,7 +83,7 @@ return p /// First argument can also be a /datum/position or /atom. -/datum/point_precise/New(_x, _y, _z, _pixel_x = 0, _pixel_y = 0) +/datum/point_precise/New(_x, _y, _z, _pixel_x = 0, _pixel_y = 0) if(istype(_x, /datum/position)) var/datum/position/P = _x _x = P.x @@ -134,11 +134,11 @@ /datum/point_precise/vector /// Pixels per iteration - var/speed = 32 + var/speed = 32 var/iteration = 0 var/angle = 0 /// Calculated x movement amounts to prevent having to do trig every step. - var/mpx = 0 + var/mpx = 0 /// Calculated y movement amounts to prevent having to do trig every step. var/mpy = 0 var/starting_x = 0 //just like before, pixels from EDGE of map! This is set in initialize_location(). @@ -158,7 +158,7 @@ starting_z = z /// Same effect as initiliaze_location, but without setting the starting_x/y/z -/datum/point_precise/vector/proc/set_location(tile_x, tile_y, tile_z, p_x = 0, p_y = 0) +/datum/point_precise/vector/proc/set_location(tile_x, tile_y, tile_z, p_x = 0, p_y = 0) if(!isnull(tile_x)) x = ((tile_x - 1) * world.icon_size) + world.icon_size * 0.5 + p_x + 1 if(!isnull(tile_y)) @@ -214,9 +214,6 @@ v.increment(multiplier * amount) return v -/datum/point_precise/vector/proc/on_z_change() - return - /datum/point_precise/vector/processed //pixel_speed is per decisecond. var/last_process = 0 var/last_move = 0 diff --git a/code/datums/spell.dm b/code/datums/spell.dm index 3f5c82772e3f..a40432406b36 100644 --- a/code/datums/spell.dm +++ b/code/datums/spell.dm @@ -17,7 +17,6 @@ GLOBAL_LIST_INIT(spells, typesof(/obj/effect/proc_holder/spell)) to_chat(user, "[user.ranged_ability.name] has been disabled.") user.ranged_ability.remove_ranged_ability(user) return TRUE //TRUE for failed, FALSE for passed. - user.changeNext_click(CLICK_CD_CLICK_ABILITY) user.face_atom(A) return FALSE @@ -114,7 +113,6 @@ GLOBAL_LIST_INIT(spells, typesof(/obj/effect/proc_holder/spell)) var/smoke_type = SMOKE_NONE var/smoke_amt = 0 - var/critfailchance = 0 var/centcom_cancast = TRUE //Whether or not the spell should be allowed on the admin zlevel /// Whether or not the spell functions in a holy place var/holy_area_cancast = TRUE @@ -160,6 +158,7 @@ GLOBAL_LIST_INIT(spells, typesof(/obj/effect/proc_holder/spell)) if(!can_cast(user, charge_check, TRUE)) return FALSE + user.changeNext_click(CLICK_CD_CLICK_ABILITY) if(ishuman(user)) var/mob/living/carbon/human/caster = user if(caster.remoteview_target) @@ -360,10 +359,7 @@ GLOBAL_LIST_INIT(spells, typesof(/obj/effect/proc_holder/spell)) if(sound) playMagSound() - if(prob(critfailchance)) - critfail(targets) - else - cast(targets, user = user) + cast(targets, user = user) after_cast(targets, user) if(action) action.UpdateButtonIcon() @@ -434,9 +430,6 @@ GLOBAL_LIST_INIT(spells, typesof(/obj/effect/proc_holder/spell)) /obj/effect/proc_holder/spell/proc/cast(list/targets, mob/user = usr) return -/obj/effect/proc_holder/spell/proc/critfail(list/targets) - return - /obj/effect/proc_holder/spell/proc/revert_cast(mob/user = usr) //resets recharge or readds a charge cooldown_handler.revert_cast() custom_handler?.revert_cast(user, src) diff --git a/code/datums/spell_cooldown/spell_cooldown.dm b/code/datums/spell_cooldown/spell_cooldown.dm index aa08e9491e48..3d320bdca8a7 100644 --- a/code/datums/spell_cooldown/spell_cooldown.dm +++ b/code/datums/spell_cooldown/spell_cooldown.dm @@ -29,16 +29,12 @@ /datum/spell_cooldown/proc/should_end_cooldown() return !is_on_cooldown() -/datum/spell_cooldown/proc/end_recharge() - return - /datum/spell_cooldown/process() if(!spell_parent.action) stack_trace("[spell_parent.type] ended up with a null action") return PROCESS_KILL spell_parent.action.UpdateButtonIcon() if(should_end_cooldown()) - end_recharge() return PROCESS_KILL diff --git a/code/datums/uplink_items/uplink_general.dm b/code/datums/uplink_items/uplink_general.dm index bff01ba594a8..244ee44832db 100644 --- a/code/datums/uplink_items/uplink_general.dm +++ b/code/datums/uplink_items/uplink_general.dm @@ -174,7 +174,7 @@ GLOBAL_LIST_INIT(uplink_items, subtypesof(/datum/uplink_item)) name = "FK-69 Pistol Kit" reference = "SPI" desc = "A box containing a small, easily concealable handgun and two eight-round magazines chambered in 10mm auto rounds. Compatible with suppressors." - item = /obj/item/storage/box/syndie_kit/stechkin + item = /obj/item/gun/projectile/automatic/pistol cost = 20 /datum/uplink_item/dangerous/revolver diff --git a/code/datums/uplink_items/uplink_traitor.dm b/code/datums/uplink_items/uplink_traitor.dm index e8b3a49ed58e..fde738f81a4e 100644 --- a/code/datums/uplink_items/uplink_traitor.dm +++ b/code/datums/uplink_items/uplink_traitor.dm @@ -558,9 +558,9 @@ /datum/uplink_item/bundles_TC/badass name = "Syndicate Bundle" - desc = "Syndicate Bundles are specialised groups of items that arrive in a plain box. These items are collectively worth more than 100 telecrystals, but you do not know which specialisation you will receive." + desc = "Syndicate Bundles are specialised groups of items that arrive in a plain box. These items are collectively worth more than 100 telecrystals. You can select one out of three specialisations after purchase." reference = "SYB" - item = /obj/item/storage/box/syndie_kit/bundle + item = /obj/item/radio/beacon/syndicate/bundle cost = 100 excludefrom = list(UPLINK_TYPE_NUCLEAR, UPLINK_TYPE_SST) diff --git a/code/game/area/areas/ruins/space_areas.dm b/code/game/area/areas/ruins/space_areas.dm index 7517a4152a5b..cc7f7eb2a99a 100644 --- a/code/game/area/areas/ruins/space_areas.dm +++ b/code/game/area/areas/ruins/space_areas.dm @@ -171,3 +171,7 @@ /area/ruin/space/abandoned_engi_sat name = "Abandoned NT Engineering Satellite" apc_starts_off = TRUE + +/area/ruin/space/moonbase19 + name = "Moon Base 19" + apc_starts_off = TRUE diff --git a/code/game/atoms_movable.dm b/code/game/atoms_movable.dm index 46241823383d..0b7280021cec 100644 --- a/code/game/atoms_movable.dm +++ b/code/game/atoms_movable.dm @@ -169,6 +169,7 @@ glide_for(movetime) if(!(direct & (direct - 1))) //Cardinal move . = ..(newloc, direct) // don't pass up movetime + setDir(direct) else //Diagonal move, split it into cardinal moves moving_diagonally = FIRST_DIAG_STEP var/first_step_dir @@ -217,6 +218,7 @@ if(moving_diagonally == SECOND_DIAG_STEP) if(!.) setDir(first_step_dir) + Moved(oldloc, first_step_dir) else if(!inertia_moving) inertia_next_move = world.time + inertia_move_delay newtonian_move(direct) diff --git a/code/game/data_huds.dm b/code/game/data_huds.dm index 7adac734b9fb..6b019a4a91f3 100644 --- a/code/game/data_huds.dm +++ b/code/game/data_huds.dm @@ -57,6 +57,9 @@ /datum/atom_hud/data/hydroponic hud_icons = list (PLANT_NUTRIENT_HUD, PLANT_WATER_HUD, PLANT_STATUS_HUD, PLANT_HEALTH_HUD, PLANT_TOXIN_HUD, PLANT_PEST_HUD, PLANT_WEED_HUD) +/datum/atom_hud/data/janitor + hud_icons = list(JANI_HUD) + /* MED/SEC/DIAG HUD HOOKS */ /* @@ -492,6 +495,15 @@ else holder.icon_state = "" +/*~~~~~~~~~~~~~~ + JANI HUD +~~~~~~~~~~~~~~~*/ +/obj/effect/decal/cleanable/proc/jani_hud_set_sign() + var/image/holder = hud_list[JANI_HUD] + holder.icon_state = "hudjani" + holder.alpha = 130 + holder.plane = ABOVE_LIGHTING_PLANE + /*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ I'll just put this somewhere near the end... ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/ diff --git a/code/game/gamemodes/game_mode.dm b/code/game/gamemodes/game_mode.dm index 78d0d4c264b3..2d659b9818cb 100644 --- a/code/game/gamemodes/game_mode.dm +++ b/code/game/gamemodes/game_mode.dm @@ -106,9 +106,6 @@ return 1 return 0 -/datum/game_mode/proc/cleanup() //This is called when the round has ended but not the game, if any cleanup would be necessary in that case. - return - /datum/game_mode/proc/declare_completion() var/clients = 0 var/surviving_humans = 0 diff --git a/code/game/gamemodes/miniantags/pulsedemon/pulsedemon.dm b/code/game/gamemodes/miniantags/pulsedemon/pulsedemon.dm index b2bcc1e5b37f..f5a0087f2342 100644 --- a/code/game/gamemodes/miniantags/pulsedemon/pulsedemon.dm +++ b/code/game/gamemodes/miniantags/pulsedemon/pulsedemon.dm @@ -656,7 +656,7 @@ /mob/living/simple_animal/demon/pulse_demon/proc/is_under_tile() var/turf/T = get_turf(src) - return T.transparent_floor || T.intact || HAS_TRAIT(T, TRAIT_TURF_COVERED) + return T.intact || HAS_TRAIT(T, TRAIT_TURF_COVERED) // cable (and hijacked APC) view helper /mob/living/simple_animal/demon/pulse_demon/proc/update_cableview() diff --git a/code/game/gamemodes/scoreboard.dm b/code/game/gamemodes/scoreboard.dm index 751a693bfbe1..cf27a6f51477 100644 --- a/code/game/gamemodes/scoreboard.dm +++ b/code/game/gamemodes/scoreboard.dm @@ -149,14 +149,14 @@ GLOBAL_VAR(scoreboard) // Variable to save the scoreboard string once it's been richest_cash = cash_score richest_name = H.real_name richest_job = H.job - richest_key = H.key + richest_key = (H.client?.prefs.toggles2 & PREFTOGGLE_2_ANON) ? "Anon" : H.key var/damage_score = H.getBruteLoss() + H.getFireLoss() + H.getToxLoss() + H.getOxyLoss() if(damage_score > damaged_health) damaged_health = damage_score damaged_name = H.real_name damaged_job = H.job - damaged_key = H.key + damaged_key = (H.client?.prefs.toggles2 & PREFTOGGLE_2_ANON) ? "Anon" : H.key /// A function to determine the cash plus the account balance of the wealthiest escapee /datum/scoreboard/proc/get_score_person_worth(mob/living/carbon/human/H) diff --git a/code/game/jobs/job/science_jobs.dm b/code/game/jobs/job/science_jobs.dm index 49d91810dc06..8834b817e1d7 100644 --- a/code/game/jobs/job/science_jobs.dm +++ b/code/game/jobs/job/science_jobs.dm @@ -122,3 +122,7 @@ l_ear = /obj/item/radio/headset/headset_sci id = /obj/item/card/id/roboticist pda = /obj/item/pda/roboticist + + backpack = /obj/item/storage/backpack/robotics + satchel = /obj/item/storage/backpack/satchel_robo + dufflebag = /obj/item/storage/backpack/duffel/robotics diff --git a/code/game/jobs/job_exp.dm b/code/game/jobs/job_exp.dm index 42c909098c38..ae628528e58b 100644 --- a/code/game/jobs/job_exp.dm +++ b/code/game/jobs/job_exp.dm @@ -3,7 +3,6 @@ GLOBAL_LIST_INIT(role_playtime_requirements, list( // NT ROLES ROLE_PAI = 0, - ROLE_POSIBRAIN = 5, // Same as cyborg job. ROLE_SENTIENT = 5, ROLE_ERT = 40, // High, because they're team-based, and we want ERT to be robust ROLE_DEATHSQUAD = 50, // Higher, see ERT and also they're OP as heck @@ -17,14 +16,12 @@ GLOBAL_LIST_INIT(role_playtime_requirements, list( ROLE_VAMPIRE = 5, ROLE_BLOB = 20, ROLE_REVENANT = 3, - ROLE_NINJA = 20, ROLE_MORPH = 5, ROLE_DEMON = 5, ROLE_ELITE = 5, // DUO ANTAGS ROLE_GUARDIAN = 20, - ROLE_GSPIDER = 5, // TEAM ANTAGS // Higher numbers here, because they require more experience to be played correctly diff --git a/code/game/machinery/doors/airlock_types.dm b/code/game/machinery/doors/airlock_types.dm index 3b3aa9c76166..6c0a6bd9dff9 100644 --- a/code/game/machinery/doors/airlock_types.dm +++ b/code/game/machinery/doors/airlock_types.dm @@ -201,12 +201,12 @@ DA.update_name() qdel(src) -/obj/machinery/door/airlock/plasma/attackby(obj/C, mob/user, params) - if(is_hot(C) > 300) - message_admins("Plasma airlock ignited by [key_name_admin(user)] in ([x],[y],[z] - JMP)") +/obj/machinery/door/airlock/plasma/attackby(obj/item/C, mob/user, params) + if(C.get_heat() > 300) + message_admins("Plasma airlock ignited by [key_name_admin(user)] in ([x],[y],[z] - JMP)") log_game("Plasma airlock ignited by [key_name(user)] in ([x],[y],[z])") investigate_log("was ignited by [key_name(user)]","atmos") - ignite(is_hot(C)) + ignite(C.get_heat()) else return ..() diff --git a/code/game/machinery/vendors/wardrobe_vendors.dm b/code/game/machinery/vendors/wardrobe_vendors.dm index f0f1ed336700..387c696929ef 100644 --- a/code/game/machinery/vendors/wardrobe_vendors.dm +++ b/code/game/machinery/vendors/wardrobe_vendors.dm @@ -391,7 +391,10 @@ /obj/item/clothing/gloves/fingerless = 3, /obj/item/clothing/shoes/laceup = 3, /obj/item/clothing/shoes/white = 3, - /obj/item/clothing/shoes/black = 3) + /obj/item/clothing/shoes/black = 3, + /obj/item/storage/backpack/robotics = 2, + /obj/item/storage/backpack/satchel_robo = 2, + /obj/item/storage/backpack/duffel/robotics = 2) contraband = list(/obj/item/toy/figure/crew/roboticist = 1, /obj/item/toy/figure/crew/borg = 1) @@ -406,7 +409,10 @@ /obj/item/clothing/gloves/fingerless = 20, /obj/item/clothing/shoes/laceup = 30, /obj/item/clothing/shoes/white = 20, - /obj/item/clothing/shoes/black = 20) + /obj/item/clothing/shoes/black = 20, + /obj/item/storage/backpack/robotics = 50, + /obj/item/storage/backpack/satchel_robo = 50, + /obj/item/storage/backpack/duffel/robotics = 50) refill_canister = /obj/item/vending_refill/robodrobe diff --git a/code/game/objects/effects/decals/cleanable.dm b/code/game/objects/effects/decals/cleanable.dm index b3457fc2149a..8e70132e6780 100644 --- a/code/game/objects/effects/decals/cleanable.dm +++ b/code/game/objects/effects/decals/cleanable.dm @@ -11,6 +11,14 @@ plane = FLOOR_PLANE ///for blood n vomit in zero G --- IN GRAVITY=TRUE; NO GRAVITY=FALSE var/gravity_check = TRUE + hud_possible = list(JANI_HUD) + +/obj/effect/decal/cleanable/Initialize(mapload) + . = ..() + var/datum/atom_hud/data/janitor/jani_hud = GLOB.huds[DATA_HUD_JANITOR] + prepare_huds() + jani_hud.add_to_hud(src) + jani_hud_set_sign() /obj/effect/decal/cleanable/proc/replace_decal(obj/effect/decal/cleanable/C) // Returns true if we should give up in favor of the pre-existing decal if(mergeable_decal) diff --git a/code/game/objects/items.dm b/code/game/objects/items.dm index 61f4e4b8656c..d6ba038494ce 100644 --- a/code/game/objects/items.dm +++ b/code/game/objects/items.dm @@ -133,7 +133,6 @@ GLOBAL_DATUM_INIT(welding_sparks, /mutable_appearance, mutable_appearance('icons /// Holder var for the item outline filter, null when no outline filter on the item. var/outline_filter - /obj/item/New() ..() @@ -646,7 +645,7 @@ GLOBAL_DATUM_INIT(welding_sparks, /mutable_appearance, mutable_appearance('icons if(w_class < WEIGHT_CLASS_BULKY) itempush = FALSE //too light to push anything if(isliving(hit_atom)) //Living mobs handle hit sounds differently. - if(is_hot(src)) + if(get_heat()) var/mob/living/L = hit_atom L.IgniteMob() var/volume = get_volume_by_throwforce_and_or_w_class() @@ -902,3 +901,6 @@ GLOBAL_DATUM_INIT(welding_sparks, /mutable_appearance, mutable_appearance('icons if(ishuman(loc)) var/mob/living/carbon/human/H = loc H.regenerate_icons() + +/obj/item/proc/get_heat() + return diff --git a/code/game/objects/items/candle.dm b/code/game/objects/items/candle.dm index 3dde2eb17be5..00ae37bb2b2a 100644 --- a/code/game/objects/items/candle.dm +++ b/code/game/objects/items/candle.dm @@ -42,7 +42,7 @@ return TRUE /obj/item/candle/attackby(obj/item/W, mob/user, params) - if(is_hot(W)) + if(W.get_heat()) light("[user] lights [src] with [W].") return return ..() @@ -152,6 +152,9 @@ infinite = FALSE wax = 1 // next process will burn it out +/obj/item/candle/get_heat() + return lit * 1000 + #undef TALL_CANDLE #undef MID_CANDLE #undef SHORT_CANDLE diff --git a/code/game/objects/items/control_wand.dm b/code/game/objects/items/control_wand.dm index 5571328920a1..33510ccccf5d 100644 --- a/code/game/objects/items/control_wand.dm +++ b/code/game/objects/items/control_wand.dm @@ -49,45 +49,82 @@ . = ..() . += "It's current mode is: [mode]" -/obj/item/door_remote/afterattack(obj/machinery/door/airlock/D, mob/user) - if(!istype(D)) - return +/obj/item/door_remote/afterattack(obj/target, mob/user) + if(istype(target, /obj/machinery/door/airlock)) + access_airlock(target, user) + if(istype(target, /obj/machinery/door/window)) + access_windoor(target, user) + +/obj/item/door_remote/proc/access_airlock(obj/machinery/door/airlock/D, mob/user) if(HAS_TRAIT(D, TRAIT_CMAGGED)) to_chat(user, "The door doesn't respond to [src]!") return + if(D.is_special) to_chat(user, "[src] cannot access this kind of door!") return + if(!(D.arePowerSystemsOn())) to_chat(user, "[D] has no power!") return + if(!D.requiresID()) to_chat(user, "[D]'s ID scan is disabled!") return - if(D.check_access(src.ID)) - D.add_hiddenprint(user) - switch(mode) - if(WAND_OPEN) - if(D.density) - D.open() - else - D.close() - if(WAND_BOLT) - if(D.locked) - D.unlock() - else - D.lock() - if(WAND_EMERGENCY) - if(D.emergency) - D.emergency = FALSE - else - D.emergency = TRUE - D.update_icon() - if(WAND_SPEED) - D.normalspeed = !D.normalspeed - to_chat(user, "[D] is now in [D.normalspeed ? "normal" : "fast"] mode.") - else + + if(!D.check_access(src.ID)) to_chat(user, "[src] does not have access to this door.") + return + + D.add_hiddenprint(user) + switch(mode) + if(WAND_OPEN) + if(D.density) + D.open() + else + D.close() + if(WAND_BOLT) + if(D.locked) + D.unlock() + else + D.lock() + if(WAND_EMERGENCY) + D.emergency = !D.emergency + D.update_icon() + if(WAND_SPEED) + D.normalspeed = !D.normalspeed + to_chat(user, "[D] is now in [D.normalspeed ? "normal" : "fast"] mode.") + +/obj/item/door_remote/proc/access_windoor(obj/machinery/door/window/D, mob/user) + if(HAS_TRAIT(D, TRAIT_CMAGGED)) + to_chat(user, "The door doesn't respond to [src]!") + return + + if(!D.has_power()) + to_chat(user, "[D] has no power!") + return + + if(!D.requiresID()) + to_chat(user, "[D]'s ID scan is disabled!") + return + + if(!D.check_access(ID)) + to_chat(user, "[src] does not have access to this door.") + return + + D.add_hiddenprint(user) + switch(mode) + if(WAND_OPEN) + if(D.density) + D.open() + else + D.close() + if(WAND_BOLT) + to_chat(user, "[D] has no bolting functionality.") + if(WAND_EMERGENCY) + to_chat(user, "[D] has no emergency access functionality.") + if(WAND_SPEED) + to_chat(user, "[D] has no speed change functionality.") /obj/item/door_remote/omni name = "omni door remote" @@ -145,8 +182,8 @@ var/hack_speed = 1.5 SECONDS var/busy = FALSE -/obj/item/door_remote/omni/access_tuner/afterattack(obj/machinery/door/airlock/D, mob/user) - if(!istype(D)) +/obj/item/door_remote/omni/access_tuner/afterattack(obj/machinery/door/D, mob/user) + if(!istype(D, /obj/machinery/door/airlock) && !istype(D, /obj/machinery/door/window)) return if(busy) to_chat(user, "[src] is alreading interfacing with a door!") @@ -186,16 +223,16 @@ playsound(src, 'sound/items/keyring_shake.ogg', 50) cooldown = world.time + JANGLE_COOLDOWN -/obj/item/door_remote/janikeyring/afterattack(obj/machinery/door/airlock/D, mob/user, proximity) +/obj/item/door_remote/janikeyring/afterattack(obj/machinery/door/D, mob/user, proximity) if(!proximity) return - if(!istype(D)) + if(!istype(D, /obj/machinery/door/airlock) && !istype(D, /obj/machinery/door/window)) return if(busy) - to_chat(user, "You are already using [src] on the [D] airlock's access panel!") + to_chat(user, "You are already using [src] on the [D]'s access panel!") return busy = TRUE - to_chat(user, "You fiddle with [src], trying different keys to open the [D] airlock...") + to_chat(user, "You fiddle with [src], trying different keys to open the [D]...") playsound(src, 'sound/items/keyring_unlock.ogg', 50) var/mob/living/carbon/human/H = user @@ -204,14 +241,11 @@ else hack_speed = rand(5, 20) SECONDS - if(!do_after(user, hack_speed, target = D, progress = 0)) - busy = FALSE - return + if(do_after(user, hack_speed, target = D, progress = 0)) + . = ..() busy = FALSE - if(!istype(D)) - return - +/obj/item/door_remote/janikeyring/access_airlock(obj/machinery/door/airlock/D, mob/user) if(HAS_TRAIT(D, TRAIT_CMAGGED)) to_chat(user, "[src] won't fit in the [D] airlock's access panel, there's slime everywhere!") return @@ -224,15 +258,30 @@ to_chat(user, "The [D] airlock has no power!") return - if(D.check_access(ID)) - D.add_hiddenprint(user) - if(D.density) - D.open() - else - to_chat(user, "The [D] airlock is already open!") + if(!D.check_access(ID)) + to_chat(user, "[src] does not seem to have a key for the [D] airlock's access panel!") + return + + D.add_hiddenprint(user) + if(D.density) + D.open() + else + to_chat(user, "The [D] airlock is already open!") +/obj/item/door_remote/janikeyring/access_windoor(obj/machinery/door/window/D, mob/user) + if(!(D.has_power())) + to_chat(user, "[D] has no power!") + return + + if(!D.check_access(ID)) + to_chat(user, "[src] does not seem to have a key for the [D]'s access panel!") + return + + D.add_hiddenprint(user) + if(D.density) + D.open() else - to_chat(user, "[src] does not seem to have a key for the [D] airlock's access panel!") + to_chat(user, "The [D] is already open!") #undef WAND_OPEN #undef WAND_BOLT diff --git a/code/game/objects/items/devices/flashlight.dm b/code/game/objects/items/devices/flashlight.dm index d471e918c6e6..62ac92441115 100644 --- a/code/game/objects/items/devices/flashlight.dm +++ b/code/game/objects/items/devices/flashlight.dm @@ -230,6 +230,9 @@ return TRUE return ..() +/obj/item/flashlight/flare/get_heat() + return produce_heat * on * 1000 + // GLOWSTICKS /obj/item/flashlight/flare/glowstick diff --git a/code/game/objects/items/devices/radio/beacon.dm b/code/game/objects/items/devices/radio/beacon.dm index e4a969b1446f..f78588a832e1 100644 --- a/code/game/objects/items/devices/radio/beacon.dm +++ b/code/game/objects/items/devices/radio/beacon.dm @@ -59,6 +59,45 @@ user.drop_item() qdel(src) +/obj/item/radio/beacon/syndicate/bundle/ + name = "suspicious beacon" + desc = "A label on it reads: Activate to select a bundle." + var/list/static/bundles = list( + "Spy" = /obj/item/storage/box/syndie_kit/bundle/spy, + "Agent 13" = /obj/item/storage/box/syndie_kit/bundle/agent13, + "Thief" = /obj/item/storage/box/syndie_kit/bundle/thief, + "Agent 007" = /obj/item/storage/box/syndie_kit/bundle/bond, + "Infiltrator" = /obj/item/storage/box/syndie_kit/bundle/infiltrator, + "Bank Robber" = /obj/item/storage/box/syndie_kit/bundle/payday, + "Implanter" = /obj/item/storage/box/syndie_kit/bundle/implant, + "Hacker" = /obj/item/storage/box/syndie_kit/bundle/hacker, + "Dark Lord" = /obj/item/storage/box/syndie_kit/bundle/darklord, + "Sniper" = /obj/item/storage/box/syndie_kit/bundle/professional, + "Grenadier" = /obj/item/storage/box/syndie_kit/bundle/grenadier, + "Augmented" = /obj/item/storage/box/syndie_kit/bundle/metroid) + var/list/selected = list() + var/list/unselected = list() + +/obj/item/radio/beacon/syndicate/bundle/attack_self(mob/user) + if(!user) + return + if(!length(selected)) + unselected = bundles.Copy() + for(var/i in 1 to 3) + selected += pick_n_take(unselected) + selected += "Random" + var/bundle_name = tgui_input_list(user, "Available Bundles", "Bundle Selection", selected) + if(!bundle_name) + return + if(bundle_name == "Random") + bundle_name = pick(unselected) + var/bundle = bundles[bundle_name] + bundle = new bundle(user.loc) + to_chat(user, "Welcome to [station_name()], [bundle_name]") + user.drop_item() + qdel(src) + user.put_in_hands(bundle) + /obj/item/radio/beacon/syndicate/power_sink name = "suspicious beacon" desc = "A label on it reads: Warning: Activating this device will send a power sink to your location." diff --git a/code/game/objects/items/flag.dm b/code/game/objects/items/flag.dm index 302b2703d958..665faa1d6d1b 100644 --- a/code/game/objects/items/flag.dm +++ b/code/game/objects/items/flag.dm @@ -13,7 +13,7 @@ /obj/item/flag/attackby(obj/item/W, mob/user, params) . = ..() - if(is_hot(W) && !(resistance_flags & ON_FIRE)) + if(W.get_heat() && !(resistance_flags & ON_FIRE)) user.visible_message("[user] lights [src] with [W].", "You light [src] with [W].", "You hear a low whoosh.") fire_act() @@ -259,7 +259,7 @@ log_game("[key_name(user)] has hidden [I] in [src] ready for detonation at [A.name] ([bombturf.x],[bombturf.y],[bombturf.z]).") investigate_log("[key_name(user)] has hidden [I] in [src] ready for detonation at [A.name] ([bombturf.x],[bombturf.y],[bombturf.z]).", INVESTIGATE_BOMB) add_attack_logs(user, src, "has hidden [I] ready for detonation in", ATKLOG_MOST) - else if(is_hot(I) && !(resistance_flags & ON_FIRE) && boobytrap && trapper) + else if(I.get_heat() && !(resistance_flags & ON_FIRE) && boobytrap && trapper) var/turf/bombturf = get_turf(src) var/area/A = get_area(bombturf) log_game("[key_name_admin(user)] has lit [src] trapped with [boobytrap] by [key_name_admin(trapper)] at [A.name] ([bombturf.x],[bombturf.y],[bombturf.z]).") diff --git a/code/game/objects/items/latexballoon.dm b/code/game/objects/items/latexballoon.dm index d936ec32227a..03415cbecf56 100644 --- a/code/game/objects/items/latexballoon.dm +++ b/code/game/objects/items/latexballoon.dm @@ -61,5 +61,5 @@ var/obj/item/tank/T = W blow(T, user) return - if(is_sharp(W) || is_hot(W) || is_pointed(W)) + if(is_sharp(W) || W.get_heat() || is_pointed(W)) burst() diff --git a/code/game/objects/items/stacks/sheets/mineral.dm b/code/game/objects/items/stacks/sheets/mineral.dm index 8aab03be8a57..a86d7010775d 100644 --- a/code/game/objects/items/stacks/sheets/mineral.dm +++ b/code/game/objects/items/stacks/sheets/mineral.dm @@ -41,6 +41,8 @@ GLOBAL_LIST_INIT(silver_recipes, list ( new /datum/stack_recipe("Monkey Statue", /obj/structure/statue/silver/monkey, 5, time = 2.5 SECONDS, one_per_turf = TRUE, on_floor = TRUE), new /datum/stack_recipe("Corgi Statue", /obj/structure/statue/silver/corgi, 5, time = 2.5 SECONDS, one_per_turf = TRUE, on_floor = TRUE), )), + null, + new /datum/stack_recipe("Silver Locket", /obj/item/clothing/accessory/necklace/locket/silver, 1), )) GLOBAL_LIST_INIT(diamond_recipes, list ( @@ -82,7 +84,13 @@ GLOBAL_LIST_INIT(gold_recipes, list ( new /datum/stack_recipe("CMO Statue", /obj/structure/statue/gold/cmo, 5, time = 2.5 SECONDS, one_per_turf = TRUE, on_floor = TRUE), )), null, - new /datum/stack_recipe("Simple Crown", /obj/item/clothing/head/crown, 5), + new /datum/stack_recipe_list("gold clothing", list( + new /datum/stack_recipe("Simple Crown", /obj/item/clothing/head/crown, 5), + null, + new /datum/stack_recipe("Simple Necklace", /obj/item/clothing/accessory/necklace, 1), + new /datum/stack_recipe("Large Necklace", /obj/item/clothing/accessory/necklace/long, 2), + new /datum/stack_recipe("Gold Locket", /obj/item/clothing/accessory/necklace/locket, 1), + )), )) GLOBAL_LIST_INIT(plasma_recipes, list ( @@ -264,7 +272,7 @@ GLOBAL_LIST_INIT(sandbag_recipes, list ( return TRUE /obj/item/stack/sheet/mineral/plasma/attackby(obj/item/I, mob/living/user, params) - if(is_hot(I)) + if(I.get_heat()) log_and_set_aflame(user, I) else return ..() diff --git a/code/game/objects/items/tools/welder.dm b/code/game/objects/items/tools/welder.dm index 60ec8bf0efc9..72f286458d94 100644 --- a/code/game/objects/items/tools/welder.dm +++ b/code/game/objects/items/tools/welder.dm @@ -207,6 +207,9 @@ if(reagents.check_and_add("fuel", maximum_fuel, 2 * coeff)) update_icon() +/obj/item/weldingtool/get_heat() + return tool_enabled * 2500 + /obj/item/weldingtool/largetank name = "industrial welding tool" desc = "A slightly larger welder with a larger tank." diff --git a/code/game/objects/items/weapons/cigs.dm b/code/game/objects/items/weapons/cigs.dm index 9c54f803b836..6e2d363c319e 100644 --- a/code/game/objects/items/weapons/cigs.dm +++ b/code/game/objects/items/weapons/cigs.dm @@ -47,12 +47,19 @@ LIGHTERS ARE IN LIGHTERS.DM reagents.set_reacting(FALSE) // so it doesn't react until you light it if(list_reagents) reagents.add_reagent_list(list_reagents) + RegisterSignal(src, COMSIG_ITEM_BEING_ATTACKED, PROC_REF(can_light)) /obj/item/clothing/mask/cigarette/Destroy() QDEL_NULL(reagents) STOP_PROCESSING(SSobj, src) return ..() +/obj/item/clothing/mask/cigarette/proc/can_light(obj/item/cigarette, obj/item/lighting_item) + SIGNAL_HANDLER + if(lighting_item.get_heat()) + light() + return COMPONENT_CANCEL_ATTACK_CHAIN + /obj/item/clothing/mask/cigarette/decompile_act(obj/item/matter_decompiler/C, mob/user) if(isdrone(user)) C.stored_comms["wood"] += 1 @@ -250,6 +257,8 @@ LIGHTERS ARE IN LIGHTERS.DM STOP_PROCESSING(SSobj, src) qdel(src) +/obj/item/clothing/mask/cigarette/get_heat() + return lit * 1000 /obj/item/clothing/mask/cigarette/menthol list_reagents = list("nicotine" = 40, "menthol" = 20) diff --git a/code/game/objects/items/weapons/defib.dm b/code/game/objects/items/weapons/defib.dm index 1f740ef64b37..cea375da82b3 100644 --- a/code/game/objects/items/weapons/defib.dm +++ b/code/game/objects/items/weapons/defib.dm @@ -59,7 +59,7 @@ /obj/item/defibrillator/examine(mob/user) . = ..() - . += "Ctrl-click to remove the paddles from the defibrillator." + . += "Alt-Click to remove the paddles from the defibrillator." /obj/item/defibrillator/proc/update_power() if(cell) @@ -93,7 +93,7 @@ /obj/item/defibrillator/ui_action_click(mob/user) toggle_paddles(user) -/obj/item/defibrillator/CtrlClick(mob/user) +/obj/item/defibrillator/AltClick(mob/user) if(ishuman(user) && Adjacent(user)) toggle_paddles(user) @@ -106,13 +106,14 @@ if(C.maxcharge < paddles.revivecost) to_chat(user, "[src] requires a higher capacity cell.") return - user.drop_item() - W.loc = src - cell = W - to_chat(user, "You install a cell in [src].") + if(user.drop_item(C)) + W.forceMove(src) + cell = C + to_chat(user, "You install a cell in [src].") + if(W == paddles) + toggle_paddles(user) update_icon(UPDATE_OVERLAYS) - return /obj/item/defibrillator/screwdriver_act(mob/living/user, obj/item/I) if(!cell) @@ -249,11 +250,6 @@ /obj/item/defibrillator/compact/advanced/screwdriver_act(mob/living/user, obj/item/I) return // The cell is too strong roundstart and we dont want the adv defib to become useless -/obj/item/defibrillator/compact/advanced/attackby(obj/item/W, mob/user, params) - if(W == paddles) - toggle_paddles(user) - update_icon(UPDATE_OVERLAYS) - /obj/item/defibrillator/compact/advanced/loaded/Initialize(mapload) . = ..() cell = new /obj/item/stock_parts/cell/bluespace/charging(src) diff --git a/code/game/objects/items/weapons/explosives.dm b/code/game/objects/items/weapons/explosives.dm index 2f4fe5f67c86..c17e99f0f8ee 100644 --- a/code/game/objects/items/weapons/explosives.dm +++ b/code/game/objects/items/weapons/explosives.dm @@ -101,8 +101,6 @@ message_say = "FOR THE HIVE!" else if(role == ROLE_CULTIST) message_say = "FOR NARSIE!" - else if(role == ROLE_NINJA) - message_say = "FOR THE CLAN!" else if(role == ROLE_WIZARD) message_say = "FOR THE FEDERATION!" else if(role == ROLE_REV || role == "head revolutionary") diff --git a/code/game/objects/items/weapons/garrote.dm b/code/game/objects/items/weapons/garrote.dm index 32ad45ba87c8..1d1570344a25 100644 --- a/code/game/objects/items/weapons/garrote.dm +++ b/code/game/objects/items/weapons/garrote.dm @@ -88,8 +88,9 @@ U.swap_hand() if(G && istype(G)) - if(improvised) // Improvised garrotes start you off with a passive grab, but keep you stunned like an agressive grab. - M.Stun(2 SECONDS) + if(improvised) // Improvised garrotes start you off with a passive grab, but will lock you in place. A quick stun to drop items but not to make it unescapable + M.Stun(1 SECONDS) + M.Immobilize(2 SECONDS) else G.state = GRAB_NECK G.hud.icon_state = "kill" @@ -153,7 +154,7 @@ return if(G.state < GRAB_NECK) // Only possible with improvised garrotes, essentially this will stun people as if they were aggressively grabbed. Allows for resisting out if you're quick, but not running away. - strangling.Stun(6 SECONDS) + strangling.Immobilize(3 SECONDS) if(improvised) strangling.Stuttering(6 SECONDS) diff --git a/code/game/objects/items/weapons/grenades/syndieminibomb.dm b/code/game/objects/items/weapons/grenades/syndieminibomb.dm index 0eb76dbf86ae..e2a779b9374a 100644 --- a/code/game/objects/items/weapons/grenades/syndieminibomb.dm +++ b/code/game/objects/items/weapons/grenades/syndieminibomb.dm @@ -1,6 +1,6 @@ /obj/item/grenade/syndieminibomb - desc = "A syndicate manufactured explosive used to sow destruction and chaos" name = "syndicate minibomb" + desc = "A syndicate manufactured explosive used to sow destruction and chaos." icon = 'icons/obj/grenade.dmi' icon_state = "syndicate" item_state = "grenade" @@ -24,3 +24,15 @@ to_chat(user, "As you activate the bomb, it emits a substance that sticks to your hand! It won't come off!") to_chat(user, "Uh oh.") . = ..() + +/obj/item/grenade/syndieminibomb/pen + name = "pen" + desc = "It's a normal black ink pen." + icon = 'icons/obj/bureaucracy.dmi' + icon_state = "pen" + item_state = "pen" + +/obj/item/grenade/syndieminibomb/pen/attack_self(mob/user) + if(!active) + visible_message("[user] fumbles with [src]!") + . = ..() diff --git a/code/game/objects/items/weapons/lighters.dm b/code/game/objects/items/weapons/lighters.dm index bf720995b07b..235ec5816c9b 100644 --- a/code/game/objects/items/weapons/lighters.dm +++ b/code/game/objects/items/weapons/lighters.dm @@ -125,6 +125,9 @@ item_state = "[initial(item_state)][lit ? "-on" : ""]" return ..() +/obj/item/lighter/get_heat() + return lit * 1500 + // Zippo lighters /obj/item/lighter/zippo name = "zippo lighter" @@ -304,6 +307,9 @@ if(istype(mask_item, /obj/item/clothing/mask/cigarette)) return mask_item +/obj/item/match/get_heat() + return lit * 1000 + /obj/item/match/firebrand name = "firebrand" desc = "An unlit firebrand. It makes you wonder why it's not just called a stick." diff --git a/code/game/objects/items/weapons/melee/energy_melee_weapons.dm b/code/game/objects/items/weapons/melee/energy_melee_weapons.dm index 92768750e7e7..2086e1677e07 100644 --- a/code/game/objects/items/weapons/melee/energy_melee_weapons.dm +++ b/code/game/objects/items/weapons/melee/energy_melee_weapons.dm @@ -85,6 +85,9 @@ add_fingerprint(user) return +/obj/item/melee/energy/get_heat() + return active * 3500 + /obj/item/melee/energy/axe name = "energy axe" desc = "An energised battle axe." diff --git a/code/game/objects/items/weapons/pneumaticCannon.dm b/code/game/objects/items/weapons/pneumaticCannon.dm index ddd1c7a220cf..bb7afcb69199 100644 --- a/code/game/objects/items/weapons/pneumaticCannon.dm +++ b/code/game/objects/items/weapons/pneumaticCannon.dm @@ -10,16 +10,26 @@ lefthand_file = 'icons/mob/inhands/guns_lefthand.dmi' righthand_file = 'icons/mob/inhands/guns_righthand.dmi' armor = list(MELEE = 0, BULLET = 0, LASER = 0, ENERGY = 0, BOMB = 0, RAD = 0, FIRE = 60, ACID = 50) - var/maxWeightClass = 20 //The max weight of items that can fit into the cannon - var/loadedWeightClass = 0 //The weight of items currently in the cannon - var/obj/item/tank/internals/tank = null //The gas tank that is drawn from to fire things - var/gasPerThrow = 3 //How much gas is drawn from a tank's pressure to fire - var/list/loadedItems = list() //The items loaded into the cannon that will be fired out - var/pressureSetting = 1 //How powerful the cannon is - higher pressure = more gas but more powerful throws + ///The max weight of items that can fit into the cannon + var/max_weight_class = 20 + ///The weight of items currently in the cannon + var/loaded_weight_class = 0 + ///The gas tank that is drawn from to fire things + var/obj/item/tank/internals/tank = null + ///If the cannon needs a tank at all + var/requires_tank = TRUE + ///How many moles of gas is drawn from a tank's pressure to fire + var/gas_per_throw = 3 + ///The items loaded into the cannon that will be fired out + var/list/loaded_items = list() + ///How powerful the cannon is - higher pressure = more gas but more powerful throws + var/pressure_setting = 1 + ///In case we want a really strong cannon + var/max_pressure_setting = 3 /obj/item/pneumatic_cannon/Destroy() QDEL_NULL(tank) - QDEL_LIST_CONTENTS(loadedItems) + QDEL_LIST_CONTENTS(loaded_items) return ..() /obj/item/pneumatic_cannon/examine(mob/user) @@ -28,148 +38,127 @@ . += "You'll need to get closer to see any more." else if(tank) - . += "[bicon(tank)] It has \the [tank] mounted onto it." - for(var/obj/item/I in loadedItems) - . += "[bicon(I)] It has \the [I] loaded." + . += "[bicon(tank)] It has [tank] mounted onto it." + for(var/obj/item/I in loaded_items) + . += "[bicon(I)] It has [I] loaded." + +/** +* Arguments: +* * I - item to load into the cannon +* * user - the person loading the item in +* Returns: +* * True if item was loaded, false if it failed +*/ +/obj/item/pneumatic_cannon/proc/load_item(obj/item/I, mob/user) + if((loaded_weight_class + I.w_class) > max_weight_class) + to_chat(user, "[I] won't fit into [src]!") + return FALSE + if(I.w_class > w_class) + to_chat(user, "[I] is too large to fit into [src]!") + return FALSE + if(!user.unEquip(I) || I.flags & (ABSTRACT | NODROP | DROPDEL)) + to_chat(user, "You can't put [I] into [src]!") + return FALSE + to_chat(user, "You load [I] into [src].") + loaded_items.Add(I) + loaded_weight_class += I.w_class + I.forceMove(src) + return TRUE + +/obj/item/pneumatic_cannon/wrench_act(mob/living/user, obj/item/I) + adjust_setting(user) + return TRUE + +/obj/item/pneumatic_cannon/proc/adjust_setting(mob/living/user) + if(pressure_setting == max_pressure_setting) + pressure_setting = 1 + else + pressure_setting++ + to_chat(user, "You tweak [src]'s pressure output to [pressure_setting].") /obj/item/pneumatic_cannon/attackby(obj/item/W, mob/user, params) ..() - if(istype(W, /obj/item/tank/internals/) && !tank) + if(istype(W, /obj/item/tank/internals) && !tank) if(istype(W, /obj/item/tank/internals/emergency_oxygen)) - to_chat(user, "\The [W] is too small for \the [src].") + to_chat(user, "[W] is too small for [src].") return - updateTank(W, 0, user) + add_tank(W, user) return if(W.type == type) to_chat(user, "You're fairly certain that putting a pneumatic cannon inside another pneumatic cannon would cause a spacetime disruption.") return - if(istype(W, /obj/item/wrench)) - switch(pressureSetting) - if(1) - pressureSetting = 2 - if(2) - pressureSetting = 3 - if(3) - pressureSetting = 1 - to_chat(user, "You tweak \the [src]'s pressure output to [pressureSetting].") - return - if(loadedWeightClass >= maxWeightClass) - to_chat(user, "\The [src] can't hold any more items!") - return - if(isitem(W)) - var/obj/item/IW = W - if(IW.flags & (ABSTRACT | NODROP | DROPDEL)) - to_chat(user, "You can't put [IW] into [src]!") - return - if((loadedWeightClass + IW.w_class) > maxWeightClass) - to_chat(user, "\The [IW] won't fit into \the [src]!") - return - if(IW.w_class > src.w_class) - to_chat(user, "\The [IW] is too large to fit into \the [src]!") - return - if(!user.unEquip(W)) - return - to_chat(user, "You load \the [IW] into \the [src].") - loadedItems.Add(IW) - loadedWeightClass += IW.w_class - IW.loc = src - return + load_item(W, user) /obj/item/pneumatic_cannon/screwdriver_act(mob/living/user, obj/item/I) - if(!tank) - return - - updateTank(tank, 1, user) + remove_tank(user) return TRUE /obj/item/pneumatic_cannon/afterattack(atom/target, mob/living/carbon/human/user, flag, params) if(isstorage(target)) //So you can store it in backpacks return ..() - if(istype(target, /obj/structure/closet)) //So you can store it in closets - return ..() if(istype(target, /obj/structure/rack)) //So you can store it on racks return ..() if(!istype(user)) return ..() - Fire(user, target) + fire(user, target) -/obj/item/pneumatic_cannon/proc/Fire(mob/living/carbon/human/user, atom/target) +/obj/item/pneumatic_cannon/proc/fire(mob/living/carbon/human/user, atom/target) if(!istype(user) && !target) return - var/discharge = 0 - if(!loadedItems || !loadedWeightClass) - to_chat(user, "\The [src] has nothing loaded.") - return - if(!tank) - to_chat(user, "\The [src] can't fire without a source of gas.") - return - if(tank && !tank.air_contents.remove(gasPerThrow * pressureSetting)) - to_chat(user, "\The [src] lets out a weak hiss and doesn't react!") + var/has_discharged = FALSE + if(!loaded_items || !loaded_weight_class) + to_chat(user, "[src] has nothing loaded.") return + if(requires_tank) + if(!tank) + to_chat(user, "[src] can't fire without a source of gas.") + return + if(!tank.air_contents.boolean_remove(gas_per_throw * pressure_setting)) + to_chat(user, "[src] lets out a weak hiss and doesn't react!") + return if(user && HAS_TRAIT(user, TRAIT_CLUMSY) && prob(75)) user.visible_message("[user] loses [user.p_their()] grip on [src], causing it to go off!", "[src] slips out of your hands and goes off!") user.drop_item() + has_discharged = TRUE if(prob(10)) - target = get_turf(user) + target = user else var/list/possible_targets = range(3,src) target = pick(possible_targets) - discharge = 1 - if(!discharge) - user.visible_message("[user] fires \the [src]!", \ - "You fire \the [src]!") + if(!has_discharged) + user.visible_message("[user] fires [src]!", \ + "You fire [src]!") add_attack_logs(user, target, "Fired [src]") - playsound(src.loc, 'sound/weapons/sonic_jackhammer.ogg', 50, 1) - for(var/obj/item/ITD in loadedItems) //Item To Discharge - spawn(0) - loadedItems.Remove(ITD) - loadedWeightClass -= ITD.w_class - ITD.throw_speed = pressureSetting * 2 - ITD.loc = get_turf(src) - ITD.throw_at(target, pressureSetting * 5, pressureSetting * 2,user) - if(pressureSetting >= 3 && user) + playsound(loc, 'sound/weapons/sonic_jackhammer.ogg', 50, TRUE) + for(var/obj/item/loaded_item in loaded_items) + loaded_items.Remove(loaded_item) + loaded_weight_class -= loaded_item.w_class + loaded_item.throw_speed = pressure_setting * 2 + loaded_item.forceMove(get_turf(src)) + loaded_item.throw_at(target, pressure_setting * 5, pressure_setting * 2, user) + if(pressure_setting >= 3 && user) user.visible_message("[user] is thrown down by the force of the cannon!", "[src] slams into your shoulder, knocking you down!") - user.Weaken(3) - + user.KnockDown(3 SECONDS) -/obj/item/pneumatic_cannon/ghetto //Obtainable by improvised methods; more gas per use, less capacity, but smaller - name = "improvised pneumatic cannon" - desc = "A gas-powered, object-firing cannon made out of common parts." - force = 5 - w_class = WEIGHT_CLASS_NORMAL - maxWeightClass = 7 - gasPerThrow = 5 - -/datum/crafting_recipe/improvised_pneumatic_cannon //Pretty easy to obtain but - name = "Pneumatic Cannon" - result = list(/obj/item/pneumatic_cannon/ghetto) - tools = list(TOOL_WELDER, TOOL_WRENCH) - reqs = list(/obj/item/stack/sheet/metal = 4, - /obj/item/stack/packageWrap = 8, - /obj/item/pipe = 2) - time = 300 - category = CAT_WEAPONRY - subcategory = CAT_WEAPON +/obj/item/pneumatic_cannon/proc/add_tank(obj/item/tank/new_tank, mob/living/carbon/human/user) + if(tank) + to_chat(user, "[src] already has a tank.") + return + if(!user.unEquip(new_tank)) + return + to_chat(user, "You hook [new_tank] up to [src].") + new_tank.forceMove(src) + tank = new_tank + update_icons() -/obj/item/pneumatic_cannon/proc/updateTank(obj/item/tank/thetank, removing = 0, mob/living/carbon/human/user) - if(removing) - if(!src.tank) - return - to_chat(user, "You detach \the [thetank] from \the [src].") - src.tank.loc = get_turf(user) - user.put_in_hands(tank) - src.tank = null - if(!removing) - if(src.tank) - to_chat(user, "\The [src] already has a tank.") - return - if(!user.unEquip(thetank)) - return - to_chat(user, "You hook \the [thetank] up to \the [src].") - src.tank = thetank - thetank.loc = src - src.update_icons() +/obj/item/pneumatic_cannon/proc/remove_tank(mob/living/carbon/human/user) + if(!tank) + return FALSE + to_chat(user, "You detach [tank] from [src].") + user.put_in_hands(tank) + tank = null + update_icons() /obj/item/pneumatic_cannon/proc/update_icons() src.overlays.Cut() @@ -177,3 +166,17 @@ return src.overlays += image('icons/obj/pneumaticCannon.dmi', "[tank.icon_state]") src.update_icon() + +/obj/item/pneumatic_cannon/admin + name = "admin pnuematic cannon" + desc = "Infinite gas and infinite capacity, go crazy." + requires_tank = FALSE + max_weight_class = INFINITY + +/obj/item/pneumatic_cannon/ghetto //Obtainable by improvised methods; more gas per use, less capacity, but smaller + name = "improvised pneumatic cannon" + desc = "A gas-powered, object-firing cannon made out of common parts." + force = 5 + w_class = WEIGHT_CLASS_NORMAL + max_weight_class = 7 + gas_per_throw = 5 diff --git a/code/game/objects/items/weapons/storage/backpack.dm b/code/game/objects/items/weapons/storage/backpack.dm index 2b0a631022af..cba3393e3b23 100644 --- a/code/game/objects/items/weapons/storage/backpack.dm +++ b/code/game/objects/items/weapons/storage/backpack.dm @@ -213,6 +213,13 @@ icon_state = "blueshieldpack" item_state = "blueshieldpack" +/obj/item/storage/backpack/robotics + name = "robotics backpack" + desc = "A specially designed backpack. It's fire resistant and smells vaguely of welding fuel." + icon_state = "robopack" + item_state = "robopack" + resistance_flags = FIRE_PROOF + /* * Satchel Types */ @@ -336,6 +343,13 @@ icon_state = "satchel-blueshield" item_state = "satchel-blueshield" +/obj/item/storage/backpack/satchel_robo + name = "bioengineer satchel" + desc = "A black satchel designed for holding repair equipment." + icon_state = "satchel-robo" + item_state = "satchel-robo" + resistance_flags = FIRE_PROOF + /obj/item/storage/backpack/satchel_flat name = "smuggler's satchel" desc = "A very slim satchel that can easily fit into tight spaces." @@ -862,6 +876,12 @@ icon_state = "duffel-blueshield" item_state = "duffel-blueshield" +/obj/item/storage/backpack/duffel/robotics + name = "roboticist duffelbag" + desc = "A duffelbag designed to hold tools." + icon_state = "duffel-robo" + item_state = "duffel-robo" + //ERT backpacks. /obj/item/storage/backpack/ert name = "emergency response team backpack" diff --git a/code/game/objects/items/weapons/storage/belt.dm b/code/game/objects/items/weapons/storage/belt.dm index e71d266c3d27..717b00c0bb8a 100644 --- a/code/game/objects/items/weapons/storage/belt.dm +++ b/code/game/objects/items/weapons/storage/belt.dm @@ -378,6 +378,15 @@ max_w_class = WEIGHT_CLASS_SMALL max_combined_w_class = 18 resistance_flags = FIRE_PROOF + use_item_overlays = TRUE // Will show the tools on the sprite + w_class_override = list( + /obj/item/crowbar, + /obj/item/screwdriver, + /obj/item/weldingtool, + /obj/item/wirecutters, + /obj/item/wrench, + /obj/item/multitool + ) /obj/item/storage/belt/military/sst icon_state = "assaultbelt" @@ -388,16 +397,7 @@ desc = "Can hold various tools. This model seems to have additional compartments and folds up rather nicely into a bag." icon_state = "utilitybelt" item_state = "utility" - use_item_overlays = TRUE // So it will still show tools in it in case sec get lazy and just glance at it. storable = TRUE - w_class_override = list( - /obj/item/crowbar, - /obj/item/screwdriver, - /obj/item/weldingtool, - /obj/item/wirecutters, - /obj/item/wrench, - /obj/item/multitool - ) /obj/item/storage/belt/military/traitor/hacker/populate_contents() new /obj/item/screwdriver(src, "red") @@ -406,6 +406,7 @@ new /obj/item/crowbar/small(src) new /obj/item/wirecutters(src, "red") new /obj/item/stack/cable_coil(src, 30, COLOR_RED) + new /obj/item/multitool/ai_detect(src) update_icon() /obj/item/storage/belt/grenade diff --git a/code/game/objects/items/weapons/storage/storage_base.dm b/code/game/objects/items/weapons/storage/storage_base.dm index 4511e5b807e2..c5de6b7bd3a1 100644 --- a/code/game/objects/items/weapons/storage/storage_base.dm +++ b/code/game/objects/items/weapons/storage/storage_base.dm @@ -546,7 +546,6 @@ handle_item_insertion(I) - /obj/item/storage/attack_hand(mob/user) if(ishuman(user)) var/mob/living/carbon/human/H = user diff --git a/code/game/objects/items/weapons/storage/uplink_kits.dm b/code/game/objects/items/weapons/storage/uplink_kits.dm index 4b81c4ad8183..5dd3b61997cd 100644 --- a/code/game/objects/items/weapons/storage/uplink_kits.dm +++ b/code/game/objects/items/weapons/storage/uplink_kits.dm @@ -3,60 +3,79 @@ icon_state = "box_of_doom" /obj/item/storage/box/syndie_kit/bundle // Traitor bundles - - var/static/list/spy = list( // 37TC - /obj/item/clothing/under/chameleon, // 1TC - /obj/item/clothing/mask/chameleon, // 1TC - /obj/item/card/id/syndicate, // 2TC - /obj/item/clothing/shoes/chameleon/noslip, // 2TC - /obj/item/clothing/glasses/hud/security/chameleon, // 2TC - /obj/item/implanter/storage, // 8TC - /obj/item/pen/edagger, // 2TC - /obj/item/pinpointer/advpinpointer, // 4TC - /obj/item/storage/fancy/cigarettes/cigpack_syndicate, // 2TC - /obj/item/flashlight/emp, // 4TC - /obj/item/chameleon, // 7TC - /obj/item/encryptionkey/syndicate) // 2TC - - var/static/list/agent13 = list( // 36TC - /obj/item/clothing/under/chameleon, // 1TC - /obj/item/card/id/syndicate, // 2TC - /obj/item/gun/projectile/automatic/pistol, // 4TC - /obj/item/suppressor, // 1TC - /obj/item/ammo_box/magazine/m10mm, // 1TC - /obj/item/ammo_box/magazine/m10mm/hp, // 2TC - /obj/item/garrote, // 6TC - /obj/item/door_remote/omni/access_tuner, // 6TC - /obj/item/clothing/glasses/chameleon/thermal, // 6TC - /obj/item/implanter/freedom, // 5TC + var/list/items = list() + +/obj/item/storage/box/syndie_kit/bundle/spy // 172TC + name = "Spy Bundle" + desc = "Complete your objectives quietly with this compilation of stealthy items." + items = list( + /obj/item/storage/box/syndie_kit/chameleon, // 20 TC + /obj/item/card/id/syndicate, // 10TC + /obj/item/clothing/shoes/chameleon/noslip, // 10TC + /obj/item/clothing/glasses/hud/security/chameleon, // 10TC + /obj/item/implanter/storage, // 40TC + /obj/item/pen/edagger, // 10TC + /obj/item/pinpointer/advpinpointer, // 20TC + /obj/item/storage/fancy/cigarettes/cigpack_syndicate, // 7TC + /obj/item/flashlight/emp, // 20TC + /obj/item/chameleon, // 25TC + /obj/item/garrote, // 30 TC + /obj/item/door_remote/omni/access_tuner, // 30 TC + /obj/item/encryptionkey/syndicate) // 10TC + +/obj/item/storage/box/syndie_kit/bundle/agent13 // 159 + name = "Agent 13 Bundle" + desc = "Find and eliminate your targets quietly and effectively with this kit." + items = list( + /obj/item/clothing/under/chameleon, // 5TC + /obj/item/card/id/syndicate, // 10TC + /obj/item/storage/box/syndie_kit/stechkin, // 20TC + /obj/item/suppressor, // 5TC + /obj/item/ammo_box/magazine/m10mm, // 3TC + /obj/item/ammo_box/magazine/m10mm/hp, // 6TC + /obj/item/garrote, // 30TC + /obj/item/door_remote/omni/access_tuner, // 30TC + /obj/item/clothing/glasses/chameleon/thermal, // 15TC + /obj/item/storage/briefcase/false_bottomed, // 10 TC + /obj/item/implanter/freedom, // 25TC /obj/item/coin/gold, // 0TC - /obj/item/encryptionkey/syndicate) // 2TC - - var/static/list/thief = list( // 37TC - /obj/item/gun/energy/kinetic_accelerator/crossbow, // 12TC - /obj/item/chameleon, // 7TC - /obj/item/clothing/glasses/chameleon/thermal, // 6TC - /obj/item/clothing/gloves/color/black/thief, // 6TC - /obj/item/card/id/syndicate, // 2TC - /obj/item/storage/backpack/satchel_flat, // 2TC - /obj/item/encryptionkey/syndicate) // 2TC - - var/static/list/bond = list( // 32TC - /obj/item/gun/projectile/automatic/pistol, // 4TC - /obj/item/suppressor, // 1TC - /obj/item/ammo_box/magazine/m10mm/ap, // 2TC - /obj/item/ammo_box/magazine/m10mm/ap, // 2TC + /obj/item/encryptionkey/syndicate) // 10TC + +/obj/item/storage/box/syndie_kit/bundle/thief // 160TC + name = "Thief Bundle" + desc = "Steal from friends, enemies, and interstellar megacorporations alike!" + items = list( + /obj/item/gun/energy/kinetic_accelerator/crossbow, // 60TC + /obj/item/chameleon, // 25TC + /obj/item/clothing/glasses/chameleon/thermal, // 15TC + /obj/item/clothing/gloves/color/black/thief, // 30TC + /obj/item/card/id/syndicate, // 10TC + /obj/item/storage/backpack/satchel_flat, // 10TC + /obj/item/encryptionkey/syndicate) // 10TC + +/obj/item/storage/box/syndie_kit/bundle/bond // 137TC + name = "Agent 007 Bundle" + desc = "Shake your Martini and stir up trouble with this bundle of lethal equipment mixed with a spritz of gadgetry to keep things interesting." + items = list( + /obj/item/storage/briefcase/false_bottomed, // 20TC + /obj/item/suppressor, // 5TC + /obj/item/storage/box/syndie_kit/stechkin, // 20TC + /obj/item/ammo_box/magazine/m10mm/ap, // 6TC + /obj/item/ammo_box/magazine/m10mm/ap, // 6TC /obj/item/clothing/under/suit/really_black, // 0TC - /obj/item/card/id/syndicate, // 2TC - /obj/item/clothing/suit/storage/iaa/blackjacket/armored, // 0TC - /obj/item/storage/box/syndie_kit/emp, // 2TC - /obj/item/clothing/glasses/hud/security/chameleon, // 2TC - /obj/item/encryptionkey/syndicate, // 2TC + /obj/item/card/id/syndicate, // 10TC + /obj/item/clothing/suit/storage/iaa/blackjacket/armored, // 3TC + /obj/item/storage/box/syndie_kit/emp, // 10TC + /obj/item/clothing/glasses/hud/security/chameleon, // 10TC + /obj/item/encryptionkey/syndicate, // 10TC /obj/item/reagent_containers/food/drinks/drinkingglass/alliescocktail, // 0TC - /obj/item/dnascrambler, // 2TC + /obj/item/storage/box/syndie_kit/pen_bomb, // 30 TC /obj/item/CQC_manual) // 13TC - var/static/list/infiltrator = list( // 34TC + RCD & Mesons Autoimplanter +/obj/item/storage/box/syndie_kit/bundle/infiltrator // 155TC + RCD & Mesons Autoimplanter + name = "Infiltration Bundle" + desc = "Use your teleporter, krav maga and other support tools to jump right into your desired location, quickly leaving as though you were never there." + items = list( /obj/item/storage/box/syndie_kit/teleporter, // 8TC /obj/item/clothing/gloves/color/black/krav_maga, // 10TC /obj/item/clothing/glasses/chameleon/thermal, // 6TC @@ -66,7 +85,10 @@ /obj/item/autosurgeon/organ/syndicate/meson_eyes, // 0TC /obj/item/encryptionkey/syndicate) // 2TC - var/static/list/payday = list( // 35TC +/obj/item/storage/box/syndie_kit/bundle/payday // 175TC + name = "Heist Bundle" + desc = "Alright guys, today we're performing a heist on a space station owned by a greedy corporation. Drain the vault of all its worth so we can get that pay dirt!11" + items = list( /obj/item/gun/projectile/revolver, // 13TC /obj/item/ammo_box/a357, // 3TC /obj/item/ammo_box/a357, // 3TC @@ -79,83 +101,103 @@ /obj/item/clothing/mask/gas/clown_hat, // 0TC /obj/item/grenade/plastic/c4, // 1TC /obj/item/thermal_drill/diamond_drill/syndicate, // 1TC - /obj/item/encryptionkey/syndicate) // 2TC - - var/static/list/implant = list( // 40TC - /obj/item/implanter/freedom, // 5TC - /obj/item/implanter/uplink, // 14TC (ten free TC) - /obj/item/implanter/emp, // 1TC - /obj/item/implanter/adrenalin, // 8TC - /obj/item/implanter/explosive, // 2TC - /obj/item/implanter/storage, // 8TC - /obj/item/encryptionkey/syndicate) // 2TC - - var/static/list/hacker = list( // 39TC + Toy AI Uploader - /obj/item/melee/energy/sword/saber/blue, // 8TC - /obj/item/card/emag, // 6TC - /obj/item/encryptionkey/syndicate, // 2TC - /obj/item/encryptionkey/binary, // 5TC - /obj/item/card/id/syndicate, // 2TC - /obj/item/storage/box/syndie_kit/emp, // 2TC + /obj/item/implanter/freedom/prototype, // 10 TC + /obj/item/encryptionkey/syndicate) // 10TC + +/obj/item/storage/box/syndie_kit/bundle/implant // 200TC + name = "Bio-chip Bundle" + desc = "A few useful bio-chips to give you some options for when you inevitably get captured by the Security." + items = list( + /obj/item/implanter/freedom, // 25TC + /obj/item/implanter/stealth, // 45 TC + /obj/item/implanter/emp, // 5TC (half of EMP kit) + /obj/item/implanter/adrenalin, // 40TC + /obj/item/implanter/explosive, // 10TC + /obj/item/implanter/storage, // 40TC + /obj/item/encryptionkey/syndicate) // 10TC + +/obj/item/storage/box/syndie_kit/bundle/hacker // 180TC + name = "Hacker Bundle" + desc = "A kit with everything you need to hack into and disrupt the Station, AI, its cyborgs and the Security team. HACK THE PLANET!" + items = list( + /obj/item/melee/energy/sword/saber/blue, // 40TC + /obj/item/card/emag, // 30TC + /obj/item/door_remote/omni/access_tuner, // 30 TC, HACK EVERYTHING + /obj/item/encryptionkey/syndicate, // 10TC + /obj/item/encryptionkey/binary, // 25TC + /obj/item/card/id/syndicate, // 10TC + /obj/item/storage/box/syndie_kit/emp, // 10TC /obj/item/aiModule/toyAI, // 0TC - /obj/item/clothing/glasses/chameleon/thermal, // 6TC - /obj/item/storage/belt/military/traitor/hacker, // 3TC - /obj/item/clothing/gloves/combat, // 0TC - /obj/item/multitool/ai_detect, // 1TC + /obj/item/aiModule/syndicate, // 15 TC + /obj/item/storage/box/syndie_kit/camera_bug, // 5 TC + /obj/item/implanter/freedom/prototype, // 10 TC + /obj/item/storage/belt/military/traitor/hacker, // 15TC + AI detector for 5 TC + /obj/item/clothing/gloves/combat, // accounted in belt + toolbox /obj/item/flashlight/emp) // 4TC - var/static/list/darklord = list( // 33TC + TK - /obj/item/melee/energy/sword/saber/red, // 8TC - /obj/item/melee/energy/sword/saber/red, // 8TC - /obj/item/clothing/gloves/color/yellow/power, // 10TC - /obj/item/dnainjector/telemut/darkbundle, // 0TC +/obj/item/storage/box/syndie_kit/bundle/darklord // 168TC + Telekinesis + name = "Dark Lord Bundle" + desc = "Turn your anger into hate and your hate into suffering with a mix of energy swords and magical powers. DO IT." + items = list( + /obj/item/melee/energy/sword/saber/red, // 40TC + /obj/item/melee/energy/sword/saber/red, // 40TC + /obj/item/clothing/gloves/color/yellow/power, // 50TC + /obj/item/dnainjector/telemut/darkbundle, // ?TC /obj/item/clothing/suit/hooded/chaplain_hoodie, // 0TC /obj/item/clothing/glasses/meson/engine/tray, // 0TC - /obj/item/clothing/mask/chameleon, // 1TC - /obj/item/card/id/syndicate, // 2TC - /obj/item/clothing/shoes/chameleon/noslip, // 2TC - /obj/item/encryptionkey/syndicate) // 2TC - - var/static/list/professional = list( // 38TC - /obj/item/gun/projectile/automatic/sniper_rifle/syndicate, // 16TC - /obj/item/ammo_box/magazine/sniper_rounds, // 4TC - /obj/item/ammo_box/magazine/sniper_rounds/penetrator, // 5TC - /obj/item/ammo_box/magazine/sniper_rounds/penetrator, // 5TC - /obj/item/clothing/glasses/chameleon/thermal, // 6TC - /obj/item/clothing/gloves/combat, // 0 TC - /obj/item/clothing/under/suit/really_black, // 0 TC - /obj/item/clothing/suit/storage/iaa/blackjacket/armored, // 0TC - /obj/item/encryptionkey/syndicate) // 2TC + /obj/item/clothing/mask/chameleon, // 8TC + /obj/item/card/id/syndicate, // 10TC + /obj/item/clothing/shoes/chameleon/noslip, // 10TC + /obj/item/encryptionkey/syndicate) // 10TC + +/obj/item/storage/box/syndie_kit/bundle/professional // 164TC + name = "Sniper Bundle" + desc = "Suit up and handle yourself like a professional with a long-distance sniper rifle, additional .50 standard and penetrator rounds and thermal glasses to easily scope out your target." + items = list( + /obj/item/gun/projectile/automatic/sniper_rifle/syndicate, // 80TC + /obj/item/ammo_box/magazine/sniper_rounds, // 15TC + /obj/item/ammo_box/magazine/sniper_rounds/penetrator, // 20TC + /obj/item/ammo_box/magazine/sniper_rounds/penetrator, // 20TC + /obj/item/clothing/glasses/chameleon/thermal, // 15TC + /obj/item/clothing/gloves/combat, // ~1TC + /obj/item/clothing/under/suit/really_black, // 0TC + /obj/item/clothing/suit/storage/iaa/blackjacket/armored, // 3TC + /obj/item/encryptionkey/syndicate) // 15TC - var/static/list/grenadier = list( // 20TC + Tactical Grenadier Belt +/obj/item/storage/box/syndie_kit/bundle/grenadier // 133TC + Tactical Grenadier Belt + name = "Grenade Bundle" + desc = "A variety of grenades and pyrotechnics to ensure you can blast your way through any situation. " + items = list( /obj/item/storage/belt/grenade/tactical, // Contains 2 Frag and EMP grenades, 5 C4 Explosives, 5 Smoke and Gluon grenades and 1 Minibomb grenade ~20TC Estimate - /obj/item/gun/projectile/automatic/pistol, // 4TC - /obj/item/ammo_box/magazine/m10mm/fire, // 2TC - /obj/item/ammo_box/magazine/m10mm/fire, // 2TC - /obj/item/mod/control/pre_equipped/traitor, // 6TC - /obj/item/clothing/gloves/combat, // 0TC - /obj/item/card/id/syndicate, // 2TC - /obj/item/clothing/shoes/chameleon/noslip, // 2TC - /obj/item/encryptionkey/syndicate) // 2TC - - var/static/list/metroid = list( // 21 + modules + laser gun - /obj/item/mod/control/pre_equipped/traitor_elite, // 9TC - /obj/item/mod/module/visor/thermal, // 3 TC - /obj/item/mod/module/stealth, //0 TC but strong - /obj/item/mod/module/power_kick, //0 TC but funny - /obj/item/mod/module/sphere_transform, //0TC but should not be allowed to normally be installed - /obj/item/autosurgeon/organ/syndicate/laser_arm, //0 TC but otherwise not obtainable. - /obj/item/pinpointer/advpinpointer, //4 TC - /obj/item/storage/box/syndidonkpockets, //2TC, otherwise they will just die in the first combat to disabler. - /obj/item/storage/belt/utility/full/multitool, //0 TC - /obj/item/clothing/head/collectable/slime, //Priceless (0 TC) - /obj/item/encryptionkey/syndicate) //2 TC - - + /obj/item/storage/box/syndie_kit/stechkin, // 20TC + /obj/item/ammo_box/magazine/m10mm/fire, // 6TC + /obj/item/ammo_box/magazine/m10mm/fire, // 6TC + /obj/item/mod/control/pre_equipped/traitor, // 30TC + /obj/item/clothing/gloves/combat, // ~1TC + /obj/item/card/id/syndicate, // 10TC + /obj/item/clothing/shoes/chameleon/noslip, // 10TC + /obj/item/storage/box/syndidonkpockets, // 10 TC + /obj/item/storage/box/syndie_kit/frag_grenades, // One box, as a treat + /obj/item/encryptionkey/syndicate) // 10TC + +/obj/item/storage/box/syndie_kit/bundle/metroid // 115TC + modules + laser gun + name = "Modsuit Bundle" + desc = "Don the equipment of an intergalactic bounty hunter and blast your way through the station!" + items = list( + /obj/item/mod/control/pre_equipped/traitor_elite, // 45TC + /obj/item/mod/module/visor/thermal, // 15TC + /obj/item/mod/module/stealth, // ?TC + /obj/item/mod/module/power_kick, // ?TC + /obj/item/mod/module/sphere_transform, // ?TC + /obj/item/autosurgeon/organ/syndicate/laser_arm, // ?TC + /obj/item/pinpointer/advpinpointer, // 20TC + /obj/item/implanter/adrenalin, // 40TC + /obj/item/storage/belt/utility/full/multitool, // 15TC + /obj/item/clothing/head/collectable/slime, // 0TC priceless + /obj/item/encryptionkey/syndicate) // 10TC /obj/item/storage/box/syndie_kit/bundle/populate_contents() - var/list/bundle = pick(spy, agent13, thief, bond, infiltrator, payday, implant, hacker, darklord, professional, grenadier, metroid) - for(var/item in bundle) + for(var/obj/item/item as anything in items) new item(src) /obj/item/storage/box/syndie_kit/space @@ -390,3 +432,9 @@ new /obj/item/paper/camera_bug(src) for(var/i in 1 to 5) new /obj/item/wall_bug(src, camera) + +/obj/item/storage/box/syndie_kit/pen_bomb + name = "\improper Pen bomb" + +/obj/item/storage/box/syndie_kit/pen_bomb/populate_contents() + new /obj/item/grenade/syndieminibomb/pen(src) diff --git a/code/game/objects/structures/crates_lockers/closets/secure/scientist.dm b/code/game/objects/structures/crates_lockers/closets/secure/scientist.dm index c4bf4779a2ea..73f75df0569a 100644 --- a/code/game/objects/structures/crates_lockers/closets/secure/scientist.dm +++ b/code/game/objects/structures/crates_lockers/closets/secure/scientist.dm @@ -26,12 +26,12 @@ /obj/structure/closet/secure_closet/roboticist/populate_contents() new /obj/item/mod/core/standard(src) - new /obj/item/storage/backpack(src) - new /obj/item/storage/backpack(src) - new /obj/item/storage/backpack/satchel_norm(src) - new /obj/item/storage/backpack/satchel_norm(src) - new /obj/item/storage/backpack/duffel(src) - new /obj/item/storage/backpack/duffel(src) + new /obj/item/storage/backpack/robotics(src) + new /obj/item/storage/backpack/robotics(src) + new /obj/item/storage/backpack/satchel_robo(src) + new /obj/item/storage/backpack/satchel_robo(src) + new /obj/item/storage/backpack/duffel/robotics(src) + new /obj/item/storage/backpack/duffel/robotics(src) new /obj/item/clothing/suit/storage/labcoat/roboblack(src) new /obj/item/clothing/suit/storage/labcoat/robowhite(src) new /obj/item/radio/headset/headset_sci(src) diff --git a/code/game/objects/structures/false_walls.dm b/code/game/objects/structures/false_walls.dm index d8203fe9fcd0..e6bd754e6e21 100644 --- a/code/game/objects/structures/false_walls.dm +++ b/code/game/objects/structures/false_walls.dm @@ -284,7 +284,7 @@ canSmoothWith = list(SMOOTH_GROUP_PLASMA_WALLS) /obj/structure/falsewall/plasma/attackby(obj/item/W, mob/user, params) - if(is_hot(W) > 300) + if(W.get_heat() > 300) var/turf/T = locate(user) message_admins("Plasma falsewall ignited by [key_name_admin(user)] in [ADMIN_VERBOSEJMP(T)]") log_game("Plasma falsewall ignited by [key_name(user)] in [AREACOORD(T)]") diff --git a/code/game/objects/structures/mineral_doors.dm b/code/game/objects/structures/mineral_doors.dm index 6a4eb718120a..20424ff6b732 100644 --- a/code/game/objects/structures/mineral_doors.dm +++ b/code/game/objects/structures/mineral_doors.dm @@ -177,8 +177,8 @@ sheetType = /obj/item/stack/sheet/mineral/plasma /obj/structure/mineral_door/transparent/plasma/attackby(obj/item/W, mob/user) - if(is_hot(W)) - message_admins("Plasma mineral door ignited by [key_name_admin(user)] in ([x], [y], [z] - JMP)", 0, 1) + if(W.get_heat()) + message_admins("Plasma mineral door ignited by [key_name_admin(user)] in ([x], [y], [z] - JMP)", 0, 1) log_game("Plasma mineral door ignited by [key_name(user)] in ([x], [y], [z])") investigate_log("was ignited by [key_name(user)]","atmos") TemperatureAct(100) diff --git a/code/game/objects/structures/statues.dm b/code/game/objects/structures/statues.dm index 849b4cc1d59b..c7310b9141db 100644 --- a/code/game/objects/structures/statues.dm +++ b/code/game/objects/structures/statues.dm @@ -125,11 +125,11 @@ ..() /obj/structure/statue/plasma/attackby(obj/item/W, mob/user, params) - if(is_hot(W) > 300)//If the temperature of the object is over 300, then ignite + if(W.get_heat() > 300)//If the temperature of the object is over 300, then ignite message_admins("[key_name_admin(user)] ignited a plasma statue at [COORD(loc)]") log_game("[key_name(user)] ignited plasma a statue at [COORD(loc)]") investigate_log("[key_name(user)] ignited a plasma statue at [COORD(loc)]", "atmos") - ignite(is_hot(W)) + ignite(W.get_heat()) return return ..() diff --git a/code/game/turfs/simulated/floor/mineral_floors.dm b/code/game/turfs/simulated/floor/mineral_floors.dm index fb75450a8a51..d33d5a8d2f3e 100644 --- a/code/game/turfs/simulated/floor/mineral_floors.dm +++ b/code/game/turfs/simulated/floor/mineral_floors.dm @@ -36,11 +36,11 @@ PlasmaBurn() /turf/simulated/floor/mineral/plasma/attackby(obj/item/W, mob/user, params) - if(is_hot(W) > 300)//If the temperature of the object is over 300, then ignite - message_admins("Plasma flooring was ignited by [key_name_admin(user)]([ADMIN_QUE(user,"?")]) ([ADMIN_FLW(user,"FLW")]) in ([x],[y],[z] - JMP)",0,1) + if(W.get_heat() > 300)//If the temperature of the object is over 300, then ignite + message_admins("Plasma flooring was ignited by [key_name_admin(user)]([ADMIN_QUE(user,"?")]) ([ADMIN_FLW(user,"FLW")]) in ([x],[y],[z] - JMP)",0,1) log_game("Plasma flooring was ignited by [key_name(user)] in ([x],[y],[z])") investigate_log("was ignited by [key_name(user)]","atmos") - ignite(is_hot(W)) + ignite(W.get_heat()) return ..() diff --git a/code/game/turfs/simulated/walls_mineral.dm b/code/game/turfs/simulated/walls_mineral.dm index 5f7bb041f3a2..57a7f7dbc043 100644 --- a/code/game/turfs/simulated/walls_mineral.dm +++ b/code/game/turfs/simulated/walls_mineral.dm @@ -106,12 +106,12 @@ smoothing_groups = list(SMOOTH_GROUP_SIMULATED_TURFS, SMOOTH_GROUP_WALLS, SMOOTH_GROUP_PLASMA_WALLS) canSmoothWith = list(SMOOTH_GROUP_PLASMA_WALLS) -/turf/simulated/wall/mineral/plasma/attackby(obj/item/W as obj, mob/user as mob) - if(is_hot(W) > 300)//If the temperature of the object is over 300, then ignite - message_admins("Plasma wall ignited by [key_name_admin(user)] in ([x], [y], [z] - JMP)",0,1) +/turf/simulated/wall/mineral/plasma/attackby(obj/item/W, mob/user) + if(W.get_heat() > 300)//If the temperature of the object is over 300, then ignite + message_admins("Plasma wall ignited by [key_name_admin(user)] in ([x], [y], [z] - JMP)",0,1) log_game("Plasma wall ignited by [key_name(user)] in ([x], [y], [z])") investigate_log("was ignited by [key_name(user)]","atmos") - ignite(is_hot(W)) + ignite(W.get_heat()) return ..() diff --git a/code/modules/assembly/igniter.dm b/code/modules/assembly/igniter.dm index 509d30e35b67..dd9c6f9ec053 100644 --- a/code/modules/assembly/igniter.dm +++ b/code/modules/assembly/igniter.dm @@ -59,3 +59,6 @@ if(!istype(loc, /obj/item/assembly_holder)) activate() add_fingerprint(user) + +/obj/item/assembly/igniter/get_heat() + return 2000 diff --git a/code/modules/client/preference/loadout/loadout_accessories.dm b/code/modules/client/preference/loadout/loadout_accessories.dm index 3ea92a98d263..864887d2e95f 100644 --- a/code/modules/client/preference/loadout/loadout_accessories.dm +++ b/code/modules/client/preference/loadout/loadout_accessories.dm @@ -147,10 +147,18 @@ display_name = "Cowboy shirt, short sleeved navy" path = /obj/item/clothing/accessory/cowboyshirt/navy/short_sleeved +/datum/gear/accessory/locket/silver + display_name = "Silver locket" + path = /obj/item/clothing/accessory/necklace/locket/silver + /datum/gear/accessory/locket display_name = "Gold locket" path = /obj/item/clothing/accessory/necklace/locket +/datum/gear/accessory/necklace/long + display_name = "Large necklace" + path = /obj/item/clothing/accessory/necklace/long + /datum/gear/accessory/necklace display_name = "Simple necklace" path = /obj/item/clothing/accessory/necklace diff --git a/code/modules/client/preference/preferences.dm b/code/modules/client/preference/preferences.dm index a6b26cf340c0..75fe0d7eda4b 100644 --- a/code/modules/client/preference/preferences.dm +++ b/code/modules/client/preference/preferences.dm @@ -1,6 +1,5 @@ GLOBAL_LIST_INIT(special_role_times, list( //minimum age (in days) for accounts to play these roles ROLE_PAI = 0, - ROLE_POSIBRAIN = 0, ROLE_GUARDIAN = 0, ROLE_TRAITOR = 7, ROLE_CHANGELING = 14, @@ -16,8 +15,6 @@ GLOBAL_LIST_INIT(special_role_times, list( //minimum age (in days) for accounts ROLE_SENTIENT = 21, ROLE_ELITE = 21, // ROLE_GANG = 21, - ROLE_NINJA = 21, - ROLE_GSPIDER = 21, ROLE_ABDUCTOR = 30 )) diff --git a/code/modules/clothing/chameleon.dm b/code/modules/clothing/chameleon.dm index d6e375b43742..9b1028c82a62 100644 --- a/code/modules/clothing/chameleon.dm +++ b/code/modules/clothing/chameleon.dm @@ -379,9 +379,10 @@ /obj/item/clothing/gloves/chameleon desc = "These gloves will protect the wearer from electric shock." name = "insulated gloves" + siemens_coefficient = 0 + permeability_coefficient = 0.05 icon_state = "yellow" item_state = "ygloves" - resistance_flags = NONE armor = list(MELEE = 5, BULLET = 5, LASER = 5, ENERGY = 0, BOMB = 0, RAD = 0, FIRE = 50, ACID = 50) diff --git a/code/modules/clothing/glasses/hudglasses.dm b/code/modules/clothing/glasses/hudglasses.dm index 784eb833ba3c..a87eedd9ea8e 100644 --- a/code/modules/clothing/glasses/hudglasses.dm +++ b/code/modules/clothing/glasses/hudglasses.dm @@ -235,3 +235,32 @@ "Vox" = 'icons/mob/clothing/species/vox/eyes.dmi', "Kidan" = 'icons/mob/clothing/species/kidan/eyes.dmi' ) + +/obj/item/clothing/glasses/hud/janitor + name = "janitor HUD" + desc = "A heads-up display that scans for messes and alerts the user. Good for finding puddles hiding under catwalks." + icon_state = "janihud" + hud_types = DATA_HUD_JANITOR + + sprite_sheets = list( + "Vox" = 'icons/mob/clothing/species/vox/eyes.dmi', + "Drask" = 'icons/mob/clothing/species/drask/eyes.dmi', + "Grey" = 'icons/mob/clothing/species/grey/eyes.dmi', + "Kidan" = 'icons/mob/clothing/species/kidan/eyes.dmi' + ) + +/obj/item/clothing/glasses/hud/janitor/sunglasses + name = "janitor HUD sunglasses" + desc = "Sunglasses with a build-in filth scanner, scans for messes and alerts the user." + icon_state = "sunhudjani" + see_in_dark = 1 + flash_protect = FLASH_PROTECTION_FLASH + tint = FLASH_PROTECTION_FLASH + +/obj/item/clothing/glasses/hud/janitor/night + name = "night vision janitor HUD" + desc = "A janitorial filth scanner fitted with a light amplifier." + icon_state = "nvjanihud" + origin_tech = "magnets=4;biotech=4;plasmatech=4;engineering=5" + see_in_dark = 8 + lighting_alpha = LIGHTING_PLANE_ALPHA_MOSTLY_VISIBLE diff --git a/code/modules/clothing/under/accessories/accessory.dm b/code/modules/clothing/under/accessories/accessory.dm index a4f8afdcf061..cc8c0cc27012 100644 --- a/code/modules/clothing/under/accessories/accessory.dm +++ b/code/modules/clothing/under/accessories/accessory.dm @@ -580,6 +580,14 @@ item_color = "necklace" slot_flags = SLOT_FLAG_TIE +/obj/item/clothing/accessory/necklace/long + name = "large necklace" + desc = "A large necklace." + icon_state = "necklacelong" + item_state = "necklacelong" + item_color = "necklacelong" + + /obj/item/clothing/accessory/necklace/dope name = "gold necklace" desc = "Damn, it feels good to be a gangster." @@ -608,9 +616,9 @@ /obj/item/clothing/accessory/necklace/locket name = "gold locket" desc = "A gold locket that seems to have space for a photo within." - icon_state = "locket" - item_state = "locket" - item_color = "locket" + icon_state = "locketgold" + item_state = "locketgold" + item_color = "locketgold" slot_flags = SLOT_FLAG_TIE var/base_icon var/open @@ -656,6 +664,13 @@ else return ..() +/obj/item/clothing/accessory/necklace/locket/silver + name = "silver locket" + desc = "A silver locket that seems to have space for a photo within." + icon_state = "locketsilver" + item_state = "locketsilver" + item_color = "locketsilver" + //Cowboy Shirts /obj/item/clothing/accessory/cowboyshirt name = "black cowboy shirt" diff --git a/code/modules/crafting/recipes.dm b/code/modules/crafting/recipes.dm index e7f85338775e..d61c901d1e5f 100644 --- a/code/modules/crafting/recipes.dm +++ b/code/modules/crafting/recipes.dm @@ -77,6 +77,17 @@ category = CAT_WEAPONRY subcategory = CAT_WEAPON +/datum/crafting_recipe/improvised_pneumatic_cannon + name = "Pneumatic Cannon" + result = list(/obj/item/pneumatic_cannon/ghetto) + tools = list(TOOL_WELDER, TOOL_WRENCH) + reqs = list(/obj/item/stack/sheet/metal = 4, + /obj/item/stack/packageWrap = 8, + /obj/item/pipe = 2) + time = 300 + category = CAT_WEAPONRY + subcategory = CAT_WEAPON + /datum/crafting_recipe/throwing_croissant name = "Throwing croissant" reqs = list( diff --git a/code/modules/crafting/tailoring.dm b/code/modules/crafting/tailoring.dm index 5415b415c22d..5ce8299daee3 100644 --- a/code/modules/crafting/tailoring.dm +++ b/code/modules/crafting/tailoring.dm @@ -194,6 +194,24 @@ reqs = list(/obj/item/clothing/glasses/hud/diagnostic/sunglasses = 1) category = CAT_CLOTHING +/datum/crafting_recipe/hudsunjani + name = "Janitor HUD sunglasses" + result = list(/obj/item/clothing/glasses/hud/janitor/sunglasses) + time = 20 + tools = list(TOOL_SCREWDRIVER, TOOL_WIRECUTTER) + reqs = list(/obj/item/clothing/glasses/hud/janitor = 1, + /obj/item/clothing/glasses/sunglasses = 1, + /obj/item/stack/cable_coil = 5) + category = CAT_CLOTHING + +/datum/crafting_recipe/hudsunjaniremoval + name = "Janitor HUD sunglasses removal" + result = list(/obj/item/clothing/glasses/sunglasses, /obj/item/clothing/glasses/hud/janitor) + time = 20 + tools = list(TOOL_SCREWDRIVER, TOOL_WIRECUTTER) + reqs = list(/obj/item/clothing/glasses/hud/janitor/sunglasses = 1) + category = CAT_CLOTHING + /datum/crafting_recipe/beergoggles name = "Sunscanners" result = list(/obj/item/clothing/glasses/sunglasses/reagent) diff --git a/code/modules/food_and_drinks/drinks/drinks/bottle.dm b/code/modules/food_and_drinks/drinks/drinks/bottle.dm index b618c902a400..5307f00752dc 100644 --- a/code/modules/food_and_drinks/drinks/drinks/bottle.dm +++ b/code/modules/food_and_drinks/drinks/drinks/bottle.dm @@ -372,7 +372,7 @@ new /obj/effect/hotspot(get_turf(target)) /obj/item/reagent_containers/food/drinks/bottle/molotov/attackby(obj/item/I, mob/user, params) - if(is_hot(I) && !active) + if(I.get_heat() && !active) active = TRUE var/turf/bombturf = get_turf(src) var/area/bombarea = get_area(bombturf) diff --git a/code/modules/food_and_drinks/drinks/drinks/shotglass.dm b/code/modules/food_and_drinks/drinks/drinks/shotglass.dm index 680c32c7e012..c181349498b1 100644 --- a/code/modules/food_and_drinks/drinks/drinks/shotglass.dm +++ b/code/modules/food_and_drinks/drinks/drinks/shotglass.dm @@ -98,7 +98,7 @@ /obj/item/reagent_containers/food/drinks/drinkingglass/shotglass/attackby(obj/item/W) ..() - if(is_hot(W)) + if(W.get_heat()) fire_act() /obj/item/reagent_containers/food/drinks/drinkingglass/shotglass/attack_hand(mob/user, pickupfireoverride = TRUE) diff --git a/code/modules/hydroponics/grown/towercap.dm b/code/modules/hydroponics/grown/towercap.dm index 9303991005a4..43525465b328 100644 --- a/code/modules/hydroponics/grown/towercap.dm +++ b/code/modules/hydroponics/grown/towercap.dm @@ -137,7 +137,7 @@ to_chat(user, "You add a rod to [src].") var/image/U = image(icon='icons/obj/hydroponics/equipment.dmi',icon_state="bonfire_rod",pixel_y=16) underlays += U - if(is_hot(W)) + if(W.get_heat()) lighter = user.ckey user.create_log(MISC_LOG, "lit a bonfire", src) StartBurning() diff --git a/code/modules/input/keybindings_procs.dm b/code/modules/input/keybindings_procs.dm index 1d231127996e..8ae07693672c 100644 --- a/code/modules/input/keybindings_procs.dm +++ b/code/modules/input/keybindings_procs.dm @@ -12,5 +12,11 @@ movement_kb_dirs[key] = KBM.move_dir else active_keybindings[key] += list(KB) + if(!mob) // Clients can join before world/new is setup, so we gotta mob check em + return active_keybindings + for(var/datum/action/action as anything in mob.actions) + if(action.button?.linked_keybind?.binded_to) + var/datum/keybinding/mob/trigger_action_button/linked_bind = action.button.linked_keybind + active_keybindings[linked_bind.binded_to] += list(linked_bind) return active_keybindings diff --git a/code/modules/mob/living/brain/robotic_brain.dm b/code/modules/mob/living/brain/robotic_brain.dm index c53285084c42..507af8e32417 100644 --- a/code/modules/mob/living/brain/robotic_brain.dm +++ b/code/modules/mob/living/brain/robotic_brain.dm @@ -72,18 +72,6 @@ return TRUE return FALSE -/obj/item/mmi/robotic_brain/proc/question(client/C) - spawn(0) - if(!C) - return - var/response = alert(C, "Someone is requesting a personality for a [src]. Would you like to play as one?", "[src] request", "Yes", "No", "Never for this round") - if(!C || brainmob.key || !searching) - return //handle logouts that happen whilst the alert is waiting for a response, and responses issued after a brain has been located. - if(response == "Yes") - transfer_personality(C.mob) - else if(response == "Never for this round") - C.prefs.be_special -= ROLE_POSIBRAIN - // This should not ever happen, but let's be safe /obj/item/mmi/robotic_brain/dropbrain(turf/dropspot) CRASH("[src] at [loc] attempted to drop brain without a contained brain.") diff --git a/code/modules/mob/living/carbon/alien/alien_life.dm b/code/modules/mob/living/carbon/alien/alien_life.dm index 4c25a4eadc80..4c13daa7af00 100644 --- a/code/modules/mob/living/carbon/alien/alien_life.dm +++ b/code/modules/mob/living/carbon/alien/alien_life.dm @@ -26,9 +26,6 @@ breath.toxins -= toxins_used breath.oxygen += toxins_used - //BREATH TEMPERATURE - handle_breath_temperature(breath) - /mob/living/carbon/alien/handle_status_effects() ..() //natural reduction of movement delay due to stun. diff --git a/code/modules/mob/living/carbon/carbon_life.dm b/code/modules/mob/living/carbon/carbon_life.dm index 176ac3043106..0a59c7b113b9 100644 --- a/code/modules/mob/living/carbon/carbon_life.dm +++ b/code/modules/mob/living/carbon/carbon_life.dm @@ -100,7 +100,7 @@ if(ishuman(src) && !internal && environment.temperature < 273 && environment.return_pressure() > 20) //foggy breath :^) new /obj/effect/frosty_breath(loc, src) -//Third link in a breath chain, calls handle_breath_temperature() +//Third and last link in a breath chain /mob/living/carbon/proc/check_breath(datum/gas_mixture/breath) if(status_flags & GODMODE) return FALSE @@ -181,15 +181,8 @@ if(prob(20)) emote(pick("giggle","laugh")) - //BREATH TEMPERATURE - handle_breath_temperature(breath) - return TRUE -//Fourth and final link in a breath chain -/mob/living/carbon/proc/handle_breath_temperature(datum/gas_mixture/breath) - return - /mob/living/carbon/proc/get_breath_from_internal(volume_needed) if(internal) if(internal.loc != src) diff --git a/code/modules/mob/living/carbon/examine.dm b/code/modules/mob/living/carbon/examine.dm index 8c25fbbc94a4..12c3d77b9c77 100644 --- a/code/modules/mob/living/carbon/examine.dm +++ b/code/modules/mob/living/carbon/examine.dm @@ -119,7 +119,7 @@ msg += "[name]" // Show what you are - msg += examine_what_am_i() + msg += examine_what_am_i(skipgloves, skipsuitstorage, skipjumpsuit, skipshoes, skipmask, skipears, skipeyes, skipface) msg += "\n" // All the things wielded/worn that can be reasonably described with a common template: diff --git a/code/modules/mob/living/carbon/human/human_inventory.dm b/code/modules/mob/living/carbon/human/human_inventory.dm index 8e482ef37df9..d8bda565092f 100644 --- a/code/modules/mob/living/carbon/human/human_inventory.dm +++ b/code/modules/mob/living/carbon/human/human_inventory.dm @@ -168,9 +168,6 @@ update_inv_l_hand() update_action_buttons_icon() - - - //This is an UNSAFE proc. Use mob_can_equip() before calling this one! Or rather use equip_to_slot_if_possible() or advanced_equip_to_slot_if_possible() // Initial is used to indicate whether or not this is the initial equipment (job datums etc) or just a player doing it /mob/living/carbon/human/equip_to_slot(obj/item/I, slot, initial = FALSE) diff --git a/code/modules/mob/living/carbon/human/human_mob.dm b/code/modules/mob/living/carbon/human/human_mob.dm index 64f955746fb4..d5ba70c8bda6 100644 --- a/code/modules/mob/living/carbon/human/human_mob.dm +++ b/code/modules/mob/living/carbon/human/human_mob.dm @@ -302,127 +302,131 @@ var/list/obscured = check_obscured_slots() var/dat = {" - Left Hand:[(l_hand && !(l_hand.flags&ABSTRACT)) ? html_encode(l_hand) : "Empty"] - Right Hand:[(r_hand && !(r_hand.flags&ABSTRACT)) ? html_encode(r_hand) : "Empty"] + Left Hand:[(l_hand && !(l_hand.flags&ABSTRACT)) ? html_encode(l_hand) : "Empty"] + Right Hand:[(r_hand && !(r_hand.flags&ABSTRACT)) ? html_encode(r_hand) : "Empty"] "} - dat += "Back:[(back && !(back.flags&ABSTRACT)) ? html_encode(back) : "Empty"]" + dat += "Back:[(back && !(back.flags&ABSTRACT)) ? html_encode(back) : "Empty"]" if(has_breathable_mask && istype(back, /obj/item/tank)) - dat += " [internal ? "Disable Internals" : "Set Internals"]" + dat += " [internal ? "Disable Internals" : "Set Internals"]" dat += " " - dat += "Head:[(head && !(head.flags&ABSTRACT)) ? html_encode(head) : "Empty"]" + dat += "Head:[(head && !(head.flags&ABSTRACT)) ? html_encode(head) : "Empty"]" var/obj/item/organ/internal/headpocket/C = get_int_organ(/obj/item/organ/internal/headpocket) if(C) if(SLOT_HUD_WEAR_MASK in obscured) - dat += " ↳Headpocket:Obscured" + dat += " ↳Headpocket:Obscured" else if(C.held_item) - dat += " ↳Headpocket:Dislodge Items" + dat += " ↳Headpocket:Dislodge Items" else - dat += " ↳Headpocket:Empty" + dat += " ↳Headpocket:Empty" if(SLOT_HUD_WEAR_MASK in obscured) - dat += "Mask:Obscured" + dat += "Mask:Obscured" else - dat += "Mask:[(wear_mask && !(wear_mask.flags&ABSTRACT)) ? html_encode(wear_mask) : "Empty"]" + dat += "Mask:[(wear_mask && !(wear_mask.flags&ABSTRACT)) ? html_encode(wear_mask) : "Empty"]" if(istype(wear_mask, /obj/item/clothing/mask/muzzle)) var/obj/item/clothing/mask/muzzle/M = wear_mask if(M.security_lock) - dat += " [M.locked ? "Disable Lock" : "Set Lock"]" + dat += " [M.locked ? "Disable Lock" : "Set Lock"]" dat += " " if(!issmall(src)) if(SLOT_HUD_GLASSES in obscured) - dat += "Eyes:Obscured" + dat += "Eyes:Obscured" else - dat += "Eyes:[(glasses && !(glasses.flags&ABSTRACT)) ? html_encode(glasses) : "Empty"]" + dat += "Eyes:[(glasses && !(glasses.flags&ABSTRACT)) ? html_encode(glasses) : "Empty"]" if(SLOT_HUD_LEFT_EAR in obscured) - dat += "Left Ear:Obscured" + dat += "Left Ear:Obscured" else - dat += "Left Ear:[(l_ear && !(l_ear.flags&ABSTRACT)) ? html_encode(l_ear) : "Empty"]" + dat += "Left Ear:[(l_ear && !(l_ear.flags&ABSTRACT)) ? html_encode(l_ear) : "Empty"]" if(SLOT_HUD_RIGHT_EAR in obscured) - dat += "Right Ear:Obscured" + dat += "Right Ear:Obscured" else - dat += "Right Ear:[(r_ear && !(r_ear.flags&ABSTRACT)) ? html_encode(r_ear) : "Empty"]" + dat += "Right Ear:[(r_ear && !(r_ear.flags&ABSTRACT)) ? html_encode(r_ear) : "Empty"]" dat += " " - dat += "Exosuit:[(wear_suit && !(wear_suit.flags&ABSTRACT)) ? html_encode(wear_suit) : "Empty"]" + dat += "Exosuit:[(wear_suit && !(wear_suit.flags&ABSTRACT)) ? html_encode(wear_suit) : "Empty"]" if(wear_suit) - dat += " ↳Suit Storage:[(s_store && !(s_store.flags&ABSTRACT)) ? html_encode(s_store) : "Empty"]" + dat += " ↳Suit Storage:[(s_store && !(s_store.flags&ABSTRACT)) ? html_encode(s_store) : "Empty"]" if(has_breathable_mask && istype(s_store, /obj/item/tank)) - dat += " [internal ? "Disable Internals" : "Set Internals"]" + dat += " [internal ? "Disable Internals" : "Set Internals"]" dat += "" else - dat += " ↳Suit Storage:" + dat += " ↳Suit Storage:" if(SLOT_HUD_SHOES in obscured) - dat += "Shoes:Obscured" + dat += "Shoes:Obscured" else - dat += "Shoes:[(shoes && !(shoes.flags&ABSTRACT)) ? html_encode(shoes) : "Empty"]" + dat += "Shoes:[(shoes && !(shoes.flags&ABSTRACT)) ? html_encode(shoes) : "Empty"]" if(SLOT_HUD_GLOVES in obscured) - dat += "Gloves:Obscured" + dat += "Gloves:Obscured" else - dat += "Gloves:[(gloves && !(gloves.flags&ABSTRACT)) ? html_encode(gloves) : "Empty"]" + dat += "Gloves:[(gloves && !(gloves.flags&ABSTRACT)) ? html_encode(gloves) : "Empty"]" + + if(SLOT_HUD_BELT in obscured) + dat += "Belt:Obscured" + else + dat += "Belt:[(belt && !(belt.flags&ABSTRACT)) ? html_encode(belt) : "Empty"]" + + if(has_breathable_mask && istype(belt, /obj/item/tank)) + dat += " [internal ? "Disable Internals" : "Set Internals"]" + dat += "" if(SLOT_HUD_JUMPSUIT in obscured) - dat += "Uniform:Obscured" + dat += "Uniform:Obscured" else - dat += "Uniform:[(w_uniform && !(w_uniform.flags&ABSTRACT)) ? html_encode(w_uniform) : "Empty"]" + dat += "Uniform:[(w_uniform && !(w_uniform.flags&ABSTRACT)) ? html_encode(w_uniform) : "Empty"]" if((w_uniform == null && !(dna && dna.species.nojumpsuit)) || (SLOT_HUD_JUMPSUIT in obscured)) - dat += " ↳Pockets:" - dat += " ↳ID:" - dat += " ↳Belt:" - dat += " ↳Suit Sensors:" - dat += " ↳PDA:" + dat += " ↳Pockets:" + dat += " ↳ID:" + dat += " ↳Suit Sensors:" + dat += " ↳PDA:" else - dat += " ↳Belt:[(belt && !(belt.flags&ABSTRACT)) ? html_encode(belt) : "Empty"]" - if(has_breathable_mask && istype(belt, /obj/item/tank)) - dat += " [internal ? "Disable Internals" : "Set Internals"]" - dat += "" // Pockets - dat += " ↳Pockets:" + dat += " ↳Pockets:" if(l_store && internal && l_store == internal) dat += "[l_store]" else if(l_store && !(l_store.flags&ABSTRACT)) dat += "Left (Full)" else dat += "Left (Empty)" - dat += " " + dat += " " if(r_store && internal && r_store == internal) dat += "[r_store]" else if(r_store && !(r_store.flags&ABSTRACT)) dat += "Right (Full)" else dat += "Right (Empty)" - dat += "" - dat += " ↳ID:[(wear_id && !(wear_id.flags&ABSTRACT)) ? html_encode(wear_id) : "Empty"]" - dat += " ↳PDA:[(wear_pda && !(wear_pda.flags&ABSTRACT)) ? "Full" : "Empty"]" + dat += "" + dat += " ↳ID:[(wear_id && !(wear_id.flags&ABSTRACT)) ? html_encode(wear_id) : "Empty"]" + dat += " ↳PDA:[(wear_pda && !(wear_pda.flags&ABSTRACT)) ? "Full" : "Empty"]" if(istype(w_uniform, /obj/item/clothing/under)) var/obj/item/clothing/under/U = w_uniform - dat += " ↳Suit Sensors:[U.has_sensor >= 2 ? "--SENSORS LOCKED--" : "Set Sensors"]" + dat += " ↳Suit Sensors:[U.has_sensor >= 2 ? "--SENSORS LOCKED--" : "Set Sensors"]" if(U.accessories.len) - dat += " ↳Remove Accessory" + dat += " ↳Remove Accessory" if(handcuffed) - dat += "Handcuffed: Remove" + dat += "Handcuffed: Remove" if(legcuffed) dat += "Legcuffed: Remove" dat += {" - Close + Close "} var/datum/browser/popup = new(user, "mob\ref[src]", "[src]", 440, 540) diff --git a/code/modules/mob/living/carbon/human/species/_species.dm b/code/modules/mob/living/carbon/human/species/_species.dm index 1ce648e41bf2..33f874ff10b7 100644 --- a/code/modules/mob/living/carbon/human/species/_species.dm +++ b/code/modules/mob/living/carbon/human/species/_species.dm @@ -642,7 +642,7 @@ target.Stun(0.5 SECONDS) else var/obj/item/active_hand = target.get_active_hand() - if(target.IsSlowed() && active_hand && !IS_HORIZONTAL(user) && !HAS_TRAIT(active_hand, TRAIT_WIELDED)) + if(target.IsSlowed() && active_hand && !IS_HORIZONTAL(user) && !HAS_TRAIT(active_hand, TRAIT_WIELDED) && !istype(active_hand, /obj/item/grab)) target.drop_item() add_attack_logs(user, target, "Disarmed object out of hand", ATKLOG_ALL) else diff --git a/code/modules/mob/living/carbon/human/species/golem.dm b/code/modules/mob/living/carbon/human/species/golem.dm index 55d7083777a9..84a9006f9e06 100644 --- a/code/modules/mob/living/carbon/human/species/golem.dm +++ b/code/modules/mob/living/carbon/human/species/golem.dm @@ -761,6 +761,6 @@ if(resistance_flags & ON_FIRE) return - if(is_hot(P)) + if(P.get_heat()) visible_message("[src] bursts into flames!") fire_act() diff --git a/code/modules/mob/living/carbon/human/species/unathi.dm b/code/modules/mob/living/carbon/human/species/unathi.dm index 6c0f30035842..4be61f83bece 100644 --- a/code/modules/mob/living/carbon/human/species/unathi.dm +++ b/code/modules/mob/living/carbon/human/species/unathi.dm @@ -131,23 +131,19 @@ fire.Remove(H) var/datum/action/innate/ignite/ash_walker/fire = new() fire.Grant(H) - RegisterSignal(H, COMSIG_MOVABLE_Z_CHANGED, PROC_REF(speedylegs)) - speedylegs(H) /datum/species/unathi/ashwalker/on_species_loss(mob/living/carbon/human/H) ..() for(var/datum/action/innate/ignite/ash_walker/fire in H.actions) fire.Remove(H) - UnregisterSignal(H, COMSIG_MOVABLE_Z_CHANGED) - speedylegs(H) + +/datum/species/unathi/ashwalker/movement_delay(mob/living/carbon/human/H) + . = ..() + var/turf/our_turf = get_turf(H) + if(!is_mining_level(our_turf.z)) + . -= speed_mod /datum/action/innate/ignite/ash_walker desc = "You form a fire in your mouth, fierce enough to... light a cigarette." cooldown_duration = 3 MINUTES welding_fuel_used = 0 // Ash walkers dont need welding fuel to use ignite - -/datum/species/unathi/ashwalker/proc/speedylegs(mob/living/carbon/human/H) - if(is_mining_level(H.z)) - speed_mod = initial(speed_mod) - else - speed_mod = 0 diff --git a/code/modules/mob/living/living.dm b/code/modules/mob/living/living.dm index 3543ba03393d..20f7d90f3d8b 100644 --- a/code/modules/mob/living/living.dm +++ b/code/modules/mob/living/living.dm @@ -577,7 +577,6 @@ if(.) step_count++ pull_pulled(old_loc, pullee, movetime) - pull_grabbed(old_loc, direct, movetime) if(pulledby && moving_diagonally != FIRST_DIAG_STEP && get_dist(src, pulledby) > 1) //seperated from our puller and not in the middle of a diagonal move pulledby.stop_pulling() @@ -601,61 +600,6 @@ if(pulling && get_dist(src, pulling) > 1) // the pullee couldn't keep up stop_pulling() -/mob/living/proc/pull_grabbed(turf/old_turf, direct, movetime) - if(!Adjacent(old_turf)) - return - // We might not actually be grab pulled, but we are pretending that we are, so as to - // hackily work around issues arising from mutual grabs. - var/old_being_pulled = currently_grab_pulled - currently_grab_pulled = TRUE - // yes, this is four distinct `for` loops. No, they can't be merged. - var/list/grabbing = list() - for(var/mob/M in ret_grab()) - if(src == M) - continue - if(M.currently_grab_pulled) - // Being already pulled by something else up the call stack. - continue - grabbing |= M - for(var/mob/M in grabbing) - M.currently_grab_pulled = TRUE - M.animate_movement = SYNC_STEPS - for(var/i in 1 to length(grabbing)) - var/mob/M = grabbing[i] - if(QDELETED(M)) // old code warned me that M could go missing during a move, so I'm cargo-culting it here - continue - // compile a list of turfs we can maybe move them towards - // importantly, this should happen before actually trying to move them to either of those - // otherwise they can be moved twice (since `Move` returns TRUE only if it managed to - // *fully* move where you wanted it to; it can still move partially and return FALSE) - var/possible_dest = list() - for(var/turf/dest in orange(src, 1)) - if(dest.Adjacent(M)) - possible_dest |= dest - if(i == 1) // at least one of them should try to trail behind us, for aesthetics purposes - if(M.Move(old_turf, get_dir(M, old_turf), movetime)) - continue - // By this time the `old_turf` is definitely occupied by something immovable. - // So try to move them into some other adjacent turf, in a believable way - if(Adjacent(M)) - continue // they are already adjacent - for(var/turf/dest in possible_dest) - if(M.Move(dest, get_dir(M, dest), movetime)) - break - for(var/mob/M in grabbing) - M.currently_grab_pulled = null - M.animate_movement = SLIDE_STEPS - - for(var/obj/item/grab/G in src) - if(G.state == GRAB_NECK) - setDir(angle2dir((dir2angle(direct) + 202.5) % 365)) - G.adjust_position() - for(var/obj/item/grab/G in grabbed_by) - G.adjust_position() - - currently_grab_pulled = old_being_pulled - - /mob/living/proc/makeTrail(turf/turf_to_trail_on) if(!has_gravity(src)) return @@ -778,6 +722,8 @@ *///////////////////// /mob/living/proc/resist_grab() var/resisting = 0 + if(HAS_TRAIT(src, TRAIT_IMMOBILIZED)) + return TRUE //You can't move, so you can't resist for(var/X in grabbed_by) var/obj/item/grab/G = X resisting++ @@ -1034,7 +980,7 @@ if(S) . += S.slowdown_value if(forced_look) - . += 3 + . += DIRECTION_LOCK_SLOWDOWN if(ignorewalk) . += GLOB.configuration.movement.base_run_speed else @@ -1167,3 +1113,40 @@ C.take_organ_damage(damage) C.KnockDown(3 SECONDS) C.visible_message("[C] crashes into [src], knocking them both over!", "You violently crash into [src]!") + +/** + * Sets the mob's direction lock towards a given atom. + * + * Arguments: + * * a - The atom to face towards. + * * track - If TRUE, updates our direction relative to the atom when moving. + */ +/mob/living/proc/set_forced_look(atom/A, track = FALSE) + forced_look = track ? A.UID() : get_cardinal_dir(src, A) + to_chat(src, "You are now facing [track ? A : dir2text(forced_look)]. To cancel this, shift-middleclick yourself.") + throw_alert("direction_lock", /obj/screen/alert/direction_lock) + +/** + * Clears the mob's direction lock if enabled. + * + * Arguments: + * * quiet - Whether to display a chat message. + */ +/mob/living/proc/clear_forced_look(quiet = FALSE) + if(!forced_look) + return + forced_look = null + if(!quiet) + to_chat(src, "Cancelled direction lock.") + clear_alert("direction_lock") + +/mob/living/setDir(new_dir) + if(forced_look) + if(isnum(forced_look)) + dir = forced_look + else + var/atom/A = locateUID(forced_look) + if(istype(A)) + dir = get_cardinal_dir(src, A) + return + return ..() diff --git a/code/modules/mob/living/living_defines.dm b/code/modules/mob/living/living_defines.dm index f1a8e960a155..4abf312b4f13 100644 --- a/code/modules/mob/living/living_defines.dm +++ b/code/modules/mob/living/living_defines.dm @@ -88,6 +88,9 @@ /// the type of holder that will be created when a mob gets scooped up var/holder_type + /// This can either be a numerical direction or a soft object reference (UID). It makes the mob always face towards the selected thing. + var/forced_look = null + var/datum/language/default_language var/datum/middleClickOverride/middleClickOverride = null diff --git a/code/modules/mob/living/living_life.dm b/code/modules/mob/living/living_life.dm index 197a7f084ced..39f9fd35f7eb 100644 --- a/code/modules/mob/living/living_life.dm +++ b/code/modules/mob/living/living_life.dm @@ -75,15 +75,18 @@ handle_status_effects() //all special effects, stunned, weakened, jitteryness, hallucination, sleeping, etc if(stat != DEAD) + if(forced_look && !isnum(forced_look)) + var/atom/A = locateUID(forced_look) + if(istype(A)) + var/view = client ? client.maxview() : world.view + if(get_dist(src, A) > view || !(src in viewers(view, A))) + clear_forced_look(TRUE) + to_chat(src, "Your direction target has left your view, you are no longer facing anything.") + else + clear_forced_look(TRUE) + to_chat(src, "Your direction target has left your view, you are no longer facing anything.") + // Make sure it didn't get cleared if(forced_look) - if(!isnum(forced_look)) - var/atom/A = locateUID(forced_look) - if(istype(A)) - var/view = client ? client.maxview() : world.view - if(get_dist(src, A) > view || !(src in viewers(view, A))) - forced_look = null - to_chat(src, "Your direction target has left your view, you are no longer facing anything.") - return setDir() if(machine) diff --git a/code/modules/mob/living/silicon/silicon_mob.dm b/code/modules/mob/living/silicon/silicon_mob.dm index 5a2fb8cec2e3..ec7779f2ae76 100644 --- a/code/modules/mob/living/silicon/silicon_mob.dm +++ b/code/modules/mob/living/silicon/silicon_mob.dm @@ -40,6 +40,7 @@ var/med_hud = DATA_HUD_MEDICAL_ADVANCED //Determines the med hud to use var/sec_hud = DATA_HUD_SECURITY_ADVANCED //Determines the sec hud to use var/d_hud = DATA_HUD_DIAGNOSTIC_BASIC //There is only one kind of diag hud + var/jani_hud = DATA_HUD_JANITOR /mob/living/silicon/New() GLOB.silicon_mob_list |= src @@ -350,9 +351,11 @@ var/datum/atom_hud/secsensor = GLOB.huds[sec_hud] var/datum/atom_hud/medsensor = GLOB.huds[med_hud] var/datum/atom_hud/diagsensor = GLOB.huds[d_hud] + var/datum/atom_hud/janisensor = GLOB.huds[jani_hud] secsensor.remove_hud_from(src) medsensor.remove_hud_from(src) diagsensor.remove_hud_from(src) + janisensor.remove_hud_from(src) /mob/living/silicon/proc/add_sec_hud() @@ -367,6 +370,9 @@ var/datum/atom_hud/diagsensor = GLOB.huds[d_hud] diagsensor.add_hud_to(src) +/mob/living/silicon/proc/add_jani_hud() + var/datum/atom_hud/janisensor = GLOB.huds[jani_hud] + janisensor.add_hud_to(src) /mob/living/silicon/proc/toggle_sensor_mode() to_chat(src, "Пожалуйста, выберите тип сенсоров.") @@ -381,6 +387,7 @@ else user_loc = src var/sensor_type = show_radial_menu(src, user_loc, sensor_choices) + if(!sensor_type) return remove_med_sec_hud() diff --git a/code/modules/mob/living/simple_animal/simple_animal.dm b/code/modules/mob/living/simple_animal/simple_animal.dm index ae452633beeb..fd4525657ecc 100644 --- a/code/modules/mob/living/simple_animal/simple_animal.dm +++ b/code/modules/mob/living/simple_animal/simple_animal.dm @@ -364,7 +364,7 @@ /mob/living/simple_animal/movement_delay() . = speed if(forced_look) - . += 3 + . += DIRECTION_LOCK_SLOWDOWN . += GLOB.configuration.movement.animal_delay /mob/living/simple_animal/Stat() diff --git a/code/modules/mob/mob.dm b/code/modules/mob/mob.dm index e830ca4b0127..02df4a3a5714 100644 --- a/code/modules/mob/mob.dm +++ b/code/modules/mob/mob.dm @@ -601,17 +601,6 @@ GLOBAL_LIST_INIT(slot_equipment_priority, list( \ client.screen = list() hud_used.show_hud(hud_used.hud_version) -/mob/setDir(new_dir) - if(forced_look) - if(isnum(forced_look)) - dir = forced_look - else - var/atom/A = locateUID(forced_look) - if(istype(A)) - dir = get_cardinal_dir(src, A) - return - . = ..() - /mob/proc/show_inv(mob/user) user.set_machine(src) var/dat = {" diff --git a/code/modules/mob/mob_grab.dm b/code/modules/mob/mob_grab.dm index 8848d66c45ca..5baa6c1f92af 100644 --- a/code/modules/mob/mob_grab.dm +++ b/code/modules/mob/mob_grab.dm @@ -45,6 +45,8 @@ return affecting.grabbed_by += src + RegisterSignal(affecting, COMSIG_MOVABLE_MOVED, PROC_REF(grab_moved)) + RegisterSignal(assailant, COMSIG_MOVABLE_MOVED, PROC_REF(pull_grabbed)) hud = new /obj/screen/grab(src) hud.icon_state = "reinforce" @@ -62,6 +64,92 @@ clean_grabbed_by(assailant, affecting) adjust_position() +/obj/item/grab/Destroy() + if(affecting) + UnregisterSignal(affecting, COMSIG_MOVABLE_MOVED) + if(!affecting.buckled) + affecting.pixel_x = 0 + affecting.pixel_y = 0 //used to be an animate, not quick enough for qdel'ing + affecting.layer = initial(affecting.layer) + affecting.grabbed_by -= src + affecting = null + if(assailant) + UnregisterSignal(assailant, COMSIG_MOVABLE_MOVED) + if(assailant.client) + assailant.client.screen -= hud + assailant = null + QDEL_NULL(hud) + return ..() + +/obj/item/grab/proc/pull_grabbed(mob/user, turf/old_turf, direct, forced) + SIGNAL_HANDLER + if(assailant.moving_diagonally == FIRST_DIAG_STEP) //we dont want to do anything in the middle of diagonal step + return + if(!assailant.Adjacent(old_turf)) + qdel(src) + return + var/list/grab_states_not_moving = list(GRAB_KILL, GRAB_NECK) //states of grab when we dont need affecting to be moved by himself + var/assailant_glide_speed = TICKS2DS(world.icon_size / assailant.glide_size) + if(state in grab_states_not_moving) + affecting.glide_for(assailant_glide_speed) + else if(get_turf(affecting) != old_turf) + var/possible_dest = list() + var/list/mobs_do_not_move = list() // those are mobs we shouldnt move while we're going to new position + var/list/dest_1_sort = list() // just better dest to be picked first + var/list/dest_2_sort = list() + if(old_turf.Adjacent(affecting)) + possible_dest |= old_turf + for(var/turf/dest in orange(1, assailant)) + if(assailant.loc == dest) // orange(1) is broken and returning central turf + continue + if(!dest.Adjacent(affecting)) + continue + if(dest.Adjacent(old_turf)) + dest_1_sort |= dest + continue + dest_2_sort |= dest + possible_dest |= dest_1_sort + possible_dest |= dest_2_sort + if(istype(assailant.l_hand, /obj/item/grab)) + var/obj/item/grab/grab = assailant.l_hand + mobs_do_not_move |= grab.affecting + if(istype(assailant.r_hand, /obj/item/grab)) + var/obj/item/grab/grab = assailant.r_hand + mobs_do_not_move |= grab.affecting + mobs_do_not_move |= assailant + mobs_do_not_move -= affecting + if(assailant.pulling) + possible_dest -= old_turf // pull code just WANTS THAT old_loc and wont allow anyone else in it + mobs_do_not_move |= assailant.pulling + for(var/mob/mob as anything in mobs_do_not_move) + possible_dest -= get_turf(mob) + affecting.grab_do_not_move = mobs_do_not_move + var/success_move = FALSE + for(var/turf/dest as anything in possible_dest) + if(QDELETED(src)) + return + if(get_turf(affecting) == dest) + success_move = TRUE + continue + if(affecting.Move(dest, get_dir(affecting, dest), assailant_glide_speed)) + success_move = TRUE + break + continue + affecting.grab_do_not_move = initial(affecting.grab_do_not_move) + if(!success_move) + qdel(src) + return + if(state == GRAB_NECK) + assailant.setDir(turn(direct, 180)) + adjust_position() + +/obj/item/grab/proc/grab_moved() + SIGNAL_HANDLER + if(affecting.moving_diagonally == FIRST_DIAG_STEP) //we dont want to do anything in the middle of diagonal step + return + if(!assailant.Adjacent(affecting)) + qdel(src) + /obj/item/grab/proc/clean_grabbed_by(mob/user, mob/victim) //Cleans up any nulls in the grabbed_by list. if(istype(user)) @@ -169,11 +257,6 @@ return if(!assailant.Adjacent(affecting)) // To prevent teleportation via grab return - if(IS_HORIZONTAL(affecting) && state != GRAB_KILL) - animate(affecting, pixel_x = 0, pixel_y = 0, 5, 1, LINEAR_EASING) - return //KJK - /* if(force_down) //THIS GOES ABOVE THE RETURN LABELED KJK - affecting.setDir(SOUTH)*///This shows how you can apply special directions based on a variable. //face up var/shift = 0 var/adir = get_dir(assailant, affecting) @@ -417,22 +500,6 @@ return EAT_TIME_FAT //if it doesn't fit into the above, it's probably a fat guy, take EAT_TIME_FAT to do it -/obj/item/grab/Destroy() - if(affecting) - if(!affecting.buckled) - affecting.pixel_x = 0 - affecting.pixel_y = 0 //used to be an animate, not quick enough for qdel'ing - affecting.layer = initial(affecting.layer) - affecting.grabbed_by -= src - affecting = null - if(assailant) - if(assailant.client) - assailant.client.screen -= hud - assailant = null - QDEL_NULL(hud) - return ..() - - #undef EAT_TIME_XENO #undef EAT_TIME_FAT diff --git a/code/modules/mob/mob_movement.dm b/code/modules/mob/mob_movement.dm index 84f98dc5701d..5d77f2031a6d 100644 --- a/code/modules/mob/mob_movement.dm +++ b/code/modules/mob/mob_movement.dm @@ -16,8 +16,8 @@ return TRUE if(ismob(mover)) var/mob/moving_mob = mover - if((currently_grab_pulled && moving_mob.currently_grab_pulled)) - return FALSE + if(src in moving_mob.grab_do_not_move) + return TRUE if(mover in buckled_mobs) return TRUE return (!mover.density || !density || horizontal) @@ -180,8 +180,6 @@ if(prev_pulling_loc && mob.pulling?.face_while_pulling && (mob.pulling.loc != prev_pulling_loc)) mob.setDir(get_dir(mob, mob.pulling)) // Face welding tanks and stuff when pulling - else - mob.setDir(direct) moving = 0 if(mob && .) @@ -206,6 +204,8 @@ if(mob.grabbed_by.len) if(mob.incapacitated(FALSE, TRUE)) // Can't break out of grabs if you're incapacitated return TRUE + if(HAS_TRAIT(mob, TRAIT_IMMOBILIZED)) + return TRUE //You can't move, so you can't break it by trying to move. var/list/grabbing = list() if(istype(mob.l_hand, /obj/item/grab)) diff --git a/code/modules/mob/mob_vars.dm b/code/modules/mob/mob_vars.dm index 9ade73cb2853..f20d80240b2f 100644 --- a/code/modules/mob/mob_vars.dm +++ b/code/modules/mob/mob_vars.dm @@ -40,7 +40,7 @@ var/last_log = 0 var/obj/machinery/machine = null - var/currently_grab_pulled = null /// only set while the move is ongoing, to prevent shuffling between pullees + var/list/grab_do_not_move = list() /// other mobs we wont move when we're grab pulled. Not empty only when being grab pulled var/memory = "" var/notransform = FALSE //Carbon /// True for left hand active, otherwise for right hand active @@ -201,7 +201,6 @@ var/list/tkgrabbed_objects = list() // Assoc list of items to TK grabs - var/forced_look = null // This can either be a numerical direction or a soft object reference (UID). It makes the mob always face towards the selected thing. var/registered_z var/obj/effect/proc_holder/ranged_ability //Any ranged ability the mob has, as a click override diff --git a/code/modules/paperwork/paper.dm b/code/modules/paperwork/paper.dm index 0b705c4d1081..44b99c137209 100644 --- a/code/modules/paperwork/paper.dm +++ b/code/modules/paperwork/paper.dm @@ -460,7 +460,7 @@ to_chat(user, "You stamp the paper with your rubber stamp.") playsound(user, 'sound/items/handling/standard_stamp.ogg', 50, vary = TRUE) - if(is_hot(P)) + if(P.get_heat()) if(HAS_TRAIT(user, TRAIT_CLUMSY) && prob(10)) user.visible_message("[user] accidentally ignites [user.p_themselves()]!", \ "You miss the paper and accidentally light yourself on fire!") diff --git a/code/modules/paperwork/paper_bundle.dm b/code/modules/paperwork/paper_bundle.dm index 414354114ae9..1977326bcee4 100644 --- a/code/modules/paperwork/paper_bundle.dm +++ b/code/modules/paperwork/paper_bundle.dm @@ -53,7 +53,7 @@ to_chat(user, "You add [(W.name == "photo") ? "the photo" : W.name] to [(src.name == "paper bundle") ? "the paper bundle" : src.name].") user.unEquip(W) W.loc = src - else if(is_hot(W)) + else if(W.get_heat()) burnpaper(W, user) else if(istype(W, /obj/item/paper_bundle)) user.unEquip(W) @@ -85,7 +85,7 @@ user.visible_message("[user] holds [heating_object] up to [src], it looks like [user.p_theyre()] trying to burn it!", "You hold [heating_object] up to [src], burning it slowly.") - if(!do_after(user, 2 SECONDS, target = src) || !is_hot(heating_object)) + if(!do_after(user, 2 SECONDS, target = src) || !heating_object.get_heat()) return user.visible_message("[user] burns right through [src], turning it to ash. It flutters through the air before settling on the floor in a heap.", \ "You burn right through [src], turning it to ash. It flutters through the air before settling on the floor in a heap.") diff --git a/code/modules/paperwork/paperplane.dm b/code/modules/paperwork/paperplane.dm index 16999baf0edd..e894c699d41f 100644 --- a/code/modules/paperwork/paperplane.dm +++ b/code/modules/paperwork/paperplane.dm @@ -70,7 +70,7 @@ internal_paper.attackby(P, user) //spoofed attack to update internal paper. update_icon() - else if(is_hot(P)) + else if(P.get_heat()) if(HAS_TRAIT(user, TRAIT_CLUMSY) && prob(10)) user.visible_message("[user] accidentally ignites [user.p_themselves()]!", \ "You miss [src] and accidentally light yourself on fire!") diff --git a/code/modules/paperwork/ticketmachine.dm b/code/modules/paperwork/ticketmachine.dm index 75e999732af8..5b231a817017 100644 --- a/code/modules/paperwork/ticketmachine.dm +++ b/code/modules/paperwork/ticketmachine.dm @@ -214,7 +214,7 @@ /obj/item/ticket_machine_ticket/attackby(obj/item/P, mob/living/carbon/human/user, params) //Stolen from papercode ..() - if(is_hot(P)) + if(P.get_heat()) if(HAS_TRAIT(user, TRAIT_CLUMSY) && prob(10)) user.visible_message("[user] accidentally ignites [user.p_themselves()]!", \ "You miss the paper and accidentally light yourself on fire!") diff --git a/code/modules/projectiles/guns/energy/special_eguns.dm b/code/modules/projectiles/guns/energy/special_eguns.dm index cced4f362f0d..51fbb3202639 100644 --- a/code/modules/projectiles/guns/energy/special_eguns.dm +++ b/code/modules/projectiles/guns/energy/special_eguns.dm @@ -190,6 +190,9 @@ /obj/item/gun/energy/plasmacutter/update_overlays() return list() +/obj/item/gun/energy/plasmacutter/get_heat() + return 3800 + /obj/item/gun/energy/plasmacutter/adv name = "advanced plasma cutter" icon_state = "adv_plasmacutter" diff --git a/code/modules/projectiles/guns/medbeam.dm b/code/modules/projectiles/guns/medbeam.dm index a61932cafdf0..815ad91cb347 100644 --- a/code/modules/projectiles/guns/medbeam.dm +++ b/code/modules/projectiles/guns/medbeam.dm @@ -105,9 +105,6 @@ qdel(dummy) return TRUE -/obj/item/gun/medbeam/proc/on_beam_hit(mob/living/target) - return - /obj/item/gun/medbeam/proc/on_beam_tick(mob/living/target) if(ishuman(target)) var/mob/living/carbon/human/H = target diff --git a/code/modules/reagents/chemistry/machinery/chem_master.dm b/code/modules/reagents/chemistry/machinery/chem_master.dm index a839563d6ac1..c7b860841ee7 100644 --- a/code/modules/reagents/chemistry/machinery/chem_master.dm +++ b/code/modules/reagents/chemistry/machinery/chem_master.dm @@ -1,9 +1,18 @@ #define MAX_PILL_SPRITE 20 //max icon state of the pill sprites -#define MAX_MULTI_AMOUNT 20 // Max number of pills/patches that can be made at once #define MAX_UNITS_PER_PILL 100 // Max amount of units in a pill #define MAX_UNITS_PER_PATCH 30 // Max amount of units in a patch +#define MAX_UNITS_PER_BOTTLE 50 // Max amount of units in a bottle #define MAX_CUSTOM_NAME_LEN 64 // Max length of a custom pill/condiment/whatever +#define CHEMMASTER_PRODUCTION_MODE_PILLS 1 +#define CHEMMASTER_PRODUCTION_MODE_PATCHES 2 +#define CHEMMASTER_PRODUCTION_MODE_BOTTLES 3 +#define CHEMMASTER_MIN_PRODUCTION_MODE 1 +#define CHEMMASTER_MAX_PRODUCTION_MODE 3 +#define CHEMMASTER_MAX_PILLS 20 +#define CHEMMASTER_MAX_PATCHES 20 +#define CHEMMASTER_MAX_BOTTLES 5 + #define TRANSFER_TO_DISPOSAL 0 #define TRANSFER_TO_BEAKER 1 @@ -23,11 +32,27 @@ var/useramount = 30 // Last used amount var/pillamount = 10 var/patchamount = 10 + var/bottleamount = 1 + var/pillname = "" + var/patchname = "" + var/bottlename = "" var/bottlesprite = 1 + var/production_mode = CHEMMASTER_PRODUCTION_MODE_PILLS var/pillsprite = 1 var/printing = FALSE - var/static/list/pill_bottle_wrappers - var/static/list/bottle_styles + var/static/list/pill_bottle_wrappers = list( + COLOR_RED = "Red", + COLOR_GREEN = "Green", + COLOR_PALE_BTL_GREEN = "Pale Green", + COLOR_BLUE = "Blue", + COLOR_CYAN_BLUE = "Light Blue", + COLOR_TEAL = "Teal", + COLOR_YELLOW = "Yellow", + COLOR_ORANGE = "Orange", + COLOR_PINK = "Pink", + COLOR_MAROON = "Brown" + ) + var/static/list/bottle_styles = list("bottle", "small_bottle", "wide_bottle", "round_bottle", "reagent_bottle") var/list/safe_chem_list = list("antihol", "charcoal", "epinephrine", "insulin", "teporone", "silver_sulfadiazine", "salbutamol", "omnizine", "stimulants", "synaptizine", "potass_iodide", "oculine", "mannitol", "styptic_powder", "spaceacillin", "salglu_solution", "sal_acid", "cryoxadone", "blood", "synthflesh", "hydrocodone", @@ -198,6 +223,74 @@ P.name = "Chemical Analysis - [R.name]" spawn(50) printing = FALSE + if("set_production_mode") + var/new_mode = text2num(params["mode"]) + if(isnull(new_mode)) + return + production_mode = clamp(new_mode, CHEMMASTER_MIN_PRODUCTION_MODE, CHEMMASTER_MAX_PRODUCTION_MODE) + + // Pills + if("set_pills_style") + var/new_style = text2num(params["style"]) + if(isnull(new_style)) + return + pillsprite = clamp(new_style, 1, MAX_PILL_SPRITE) + if("set_pills_amount") + var/new_amount = text2num(params["amount"]) + if(isnull(new_amount)) + return + pillamount = clamp(new_amount, 1, CHEMMASTER_MAX_PILLS) + if("set_pills_name") + var/new_name = sanitize(params["name"]) + // Allow name to be set to empty + if(length(new_name) < 0 || length(new_name) > MAX_CUSTOM_NAME_LEN) + return + pillname = new_name + + // Patches + if("set_patches_amount") + var/new_amount = text2num(params["amount"]) + if(isnull(new_amount)) + return + patchamount = clamp(new_amount, 1, CHEMMASTER_MAX_PATCHES) + if("set_patches_name") + var/new_name = sanitize(params["name"]) + // Allow name to be set to empty + if(length(new_name) < 0 || length(new_name) > MAX_CUSTOM_NAME_LEN) + return + patchname = new_name + + // Bottles + if("set_bottles_style") + var/new_style = text2num(params["style"]) + if(isnull(new_style)) + return + bottlesprite = clamp(new_style, 1, length(bottle_styles)) + if("set_bottles_amount") + var/new_amount = text2num(params["amount"]) + if(isnull(new_amount)) + return + bottleamount = clamp(new_amount, 1, CHEMMASTER_MAX_BOTTLES) + if("set_bottles_name") + var/new_name = sanitize(params["name"]) + // Allow name to be set to empty + if(length(new_name) < 0 || length(new_name) > MAX_CUSTOM_NAME_LEN) + return + bottlename = new_name + + // Container Customization + if("clear_container_style") + if(!loaded_pill_bottle) + return + loaded_pill_bottle.wrapper_color = null + loaded_pill_bottle.cut_overlays() + if("set_container_style") + if(!loaded_pill_bottle) // wat? + return + var/new_color = params["style"] + if(pill_bottle_wrappers[new_color]) + loaded_pill_bottle.wrapper_color = new_color + loaded_pill_bottle.apply_wrap() else . = FALSE @@ -236,6 +329,76 @@ return var/obj/item/reagent_containers/food/condiment/P = new(loc) reagents.trans_to(P, 50) + if("create_pills") + var/medicine_name = pillname + var/count = pillamount + var/amount_per_pill = clamp(reagents.total_volume / count, 0, MAX_UNITS_PER_PILL) + if(length(pillname) <= 0 || isnull(pillname)) + medicine_name = "[reagents.get_master_reagent_name()] ([amount_per_pill]u)" + + if(condi || !reagents.total_volume) + return + + for(var/i in 1 to count) + if(reagents.total_volume <= 0) + to_chat(ui.user, "Not enough reagents to create these pills!") + return + + var/obj/item/reagent_containers/pill/P = new(loc) + P.name = "[medicine_name] pill" + P.pixel_x = rand(-7, 7) // Random position + P.pixel_y = rand(-7, 7) + P.icon_state = "pill[pillsprite]" + reagents.trans_to(P, amount_per_pill) + // Load the pills in the bottle if there's one loaded + if(istype(loaded_pill_bottle) && loaded_pill_bottle.can_be_inserted(P, TRUE)) + P.forceMove(loaded_pill_bottle) + if("create_patches") + if(condi || !reagents.total_volume) + return + + var/medicine_name = patchname + var/count = patchamount + if(length(medicine_name) <= 0 || isnull(medicine_name)) + medicine_name = reagents.get_master_reagent_name() + var/amount_per_patch = clamp(reagents.total_volume / count, 0, MAX_UNITS_PER_PATCH) + var/is_medical_patch = chemical_safety_check(reagents) + for(var/i in 1 to count) + if(reagents.total_volume <= 0) + to_chat(ui.user, "Not enough reagents to create these patches!") + return + + var/obj/item/reagent_containers/patch/P = new(loc) + P.name = "[medicine_name] patch" + P.pixel_x = rand(-7, 7) // random position + P.pixel_y = rand(-7, 7) + reagents.trans_to(P, amount_per_patch) + if(is_medical_patch) + P.instant_application = TRUE + P.icon_state = "bandaid_med" + // Load the patches in the bottle if there's one loaded + if(istype(loaded_pill_bottle) && loaded_pill_bottle.can_be_inserted(P, TRUE)) + P.forceMove(loaded_pill_bottle) + if("create_bottles") + if(condi || !reagents.total_volume) + return + + var/medicine_name = bottlename + var/count = bottleamount + if(length(medicine_name) <= 0 || isnull(medicine_name)) + medicine_name = reagents.get_master_reagent_name() + var/amount_per_bottle = clamp(reagents.total_volume / count, 0, MAX_UNITS_PER_BOTTLE) + for(var/i in 1 to count) + if(reagents.total_volume <= 0) + to_chat(ui.user, "Not enough reagents to create these bottles!") + return + + var/obj/item/reagent_containers/glass/bottle/reagent/P = new(loc) + P.name = "[medicine_name] bottle" + P.pixel_x = rand(-7, 7) // random position + P.pixel_y = rand(-7, 7) + P.icon_state = length(bottle_styles) && bottle_styles[bottlesprite] || "bottle" + reagents.trans_to(P, amount_per_bottle) else return FALSE @@ -256,7 +419,7 @@ ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) if(!ui) - ui = new(user, src, ui_key, "ChemMaster", name, 575, 500) + ui = new(user, src, ui_key, "ChemMaster", name, 575, 600) ui.open() /obj/machinery/chem_master/ui_data(mob/user) @@ -268,6 +431,7 @@ data["loaded_pill_bottle_name"] = loaded_pill_bottle.name data["loaded_pill_bottle_contents_len"] = loaded_pill_bottle.contents.len data["loaded_pill_bottle_storage_slots"] = loaded_pill_bottle.storage_slots + data["loaded_pill_bottle_style"] = loaded_pill_bottle.wrapper_color data["beaker"] = beaker ? TRUE : FALSE if(beaker) @@ -283,6 +447,9 @@ data["beaker_reagents"] = list() data["buffer_reagents"] = list() + data["pillamount"] = pillamount + data["patchamount"] = patchamount + data["bottleamount"] = bottleamount data["pillsprite"] = pillsprite data["bottlesprite"] = bottlesprite data["mode"] = mode @@ -291,6 +458,56 @@ // Transfer modal information if there is one data["modal"] = ui_modal_data(src) + data["production_mode"] = production_mode + + data["pillname"] = pillname + data["patchname"] = patchname + data["bottlename"] = bottlename + + data["maxpills"] = CHEMMASTER_MAX_PILLS + data["maxpatches"] = CHEMMASTER_MAX_PATCHES + data["maxbottles"] = CHEMMASTER_MAX_BOTTLES + + if(reagents.total_volume) + var/amount_per_pill = clamp(reagents.total_volume / pillamount, 0, MAX_UNITS_PER_PILL) + data["pillplaceholdername"] = "[reagents.get_master_reagent_name()] ([amount_per_pill]u)" + var/amount_per_patch = clamp(reagents.total_volume / patchamount, 0, MAX_UNITS_PER_PATCH) + data["patchplaceholdername"] = "[reagents.get_master_reagent_name()] ([amount_per_patch]u)" + data["bottleplaceholdername"] = reagents.get_master_reagent_name() + + return data + +/obj/machinery/chem_master/ui_static_data(mob/user) + var/list/data = list() + + data["maxnamelength"] = MAX_CUSTOM_NAME_LEN + + var/pill_styles = list() + for(var/i in 1 to MAX_PILL_SPRITE) + pill_styles += list(list( + "id" = i, + "sprite" = "pill[i].png", + )) + data["pillstyles"] = pill_styles + + var/bottle_styles_with_sprite = list() + var/bottle_style_indexer = 0 + for(var/style in bottle_styles) + bottle_style_indexer++ + bottle_styles_with_sprite += list(list( + "id" = bottle_style_indexer, + "sprite" = "[style].png", + )) + data["bottlestyles"] = bottle_styles_with_sprite + + var/pill_bottle_styles[0] + for(var/style in pill_bottle_wrappers) + pill_bottle_styles += list(list( + "color" = style, + "name" = pill_bottle_wrappers[style], + )) + data["containerstyles"] = pill_bottle_styles + return data /** @@ -323,25 +540,6 @@ arguments["analysis"] = result ui_modal_message(src, id, "", null, arguments) - if("change_pill_bottle_style") - if(!loaded_pill_bottle) - return - if(!pill_bottle_wrappers) - pill_bottle_wrappers = list( - "CLEAR" = "Default", - COLOR_RED = "Red", - COLOR_GREEN = "Green", - COLOR_PALE_BTL_GREEN = "Pale green", - COLOR_BLUE = "Blue", - COLOR_CYAN_BLUE = "Light blue", - COLOR_TEAL = "Teal", - COLOR_YELLOW = "Yellow", - COLOR_ORANGE = "Orange", - COLOR_PINK = "Pink", - COLOR_MAROON = "Brown" - ) - var/current = pill_bottle_wrappers[loaded_pill_bottle.wrapper_color] || "Default" - ui_modal_choice(src, id, "Please select a wrapper color:", null, arguments, current, pill_bottle_wrappers) if("addcustom") if(!beaker || !beaker.reagents.total_volume) return @@ -354,78 +552,11 @@ if(!condi || !reagents.total_volume) return ui_modal_input(src, id, "Please name your new condiment pack:", null, arguments, reagents.get_master_reagent_name(), MAX_CUSTOM_NAME_LEN) - if("create_pill") - if(condi || !reagents.total_volume) - return - - var/num = arguments["num"] || 1 // Multi puts a string in `num`, single leaves it null - num = clamp(round(text2num(num)), 0, MAX_MULTI_AMOUNT) - if(!num) - return - arguments["num"] = num - - var/amount_per_pill = clamp(reagents.total_volume / num, 0, MAX_UNITS_PER_PILL) - var/default_name = "[reagents.get_master_reagent_name()] ([amount_per_pill]u)" - var/pills_text = num == 1 ? "new pill" : "[num] new pills" - ui_modal_input(src, id, "Please name your [pills_text]:", null, arguments, default_name, MAX_CUSTOM_NAME_LEN) - if("create_pill_multiple") - if(condi || !reagents.total_volume) - return - ui_modal_input(src, id, "Please enter the amount of pills to make (max [MAX_MULTI_AMOUNT] at a time):", null, arguments, pillamount, 5) - if("change_pill_style") - var/list/choices = list() - for(var/i = 1 to MAX_PILL_SPRITE) - choices += "pill[i].png" - ui_modal_bento(src, id, "Please select the new style for pills:", null, arguments, pillsprite, choices) - if("create_patch") - if(condi || !reagents.total_volume) - return - - var/num = arguments["num"] || 1 // Multi puts a string in `num`, single leaves it null - num = clamp(round(text2num(num)), 0, MAX_MULTI_AMOUNT) - if(!num) - return - arguments["num"] = num - - var/amount_per_patch = clamp(reagents.total_volume / num, 0, MAX_UNITS_PER_PATCH) - var/default_name = "[reagents.get_master_reagent_name()] ([amount_per_patch]u)" - var/patches_text = num == 1 ? "new patch" : "[num] new patches" - ui_modal_input(src, id, "Please name your [patches_text]:", null, arguments, default_name, MAX_CUSTOM_NAME_LEN) - if("create_patch_multiple") - if(condi || !reagents.total_volume) - return - ui_modal_input(src, id, "Please enter the amount of patches to make (max [MAX_MULTI_AMOUNT] at a time):", null, arguments, pillamount, 5) - if("create_bottle") - if(condi || !reagents.total_volume) - return - ui_modal_input(src, id, "Please name your bottle:", null, arguments, reagents.get_master_reagent_name(), MAX_CUSTOM_NAME_LEN) - if("change_bottle_style") - if(!bottle_styles) - bottle_styles = list("bottle", "small_bottle", "wide_bottle", "round_bottle", "reagent_bottle") - var/list/bottle_styles_png = list() - for(var/style in bottle_styles) - bottle_styles_png += "[style].png" - ui_modal_bento(src, id, "Please select the new style for bottles:", null, arguments, bottlesprite, bottle_styles_png) else return FALSE if(UI_MODAL_ANSWER) var/answer = params["answer"] switch(id) - if("change_pill_bottle_style") - if(!pill_bottle_wrappers || !loaded_pill_bottle) // wat? - return - var/color = "CLEAR" - for(var/col in pill_bottle_wrappers) - var/col_name = pill_bottle_wrappers[col] - if(col_name == answer) - color = col - break - if(length(color) && color != "CLEAR") - loaded_pill_bottle.wrapper_color = color - loaded_pill_bottle.apply_wrap() - else - loaded_pill_bottle.wrapper_color = null - loaded_pill_bottle.cut_overlays() if("addcustom") var/amount = isgoodnumber(text2num(answer)) if(!amount || !arguments["id"]) @@ -446,89 +577,6 @@ P.name = "[answer] pack" P.desc = "A small condiment pack. The label says it contains [answer]." reagents.trans_to(P, 10) - if("create_pill") - if(condi || !reagents.total_volume) - return - var/count = text2num(arguments["num"]) - if(!count) - return - - if(!length(answer)) - answer = reagents.get_master_reagent_name() - var/amount_per_pill = clamp(reagents.total_volume / count, 0, MAX_UNITS_PER_PILL) - while(count--) - if(reagents.total_volume <= 0) - to_chat(usr, "Not enough reagents to create these pills!") - return - - var/obj/item/reagent_containers/pill/P = new(loc) - P.name = "[answer] pill" - P.pixel_x = rand(-7, 7) // Random position - P.pixel_y = rand(-7, 7) - P.icon_state = "pill[pillsprite]" - reagents.trans_to(P, amount_per_pill) - // Load the pills in the bottle if there's one loaded - if(istype(loaded_pill_bottle) && loaded_pill_bottle.can_be_inserted(P, TRUE)) - P.forceMove(loaded_pill_bottle) - if("create_pill_multiple") - if(condi || !reagents.total_volume) - return - ui_act("modal_open", list("id" = "create_pill", "arguments" = list("num" = answer)), ui, state) - if("change_pill_style") - var/new_style = clamp(text2num(answer) || 0, 0, MAX_PILL_SPRITE) - if(!new_style) - return - pillsprite = new_style - if("create_patch") - if(condi || !reagents.total_volume) - return - var/count = text2num(arguments["num"]) - if(!count) - return - - if(!length(answer)) - answer = reagents.get_master_reagent_name() - var/amount_per_patch = clamp(reagents.total_volume / count, 0, MAX_UNITS_PER_PATCH) - var/is_medical_patch = chemical_safety_check(reagents) - while(count--) - if(reagents.total_volume <= 0) - to_chat(usr, "Not enough reagents to create these patches!") - return - - var/obj/item/reagent_containers/patch/P = new(loc) - P.name = "[answer] patch" - P.pixel_x = rand(-7, 7) // random position - P.pixel_y = rand(-7, 7) - reagents.trans_to(P, amount_per_patch) - if(is_medical_patch) - P.instant_application = TRUE - P.icon_state = "bandaid_med" - // Load the patches in the bottle if there's one loaded - if(istype(loaded_pill_bottle) && loaded_pill_bottle.can_be_inserted(P, TRUE)) - P.forceMove(loaded_pill_bottle) - if("create_patch_multiple") - if(condi || !reagents.total_volume) - return - ui_act("modal_open", list("id" = "create_patch", "arguments" = list("num" = answer)), ui, state) - if("create_bottle") - if(condi || !reagents.total_volume) - return - - if(!length(answer)) - answer = reagents.get_master_reagent_name() - var/obj/item/reagent_containers/glass/bottle/reagent/P = new(loc) - P.name = "[answer] bottle" - P.pixel_x = rand(-7, 7) // random position - P.pixel_y = rand(-7, 7) - P.icon_state = length(bottle_styles) && bottle_styles[bottlesprite] || "bottle" - reagents.trans_to(P, 50) - if("change_bottle_style") - if(!bottle_styles) - return - var/new_sprite = text2num(answer) || 1 - if(new_sprite < 1 || new_sprite > length(bottle_styles)) - return - bottlesprite = new_sprite else return FALSE else @@ -568,10 +616,19 @@ RefreshParts() #undef MAX_PILL_SPRITE -#undef MAX_MULTI_AMOUNT #undef MAX_UNITS_PER_PILL #undef MAX_UNITS_PER_PATCH +#undef MAX_UNITS_PER_BOTTLE #undef MAX_CUSTOM_NAME_LEN +#undef CHEMMASTER_PRODUCTION_MODE_PILLS +#undef CHEMMASTER_PRODUCTION_MODE_PATCHES +#undef CHEMMASTER_PRODUCTION_MODE_BOTTLES +#undef CHEMMASTER_MIN_PRODUCTION_MODE +#undef CHEMMASTER_MAX_PRODUCTION_MODE +#undef CHEMMASTER_MAX_PILLS +#undef CHEMMASTER_MAX_PATCHES +#undef CHEMMASTER_MAX_BOTTLES + #undef TRANSFER_TO_DISPOSAL #undef TRANSFER_TO_BEAKER diff --git a/code/modules/research/designs/equipment_designs.dm b/code/modules/research/designs/equipment_designs.dm index 89c1502e61ba..ed79318dbfa3 100644 --- a/code/modules/research/designs/equipment_designs.dm +++ b/code/modules/research/designs/equipment_designs.dm @@ -81,6 +81,26 @@ build_path = /obj/item/clothing/glasses/hud/skills category = list("Equipment") +/datum/design/jani_hud + name = "Janitor HUD" + desc = "A heads-up display that scans for messes and alerts the user. Good for finding puddles hiding under catwalks." + id = "jani_hud" + req_tech = list("biotech" = 2, "magnets" = 3) + build_type = PROTOLATHE + materials = list(MAT_METAL = 500, MAT_GLASS = 500) + build_path = /obj/item/clothing/glasses/hud/janitor + category = list("Equipment", "Janitorial") + +/datum/design/jani_night_vision_goggles + name = "Night Vision Janitor HUD" + desc = "A janitorial filth scanner fitted with a light amplifier." + id = "night_vision_jani" + req_tech = list("biotech" = 4, "magnets" = 5, "plasmatech" = 4, "engineering" = 6) + build_type = PROTOLATHE + materials = list(MAT_METAL = 600, MAT_GLASS = 600, MAT_PLASMA = 350, MAT_URANIUM = 1000) + build_path = /obj/item/clothing/glasses/hud/janitor/night + category = list("Equipment", "Janitorial") + /datum/design/mesons name = "Optical Meson Scanners" desc = "Used for seeing walls, floors, and stuff through anything." diff --git a/code/modules/research/designs/medical_designs.dm b/code/modules/research/designs/medical_designs.dm index a82989c14039..91620b6e399a 100644 --- a/code/modules/research/designs/medical_designs.dm +++ b/code/modules/research/designs/medical_designs.dm @@ -386,6 +386,17 @@ build_path = /obj/item/organ/internal/cyberimp/arm/toolset_abductor category = list("Medical") +/datum/design/cyberimp_jani_hud + name = "Janitor HUD Implant" + desc = "These cybernetic eye implants will display a filth HUD over everything you see. Wiggle eyes to control." + id = "ci-janihud" + req_tech = list("materials" = 5, "engineering" = 4, "programming" = 4, "biotech" = 4) + build_type = PROTOLATHE | MECHFAB + construction_time = 5 SECONDS + materials = list(MAT_METAL = 600, MAT_GLASS = 600, MAT_SILVER = 500, MAT_GOLD = 500) + build_path = /obj/item/organ/internal/cyberimp/eyes/hud/jani + category = list("Medical") + /datum/design/cyberimp_diagnostic_hud name = "Diagnostic HUD Implant" desc = "These cybernetic eye implants will display a diagnostic HUD over everything you see. Wiggle eyes to control." diff --git a/code/modules/response_team/ert_outfits.dm b/code/modules/response_team/ert_outfits.dm index cd26c0b1817d..6d69660f7818 100644 --- a/code/modules/response_team/ert_outfits.dm +++ b/code/modules/response_team/ert_outfits.dm @@ -503,7 +503,7 @@ backpack_contents = list( /obj/item/grenade/chem_grenade/antiweed = 2, - /obj/item/push_broom, + /obj/item/push_broom = 1, /obj/item/storage/box/lights/mixed = 1, /obj/item/melee/flyswatter = 1 ) @@ -512,7 +512,7 @@ name = "RT Janitor (Amber)" suit = /obj/item/clothing/suit/armor/vest/ert/janitor head = /obj/item/clothing/head/helmet/ert/janitor - glasses = /obj/item/clothing/glasses/sunglasses + glasses = /obj/item/clothing/glasses/hud/janitor/sunglasses r_pocket = /obj/item/flashlight/seclite suit_store = /obj/item/gun/energy/disabler @@ -523,12 +523,13 @@ /datum/outfit/job/centcom/response_team/janitorial/red name = "RT Janitor (Red)" suit = /obj/item/clothing/suit/space/hardsuit/ert/janitor - glasses = /obj/item/clothing/glasses/hud/security/sunglasses + glasses = /obj/item/clothing/glasses/hud/janitor/sunglasses shoes = /obj/item/clothing/shoes/galoshes/dry/lightweight r_pocket = /obj/item/scythe/tele suit_store = /obj/item/gun/energy/gun cybernetic_implants = list( + /obj/item/organ/internal/cyberimp/eyes/hud/security, /obj/item/organ/internal/cyberimp/arm/janitorial/advanced, /obj/item/organ/internal/cyberimp/chest/nutriment/hardened ) @@ -540,7 +541,7 @@ /datum/outfit/job/centcom/response_team/janitorial/gamma name = "RT Janitor (Gamma)" - glasses = /obj/item/clothing/glasses/night + glasses = /obj/item/clothing/glasses/hud/janitor/night back = /obj/item/mod/control/pre_equipped/responsory/janitor r_pocket = /obj/item/scythe/tele shoes = /obj/item/clothing/shoes/magboots/elite diff --git a/code/modules/surgery/organs/augments_eyes.dm b/code/modules/surgery/organs/augments_eyes.dm index 3637f1f4f83d..5d7fb4d2bb57 100644 --- a/code/modules/surgery/organs/augments_eyes.dm +++ b/code/modules/surgery/organs/augments_eyes.dm @@ -61,3 +61,11 @@ aug_message = "Job indicator icons pop up in your vision. That is not a certified surgeon..." HUD_type = DATA_HUD_SECURITY_ADVANCED examine_extensions = list(EXAMINE_HUD_SECURITY_READ) + +/obj/item/organ/internal/cyberimp/eyes/hud/jani + name = "Janitor HUD implant" + desc = "These cybernetic eye implants will display a filth HUD over everything you see." + implant_color = "#AF00AF" + origin_tech = "materials=4;engineering=4;biotech=4" + aug_message = "You scan for filth spots around you..." + HUD_type = DATA_HUD_JANITOR diff --git a/code/modules/surgery/organs/heart.dm b/code/modules/surgery/organs/heart.dm index dc77bae859c1..f20903ee0252 100644 --- a/code/modules/surgery/organs/heart.dm +++ b/code/modules/surgery/organs/heart.dm @@ -310,12 +310,6 @@ emagged = FALSE -/obj/item/organ/internal/heart/cybernetic/upgraded/emp_act(severity) - ..() - if(emp_proof) - return - necrotize() - /obj/item/organ/internal/heart/cybernetic/upgraded/proc/shock_heart(mob/living/carbon/human/source, intensity) SIGNAL_HANDLER_DOES_SLEEP diff --git a/code/modules/tgui/modules/appearance_changer.dm b/code/modules/tgui/modules/appearance_changer.dm index ddf548d2715d..91d34bc8df56 100644 --- a/code/modules/tgui/modules/appearance_changer.dm +++ b/code/modules/tgui/modules/appearance_changer.dm @@ -231,7 +231,7 @@ data["head_accessory_styles"] = head_accessory_styles data["head_accessory_style"] = head_organ ? head_organ.ha_style : "None" - if(!(user.dna.species.bodyflags & BALD)) + if(!(owner.dna.species.bodyflags & BALD)) data["change_hair"] = can_change(APPEARANCE_HAIR) if(data["change_hair"]) var/list/hair_styles = list() @@ -242,7 +242,7 @@ data["change_hair_color"] = can_change(APPEARANCE_HAIR_COLOR) data["change_secondary_hair_color"] = can_change(APPEARANCE_SECONDARY_HAIR_COLOR) - if(!(user.dna.species.bodyflags & SHAVED)) + if(!(owner.dna.species.bodyflags & SHAVED)) data["change_facial_hair"] = can_change(APPEARANCE_FACIAL_HAIR) if(data["change_facial_hair"]) var/list/facial_hair_styles = list() @@ -254,7 +254,7 @@ data["change_secondary_facial_hair_color"] = can_change(APPEARANCE_SECONDARY_FACIAL_HAIR_COLOR) data["change_hair_gradient"] = can_change(APPEARANCE_HAIR) && length(valid_hairstyles) - if(!ismachineperson(user)) + if(!ismachineperson(owner)) data["change_head_markings"] = can_change_markings("head") if(data["change_head_markings"]) var/m_style = owner.m_styles["head"] diff --git a/icons/mob/clothing/back.dmi b/icons/mob/clothing/back.dmi index 016eec4eaf15..e9fb5b582b2d 100644 Binary files a/icons/mob/clothing/back.dmi and b/icons/mob/clothing/back.dmi differ diff --git a/icons/mob/clothing/eyes.dmi b/icons/mob/clothing/eyes.dmi index 585217a02ce4..92c2d1ee3fa4 100644 Binary files a/icons/mob/clothing/eyes.dmi and b/icons/mob/clothing/eyes.dmi differ diff --git a/icons/mob/clothing/modsuit/species/vox_modsuits.dmi b/icons/mob/clothing/modsuit/species/vox_modsuits.dmi index 6597922d3ad9..026b15502577 100644 Binary files a/icons/mob/clothing/modsuit/species/vox_modsuits.dmi and b/icons/mob/clothing/modsuit/species/vox_modsuits.dmi differ diff --git a/icons/mob/clothing/species/drask/eyes.dmi b/icons/mob/clothing/species/drask/eyes.dmi index bbe5ca72ad9a..38a7b628099a 100644 Binary files a/icons/mob/clothing/species/drask/eyes.dmi and b/icons/mob/clothing/species/drask/eyes.dmi differ diff --git a/icons/mob/clothing/species/grey/eyes.dmi b/icons/mob/clothing/species/grey/eyes.dmi index a17e4e2242ff..7760cca8f608 100644 Binary files a/icons/mob/clothing/species/grey/eyes.dmi and b/icons/mob/clothing/species/grey/eyes.dmi differ diff --git a/icons/mob/clothing/species/kidan/eyes.dmi b/icons/mob/clothing/species/kidan/eyes.dmi index 67901173d8d2..cc03d39fcdd5 100644 Binary files a/icons/mob/clothing/species/kidan/eyes.dmi and b/icons/mob/clothing/species/kidan/eyes.dmi differ diff --git a/icons/mob/clothing/species/vox/eyes.dmi b/icons/mob/clothing/species/vox/eyes.dmi index 103dca449d1e..ac19c03b436e 100644 Binary files a/icons/mob/clothing/species/vox/eyes.dmi and b/icons/mob/clothing/species/vox/eyes.dmi differ diff --git a/icons/mob/hud/hud_misc.dmi b/icons/mob/hud/hud_misc.dmi index 7e81764ab0a5..7e2d9c770438 100644 Binary files a/icons/mob/hud/hud_misc.dmi and b/icons/mob/hud/hud_misc.dmi differ diff --git a/icons/mob/screen_alert.dmi b/icons/mob/screen_alert.dmi index d09c2406376b..272e47b89b4c 100644 Binary files a/icons/mob/screen_alert.dmi and b/icons/mob/screen_alert.dmi differ diff --git a/icons/mob/ties.dmi b/icons/mob/ties.dmi index b7f50b7f67cb..cf13a3e05107 100644 Binary files a/icons/mob/ties.dmi and b/icons/mob/ties.dmi differ diff --git a/icons/obj/bureaucracy.dmi b/icons/obj/bureaucracy.dmi index 66b7a42a8d89..599237fdadfa 100644 Binary files a/icons/obj/bureaucracy.dmi and b/icons/obj/bureaucracy.dmi differ diff --git a/icons/obj/clothing/glasses.dmi b/icons/obj/clothing/glasses.dmi index 04310be5f5c5..3eb8dfc83a79 100644 Binary files a/icons/obj/clothing/glasses.dmi and b/icons/obj/clothing/glasses.dmi differ diff --git a/icons/obj/clothing/ties.dmi b/icons/obj/clothing/ties.dmi index bd519d6614ed..44b18e06c3f9 100644 Binary files a/icons/obj/clothing/ties.dmi and b/icons/obj/clothing/ties.dmi differ diff --git a/icons/obj/clothing/ties_overlay.dmi b/icons/obj/clothing/ties_overlay.dmi index d9df8c0547a8..e4c15f3ae0de 100644 Binary files a/icons/obj/clothing/ties_overlay.dmi and b/icons/obj/clothing/ties_overlay.dmi differ diff --git a/icons/obj/storage.dmi b/icons/obj/storage.dmi index 06c7aa560835..768f5f64ed6f 100644 Binary files a/icons/obj/storage.dmi and b/icons/obj/storage.dmi differ diff --git a/modular_ss220/objects/code/papershredder.dm b/modular_ss220/objects/code/papershredder.dm index b9bdc6566d78..fa12cc38edbc 100644 --- a/modular_ss220/objects/code/papershredder.dm +++ b/modular_ss220/objects/code/papershredder.dm @@ -114,7 +114,7 @@ if(resistance_flags & ON_FIRE) add_fingerprint(user) return - if(is_hot(shredp, user)) + if(shredp.get_heat()) add_fingerprint(user) user.visible_message(span_danger("\The [user] burns right through [src], turning it to ash. It flutters through the air before settling on the floor in a heap."), span_danger("You burn right through [src], turning it to ash. It flutters through the air before settling on the floor in a heap.")) fire_act() diff --git a/tgui/packages/tgui/components/Button.js b/tgui/packages/tgui/components/Button.js index 33182aa03341..fc4bc3aa2d01 100644 --- a/tgui/packages/tgui/components/Button.js +++ b/tgui/packages/tgui/components/Button.js @@ -27,6 +27,7 @@ export const Button = (props) => { iconColor, iconSpin, iconRight, + iconStyle, children, onclick, onClick, @@ -95,6 +96,7 @@ export const Button = (props) => { color={iconColor} rotation={iconRotation} spin={iconSpin} + style={iconStyle} /> )} {content} @@ -105,6 +107,7 @@ export const Button = (props) => { color={iconColor} rotation={iconRotation} spin={iconSpin} + style={iconStyle} /> )} {tooltip && } diff --git a/tgui/packages/tgui/interfaces/ChemMaster.js b/tgui/packages/tgui/interfaces/ChemMaster.js index 9c5cc39f5395..2f7d8fe71f83 100644 --- a/tgui/packages/tgui/interfaces/ChemMaster.js +++ b/tgui/packages/tgui/interfaces/ChemMaster.js @@ -1,6 +1,16 @@ -import { Fragment } from 'inferno'; +import { Component, Fragment } from 'inferno'; import { useBackend } from '../backend'; -import { Box, Button, Flex, Icon, LabeledList, Section } from '../components'; +import { + Box, + Button, + Flex, + Icon, + Input, + LabeledList, + Section, + Slider, + Tabs, +} from '../components'; import { Window } from '../layouts'; import { BeakerContents } from './common/BeakerContents'; import { @@ -10,13 +20,6 @@ import { } from './common/ComplexModal'; const transferAmounts = [1, 5, 10]; -const bottleStyles = [ - 'bottle.png', - 'small_bottle.png', - 'wide_bottle.png', - 'round_bottle.png', - 'reagent_bottle.png', -]; const analyzeModalBodyOverride = (modal, context) => { const { act, data } = useBackend(context); @@ -103,8 +106,8 @@ const ChemMasterBeaker = (props, context) => { return ( { return ( Transferring to @@ -261,10 +264,16 @@ const ChemMasterBuffer = (props, context) => { const ChemMasterProduction = (props, context) => { const { act } = useBackend(context); - if (!props.bufferNonEmpty) { + if (!props.bufferNonEmpty && props.isCondiment) { return ( - - + + @@ -276,7 +285,7 @@ const ChemMasterProduction = (props, context) => { } return ( - + {!props.isCondiment ? ( ) : ( @@ -288,82 +297,239 @@ const ChemMasterProduction = (props, context) => { const ChemMasterProductionChemical = (props, context) => { const { act, data } = useBackend(context); + const tabs = [ + { + 'name': 'Pills', + 'icon': 'pills', + }, + { + 'name': 'Patches', + 'icon': 'plus-square', + }, + { + 'name': 'Bottles', + 'icon': 'wine-bottle', + }, + ]; + const decideTab = (mode) => { + switch (mode) { + case 1: + return ; + case 2: + return ; + case 3: + return ; + default: + return 'UNKNOWN INTERFACE'; + } + }; + return ( + <> + + {tabs.map((t, i) => { + i += 1; + return ( + act('set_production_mode', { mode: i })} + /> + ); + })} + + {decideTab(data.production_mode)} + > + ); +}; + +class ChemMasterNameInput extends Component { + constructor() { + super(); + + this.handleMouseUp = (e) => { + const { placeholder, onMouseUp } = this.props; + + // Middle-click button + if (e.button === 1) { + e.target.value = placeholder; + e.target.select(); + } + + if (onMouseUp) { + onMouseUp(e); + } + }; + } + + render() { + const { data } = useBackend(this.context); + const { maxnamelength } = data; + + return ( + + ); + } +} + +const ChemMasterProductionCommon = (props, context) => { + const { act, data } = useBackend(context); + const { + children, + maxQuantity, + medicineName, + placeholderName, + productionType, + quantity, + } = props; + const { buffer_reagents = [] } = data; return ( - - modalOpen(context, 'create_pill')} - /> - modalOpen(context, 'create_pill_multiple')} + {children} + + + act(`set_${productionType}_amount`, { amount: value }) + } /> - modalOpen(context, 'change_pill_style')}> - - Style - - - modalOpen(context, 'create_patch')} - /> - modalOpen(context, 'create_patch_multiple')} + + + act(`set_${productionType}_name`, { name: value }) + } /> - + modalOpen(context, 'create_bottle')} + fluid + content="Create" + color="green" + disabled={buffer_reagents.length <= 0} + onClick={() => act(`create_${productionType}`)} /> - modalOpen(context, 'change_bottle_style')} - > - - Style - ); }; +const SpriteStyleButton = (props, context) => { + const { icon, imageTransform, ...restProps } = props; + return ( + + + + + + ); +}; + +const ChemMasterProductionPills = (props, context) => { + const { act, data } = useBackend(context); + const { + maxpills, + pillamount, + pillname, + pillplaceholdername, + pillsprite, + pillstyles, + } = data; + const style_buttons = pillstyles.map(({ id, sprite }) => ( + act('set_pills_style', { style: id })} + selected={pillsprite === id} + /> + )); + return ( + + {style_buttons} + + ); +}; + +const ChemMasterProductionPatches = (props, context) => { + const { act, data } = useBackend(context); + const { maxpatches, patchamount, patchname, patchplaceholdername } = data; + return ( + + ); +}; + +const ChemMasterProductionBottles = (props, context) => { + const { act, data } = useBackend(context); + const { + bottlesprite, + maxbottles, + bottleamount, + bottlename, + bottleplaceholdername, + bottlestyles, + } = data; + const style_buttons = bottlestyles.map(({ id, sprite }) => ( + act('set_bottles_style', { style: id })} + selected={bottlesprite === id} + /> + )); + return ( + + {style_buttons} + + ); +}; + const ChemMasterProductionCondiment = (props, context) => { const { act } = useBackend(context); return ( @@ -387,31 +553,82 @@ const ChemMasterProductionCondiment = (props, context) => { const ChemMasterCustomization = (props, context) => { const { act, data } = useBackend(context); - if (!data.loaded_pill_bottle) { + const { loaded_pill_bottle_style, containerstyles, loaded_pill_bottle } = + data; + + const style_button_size = { width: '20px', height: '20px' }; + const style_buttons = containerstyles.map(({ color, name }) => { + let selected = loaded_pill_bottle_style === color; return ( - - No pill bottle or patch pack loaded. - + act('set_container_style', { style: color })} + icon={selected && 'check'} + iconStyle={{ + position: 'relative', + 'z-index': 1, + }} + tooltip={name} + tooltipPosition="top" + > + {/* Required. Removing this causes non-selected elements to flow up */} + {!selected && } + + ); - } - + }); return ( - - act('ejectp')} - /> - modalOpen(context, 'change_pill_bottle_style')} - /> + act('ejectp')} + /> + } + > + {!loaded_pill_bottle ? ( + No pill bottle or patch pack loaded. + ) : ( + + + act('clear_container_style')} + selected={!loaded_pill_bottle_style} + tooltip="Default" + tooltipPosition="top" + /> + {style_buttons} + + + )} ); }; diff --git a/tgui/packages/tgui/interfaces/RndConsoleComponents/LatheSearch.js b/tgui/packages/tgui/interfaces/RndConsoleComponents/LatheSearch.js index a827a1eaaf2c..026724b88cf4 100644 --- a/tgui/packages/tgui/interfaces/RndConsoleComponents/LatheSearch.js +++ b/tgui/packages/tgui/interfaces/RndConsoleComponents/LatheSearch.js @@ -7,7 +7,7 @@ export const LatheSearch = (properties, context) => { act('search', { to_search: value })} + onEnter={(e, value) => act('search', { to_search: value })} /> ); diff --git a/tgui/packages/tgui/public/tgui.bundle.js b/tgui/packages/tgui/public/tgui.bundle.js index cdb1771b402b..0cdb2717ae2c 100644 --- a/tgui/packages/tgui/public/tgui.bundle.js +++ b/tgui/packages/tgui/public/tgui.bundle.js @@ -1,5 +1,5 @@ -!function(e){var t={};function n(o){if(t[o])return t[o].exports;var r=t[o]={i:o,l:!1,exports:{}};return e[o].call(r.exports,r,r.exports,n),r.l=!0,r.exports}n.m=e,n.c=t,n.d=function(e,t,o){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:o})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var o=Object.create(null);if(n.r(o),Object.defineProperty(o,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var r in e)n.d(o,r,function(t){return e[t]}.bind(null,r));return o},n.n=function(e){var t=e&&e.__esModule?function(){return e["default"]}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=233)}([function(e,t,n){"use strict";t.__esModule=!0;var o=n(235);Object.keys(o).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===o[e]||(t[e]=o[e]))}))},function(e,t,n){"use strict";t.__esModule=!0,t.useSharedState=t.useLocalState=t.useBackend=t.deleteLocalState=t.backendUpdate=t.backendSetSharedState=t.backendReducer=t.backendDeleteSharedState=void 0;var o=n(33),r=n(44);t.backendUpdate=function(e){return{type:"backend/update",payload:e}};var a=function(e,t){return{type:"backend/setSharedState",payload:{key:e,nextState:t}}};t.backendSetSharedState=a;var c=function(e){return{type:"backend/deleteSharedState",payload:e}};t.backendDeleteSharedState=c;t.backendReducer=function(e,t){var n=t.type,o=t.payload;if("backend/update"===n){var a=Object.assign({},e.config,o.config),c=Object.assign({},e.data,o.static_data,o.data),i=Object.assign({},e.shared);if(o.shared)for(var l=0,d=Object.keys(o.shared);l1?n-1:0),r=1;rn?n:e};t.clamp01=function(e){return e<0?0:e>1?1:e};t.scale=function(e,t,n){return(e-t)/(n-t)};t.round=function(e,t){return!e||isNaN(e)?e:(t|=0,a=(e*=n=Math.pow(10,t))>0|-(e<0),r=Math.abs(e%1)>=.4999999999854481,o=Math.floor(e),r&&(e=o+(a>0)),(r?e:Math.round(e))/n);var n,o,r,a};t.toFixed=function(e,t){return void 0===t&&(t=0),Number(e).toFixed(Math.max(t,0))};var o=function(e,t){return t&&e>=t[0]&&e<=t[1]};t.inRange=o;t.keyOfMatchingRange=function(e,t){for(var n=0,r=Object.keys(t);n=e.length?{done:!0}:{done:!1,value:e[o++]}}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function r(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,o=new Array(t);n",apos:"'"};return e.replace(//gi,"\n").replace(/<\/?[a-z0-9-_]+[^>]*>/gi,"").replace(/&(nbsp|amp|quot|lt|gt|apos);/g,(function(e,n){return t[n]})).replace(/?([0-9]+);/gi,(function(e,t){var n=parseInt(t,10);return String.fromCharCode(n)})).replace(/?([0-9a-f]+);/gi,(function(e,t){var n=parseInt(t,16);return String.fromCharCode(n)}))};t.buildQueryString=function(e){return Object.keys(e).map((function(t){return encodeURIComponent(t)+"="+encodeURIComponent(e[t])})).join("&")}},function(e,t,n){"use strict";var o=n(5),r=n(74),a=o.String;e.exports=function(e){if("Symbol"===r(e))throw TypeError("Cannot convert a Symbol value to a string");return a(e)}},function(e,t,n){"use strict";t.__esModule=!0,t.unit=t.halfUnit=t.computeBoxProps=t.computeBoxClassName=t.Box=void 0;var o=n(8),r=n(0),a=n(508),c=n(44),i=["as","className","children"];var l=function(e){return"string"==typeof e?e:"number"==typeof e?12*e+"px":void 0};t.unit=l;var d=function(e){return"string"==typeof e?e:"number"==typeof e?12*e*.5+"px":void 0};t.halfUnit=d;var u=function(e){return"string"==typeof e&&c.CSS_COLORS.includes(e)},s=function(e){return function(t,n){(0,o.isFalsy)(n)||(t[e]=n)}},m=function(e,t){return function(n,r){(0,o.isFalsy)(r)||(n[e]=t(r))}},p=function(e,t){return function(n,r){(0,o.isFalsy)(r)||(n[e]=t)}},h=function(e,t,n){return function(r,a){if(!(0,o.isFalsy)(a))for(var c=0;c0&&(t.style=l),t};t.computeBoxProps=N;var b=function(e){var t=e.textColor||e.color,n=e.backgroundColor;return(0,o.classes)([u(t)&&"color-"+t,u(n)&&"color-bg-"+n])};t.computeBoxClassName=b;var V=function(e){var t=e.as,n=void 0===t?"div":t,o=e.className,c=e.children,l=function(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}(e,i);if("function"==typeof c)return c(N(e));var d="string"==typeof o?o+" "+b(l):b(l),u=N(l);return(0,r.createVNode)(a.VNodeFlags.HtmlElement,n,d,c,a.ChildFlags.UnknownChildren,u)};t.Box=V,V.defaultHooks=o.pureComponentHooks},function(e,t,n){"use strict";var o=n(42);e.exports=function(e){return o(e.length)}},function(e,t,n){"use strict";var o=n(5),r=n(13),a=n(50),c=n(132),i=n(130);e.exports=function(e,t,n,l){var d=!!l&&!!l.unsafe,u=!!l&&!!l.enumerable,s=!!l&&!!l.noTargetGet,m=l&&l.name!==undefined?l.name:t;return r(n)&&c(n,m,l),e===o?(u?e[t]=n:i(t,n),e):(d?!s&&e[t]&&(u=!0):delete e[t],u?e[t]=n:a(e,t,n),e)}},function(e,t,n){"use strict";t.__esModule=!0,t.zipWith=t.zip=t.uniqBy=t.toKeyedArray=t.toArray=t.sortBy=t.reduce=t.map=t.filter=void 0;t.toArray=function(e){if(Array.isArray(e))return e;if("object"==typeof e){var t=Object.prototype.hasOwnProperty,n=[];for(var o in e)t.call(e,o)&&n.push(e[o]);return n}return[]};t.toKeyedArray=function(e,t){return void 0===t&&(t="key"),o((function(e,n){var o;return Object.assign(((o={})[t]=n,o),e)}))(e)};t.filter=function(e){return function(t){if(null===t&&t===undefined)return t;if(Array.isArray(t)){for(var n=[],o=0;oi)return 1}return 0};t.sortBy=function(){for(var e=arguments.length,t=new Array(e),n=0;nx;x++)if((p||x in v)&&(V=_(b=v[x],x,g),e))if(t)L[x]=V;else if(V)switch(e){case 3:return!0;case 5:return b;case 6:return x;case 2:d(L,b)}else switch(e){case 4:return!1;case 7:d(L,b)}return s?-1:r||u?u:L}};e.exports={forEach:u(0),map:u(1),filter:u(2),some:u(3),every:u(4),find:u(5),findIndex:u(6),filterReject:u(7)}},function(e,t,n){"use strict";var o=n(9),r=n(15),a=n(102),c=n(64),i=n(31),l=n(56),d=n(18),u=n(174),s=Object.getOwnPropertyDescriptor;t.f=o?s:function(e,t){if(e=i(e),t=l(t),u)try{return s(e,t)}catch(n){}if(d(e,t))return c(!r(a.f,e,t),e[t])}},function(e,t,n){"use strict";var o=n(5),r=n(13),a=n(71),c=o.TypeError;e.exports=function(e){if(r(e))return e;throw c(a(e)+" is not a function")}},function(e,t,n){"use strict";t.__esModule=!0,t.modalRegisterBodyOverride=t.modalOpen=t.modalClose=t.modalAnswer=t.ComplexModal=void 0;var o=n(0),r=n(1),a=n(2),c={};t.modalOpen=function(e,t,n){var o=(0,r.useBackend)(e),a=o.act,c=o.data,i=Object.assign(c.modal?c.modal.args:{},n||{});a("modal_open",{id:t,arguments:JSON.stringify(i)})};t.modalRegisterBodyOverride=function(e,t){c[e]=t};var i=function(e,t,n,o){var a=(0,r.useBackend)(e),c=a.act,i=a.data;if(i.modal){var l=Object.assign(i.modal.args||{},o||{});c("modal_answer",{id:t,answer:n,arguments:JSON.stringify(l)})}};t.modalAnswer=i;var l=function(e,t){(0,(0,r.useBackend)(e).act)("modal_close",{id:t})};t.modalClose=l;t.ComplexModal=function(e,t){var n=(0,r.useBackend)(t).data;if(n.modal){var d,u,s=n.modal,m=s.id,p=s.text,h=s.type,f=(0,o.createComponentVNode)(2,a.Button,{icon:"arrow-left",content:"Cancel",color:"grey",onClick:function(){return l(t)}}),C="auto";if(c[m])u=c[m](n.modal,t);else if("input"===h){var N=n.modal.value;d=function(e){return i(t,m,N)},u=(0,o.createComponentVNode)(2,a.Input,{value:n.modal.value,placeholder:"ENTER to submit",width:"100%",my:"0.5rem",autofocus:!0,onChange:function(e,t){N=t}}),f=(0,o.createComponentVNode)(2,a.Box,{mt:"0.5rem",children:[(0,o.createComponentVNode)(2,a.Button,{icon:"arrow-left",content:"Cancel",color:"grey",onClick:function(){return l(t)}}),(0,o.createComponentVNode)(2,a.Button,{icon:"check",content:"Confirm",color:"good",float:"right",m:"0",onClick:function(){return i(t,m,N)}}),(0,o.createComponentVNode)(2,a.Box,{clear:"both"})]})}else if("choice"===h){var b="object"==typeof n.modal.choices?Object.values(n.modal.choices):n.modal.choices;u=(0,o.createComponentVNode)(2,a.Dropdown,{options:b,selected:n.modal.value,width:"100%",my:"0.5rem",onSelected:function(e){return i(t,m,e)}}),C="initial"}else"bento"===h?u=(0,o.createComponentVNode)(2,a.Flex,{spacingPrecise:"1",wrap:"wrap",my:"0.5rem",maxHeight:"1%",children:n.modal.choices.map((function(e,r){return(0,o.createComponentVNode)(2,a.Flex.Item,{flex:"1 1 auto",children:(0,o.createComponentVNode)(2,a.Button,{selected:r+1===parseInt(n.modal.value,10),onClick:function(){return i(t,m,r+1)},children:(0,o.createVNode)(1,"img",null,null,1,{src:e})})},r)}))}):"boolean"===h&&(f=(0,o.createComponentVNode)(2,a.Box,{mt:"0.5rem",children:[(0,o.createComponentVNode)(2,a.Button,{icon:"times",content:n.modal.no_text,color:"bad",float:"left",mb:"0",onClick:function(){return i(t,m,0)}}),(0,o.createComponentVNode)(2,a.Button,{icon:"check",content:n.modal.yes_text,color:"good",float:"right",m:"0",onClick:function(){return i(t,m,1)}}),(0,o.createComponentVNode)(2,a.Box,{clear:"both"})]}));return(0,o.createComponentVNode)(2,a.Modal,{maxWidth:e.maxWidth||window.innerWidth/2+"px",maxHeight:e.maxHeight||window.innerHeight/2+"px",onEnter:d,mx:"auto",overflowY:C,children:[(0,o.createComponentVNode)(2,a.Box,{display:"inline",children:p}),u,f]})}}},function(e,t,n){"use strict";var o=n(5),r=n(13),a=function(e){return r(e)?e:undefined};e.exports=function(e,t){return arguments.length<2?a(o[e]):o[e]&&o[e][t]}},function(e,t,n){"use strict";var o=n(85),r=n(32);e.exports=function(e){return o(r(e))}},function(e,t,n){"use strict";var o=n(5).TypeError;e.exports=function(e){if(e==undefined)throw o("Can't call method on "+e);return e}},function(e,t,n){"use strict";function o(e,t,n,o,r,a,c){try{var i=e[a](c),l=i.value}catch(d){return void n(d)}i.done?t(l):Promise.resolve(l).then(o,r)}t.__esModule=!0,t.winset=t.winget=t.runCommand=t.callByondAsync=t.callByond=t.IS_IE8=void 0;var r=window.Byond,a=function(){var e=navigator.userAgent.match(/Trident\/(\d+).+?;/i);if(!e)return null;var t=e[1];return t?parseInt(t,10):null}(),c=null!==a&&a<=6;t.IS_IE8=c;var i=function(e,t){void 0===t&&(t={}),r.call(e,t)};t.callByond=i;var l=function(e,t){void 0===t&&(t={}),window.__callbacks__=window.__callbacks__||[];var n=window.__callbacks__.length,o=new Promise((function(e){window.__callbacks__.push(e)}));return r.call(e,Object.assign({},t,{callback:"__callbacks__["+n+"]"})),o};t.callByondAsync=l;t.runCommand=function(e){return i("winset",{command:e})};var d=function(){var e,t=(e=regeneratorRuntime.mark((function n(e,t){var o;return regeneratorRuntime.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return n.next=2,l("winget",{id:e,property:t});case 2:return o=n.sent,n.abrupt("return",o[t]);case 4:case"end":return n.stop()}}),n)})),function(){var t=this,n=arguments;return new Promise((function(r,a){var c=e.apply(t,n);function i(e){o(c,r,a,i,l,"next",e)}function l(e){o(c,r,a,i,l,"throw",e)}i(undefined)}))});return function(e,n){return t.apply(this,arguments)}}();t.winget=d;t.winset=function(e,t,n){var o;return i("winset",((o={})[e+"."+t]=n,o))}},function(e,t,n){"use strict";t.__esModule=!0,t.computeFlexProps=t.computeFlexItemProps=t.FlexItem=t.Flex=void 0;var o=n(0),r=n(8),a=n(33),c=n(22),i=["className","direction","wrap","align","alignContent","justify","inline","spacing","spacingPrecise"],l=["className","grow","order","shrink","basis","align"];function d(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}var u=function(e){var t=e.className,n=e.direction,o=e.wrap,c=e.align,l=e.alignContent,u=e.justify,s=e.inline,m=e.spacing,p=void 0===m?0:m,h=e.spacingPrecise,f=void 0===h?0:h,C=d(e,i);return Object.assign({className:(0,r.classes)(["Flex",a.IS_IE8&&("column"===n?"Flex--ie8--column":"Flex--ie8"),s&&"Flex--inline",p>0&&"Flex--spacing--"+p,f>0&&"Flex--spacingPrecise--"+f,t]),style:Object.assign({},C.style,{"flex-direction":n,"flex-wrap":o,"align-items":c,"align-content":l,"justify-content":u})},C)};t.computeFlexProps=u;var s=function(e){return(0,o.normalizeProps)((0,o.createComponentVNode)(2,c.Box,Object.assign({},u(e))))};t.Flex=s,s.defaultHooks=r.pureComponentHooks;var m=function(e){var t=e.className,n=e.grow,o=e.order,i=e.shrink,u=e.basis,s=void 0===u?e.width:u,m=e.align,p=d(e,l);return Object.assign({className:(0,r.classes)(["Flex__item",a.IS_IE8&&"Flex__item--ie8",t]),style:Object.assign({},p.style,{"flex-grow":n,"flex-shrink":i,"flex-basis":(0,c.unit)(s),order:o,"align-self":m})},p)};t.computeFlexItemProps=m;var p=function(e){return(0,o.normalizeProps)((0,o.createComponentVNode)(2,c.Box,Object.assign({},m(e))))};t.FlexItem=p,p.defaultHooks=r.pureComponentHooks,s.Item=p},function(e,t,n){"use strict";e.exports=!1},function(e,t,n){"use strict";var o=n(238),r=n(18),a=n(180),c=n(17).f;e.exports=function(e){var t=o.Symbol||(o.Symbol={});r(t,e)||c(t,e,{value:a.f(e)})}},function(e,t,n){"use strict";var o=n(7),r=n(32),a=n(21),c=/"/g,i=o("".replace);e.exports=function(e,t,n,o){var l=a(r(e)),d="<"+t;return""!==n&&(d+=" "+n+'="'+i(a(o),c,""")+'"'),d+">"+l+""+t+">"}},function(e,t,n){"use strict";var o=n(6);e.exports=function(e){return o((function(){var t=""[e]('"');return t!==t.toLowerCase()||t.split('"').length>3}))}},function(e,t,n){"use strict";t.__esModule=!0,t.flow=t.compose=void 0;t.flow=function o(){for(var e=arguments.length,t=new Array(e),n=0;n1?r-1:0),c=1;c1?o-1:0),a=1;a0?r:o)(t)}},function(e,t,n){"use strict";var o=n(41),r=Math.min;e.exports=function(e){return e>0?r(o(e),9007199254740991):0}},function(e,t,n){"use strict";var o=n(5),r=n(18),a=n(13),c=n(19),i=n(104),l=n(142),d=i("IE_PROTO"),u=o.Object,s=u.prototype;e.exports=l?u.getPrototypeOf:function(e){var t=c(e);if(r(t,d))return t[d];var n=t.constructor;return a(n)&&t instanceof n?n.prototype:t instanceof u?s:null}},function(e,t,n){"use strict";t.__esModule=!0,t.timeAgo=t.getGasLabel=t.getGasColor=t.UI_UPDATE=t.UI_INTERACTIVE=t.UI_DISABLED=t.UI_CLOSE=t.RADIO_CHANNELS=t.CSS_COLORS=t.COLORS=void 0;t.UI_INTERACTIVE=2;t.UI_UPDATE=1;t.UI_DISABLED=0;t.UI_CLOSE=-1;t.COLORS={department:{command:"#526aff",security:"#CF0000",medical:"#009190",science:"#993399",engineering:"#A66300",supply:"#9F8545",service:"#80A000",centcom:"#78789B",other:"#C38312"},damageType:{oxy:"#3498db",toxin:"#2ecc71",burn:"#e67e22",brute:"#e74c3c"}};t.CSS_COLORS=["black","white","red","orange","yellow","olive","green","teal","blue","violet","purple","pink","brown","grey","good","average","bad","label"];t.RADIO_CHANNELS=[{name:"Syndicate",freq:1213,color:"#a52a2a"},{name:"SyndTeam",freq:1244,color:"#a52a2a"},{name:"Red Team",freq:1215,color:"#ff4444"},{name:"Blue Team",freq:1217,color:"#3434fd"},{name:"Response Team",freq:1345,color:"#2681a5"},{name:"Special Ops",freq:1341,color:"#2681a5"},{name:"Supply",freq:1347,color:"#b88646"},{name:"Service",freq:1349,color:"#6ca729"},{name:"Science",freq:1351,color:"#c68cfa"},{name:"Command",freq:1353,color:"#5177ff"},{name:"Procedure",freq:1339,color:"#F70285"},{name:"Medical",freq:1355,color:"#57b8f0"},{name:"Medical(I)",freq:1485,color:"#57b8f0"},{name:"Engineering",freq:1357,color:"#f37746"},{name:"Security",freq:1359,color:"#dd3535"},{name:"Security(I)",freq:1475,color:"#dd3535"},{name:"AI Private",freq:1343,color:"#d65d95"},{name:"Common",freq:1459,color:"#1ecc43"}];var o=[{id:"o2",name:"Oxygen",label:"O\u2082",color:"blue"},{id:"n2",name:"Nitrogen",label:"N\u2082",color:"red"},{id:"co2",name:"Carbon Dioxide",label:"CO\u2082",color:"grey"},{id:"plasma",name:"Plasma",label:"Plasma",color:"pink"},{id:"water_vapor",name:"Water Vapor",label:"H\u2082O",color:"grey"},{id:"nob",name:"Hyper-noblium",label:"Hyper-nob",color:"teal"},{id:"n2o",name:"Nitrous Oxide",label:"N\u2082O",color:"red"},{id:"no2",name:"Nitryl",label:"NO\u2082",color:"brown"},{id:"tritium",name:"Tritium",label:"Tritium",color:"green"},{id:"bz",name:"BZ",label:"BZ",color:"purple"},{id:"stim",name:"Stimulum",label:"Stimulum",color:"purple"},{id:"pluox",name:"Pluoxium",label:"Pluoxium",color:"blue"},{id:"miasma",name:"Miasma",label:"Miasma",color:"olive"},{id:"hydrogen",name:"Hydrogen",label:"H\u2082",color:"white"},{id:"ab",name:"Agent B",label:"Agent B",color:"purple"}];t.getGasLabel=function(e,t){var n=String(e).toLowerCase(),r=o.find((function(e){return e.id===n||e.name.toLowerCase()===n}));return r&&r.label||t||e};t.getGasColor=function(e){var t=String(e).toLowerCase(),n=o.find((function(e){return e.id===t||e.name.toLowerCase()===t}));return n&&n.color};t.timeAgo=function(e,t){if(e>t)return"in the future";var n=(t/=10)-(e/=10);if(n>3600){var o=Math.round(n/3600);return o+" hour"+(1===o?"":"s")+" ago"}if(n>60){var r=Math.round(n/60);return r+" minute"+(1===r?"":"s")+" ago"}var a=Math.round(n);return a+" second"+(1===a?"":"s")+" ago"}},function(e,t,n){"use strict";t.__esModule=!0,t.LabeledListItem=t.LabeledListDivider=t.LabeledList=void 0;var o=n(0),r=n(8),a=n(22),c=n(222),i=["className","label","labelColor","color","textAlign","verticalAlign","buttons","content","children","noColon"];var l=function(e){var t=e.children;return(0,o.createVNode)(1,"table","LabeledList",t,0)};t.LabeledList=l,l.defaultHooks=r.pureComponentHooks;var d=function(e){var t=e.className,n=e.label,c=e.labelColor,l=void 0===c?"label":c,d=e.color,u=e.textAlign,s=e.verticalAlign,m=e.buttons,p=e.content,h=e.children,f=e.noColon,C=void 0!==f&&f,N=function(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}(e,i),b=C?"":":";return(0,o.createVNode)(1,"tr",(0,r.classes)(["LabeledList__row",t]),[(0,o.createComponentVNode)(2,a.Box,{as:"td",color:l,verticalAlign:s,className:(0,r.classes)(["LabeledList__cell","LabeledList__label"]),children:n?n+b:null}),(0,o.normalizeProps)((0,o.createComponentVNode)(2,a.Box,Object.assign({as:"td",color:d,textAlign:u,verticalAlign:s,className:(0,r.classes)(["LabeledList__cell","LabeledList__content"]),colSpan:m?undefined:2},N,{children:[p,h]}))),m&&(0,o.createVNode)(1,"td","LabeledList__cell LabeledList__buttons",m,0)],0)};t.LabeledListItem=d,d.defaultHooks=r.pureComponentHooks;var u=function(e){var t=e.size?(0,a.unit)(Math.max(0,e.size-1)):0;return(0,o.createVNode)(1,"tr","LabeledList__row",(0,o.createVNode)(1,"td",null,(0,o.createComponentVNode)(2,c.Divider),2,{colSpan:3,style:{"padding-top":t,"padding-bottom":t}}),2)};t.LabeledListDivider=u,u.defaultHooks=r.pureComponentHooks,l.Item=d,l.Divider=u},function(e,t,n){"use strict";var o=n(7),r=o({}.toString),a=o("".slice);e.exports=function(e){return a(r(e),8,-1)}},function(e,t,n){"use strict";var o=n(7);e.exports=o({}.isPrototypeOf)},function(e,t,n){"use strict";var o=n(84),r=Function.prototype,a=r.apply,c=r.call;e.exports="object"==typeof Reflect&&Reflect.apply||(o?c.bind(a):function(){return c.apply(a,arguments)})},function(e,t,n){"use strict";var o=n(30);e.exports=o("navigator","userAgent")||""},function(e,t,n){"use strict";var o=n(9),r=n(17),a=n(64);e.exports=o?function(e,t,n){return r.f(e,t,a(1,n))}:function(e,t,n){return e[t]=n,e}},function(e,t,n){"use strict";var o=n(41),r=Math.max,a=Math.min;e.exports=function(e,t){var n=o(e);return n<0?r(n+t,0):a(n,t)}},function(e,t,n){"use strict";var o,r=n(10),a=n(136),c=n(134),i=n(87),l=n(179),d=n(131),u=n(104),s=u("IE_PROTO"),m=function(){},p=function(e){return"