diff --git a/_maps/RandomRuins/RockRuins/rockplanet_crash.dmm b/_maps/RandomRuins/RockRuins/rockplanet_crash.dmm new file mode 100644 index 000000000000..43db217f9dcb --- /dev/null +++ b/_maps/RandomRuins/RockRuins/rockplanet_crash.dmm @@ -0,0 +1,2102 @@ +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"as" = ( +/obj/effect/spawner/structure/window/shuttle, +/obj/machinery/door/poddoor{ + id = "whiteship_bridge" + }, +/turf/open/floor/plating, +/area/ruin/unpowered) +"aH" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/effect/turf_decal/corner/opaque/blue{ + dir = 8 + }, +/obj/effect/turf_decal/corner/opaque/blue{ + dir = 1 + }, +/obj/effect/decal/cleanable/blood/tracks{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/ruin/unpowered) +"aS" = ( +/obj/structure/marker_beacon, +/obj/effect/decal/cleanable/blood/tracks, +/turf/open/floor/plating/asteroid/rockplanet/lit, +/area/overmap_encounter/planetoid/rockplanet/explored) +"bl" = ( +/obj/effect/decal/cleanable/blood, +/obj/structure/catwalk/over/plated_catwalk, +/obj/structure/cable{ + icon_state = "1-2" + }, +/mob/living/simple_animal/hostile/hivebot/rapid/rockplanet, +/turf/open/floor/plating, +/area/ruin/unpowered) +"bC" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/door/airlock/medical/glass, +/obj/structure/barricade/wooden/crude, +/turf/open/floor/plasteel, +/area/ruin/unpowered) +"cb" = ( +/obj/structure/chair{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel, +/area/ruin/unpowered) +"cg" = ( +/obj/item/stack/ore/salvage/scraptitanium, +/turf/open/floor/plating, +/area/ruin/unpowered) +"cr" = ( +/obj/effect/decal/cleanable/blood, +/obj/machinery/power/terminal{ + dir = 1 + }, +/obj/structure/cable{ + icon_state = "0-2" + }, +/turf/open/floor/plating, +/area/ruin/unpowered) +"ct" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/turf_decal/corner/opaque/blue{ + dir = 8 + }, +/obj/effect/turf_decal/corner/opaque/blue, +/obj/effect/turf_decal/corner/opaque/blue{ + dir = 4 + }, +/obj/machinery/airalarm/directional/south{ + pixel_y = -25 + }, +/turf/open/floor/plating, +/area/ruin/unpowered) +"cD" = ( +/obj/structure/tank_dispenser/oxygen, +/obj/effect/turf_decal/corner/opaque/brown{ + dir = 4 + }, +/obj/effect/turf_decal/corner/opaque/brown, +/obj/effect/turf_decal/corner/opaque/brown{ + dir = 8 + }, +/turf/open/floor/plating, +/area/ruin/unpowered) +"cZ" = ( +/obj/effect/turf_decal/corner/opaque/green{ + dir = 1 + }, +/obj/effect/turf_decal/corner/opaque/green{ + dir = 4 + }, +/obj/effect/turf_decal/corner/opaque/green, +/obj/machinery/hydroponics/constructable, +/turf/open/floor/plating, +/area/ruin/unpowered) +"dh" = ( +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel, +/area/ruin/unpowered) +"dj" = ( +/obj/machinery/computer/crew, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/turf_decal/corner/opaque/blue, +/obj/effect/turf_decal/corner/opaque/blue{ + dir = 4 + }, +/obj/effect/turf_decal/corner/opaque/blue{ + dir = 1 + }, +/turf/open/floor/plating, +/area/ruin/unpowered) +"dr" = ( +/obj/effect/decal/cleanable/blood/tracks{ + dir = 1 + }, +/turf/closed/wall/mineral/titanium, +/area/ruin/unpowered) +"ej" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/turf_decal/corner/opaque/green{ + dir = 4 + }, +/obj/machinery/hydroponics/constructable, +/turf/open/floor/plating, +/area/ruin/unpowered) +"ex" = ( +/obj/effect/decal/cleanable/blood/tracks{ + dir = 4 + }, +/obj/effect/decal/cleanable/blood/tracks{ + dir = 5 + }, +/turf/open/floor/plasteel, +/area/ruin/unpowered) +"eE" = ( +/obj/structure/table, +/obj/item/storage/firstaid/regular, +/obj/item/storage/firstaid/regular, +/obj/effect/turf_decal/corner/opaque/blue{ + dir = 1 + }, +/obj/effect/turf_decal/corner/opaque/blue{ + dir = 4 + }, +/obj/effect/turf_decal/corner/opaque/blue, +/turf/open/floor/plating, +/area/ruin/unpowered) +"eG" = ( +/obj/effect/decal/cleanable/blood/tracks{ + dir = 4 + }, +/obj/item/stack/ore/salvage/scraptitanium, +/turf/open/floor/plasteel, +/area/ruin/unpowered) +"eK" = ( +/obj/effect/decal/cleanable/blood/tracks{ + dir = 4 + }, +/turf/open/floor/plating/asteroid/rockplanet/lit, +/area/overmap_encounter/planetoid/rockplanet/explored) +"eX" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 1 + }, +/obj/machinery/advanced_airlock_controller{ + dir = 8; + pixel_x = 25 + }, +/obj/item/flashlight/glowstick/red{ + on = 1 + }, +/turf/open/floor/plasteel, +/area/ruin/unpowered) +"eZ" = ( +/obj/effect/decal/cleanable/blood, +/obj/effect/decal/cleanable/blood/gibs/up, +/turf/open/floor/plating, +/area/ruin/unpowered) +"fg" = ( +/obj/structure/table, +/obj/structure/cable, +/obj/machinery/cell_charger, +/obj/item/stock_parts/cell/high/plus, +/obj/effect/turf_decal/corner/opaque/blue{ + dir = 8 + }, +/obj/effect/turf_decal/corner/opaque/blue{ + dir = 1 + }, +/obj/effect/turf_decal/corner/opaque/blue, +/turf/open/floor/plating, +/area/ruin/unpowered) +"fE" = ( +/obj/effect/turf_decal/corner/opaque/blue, +/turf/open/floor/plating, +/area/ruin/unpowered) +"hj" = ( +/obj/effect/turf_decal/corner/opaque/solgovgold{ + dir = 10 + }, +/turf/open/floor/plasteel, +/area/ruin/unpowered) +"hm" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/structure/barricade/wooden/crude, +/obj/machinery/door/airlock/command/glass{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/ruin/unpowered) +"hs" = ( +/obj/structure/chair, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/turf_decal/corner/opaque/green{ + dir = 4 + }, +/obj/effect/turf_decal/corner/opaque/green{ + dir = 1 + }, +/obj/machinery/airalarm/directional/north{ + pixel_y = 25 + }, +/turf/open/floor/plating, +/area/ruin/unpowered) +"hw" = ( +/obj/effect/mapping_helpers/airlock/cyclelink_helper{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel, +/area/ruin/unpowered) +"hD" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/blood/gibs/old, +/turf/open/floor/plating, +/area/ruin/unpowered) +"hX" = ( +/obj/item/stack/ore/salvage/scraptitanium, +/obj/item/stack/ore/salvage/scraptitanium, +/turf/open/floor/plating, +/area/ruin/unpowered) +"ig" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/blood, +/obj/effect/decal/cleanable/blood{ + icon_state = "floor5"; + pixel_x = -2 + }, +/obj/machinery/power/terminal{ + dir = 8 + }, +/obj/effect/turf_decal/industrial/warning{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/ruin/unpowered) +"ij" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/item/flashlight/glowstick/red{ + on = 1 + }, +/obj/machinery/power/terminal{ + dir = 8 + }, +/obj/effect/turf_decal/corner/opaque/solgovgold{ + dir = 10 + }, +/obj/effect/turf_decal/industrial/warning{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/ruin/unpowered) +"in" = ( +/obj/structure/cable{ + icon_state = "2-8" + }, +/obj/effect/turf_decal/corner/opaque/blue{ + dir = 8 + }, +/obj/effect/turf_decal/corner/opaque/blue{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/ruin/unpowered) +"iK" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/blood, +/obj/effect/decal/cleanable/blood, +/obj/effect/decal/cleanable/blood/tracks{ + dir = 4 + }, +/turf/open/floor/plating, +/area/ruin/unpowered) +"iW" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/blood, +/obj/machinery/door/airlock/external{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/ruin/unpowered) +"jU" = ( +/obj/structure/flora/rock/pile, +/turf/open/floor/plating/asteroid/rockplanet/lit, +/area/overmap_encounter/planetoid/rockplanet/explored) +"kj" = ( +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/structure/barricade/wooden/crude, +/obj/effect/decal/cleanable/blood/tracks, +/obj/machinery/door/airlock/mining, +/turf/open/floor/plasteel, +/area/ruin/unpowered) +"kr" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on{ + dir = 8 + }, +/turf/open/floor/plating, +/area/ruin/unpowered) +"kE" = ( +/obj/machinery/door/airlock/public/glass{ + name = "Crew Quarters" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/cable{ + icon_state = "1-2" + }, +/turf/open/floor/plasteel, +/area/ruin/unpowered) +"kF" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/cable{ + icon_state = "1-4" + }, +/obj/effect/turf_decal/corner/opaque/blue{ + dir = 1 + }, +/obj/effect/turf_decal/corner/opaque/blue{ + dir = 4 + }, +/turf/open/floor/plating, +/area/ruin/unpowered) +"li" = ( +/obj/effect/decal/cleanable/blood/tracks{ + dir = 10 + }, +/turf/open/floor/plating/asteroid/rockplanet/lit, +/area/overmap_encounter/planetoid/rockplanet/explored) +"lu" = ( +/obj/effect/decal/cleanable/blood{ + icon_state = "floor5"; + pixel_x = -2 + }, +/obj/effect/decal/cleanable/blood/gibs/limb, +/obj/structure/girder/displaced, +/turf/open/floor/plasteel, +/area/ruin/unpowered) +"lF" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/machinery/power/smes/shuttle/precharged{ + dir = 4 + }, +/obj/structure/window/reinforced/spawner/west, +/turf/open/floor/plating, +/area/ruin/unpowered) +"lG" = ( +/obj/structure/closet/emcloset/anchored, +/obj/effect/decal/cleanable/blood, +/obj/effect/turf_decal/corner/opaque/blue{ + dir = 8 + }, +/obj/effect/turf_decal/corner/opaque/blue{ + dir = 1 + }, +/obj/effect/turf_decal/corner/opaque/blue{ + dir = 4 + }, +/turf/open/floor/plating, +/area/ruin/unpowered) +"lZ" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/structure/barricade/wooden/crude, +/obj/machinery/door/airlock/public/glass{ + name = "Crew Quarters" + }, +/turf/open/floor/plasteel, +/area/ruin/unpowered) +"mq" = ( +/obj/structure/table, +/obj/item/reagent_containers/food/condiment/saltshaker{ + pixel_x = -10; + pixel_y = 10 + }, +/obj/item/reagent_containers/food/condiment/peppermill{ + pixel_x = 6; + pixel_y = -2 + }, +/obj/item/trash/plate{ + pixel_x = -6; + pixel_y = -2 + }, +/obj/item/trash/plate{ + pixel_y = 12 + }, +/obj/item/trash/plate{ + pixel_x = 11; + pixel_y = 4 + }, +/obj/item/kitchen/fork{ + pixel_x = 12; + pixel_y = 3 + }, +/obj/item/kitchen/fork{ + pixel_x = -3; + pixel_y = 6 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel, +/area/ruin/unpowered) +"mx" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/turf_decal/corner/opaque/brown{ + dir = 4 + }, +/turf/open/floor/plating, +/area/ruin/unpowered) +"my" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/turf_decal/corner/opaque/brown{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/ruin/unpowered) +"mN" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/blood/tracks{ + dir = 4 + }, +/obj/machinery/door/airlock/external{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/ruin/unpowered) +"nv" = ( +/turf/closed/wall/mineral/titanium/nodiagonal, +/area/ruin/unpowered) +"nX" = ( +/obj/machinery/door/airlock/mining, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 1 + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/turf/open/floor/plasteel, +/area/ruin/unpowered) +"ou" = ( +/obj/item/flashlight/glowstick/red{ + on = 1 + }, +/turf/open/floor/plating/asteroid/rockplanet/lit, +/area/overmap_encounter/planetoid/rockplanet/explored) +"oA" = ( +/obj/structure/table, +/obj/machinery/microwave{ + pixel_x = -3; + pixel_y = 6 + }, +/obj/effect/turf_decal/corner/opaque/green{ + dir = 8 + }, +/turf/open/floor/plating, +/area/ruin/unpowered) +"oG" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 1 + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/door/airlock/mining, +/turf/open/floor/plasteel, +/area/ruin/unpowered) +"qg" = ( +/obj/structure/girder, +/turf/open/floor/plating, +/area/ruin/unpowered) +"qi" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 4 + }, +/obj/effect/decal/cleanable/blood/tracks{ + dir = 4 + }, +/obj/item/flashlight/glowstick/red{ + on = 1 + }, +/mob/living/simple_animal/hostile/hivebot/strong/rockplanet, +/turf/open/floor/plating, +/area/ruin/unpowered) +"qS" = ( +/obj/structure/closet/emcloset/anchored, +/obj/effect/turf_decal/corner/opaque/brown, +/obj/effect/turf_decal/corner/opaque/brown{ + dir = 8 + }, +/obj/effect/turf_decal/corner/opaque/brown{ + dir = 1 + }, +/obj/item/electronics/apc, +/turf/open/floor/plating, +/area/ruin/unpowered) +"rb" = ( +/obj/effect/decal/cleanable/plasma, +/obj/effect/decal/cleanable/glass, +/turf/open/floor/plating, +/area/ruin/unpowered) +"rf" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on{ + dir = 8 + }, +/obj/effect/turf_decal/corner/opaque/brown{ + dir = 1 + }, +/obj/effect/turf_decal/corner/opaque/brown{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/ruin/unpowered) +"rB" = ( +/obj/machinery/light/broken/directional/south, +/obj/effect/turf_decal/corner/opaque/blue, +/obj/effect/turf_decal/corner/opaque/blue{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/ruin/unpowered) +"rH" = ( +/obj/effect/turf_decal/corner/opaque/solgovgold{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/ruin/unpowered) +"sN" = ( +/obj/machinery/processor, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/turf_decal/corner/opaque/green{ + dir = 8 + }, +/turf/open/floor/plating, +/area/ruin/unpowered) +"sX" = ( +/obj/machinery/light/broken/directional/west, +/obj/effect/turf_decal/corner/opaque/blue{ + dir = 8 + }, +/obj/effect/turf_decal/corner/opaque/blue{ + dir = 1 + }, +/obj/effect/turf_decal/corner/opaque/blue{ + dir = 4 + }, +/turf/open/floor/plating, +/area/ruin/unpowered) +"sY" = ( +/obj/effect/decal/cleanable/blood, +/obj/effect/turf_decal/corner/opaque/green{ + dir = 1 + }, +/obj/structure/sink{ + pixel_y = 20 + }, +/turf/open/floor/plasteel, +/area/ruin/unpowered) +"tc" = ( +/obj/structure/chair{ + dir = 1 + }, +/turf/open/floor/plating, +/area/ruin/unpowered) +"tX" = ( +/obj/effect/turf_decal/corner/opaque/blue{ + dir = 4 + }, +/obj/machinery/airalarm/directional/north{ + pixel_y = 25 + }, +/obj/effect/decal/cleanable/blood, +/turf/open/floor/plasteel, +/area/ruin/unpowered) +"ua" = ( +/obj/effect/decal/cleanable/blood/tracks, +/turf/open/floor/plasteel, +/area/ruin/unpowered) +"ul" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 8 + }, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/turf_decal/corner/opaque/brown{ + dir = 1 + }, +/obj/effect/turf_decal/corner/opaque/brown{ + dir = 4 + }, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/blood, +/turf/open/floor/plasteel, +/area/ruin/unpowered) +"uo" = ( +/obj/machinery/door/airlock/external, +/turf/open/floor/plasteel, +/area/ruin/unpowered) +"uU" = ( +/obj/structure/table, +/obj/machinery/reagentgrinder{ + pixel_y = 6 + }, +/obj/item/kitchen/knife{ + pixel_x = 16 + }, +/obj/item/kitchen/rollingpin{ + pixel_x = 8 + }, +/obj/item/storage/box/drinkingglasses{ + pixel_x = 4; + pixel_y = 4 + }, +/obj/item/storage/box/donkpockets, +/obj/effect/turf_decal/corner/opaque/green, +/turf/open/floor/plating, +/area/ruin/unpowered) +"va" = ( +/obj/effect/turf_decal/corner/opaque/green{ + dir = 8 + }, +/turf/open/floor/plating, +/area/ruin/unpowered) +"vJ" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/turf_decal/industrial/warning{ + dir = 8 + }, +/turf/open/floor/plating, +/area/ruin/unpowered) +"vO" = ( +/obj/effect/decal/cleanable/blood, +/turf/open/floor/plasteel, +/area/ruin/unpowered) +"vT" = ( +/obj/structure/table, +/obj/item/gps{ + gpstag = "NTREC1"; + pixel_x = -9; + pixel_y = 7 + }, +/obj/item/megaphone{ + pixel_x = 3; + pixel_y = -3 + }, +/obj/effect/turf_decal/corner/opaque/blue, +/turf/open/floor/plating, +/area/ruin/unpowered) +"wh" = ( +/obj/effect/decal/cleanable/blood, +/obj/effect/turf_decal/corner/opaque/blue{ + dir = 8 + }, +/turf/open/floor/plating, +/area/ruin/unpowered) +"wn" = ( +/obj/machinery/light/broken/directional/east, +/obj/effect/turf_decal/corner/opaque/green, +/obj/machinery/hydroponics/constructable, +/turf/open/floor/plating, +/area/ruin/unpowered) +"wt" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/door/airlock/medical/glass, +/turf/open/floor/plasteel, +/area/ruin/unpowered) +"ww" = ( +/obj/effect/decal/cleanable/blood{ + icon_state = "floor5"; + pixel_x = -2 + }, +/obj/effect/turf_decal/corner/opaque/solgovgold{ + dir = 5 + }, +/turf/open/floor/plating, +/area/ruin/unpowered) +"wB" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on, +/turf/open/floor/plating, +/area/ruin/unpowered) +"wG" = ( +/obj/structure/chair/comfy/shuttle{ + dir = 4 + }, +/obj/effect/turf_decal/corner/opaque/blue{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/ruin/unpowered) +"wH" = ( +/turf/open/floor/plating, +/area/ruin/unpowered) +"wM" = ( +/obj/structure/grille, +/turf/open/floor/plating, +/area/ruin/unpowered) +"xb" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/blood, +/turf/open/floor/plating, +/area/ruin/unpowered) +"xo" = ( +/obj/item/ectoplasm, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/blood/tracks{ + dir = 4 + }, +/obj/item/flashlight/glowstick/red{ + on = 1 + }, +/turf/open/floor/plating, +/area/ruin/unpowered) +"xt" = ( +/obj/structure/cable{ + icon_state = "0-8" + }, +/obj/effect/turf_decal/corner/opaque/green{ + dir = 4 + }, +/obj/effect/turf_decal/corner/opaque/green{ + dir = 1 + }, +/obj/item/flashlight/glowstick/red{ + on = 1 + }, +/turf/open/floor/plating, +/area/ruin/unpowered) +"xI" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/blood/tracks{ + dir = 4 + }, +/turf/open/floor/plating, +/area/ruin/unpowered) +"xT" = ( +/obj/structure/table, +/obj/machinery/recharger, +/obj/item/gun/energy/laser/retro, +/obj/effect/turf_decal/corner/opaque/blue{ + dir = 4 + }, +/turf/open/floor/plating, +/area/ruin/unpowered) +"xY" = ( +/obj/effect/decal/cleanable/blood/tracks{ + dir = 5 + }, +/turf/open/floor/plating/asteroid/rockplanet/lit, +/area/overmap_encounter/planetoid/rockplanet/explored) +"yb" = ( +/obj/structure/catwalk/over/plated_catwalk, +/turf/open/floor/plating, +/area/ruin/unpowered) +"zd" = ( +/obj/effect/spawner/structure/window/shuttle, +/obj/machinery/atmospherics/pipe/simple/yellow/visible, +/obj/machinery/door/poddoor{ + id = "whiteship_windows" + }, +/turf/open/floor/plating, +/area/ruin/unpowered) +"zo" = ( +/obj/effect/spawner/structure/window/shuttle, +/obj/machinery/door/poddoor{ + id = "whiteship_bridge"; + dir = 4 + }, +/turf/open/floor/plating, +/area/ruin/unpowered) +"zF" = ( +/obj/effect/decal/cleanable/blood, +/obj/effect/decal/cleanable/blood/tracks{ + dir = 6 + }, +/obj/effect/decal/cleanable/blood/tracks{ + dir = 10 + }, +/turf/open/floor/plasteel, +/area/ruin/unpowered) +"zP" = ( +/obj/effect/decal/cleanable/blood/tracks{ + dir = 4 + }, +/obj/item/flashlight/glowstick/red{ + on = 1 + }, +/turf/open/floor/plasteel, +/area/ruin/unpowered) +"Ao" = ( +/obj/machinery/power/smes/shuttle/precharged{ + dir = 4 + }, +/obj/structure/window/reinforced/spawner/west, +/turf/open/floor/plating, +/area/ruin/unpowered) +"Aw" = ( +/obj/structure/cable{ + icon_state = "0-8" + }, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/turf_decal/corner/opaque/brown{ + dir = 8 + }, +/mob/living/simple_animal/hostile/hivebot/rapid/rockplanet, +/turf/open/floor/plasteel, +/area/ruin/unpowered) +"Ax" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/structure/fans/tiny, +/obj/machinery/door/airlock/external{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/ruin/unpowered) +"Ba" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/blood, +/turf/open/floor/plasteel, +/area/ruin/unpowered) +"Bz" = ( +/obj/machinery/atmospherics/components/unary/vent_pump, +/obj/machinery/advanced_airlock_controller{ + dir = 8; + pixel_x = 25 + }, +/turf/open/floor/plating, +/area/ruin/unpowered) +"BC" = ( +/obj/machinery/suit_storage_unit/atmos, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/turf_decal/corner/opaque/brown{ + dir = 8 + }, +/obj/effect/turf_decal/corner/opaque/brown{ + dir = 1 + }, +/obj/effect/turf_decal/corner/opaque/brown{ + dir = 4 + }, +/obj/effect/turf_decal/corner/opaque/brown, +/turf/open/floor/plating, +/area/ruin/unpowered) +"BV" = ( +/obj/effect/decal/cleanable/blood, +/obj/effect/decal/cleanable/blood/gibs/body, +/obj/effect/decal/cleanable/blood/tracks, +/obj/structure/catwalk/over/plated_catwalk, +/obj/structure/cable{ + icon_state = "0-2" + }, +/obj/structure/cable{ + icon_state = "2-9" + }, +/turf/open/floor/plating, +/area/ruin/unpowered) +"BW" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/cable{ + icon_state = "2-4" + }, +/obj/effect/turf_decal/corner/opaque/brown, +/obj/effect/turf_decal/corner/opaque/brown{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/ruin/unpowered) +"BX" = ( +/obj/structure/table, +/obj/item/radio{ + pixel_x = 6; + pixel_y = 14 + }, +/obj/effect/decal/cleanable/dirt/dust, +/obj/machinery/button/door{ + id = "whiteship_windows"; + name = "Windows Blast Door Control"; + pixel_x = -22; + pixel_y = -6 + }, +/obj/machinery/button/door{ + id = "whiteship_bridge"; + name = "Bridge Blast Door Control"; + pixel_x = -22; + pixel_y = 2 + }, +/obj/effect/turf_decal/corner/opaque/blue{ + dir = 8 + }, +/obj/effect/turf_decal/corner/opaque/blue{ + dir = 1 + }, +/obj/effect/turf_decal/corner/opaque/blue{ + dir = 4 + }, +/obj/item/areaeditor/shuttle, +/turf/open/floor/plating, +/area/ruin/unpowered) +"Cm" = ( +/obj/structure/cable{ + icon_state = "0-8" + }, +/obj/effect/turf_decal/corner/opaque/blue{ + dir = 1 + }, +/mob/living/simple_animal/hostile/hivebot/strong/rockplanet, +/turf/open/floor/plating, +/area/ruin/unpowered) +"Dc" = ( +/obj/machinery/door/airlock/external, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/ruin/unpowered) +"Dj" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/fans/tiny, +/obj/machinery/door/airlock/external{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/ruin/unpowered) +"Dr" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/structure/girder, +/turf/open/floor/plating, +/area/ruin/unpowered) +"Es" = ( +/turf/open/floor/plating/asteroid/rockplanet/lit, +/area/overmap_encounter/planetoid/rockplanet/explored) +"Ez" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on{ + dir = 1 + }, +/obj/effect/decal/cleanable/blood, +/obj/effect/turf_decal/corner/opaque/blue{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/ruin/unpowered) +"EQ" = ( +/obj/effect/spawner/structure/window/shuttle, +/obj/machinery/door/poddoor{ + id = "whiteship_windows" + }, +/turf/open/floor/plating, +/area/ruin/unpowered) +"Fa" = ( +/obj/structure/table, +/obj/item/storage/firstaid/fire, +/obj/item/storage/firstaid/brute, +/obj/effect/turf_decal/corner/opaque/blue, +/obj/effect/turf_decal/corner/opaque/blue{ + dir = 8 + }, +/obj/effect/turf_decal/corner/opaque/blue{ + dir = 1 + }, +/obj/effect/turf_decal/corner/opaque/blue{ + dir = 4 + }, +/turf/open/floor/plating, +/area/ruin/unpowered) +"Fe" = ( +/obj/effect/turf_decal/corner/opaque/brown{ + dir = 1 + }, +/obj/structure/ore_box, +/turf/open/floor/plating, +/area/ruin/unpowered) +"Fn" = ( +/obj/structure/marker_beacon, +/obj/effect/decal/cleanable/blood/tracks{ + dir = 5 + }, +/turf/open/floor/plating/asteroid/rockplanet/lit, +/area/overmap_encounter/planetoid/rockplanet/explored) +"Ge" = ( +/obj/machinery/power/smes/engineering, +/obj/structure/cable{ + icon_state = "0-8" + }, +/turf/open/floor/plating, +/area/ruin/unpowered) +"Gz" = ( +/obj/effect/decal/cleanable/blood{ + icon_state = "floor5"; + pixel_x = -2 + }, +/obj/effect/decal/cleanable/blood/gibs/core, +/obj/effect/decal/cleanable/blood/tracks, +/obj/effect/mob_spawn/human/corpse/damaged, +/mob/living/simple_animal/hostile/hivebot/range/rockplanet, +/turf/open/floor/plasteel, +/area/ruin/unpowered) +"GW" = ( +/obj/effect/turf_decal/corner/opaque/blue, +/obj/effect/turf_decal/corner/opaque/blue{ + dir = 8 + }, +/obj/effect/turf_decal/corner/opaque/blue{ + dir = 4 + }, +/turf/open/floor/plating, +/area/ruin/unpowered) +"Hl" = ( +/obj/effect/turf_decal/corner/opaque/brown, +/obj/machinery/airalarm/directional/south{ + pixel_y = -25 + }, +/obj/structure/rack, +/obj/item/pickaxe/emergency, +/obj/item/pickaxe/emergency, +/turf/open/floor/plasteel, +/area/ruin/unpowered) +"Hm" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on{ + dir = 4 + }, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/blood, +/obj/machinery/power/terminal{ + dir = 8 + }, +/obj/effect/turf_decal/industrial/warning{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/ruin/unpowered) +"Ht" = ( +/obj/structure/chair/comfy/shuttle{ + dir = 4 + }, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/turf_decal/corner/opaque/blue, +/turf/open/floor/plating, +/area/ruin/unpowered) +"Hx" = ( +/obj/effect/decal/cleanable/blood/gibs/down, +/obj/effect/decal/cleanable/blood/tracks, +/obj/structure/catwalk/over/plated_catwalk, +/obj/structure/cable{ + icon_state = "0-1" + }, +/turf/open/floor/plating, +/area/ruin/unpowered) +"HD" = ( +/obj/structure/grille/broken, +/obj/effect/decal/cleanable/glass, +/turf/open/floor/plating, +/area/ruin/unpowered) +"HE" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/blood/tracks{ + dir = 4 + }, +/obj/structure/marker_beacon, +/turf/open/floor/plating, +/area/ruin/unpowered) +"HW" = ( +/obj/structure/table, +/obj/item/healthanalyzer, +/obj/item/storage/firstaid/o2, +/obj/effect/turf_decal/corner/opaque/blue{ + dir = 4 + }, +/obj/effect/turf_decal/corner/opaque/blue, +/obj/effect/turf_decal/corner/opaque/blue{ + dir = 8 + }, +/obj/effect/turf_decal/corner/opaque/blue{ + dir = 1 + }, +/obj/item/defibrillator/loaded, +/turf/open/floor/plating, +/area/ruin/unpowered) +"If" = ( +/obj/effect/decal/cleanable/blood, +/turf/closed/wall/mineral/titanium, +/area/ruin/unpowered) +"Iw" = ( +/obj/item/stack/sheet/mineral/titanium, +/obj/structure/girder/displaced, +/turf/open/floor/plating, +/area/ruin/unpowered) +"II" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/turf_decal/corner/opaque/brown, +/obj/item/flashlight/glowstick/red{ + on = 1 + }, +/turf/open/floor/plasteel, +/area/ruin/unpowered) +"IO" = ( +/obj/effect/decal/cleanable/blood/tracks{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/ruin/unpowered) +"IU" = ( +/obj/machinery/suit_storage_unit/atmos, +/obj/effect/turf_decal/corner/opaque/brown{ + dir = 8 + }, +/obj/effect/turf_decal/corner/opaque/brown{ + dir = 1 + }, +/obj/effect/turf_decal/corner/opaque/brown{ + dir = 4 + }, +/obj/effect/turf_decal/corner/opaque/brown, +/turf/open/floor/plasteel, +/area/ruin/unpowered) +"Jh" = ( +/turf/open/floor/plasteel, +/area/ruin/unpowered) +"Jq" = ( +/obj/effect/decal/cleanable/blood, +/obj/effect/decal/cleanable/blood{ + icon_state = "floor5"; + pixel_x = -2 + }, +/turf/open/floor/plating, +/area/ruin/unpowered) +"JE" = ( +/obj/machinery/power/shuttle/engine/electric{ + dir = 4 + }, +/turf/open/floor/plating, +/area/ruin/unpowered) +"JX" = ( +/obj/machinery/computer/monitor{ + dir = 8 + }, +/obj/effect/turf_decal/corner/opaque/blue{ + dir = 4 + }, +/obj/effect/turf_decal/corner/opaque/blue, +/obj/effect/turf_decal/corner/opaque/blue{ + dir = 1 + }, +/obj/item/radio/intercom/wideband/directional/north, +/turf/open/floor/plating, +/area/ruin/unpowered) +"Ka" = ( +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/effect/decal/cleanable/blood, +/obj/effect/decal/cleanable/blood/tracks, +/obj/structure/door_assembly/door_assembly_min{ + anchored = 1 + }, +/turf/open/floor/plasteel, +/area/ruin/unpowered) +"KH" = ( +/obj/item/chainsaw, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/blood, +/turf/open/floor/plating, +/area/ruin/unpowered) +"KV" = ( +/obj/effect/decal/cleanable/blood, +/turf/open/floor/plating, +/area/ruin/unpowered) +"Lq" = ( +/obj/effect/decal/cleanable/blood/innards, +/turf/open/floor/plating, +/area/ruin/unpowered) +"Lz" = ( +/obj/effect/turf_decal/corner/opaque/green{ + dir = 4 + }, +/obj/effect/turf_decal/corner/opaque/green, +/obj/effect/turf_decal/corner/opaque/green{ + dir = 8 + }, +/turf/open/floor/plating, +/area/ruin/unpowered) +"LK" = ( +/obj/structure/closet/secure_closet/freezer/fridge/open, +/obj/item/reagent_containers/food/snacks/meat/slab/synthmeat{ + pixel_x = -3; + pixel_y = 3 + }, +/obj/item/reagent_containers/food/snacks/meat/slab/synthmeat{ + pixel_x = -3; + pixel_y = 3 + }, +/obj/item/reagent_containers/food/snacks/meat/slab/synthmeat{ + pixel_x = -3; + pixel_y = 3 + }, +/obj/item/reagent_containers/food/condiment/flour{ + pixel_x = -3; + pixel_y = 3 + }, +/obj/item/reagent_containers/food/condiment/flour{ + pixel_x = -3; + pixel_y = 3 + }, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/turf_decal/corner/opaque/green, +/turf/open/floor/plating, +/area/ruin/unpowered) +"Mn" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/blood/tracks{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/ruin/unpowered) +"Nr" = ( +/obj/effect/decal/cleanable/blood/tracks{ + dir = 1 + }, +/turf/open/floor/plating, +/area/ruin/unpowered) +"Nt" = ( +/turf/closed/wall/mineral/titanium, +/area/ruin/unpowered) +"Nu" = ( +/obj/structure/catwalk/over/plated_catwalk, +/obj/structure/cable{ + icon_state = "0-4" + }, +/turf/open/floor/plating, +/area/ruin/unpowered) +"On" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/blood, +/obj/effect/turf_decal/corner/opaque/brown{ + dir = 4 + }, +/obj/effect/turf_decal/corner/opaque/brown{ + dir = 1 + }, +/turf/open/floor/plating, +/area/ruin/unpowered) +"OB" = ( +/obj/effect/turf_decal/corner/opaque/green{ + dir = 4 + }, +/obj/machinery/power/terminal{ + dir = 8 + }, +/obj/effect/turf_decal/industrial/warning{ + dir = 8 + }, +/turf/open/floor/plating, +/area/ruin/unpowered) +"PU" = ( +/obj/item/pickaxe/rusted, +/obj/effect/gibspawner/human/bodypartless, +/turf/open/floor/plating/asteroid/rockplanet/lit, +/area/overmap_encounter/planetoid/rockplanet/explored) +"QE" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/structure/cable{ + icon_state = "4-10" + }, +/obj/effect/turf_decal/corner/opaque/solgovgold{ + dir = 5 + }, +/turf/open/floor/plasteel, +/area/ruin/unpowered) +"QK" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/effect/decal/cleanable/blood/tracks{ + dir = 4 + }, +/obj/machinery/door/airlock/command/glass{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/ruin/unpowered) +"QN" = ( +/obj/structure/catwalk/over/plated_catwalk, +/obj/structure/cable{ + icon_state = "0-5" + }, +/turf/open/floor/plating, +/area/ruin/unpowered) +"Rc" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/cable{ + icon_state = "1-4" + }, +/obj/effect/turf_decal/corner/opaque/green{ + dir = 4 + }, +/obj/effect/turf_decal/corner/opaque/green{ + dir = 1 + }, +/obj/effect/decal/cleanable/blood, +/turf/open/floor/plasteel, +/area/ruin/unpowered) +"Rq" = ( +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/ruin/unpowered) +"Ru" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/blood{ + icon_state = "floor5"; + pixel_x = -2 + }, +/obj/effect/turf_decal/corner/opaque/solgovgold{ + dir = 10 + }, +/turf/open/floor/plasteel, +/area/ruin/unpowered) +"RY" = ( +/obj/effect/spawner/structure/window/shuttle, +/obj/machinery/door/poddoor{ + id = "whiteship_windows"; + dir = 4 + }, +/turf/open/floor/plating, +/area/ruin/unpowered) +"Sm" = ( +/obj/structure/girder, +/obj/item/stack/sheet/mineral/titanium, +/turf/open/floor/plating, +/area/ruin/unpowered) +"Sq" = ( +/obj/machinery/power/port_gen/pacman, +/obj/structure/cable, +/turf/open/floor/plating, +/area/ruin/unpowered) +"SC" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/blood/gibs/old, +/obj/effect/decal/cleanable/blood/tracks{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/ruin/unpowered) +"SP" = ( +/obj/structure/marker_beacon, +/turf/open/floor/plating/asteroid/rockplanet/lit, +/area/overmap_encounter/planetoid/rockplanet/explored) +"Tn" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/ruin/unpowered) +"TR" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/dirt/dust, +/obj/structure/frame/computer{ + dir = 1 + }, +/obj/effect/turf_decal/corner/opaque/solgovgold, +/turf/open/floor/plasteel, +/area/ruin/unpowered) +"Up" = ( +/obj/effect/decal/cleanable/blood, +/mob/living/simple_animal/hostile/hivebot/rapid/rockplanet, +/turf/open/floor/plasteel, +/area/ruin/unpowered) +"Us" = ( +/obj/structure/flora/rock, +/turf/open/floor/plating/asteroid/rockplanet/lit, +/area/overmap_encounter/planetoid/rockplanet/explored) +"UA" = ( +/obj/item/stack/ore/salvage/scraptitanium, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/robot_debris, +/turf/open/floor/plating, +/area/ruin/unpowered) +"UE" = ( +/obj/machinery/light/broken/directional/west, +/obj/effect/turf_decal/corner/opaque/blue{ + dir = 1 + }, +/obj/effect/turf_decal/corner/opaque/blue{ + dir = 8 + }, +/obj/effect/turf_decal/corner/opaque/blue, +/turf/open/floor/plating, +/area/ruin/unpowered) +"UI" = ( +/obj/effect/spawner/structure/window/shuttle, +/obj/machinery/door/poddoor{ + id = "whiteship_bridge"; + dir = 8 + }, +/turf/open/floor/plating, +/area/ruin/unpowered) +"UV" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/structure/frame/machine, +/obj/item/stack/cable_coil/cut/red, +/turf/open/floor/plating, +/area/ruin/unpowered) +"Vz" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/blood/tracks{ + dir = 4 + }, +/mob/living/simple_animal/hostile/hivebot/range/rockplanet, +/turf/open/floor/plating, +/area/ruin/unpowered) +"VK" = ( +/obj/machinery/power/terminal{ + dir = 8 + }, +/obj/effect/turf_decal/corner/opaque/solgovgold{ + dir = 5 + }, +/obj/effect/turf_decal/industrial/warning{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/ruin/unpowered) +"VV" = ( +/obj/structure/chair{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/effect/decal/cleanable/blood, +/turf/open/floor/plasteel, +/area/ruin/unpowered) +"VX" = ( +/obj/effect/turf_decal/corner/opaque/blue{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/ruin/unpowered) +"Wh" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 8 + }, +/obj/effect/turf_decal/corner/opaque/blue, +/obj/effect/turf_decal/corner/opaque/blue{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/ruin/unpowered) +"Wi" = ( +/obj/effect/spawner/structure/window/shuttle, +/obj/machinery/door/poddoor{ + id = "whiteship_windows"; + dir = 8 + }, +/turf/open/floor/plating, +/area/ruin/unpowered) +"Wm" = ( +/obj/effect/decal/cleanable/blood/tracks{ + dir = 4 + }, +/turf/open/floor/plating, +/area/ruin/unpowered) +"WS" = ( +/obj/machinery/door/airlock/external, +/obj/effect/mapping_helpers/airlock/cyclelink_helper, +/turf/open/floor/plasteel, +/area/ruin/unpowered) +"Xh" = ( +/obj/structure/table, +/obj/item/storage/bag/plants/portaseeder, +/obj/item/shovel/spade, +/obj/item/cultivator, +/obj/item/plant_analyzer, +/obj/item/reagent_containers/glass/bucket, +/obj/effect/turf_decal/corner/opaque/green, +/obj/machinery/power/terminal{ + dir = 8 + }, +/obj/effect/turf_decal/industrial/warning{ + dir = 8 + }, +/turf/open/floor/plating, +/area/ruin/unpowered) +"Xs" = ( +/obj/effect/turf_decal/corner/opaque/blue{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/ruin/unpowered) +"XI" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/blood, +/obj/effect/decal/cleanable/blood, +/obj/machinery/power/terminal{ + dir = 8 + }, +/obj/effect/turf_decal/industrial/warning{ + dir = 8 + }, +/turf/open/floor/plating, +/area/ruin/unpowered) +"XN" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/blood, +/obj/effect/decal/cleanable/blood, +/turf/open/floor/plating, +/area/ruin/unpowered) +"XV" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/effect/decal/cleanable/dirt/dust, +/obj/machinery/holopad/emergency/command{ + pixel_y = 16 + }, +/turf/open/floor/plasteel, +/area/ruin/unpowered) +"Yp" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/ruin/unpowered) +"Zf" = ( +/turf/closed/mineral/random/rockplanet, +/area/overmap_encounter/planetoid/rockplanet/explored) +"Zg" = ( +/obj/structure/catwalk/over/plated_catwalk, +/obj/structure/cable{ + icon_state = "6-8" + }, +/turf/open/floor/plating, +/area/ruin/unpowered) +"Zm" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on{ + dir = 8 + }, +/obj/machinery/light/broken/directional/south, +/obj/effect/turf_decal/corner/opaque/blue, +/obj/effect/turf_decal/corner/opaque/blue{ + dir = 8 + }, +/obj/effect/decal/cleanable/blood, +/turf/open/floor/plating, +/area/ruin/unpowered) + +(1,1,1) = {" +Es +Es +Es +SP +jU +Es +Es +Nt +Dj +Ax +Nt +Es +Us +Es +SP +Es +Es +Es +"} +(2,1,1) = {" +Nt +JE +rb +JE +JE +Nt +jU +EQ +HE +KH +EQ +Es +Nt +JE +JE +JE +JE +Nt +"} +(3,1,1) = {" +qg +Ao +UV +Ao +lF +Nt +Es +EQ +xo +xb +EQ +Es +Dr +Ao +Ao +Ao +Ao +Nt +"} +(4,1,1) = {" +EQ +VK +vJ +ig +ij +wH +Es +EQ +SC +xb +EQ +Es +Nt +OB +Hm +XI +Xh +EQ +"} +(5,1,1) = {" +EQ +hD +Nu +Jq +TR +Nt +Es +Nt +mN +iW +Nt +Es +Nt +sY +VV +vO +oA +EQ +"} +(6,1,1) = {" +wM +ww +Zg +Lq +xb +If +Nt +nv +IO +Rq +nv +RY +Nt +hs +mq +tc +uU +EQ +"} +(7,1,1) = {" +HD +eZ +Gz +BV +Hx +Ka +ua +kj +zF +Jh +kE +Jh +lZ +Rc +cb +KV +sN +EQ +"} +(8,1,1) = {" +zd +rH +QN +lu +hj +nv +Wi +Nt +iK +XN +nv +RY +Nt +xt +Yp +Up +LK +EQ +"} +(9,1,1) = {" +EQ +QE +yb +Rq +Ru +Nt +Es +qg +eG +Jh +Nt +Es +Nt +wH +kr +xb +va +EQ +"} +(10,1,1) = {" +Nt +Ge +cr +bl +Sq +Sm +Es +EQ +Wm +Rq +EQ +Es +Nt +cZ +wn +ej +Lz +UA +"} +(11,1,1) = {" +Nt +cg +Sm +Nt +Nt +wH +Es +EQ +xI +hD +EQ +Es +Nt +qg +Nt +Nt +Iw +Dr +"} +(12,1,1) = {" +Es +Es +Es +SP +Es +ou +Es +hX +IO +KV +EQ +Es +Es +Es +SP +Es +Es +Es +"} +(13,1,1) = {" +Nt +Nt +Nt +Nt +Nt +Nt +Es +qg +zP +Ba +EQ +Es +Nt +Nt +Nt +Nt +Nt +Nt +"} +(14,1,1) = {" +Nt +IU +II +mx +qS +Nt +Es +Nt +Wm +dh +Nt +Es +Nt +lG +fE +Xs +Fa +EQ +"} +(15,1,1) = {" +nv +RY +xb +On +Hl +Nt +RY +nv +IO +xb +nv +Nt +Nt +tX +rB +nv +RY +nv +"} +(16,1,1) = {" +WS +Bz +hw +ul +BW +nX +Jh +oG +Mn +dh +bC +Jh +wt +kF +Wh +Dc +eX +uo +"} +(17,1,1) = {" +nv +nv +Tn +rf +Aw +Nt +RY +nv +Vz +dh +Nt +RY +nv +Cm +Zm +Nt +Nt +nv +"} +(18,1,1) = {" +Nt +BC +my +Fe +cD +Nt +Es +Nt +ex +Nr +dr +li +Nt +eE +wh +VX +HW +EQ +"} +(19,1,1) = {" +Nt +Nt +RY +Wi +Nt +Nt +Es +Nt +IO +Rq +Nt +eK +Nt +Nt +Wi +Wi +Nt +Nt +"} +(20,1,1) = {" +Es +Es +Es +Es +SP +Es +Es +Nt +Mn +Jh +Nt +xY +aS +li +Es +Es +Es +Zf +"} +(21,1,1) = {" +Zf +Es +Us +Es +Es +Es +Nt +Nt +QK +hm +nv +Nt +Us +eK +ou +Zf +Zf +Zf +"} +(22,1,1) = {" +Zf +Es +Es +jU +Es +Nt +Nt +BX +aH +in +fg +Nt +Nt +eK +Zf +Zf +Zf +Zf +"} +(23,1,1) = {" +Zf +Zf +Es +SP +Es +as +sX +wB +qi +XV +Ez +UE +as +Fn +PU +Es +SP +Es +"} +(24,1,1) = {" +Zf +Zf +Es +ou +Es +as +dj +wG +KV +Rq +Ht +ct +Nt +Es +jU +Zf +Zf +Es +"} +(25,1,1) = {" +Zf +Zf +Zf +Es +Es +Nt +Nt +JX +vT +xT +GW +Nt +Nt +Es +Zf +Zf +Zf +Zf +"} +(26,1,1) = {" +Zf +Zf +Zf +Zf +Es +Es +Nt +UI +UI +zo +Nt +Nt +Es +Es +Es +Es +Zf +Zf +"} diff --git a/_maps/configs/nanotrasen_meta.json b/_maps/configs/nanotrasen_meta.json new file mode 100644 index 000000000000..b4287c3bca3b --- /dev/null +++ b/_maps/configs/nanotrasen_meta.json @@ -0,0 +1,52 @@ +{ + "$schema": "https://raw.githubusercontent.com/shiptest-ss13/Shiptest/master/_maps/ship_config_schema.json", + "map_name": "Meta-class Freighter", + "prefix": "NTSV", + "map_short_name": "Meta-class", + "description": "The Meta-class is a medium freight vessel designed for comfort and sustainability over long journeys of delivering cargo. Most, if not all of these ships are no longer under the direct management of the Company, leaving regulation and professionalism at the behest of individual captains. They can be found running independent contracts, delivering cargo, smuggling illicit goods, and generally trying to stay afloat ever since the collapse of Nanotrasen's operations in the frontier.", + "tags": [ + "Generalist", + "Cargo" + ], + "namelists": [ + "GENERAL", + "SPACE", + "NANOTRASEN", + "HISTORICAL" + ], + "map_path": "_maps/shuttles/nanotrasen/nanotrasen_meta.dmm", + "starting_funds": 5000, + "job_slots": { + "Captain": { + "outfit": "/datum/outfit/job/nanotrasen/captain", + "officer": true, + "slots": 1 + }, + "Quartermaster": { + "outfit": "/datum/outfit/job/nanotrasen/quartermaster", + "officer": true, + "slots": 1 + }, + "Medical Doctor": { + "outfit": "/datum/outfit/job/nanotrasen/doctor", + "slots": 1 + }, + "Ship Engineer": { + "outfit": "/datum/outfit/job/nanotrasen/engineer", + "slots": 1 + }, + "Shaft Miner": { + "outfit": "/datum/outfit/job/nanotrasen/miner", + "slots": 1 + }, + "Cargo Technician": { + "outfit": "/datum/outfit/job/cargo_tech", + "slots": 1 + }, + "Assistant": { + "outfit": "/datum/outfit/job/nanotrasen/assistant", + "slots": 2 + } + }, + "enabled": true +} diff --git a/_maps/configs/pgf_crying_sun.json b/_maps/configs/pgf_crying_sun.json new file mode 100644 index 000000000000..5112e1b25280 --- /dev/null +++ b/_maps/configs/pgf_crying_sun.json @@ -0,0 +1,50 @@ +{ + "$schema": "https://raw.githubusercontent.com/shiptest-ss13/Shiptest/master/_maps/ship_config_schema.json", + "prefix": "PGFN", + "map_name": "Crying Sun-class Light Frigate", + "namelists": [ + "PGF" + ], + "map_short_name": "Crying Sun-class", + "description": "A light frigate mass produced by the Etherbor PGFN Lihmona Navy Shipyard to carry massive linear mounted warguns while keeping high maneuverability. The weapon mount on this ship has been decommissioned, like so many of its kind when sent out of Kalixcian space. The Crying Sun-class is a dual navy and marine vessel, carrying a shuttle for boarding, excursions, and forward scouting. After decommissioning the primary gun, the engines were swapped out for lower power, while engineering equipment has been generously supplied.", + "tags": [ + "Combat", + "Engineering", + "RP Focus" + ], + "starting_funds": 1000, + "map_path": "_maps/shuttles/pgf/pgf_crying_sun.dmm", + "limit": 1, + "job_slots": { + "Captain": { + "outfit": "/datum/outfit/job/gezena/captain", + "officer": true, + "slots": 1 + }, + "Bridge Crew": { + "outfit": "/datum/outfit/job/gezena/assistant/bridge", + "slots": 1 + }, + "Navy Engineer": { + "outfit": "/datum/outfit/job/gezena/engineer", + "slots": 2 + }, + "Navy Doctor": { + "outfit": "/datum/outfit/job/gezena/doctor", + "slots": 1 + }, + "Crewman": { + "outfit": "/datum/outfit/job/gezena/assistant", + "slots": 2 + }, + "Marine Sergeant": { + "outfit": "/datum/outfit/job/gezena/hos", + "slots": 1 + }, + "Marine": { + "outfit": "/datum/outfit/job/gezena/security", + "slots": 3 + } + }, + "enabled":false +} diff --git a/_maps/shuttles/nanotrasen/nanotrasen_meta.dmm b/_maps/shuttles/nanotrasen/nanotrasen_meta.dmm new file mode 100644 index 000000000000..e01ceabaf3b3 --- /dev/null +++ b/_maps/shuttles/nanotrasen/nanotrasen_meta.dmm @@ -0,0 +1,4437 @@ +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"aa" = ( +/turf/template_noop, +/area/template_noop) +"ab" = ( +/turf/closed/wall/mineral/titanium, +/area/ship/engineering) +"ac" = ( +/turf/closed/wall/mineral/titanium/nodiagonal, +/area/ship/engineering) +"ad" = ( +/turf/closed/wall/mineral/titanium, +/area/ship/cargo) +"ae" = ( +/obj/effect/turf_decal/corner/transparent/neutral/full, +/obj/machinery/firealarm/directional/south, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"af" = ( +/obj/effect/turf_decal/corner/transparent/neutral/full, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"ag" = ( +/turf/closed/wall/mineral/titanium, +/area/ship/crew) +"ai" = ( +/turf/closed/wall/mineral/titanium/nodiagonal, +/area/ship/crew) +"aj" = ( +/obj/structure/sign/departments/restroom{ + pixel_y = -32 + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/machinery/light/small/broken/directional/north, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/crew) +"ak" = ( +/obj/machinery/atmospherics/components/unary/tank/air{ + dir = 4; + piping_layer = 2 + }, +/obj/effect/turf_decal/industrial/warning/corner{ + dir = 1 + }, +/obj/machinery/light/small/directional/south, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/ship/engineering) +"al" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer2, +/obj/machinery/firealarm/directional/south, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/ship/engineering) +"am" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/dirt/dust, +/obj/structure/cable{ + icon_state = "1-8" + }, +/turf/open/floor/plasteel/dark, +/area/ship/crew) +"an" = ( +/obj/structure/rack, +/obj/effect/turf_decal/industrial/outline/yellow, +/obj/item/storage/toolbox/mechanical, +/obj/item/clothing/head/welding{ + pixel_x = -3; + pixel_y = 5 + }, +/obj/item/multitool{ + pixel_x = 7; + pixel_y = -4 + }, +/obj/machinery/firealarm/directional/south, +/obj/machinery/light/small/broken/directional/east, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/crew/canteen) +"ao" = ( +/obj/machinery/atmospherics/components/binary/pump{ + dir = 8; + name = "engine fuel pump" + }, +/obj/effect/turf_decal/industrial/warning{ + dir = 8 + }, +/obj/effect/decal/cleanable/ash/large, +/obj/structure/cable{ + icon_state = "1-4" + }, +/obj/structure/cable{ + icon_state = "2-4" + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/ship/engineering) +"ap" = ( +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"aq" = ( +/obj/effect/turf_decal/corner/transparent/neutral/full, +/obj/machinery/door/firedoor/border_only{ + dir = 1 + }, +/obj/machinery/door/firedoor/border_only, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"ar" = ( +/obj/effect/turf_decal/corner/transparent/neutral/full, +/obj/machinery/door/firedoor/border_only{ + dir = 1 + }, +/obj/machinery/door/firedoor/border_only, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"as" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer2, +/obj/machinery/light/small/directional/east, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/crew) +"at" = ( +/obj/effect/turf_decal/corner/transparent/neutral/full, +/obj/machinery/door/airlock/public/glass{ + name = "Canteen"; + dir = 1 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 1 + }, +/obj/machinery/door/firedoor/border_only, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/crew/canteen) +"ax" = ( +/obj/machinery/power/shuttle/engine/electric{ + dir = 4 + }, +/obj/structure/cable{ + icon_state = "0-4" + }, +/turf/open/floor/plating, +/area/ship/engineering) +"ay" = ( +/obj/machinery/atmospherics/pipe/simple/orange/hidden{ + dir = 10 + }, +/obj/structure/cable{ + icon_state = "2-4" + }, +/obj/structure/cable{ + icon_state = "2-8" + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer4{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer2{ + dir = 1 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/ship/engineering) +"az" = ( +/obj/structure/chair/comfy/shuttle{ + dir = 4 + }, +/obj/effect/turf_decal/corner/transparent/neutral/full, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/bridge) +"aA" = ( +/obj/effect/turf_decal/corner/transparent/neutral/full, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4{ + dir = 1 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"aB" = ( +/obj/effect/turf_decal/industrial/outline/yellow, +/obj/structure/closet/crate, +/obj/item/pickaxe, +/obj/item/pickaxe, +/obj/item/shovel, +/obj/item/shovel, +/obj/item/mining_scanner, +/obj/item/mining_scanner, +/obj/machinery/light_switch{ + dir = 8; + pixel_x = 21; + pixel_y = 12 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/ship/engineering) +"aC" = ( +/obj/structure/table, +/obj/item/gps{ + gpstag = "NTREC1"; + pixel_x = -9; + pixel_y = 7 + }, +/obj/item/megaphone{ + pixel_x = -2; + pixel_y = -4 + }, +/obj/item/radio{ + pixel_x = 6; + pixel_y = 7 + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/bridge) +"aE" = ( +/obj/structure/closet/crate{ + icon_state = "crateopen"; + opened = 1 + }, +/obj/effect/spawner/lootdrop/maintenance/three, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/spawner/lootdrop/gloves, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"aF" = ( +/obj/effect/turf_decal/corner/transparent/neutral/full, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"aH" = ( +/obj/structure/table, +/obj/effect/turf_decal/corner/transparent/bar/diagonal, +/obj/item/reagent_containers/food/drinks/flask{ + pixel_x = 5; + pixel_y = 6 + }, +/obj/item/storage/box/drinkingglasses{ + pixel_x = -6; + pixel_y = 4 + }, +/obj/machinery/light/small/broken/directional/north, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel, +/area/ship/crew/canteen) +"aI" = ( +/obj/effect/turf_decal/corner/transparent/bar/diagonal, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel, +/area/ship/crew/canteen) +"aL" = ( +/obj/machinery/power/shuttle/engine/fueled/plasma{ + dir = 4 + }, +/turf/open/floor/plating, +/area/ship/engineering) +"aM" = ( +/obj/machinery/atmospherics/components/unary/shuttle/heater{ + dir = 4 + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/structure/window/reinforced{ + dir = 4 + }, +/turf/open/floor/plating, +/area/ship/engineering) +"aN" = ( +/obj/item/toy/plush/lizardplushie, +/turf/open/floor/plating, +/area/ship/engineering) +"aO" = ( +/obj/structure/window/reinforced/fulltile/shuttle, +/obj/machinery/door/firedoor/window, +/obj/machinery/door/poddoor{ + id = "whiteship_windows"; + dir = 4 + }, +/obj/structure/grille, +/turf/open/floor/plating, +/area/ship/engineering) +"aQ" = ( +/obj/machinery/atmospherics/pipe/simple/orange/hidden, +/obj/effect/turf_decal/corner/transparent/neutral/full, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/engineering) +"aV" = ( +/obj/machinery/suit_storage_unit/standard_unit, +/obj/effect/turf_decal/industrial/hatch/yellow, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/crew) +"bf" = ( +/obj/docking_port/stationary{ + dwidth = 15; + width = 30; + height = 15; + dir = 2 + }, +/turf/template_noop, +/area/template_noop) +"bh" = ( +/obj/effect/turf_decal/corner/transparent/neutral/full, +/obj/structure/cable{ + icon_state = "2-8" + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer4{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer2{ + dir = 4 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/crew) +"bj" = ( +/obj/structure/cable{ + icon_state = "4-9" + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/structure/cable{ + icon_state = "2-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer2{ + dir = 4 + }, +/obj/effect/decal/cleanable/dirt/dust, +/obj/structure/sign/poster/contraband/random{ + pixel_y = 32 + }, +/turf/open/floor/plating, +/area/ship/engineering) +"bm" = ( +/obj/effect/turf_decal/corner/transparent/neutral/full, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"bq" = ( +/obj/effect/turf_decal/corner/transparent/bar/diagonal, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel, +/area/ship/crew/canteen) +"bs" = ( +/obj/effect/turf_decal/corner/transparent/bar/diagonal, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer2{ + dir = 8 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel, +/area/ship/crew/canteen) +"bt" = ( +/obj/effect/turf_decal/corner/transparent/neutral/full, +/obj/machinery/door/airlock/public/glass{ + name = "Canteen"; + dir = 1 + }, +/obj/machinery/door/firedoor/border_only, +/obj/machinery/door/firedoor/border_only{ + dir = 1 + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/crew/canteen) +"bu" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/wood, +/area/ship/crew/canteen/kitchen) +"by" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"bz" = ( +/obj/structure/window/reinforced/fulltile/shuttle, +/obj/machinery/door/firedoor/window, +/obj/machinery/door/poddoor/shutters{ + id = "whiteship_internal_windows"; + dir = 4 + }, +/obj/structure/grille, +/turf/open/floor/plating, +/area/ship/cargo) +"bA" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"bC" = ( +/obj/structure/table, +/obj/item/toy/cards/deck{ + pixel_y = 5 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/wood, +/area/ship/crew/canteen/kitchen) +"bD" = ( +/turf/closed/wall/mineral/titanium/nodiagonal, +/area/ship/crew/canteen) +"bF" = ( +/obj/effect/turf_decal/corner/transparent/neutral/full, +/obj/machinery/airalarm/directional/south, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"bG" = ( +/obj/structure/closet/secure_closet{ + anchored = 1; + can_be_unanchored = 1; + icon_state = "sec"; + name = "firearm locker"; + req_access_txt = "41" + }, +/obj/item/gun/energy/e_gun/mini, +/obj/item/gun/energy/e_gun/mini, +/obj/machinery/light/small/broken/directional/west, +/obj/effect/decal/cleanable/dirt/dust, +/obj/structure/sign/poster/rilena/random{ + pixel_y = 32 + }, +/turf/open/floor/plasteel/dark, +/area/ship/bridge) +"bH" = ( +/obj/machinery/atmospherics/components/binary/dp_vent_pump/layer4{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/machinery/advanced_airlock_controller{ + pixel_y = -25 + }, +/obj/structure/sign/warning/vacuum/external{ + pixel_y = 32 + }, +/obj/machinery/light/small/directional/north, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/ship/engineering) +"bJ" = ( +/obj/machinery/atmospherics/pipe/simple/orange/hidden, +/obj/effect/turf_decal/corner/transparent/neutral/full, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer2{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer4{ + dir = 4 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/engineering) +"bM" = ( +/obj/machinery/atmospherics/pipe/simple/orange/hidden, +/obj/machinery/door/airlock/engineering{ + name = "Engineering" + }, +/obj/machinery/door/firedoor/border_only{ + dir = 1 + }, +/obj/machinery/door/firedoor/border_only, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/turf/open/floor/plating, +/area/ship/engineering) +"bN" = ( +/obj/machinery/door/airlock{ + name = "Cabin 1" + }, +/obj/machinery/door/firedoor/border_only{ + dir = 1 + }, +/obj/machinery/door/firedoor/border_only, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/turf/open/floor/plasteel/dark, +/area/ship/crew) +"bO" = ( +/obj/structure/table, +/obj/item/reagent_containers/food/snacks/chocolatebar{ + pixel_x = -14; + pixel_y = 3 + }, +/obj/effect/turf_decal/corner/transparent/bar/diagonal, +/obj/item/reagent_containers/food/condiment/ketchup{ + pixel_y = 14; + pixel_x = 9 + }, +/obj/item/reagent_containers/food/condiment/mayonnaise{ + pixel_y = 14 + }, +/obj/item/reagent_containers/food/drinks/soda_cans/cola{ + pixel_x = 6 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel, +/area/ship/crew/canteen) +"bQ" = ( +/turf/closed/wall/mineral/titanium/nodiagonal, +/area/ship/bridge) +"bT" = ( +/obj/machinery/atmospherics/pipe/simple/orange/hidden, +/obj/effect/turf_decal/corner/transparent/neutral/full, +/obj/machinery/airalarm/directional/west, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/engineering) +"bU" = ( +/obj/effect/turf_decal/box/corners{ + dir = 4 + }, +/obj/structure/closet/crate, +/obj/effect/spawner/lootdrop/maintenance/three, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/spawner/lootdrop/glowstick, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"bX" = ( +/obj/effect/turf_decal/box/corners{ + dir = 1 + }, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"bZ" = ( +/obj/machinery/hydroponics/constructable, +/obj/effect/turf_decal/corner/opaque/green{ + dir = 9 + }, +/obj/machinery/light/broken/directional/north, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel, +/area/ship/crew/canteen/kitchen) +"ca" = ( +/obj/structure/chair{ + dir = 1 + }, +/obj/effect/turf_decal/corner/transparent/bar/diagonal, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel, +/area/ship/crew/canteen) +"cb" = ( +/obj/machinery/button/door{ + id = "whiteship_internal_windows"; + name = "Internal Window Control"; + pixel_x = -25; + pixel_y = 5; + dir = 4 + }, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"cc" = ( +/obj/effect/turf_decal/corner/transparent/bar/diagonal, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel, +/area/ship/crew/canteen) +"ce" = ( +/obj/structure/table, +/obj/machinery/fax, +/obj/machinery/light/small/directional/west, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/bridge) +"cf" = ( +/obj/structure/table, +/obj/item/paper_bin{ + pixel_x = -4 + }, +/obj/item/pen{ + pixel_x = -4 + }, +/obj/item/folder/blue{ + pixel_x = 6; + pixel_y = 9 + }, +/obj/item/stamp{ + pixel_x = 8 + }, +/obj/item/stamp/denied{ + pixel_x = 17 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/bridge) +"cg" = ( +/obj/structure/table, +/obj/item/storage/photo_album{ + pixel_x = 7; + pixel_y = -3 + }, +/obj/item/camera{ + pixel_x = -2; + pixel_y = 6 + }, +/obj/item/stamp/qm{ + pixel_x = -6 + }, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer2{ + dir = 1 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/bridge) +"ch" = ( +/obj/machinery/door/poddoor{ + id = "whiteship_starboard" + }, +/obj/machinery/power/shieldwallgen/atmos/roundstart{ + dir = 4; + id = "starboard_holofield"; + locked = 1 + }, +/obj/machinery/door/firedoor, +/obj/structure/cable, +/turf/open/floor/plating, +/area/ship/cargo) +"ci" = ( +/obj/machinery/atmospherics/pipe/simple/orange/hidden, +/obj/effect/turf_decal/corner/transparent/neutral/full, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer2{ + dir = 8 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/engineering) +"cj" = ( +/obj/structure/window/reinforced/fulltile/shuttle, +/obj/machinery/door/firedoor/window, +/obj/machinery/door/poddoor{ + id = "whiteship_windows" + }, +/obj/structure/grille, +/turf/open/floor/plating, +/area/ship/engineering) +"cl" = ( +/obj/machinery/atmospherics/pipe/simple/orange/hidden, +/obj/effect/turf_decal/corner/transparent/neutral/full, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer4{ + dir = 8 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/engineering) +"cn" = ( +/obj/effect/turf_decal/corner/transparent/neutral/full, +/obj/effect/turf_decal/industrial/outline/yellow, +/obj/machinery/light_switch{ + dir = 8; + pixel_x = 21; + pixel_y = 12 + }, +/obj/structure/closet/firecloset/full{ + anchored = 1 + }, +/obj/machinery/light/small/broken/directional/south, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"co" = ( +/obj/structure/window/reinforced/fulltile/shuttle, +/obj/machinery/door/firedoor/window, +/obj/machinery/door/poddoor{ + id = "whiteship_bridge"; + dir = 4 + }, +/obj/structure/grille, +/turf/open/floor/plating, +/area/ship/bridge) +"cp" = ( +/obj/effect/turf_decal/corner/transparent/bar/diagonal, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4{ + dir = 4 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel, +/area/ship/crew/canteen) +"cq" = ( +/obj/effect/turf_decal/corner/transparent/bar/diagonal, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer4{ + dir = 4 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel, +/area/ship/crew/canteen) +"cv" = ( +/obj/structure/window/reinforced/fulltile/shuttle, +/obj/machinery/door/firedoor/window, +/obj/machinery/door/poddoor{ + id = "whiteship_windows" + }, +/obj/structure/grille, +/turf/open/floor/plating, +/area/ship/crew) +"cx" = ( +/obj/machinery/atmospherics/pipe/simple/orange/hidden, +/obj/effect/turf_decal/corner/transparent/neutral/full, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer4{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/engineering) +"cy" = ( +/obj/effect/turf_decal/corner/transparent/neutral/full, +/obj/effect/turf_decal/industrial/outline/yellow, +/obj/structure/rack, +/obj/item/storage/box/lights/bulbs, +/obj/item/stock_parts/cell/high/plus, +/obj/item/stack/cable_coil/red{ + pixel_x = 2 + }, +/obj/effect/decal/cleanable/dirt/dust, +/obj/machinery/light_switch{ + dir = 8; + pixel_x = 21; + pixel_y = 12 + }, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"cz" = ( +/obj/structure/table, +/obj/item/storage/fancy/donut_box{ + pixel_x = -11; + pixel_y = 3 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/wood, +/area/ship/crew/canteen/kitchen) +"cA" = ( +/obj/effect/turf_decal/corner/transparent/bar/diagonal, +/obj/structure/table, +/obj/machinery/chem_dispenser/drinks{ + dir = 4 + }, +/obj/effect/decal/cleanable/dirt/dust, +/obj/item/radio/intercom/directional/west, +/turf/open/floor/plasteel, +/area/ship/crew/canteen) +"cB" = ( +/obj/effect/turf_decal/corner/transparent/bar/diagonal, +/obj/structure/chair, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel, +/area/ship/crew/canteen) +"cC" = ( +/obj/effect/turf_decal/corner/transparent/bar/diagonal, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel, +/area/ship/crew/canteen) +"cE" = ( +/obj/effect/turf_decal/siding/wood{ + dir = 9 + }, +/obj/structure/chair/sofa/corner{ + dir = 4 + }, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/cobweb, +/obj/structure/sign/poster/contraband/random{ + pixel_y = 32 + }, +/turf/open/floor/wood, +/area/ship/crew/canteen/kitchen) +"cF" = ( +/obj/effect/turf_decal/siding/wood{ + dir = 1 + }, +/obj/structure/chair/sofa, +/obj/machinery/light/directional/north, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/wood, +/area/ship/crew/canteen/kitchen) +"cG" = ( +/obj/effect/turf_decal/siding/wood{ + dir = 1 + }, +/obj/structure/chair/sofa, +/obj/machinery/computer/helm/viewscreen/directional/north, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/wood, +/area/ship/crew/canteen/kitchen) +"cH" = ( +/obj/effect/turf_decal/corner/transparent/bar/diagonal, +/obj/machinery/power/apc/auto_name/directional/east, +/obj/machinery/light_switch{ + dir = 8; + pixel_x = 21; + pixel_y = 12 + }, +/obj/structure/cable{ + icon_state = "0-8" + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel, +/area/ship/crew/canteen) +"cI" = ( +/obj/machinery/atmospherics/pipe/simple/orange/hidden, +/obj/effect/turf_decal/corner/transparent/neutral/full, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/effect/decal/cleanable/dirt/dust, +/obj/item/radio/intercom/directional/west, +/turf/open/floor/plasteel/dark, +/area/ship/engineering) +"cK" = ( +/obj/effect/turf_decal/box/corners{ + dir = 8 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"cL" = ( +/obj/effect/decal/cleanable/ash/large, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/ship/engineering) +"cM" = ( +/obj/structure/table, +/obj/item/reagent_containers/food/drinks/bottle/vodka{ + pixel_y = 12 + }, +/obj/item/reagent_containers/food/drinks/bottle/whiskey{ + pixel_x = 16; + pixel_y = 12 + }, +/obj/item/reagent_containers/food/drinks/bottle/gin{ + pixel_x = -8; + pixel_y = 4 + }, +/obj/item/reagent_containers/food/drinks/bottle/cognac{ + pixel_x = 8; + pixel_y = 4 + }, +/obj/effect/turf_decal/corner/transparent/bar/diagonal, +/obj/machinery/light/small/directional/south, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel, +/area/ship/crew/canteen) +"cN" = ( +/obj/structure/table, +/obj/item/reagent_containers/food/drinks/bottle/vermouth{ + pixel_x = -8; + pixel_y = 4 + }, +/obj/effect/turf_decal/corner/transparent/bar/diagonal, +/obj/item/reagent_containers/food/drinks/bottle/wine{ + pixel_y = 12 + }, +/obj/item/reagent_containers/food/drinks/bottle/tequila{ + pixel_x = 8; + pixel_y = 4 + }, +/obj/effect/decal/cleanable/dirt/dust, +/obj/structure/sign/poster/contraband/random{ + pixel_y = -32 + }, +/turf/open/floor/plasteel, +/area/ship/crew/canteen) +"cO" = ( +/turf/closed/wall/mineral/titanium/nodiagonal, +/area/ship/crew/canteen/kitchen) +"cP" = ( +/obj/machinery/door/airlock/external{ + dir = 4 + }, +/obj/effect/mapping_helpers/airlock/cyclelink_helper{ + dir = 8 + }, +/obj/effect/turf_decal/corner/transparent/neutral/full, +/obj/machinery/door/firedoor/border_only{ + dir = 8 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 4 + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"cQ" = ( +/obj/effect/turf_decal/corner/transparent/neutral/full, +/turf/closed/wall/mineral/titanium/nodiagonal, +/area/ship/cargo) +"cS" = ( +/obj/effect/turf_decal/corner/transparent/neutral/full, +/obj/machinery/door/firedoor/border_only, +/obj/machinery/door/firedoor/border_only{ + dir = 1 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"cU" = ( +/obj/machinery/button/door{ + id = "whiteship_starboard"; + name = "Starboard Blast Door Control"; + pixel_x = -25; + pixel_y = -5; + dir = 4 + }, +/obj/machinery/button/shieldwallgen{ + dir = 4; + pixel_x = -23; + pixel_y = 4; + id = "starboard_holofield" + }, +/obj/effect/turf_decal/ntspaceworks_big/five, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"cV" = ( +/obj/effect/turf_decal/siding/wood{ + dir = 8 + }, +/obj/structure/chair/sofa/right{ + dir = 4 + }, +/obj/machinery/airalarm/directional/west, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/wood, +/area/ship/crew/canteen/kitchen) +"cW" = ( +/obj/effect/turf_decal/siding/wood{ + dir = 4 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/wood, +/area/ship/crew/canteen/kitchen) +"cX" = ( +/obj/machinery/power/terminal{ + dir = 8 + }, +/obj/effect/turf_decal/industrial/warning{ + dir = 8 + }, +/obj/structure/cable{ + icon_state = "0-2" + }, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/ship/engineering) +"cY" = ( +/obj/machinery/power/terminal{ + dir = 1 + }, +/obj/structure/cable/yellow{ + icon_state = "0-2" + }, +/obj/structure/cable/yellow{ + icon_state = "2-4" + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/ship/engineering) +"cZ" = ( +/obj/structure/cable{ + icon_state = "4-9" + }, +/obj/machinery/power/terminal{ + dir = 1 + }, +/obj/structure/cable/yellow{ + icon_state = "0-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 6 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/ship/engineering) +"db" = ( +/obj/effect/turf_decal/corner/transparent/neutral/full, +/obj/effect/turf_decal/industrial/outline/yellow, +/obj/structure/reagent_dispensers/watertank, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/cobweb, +/obj/machinery/light_switch{ + dir = 4; + pixel_x = -21; + pixel_y = -10 + }, +/obj/structure/sign/poster/contraband/random{ + pixel_y = 32 + }, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"dc" = ( +/obj/effect/turf_decal/corner/transparent/neutral/full, +/obj/machinery/firealarm/directional/north, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"de" = ( +/obj/effect/turf_decal/box/corners{ + dir = 1 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"dg" = ( +/obj/machinery/computer/cargo/express/retro{ + dir = 8 + }, +/obj/effect/turf_decal/corner/opaque/blue/three_quarters{ + dir = 1 + }, +/obj/effect/decal/cleanable/dirt/dust, +/obj/machinery/light/small/broken/directional/south, +/turf/open/floor/plasteel/dark, +/area/ship/bridge) +"di" = ( +/obj/effect/turf_decal/corner/transparent/neutral/full, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer4{ + dir = 8 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/crew/canteen) +"dk" = ( +/obj/effect/turf_decal/siding/wood, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/wood, +/area/ship/crew/canteen/kitchen) +"dl" = ( +/obj/effect/turf_decal/siding/wood, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/wood, +/area/ship/crew/canteen/kitchen) +"dp" = ( +/obj/machinery/atmospherics/components/binary/pump{ + dir = 8; + name = "engine fuel pump" + }, +/obj/effect/turf_decal/industrial/warning{ + dir = 8 + }, +/obj/structure/cable{ + icon_state = "2-4" + }, +/obj/structure/cable{ + icon_state = "1-4" + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/ship/engineering) +"dq" = ( +/obj/machinery/computer/crew/retro{ + dir = 8 + }, +/obj/effect/turf_decal/corner/opaque/blue/three_quarters{ + dir = 4 + }, +/obj/effect/decal/cleanable/dirt/dust, +/obj/machinery/light/small/broken/directional/north, +/turf/open/floor/plasteel/dark, +/area/ship/bridge) +"dt" = ( +/obj/machinery/atmospherics/pipe/simple/orange/hidden{ + dir = 9 + }, +/obj/structure/cable{ + icon_state = "1-4" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 5 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 5 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/ship/engineering) +"dD" = ( +/obj/effect/turf_decal/corner/opaque/white/diagonal, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 4 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel, +/area/ship/crew/canteen/kitchen) +"dE" = ( +/obj/effect/turf_decal/corner/opaque/white/diagonal, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 9 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel, +/area/ship/crew/canteen/kitchen) +"dF" = ( +/obj/effect/turf_decal/corner/opaque/white/diagonal, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel, +/area/ship/crew/canteen/kitchen) +"dH" = ( +/obj/machinery/power/terminal{ + dir = 8 + }, +/obj/effect/turf_decal/industrial/warning{ + dir = 8 + }, +/obj/structure/cable, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/ship/engineering) +"dI" = ( +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/obj/structure/cable/yellow{ + icon_state = "1-4" + }, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/ship/engineering) +"dK" = ( +/obj/structure/closet/crate, +/obj/item/stack/sheet/mineral/plasma/twenty, +/obj/item/stack/sheet/metal/ten, +/obj/item/stack/sheet/glass/five, +/obj/effect/turf_decal/industrial/outline/yellow, +/obj/machinery/firealarm/directional/south, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/ship/engineering) +"dM" = ( +/obj/effect/turf_decal/ntspaceworks_big/four, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"dO" = ( +/obj/machinery/computer/helm/retro{ + dir = 8 + }, +/obj/effect/turf_decal/corner/opaque/blue{ + dir = 9 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/bridge) +"dR" = ( +/obj/machinery/door/airlock/external{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/ship/engineering) +"dS" = ( +/obj/effect/turf_decal/corner/opaque/white/diagonal, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel, +/area/ship/crew/canteen/kitchen) +"dT" = ( +/obj/effect/turf_decal/corner/opaque/white/diagonal, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/glass, +/turf/open/floor/plasteel, +/area/ship/crew/canteen/kitchen) +"dU" = ( +/obj/effect/turf_decal/corner/opaque/white/diagonal, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel, +/area/ship/crew/canteen/kitchen) +"dW" = ( +/obj/structure/cable, +/obj/machinery/computer/monitor/retro{ + dir = 1 + }, +/obj/effect/turf_decal/industrial/warning/corner{ + dir = 1 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/ship/engineering) +"dX" = ( +/obj/machinery/power/port_gen/pacman{ + anchored = 1 + }, +/obj/structure/cable/yellow, +/obj/effect/turf_decal/industrial/outline/yellow, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/ship/engineering) +"dY" = ( +/obj/machinery/atmospherics/components/unary/portables_connector/visible/layer2{ + dir = 8 + }, +/obj/machinery/portable_atmospherics/canister/air, +/obj/effect/turf_decal/industrial/outline/yellow, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/ship/engineering) +"dZ" = ( +/obj/effect/turf_decal/ntspaceworks_big/seven, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"ea" = ( +/obj/effect/turf_decal/ntspaceworks_big/eight, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"eb" = ( +/obj/machinery/atmospherics/pipe/simple/orange/hidden, +/obj/machinery/light_switch{ + dir = 8; + pixel_x = 21; + pixel_y = 12 + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/machinery/light/small/broken/directional/east, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/ship/engineering) +"ec" = ( +/obj/structure/window/reinforced/fulltile/shuttle, +/obj/machinery/door/firedoor/window, +/obj/machinery/door/poddoor{ + id = "whiteship_windows" + }, +/obj/structure/grille, +/turf/open/floor/plating, +/area/ship/crew/canteen) +"ed" = ( +/obj/machinery/hydroponics/constructable, +/obj/effect/turf_decal/corner/opaque/green{ + dir = 9 + }, +/obj/machinery/light/directional/south, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel, +/area/ship/crew/canteen/kitchen) +"ee" = ( +/obj/structure/table, +/obj/machinery/microwave, +/obj/effect/turf_decal/corner/opaque/white/diagonal, +/obj/machinery/light/broken/directional/south, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel, +/area/ship/crew/canteen/kitchen) +"ef" = ( +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"eh" = ( +/obj/structure/chair/comfy/shuttle{ + dir = 4 + }, +/obj/effect/turf_decal/corner/opaque/blue, +/obj/effect/decal/cleanable/dirt/dust, +/obj/machinery/button/door{ + id = "whiteship_bridge"; + name = "Bridge Blast Door Control"; + pixel_x = 5; + pixel_y = -21; + dir = 1 + }, +/obj/machinery/button/door{ + id = "whiteship_windows"; + name = "Windows Blast Door Control"; + pixel_x = -6; + pixel_y = -21; + dir = 1 + }, +/turf/open/floor/plasteel/dark, +/area/ship/bridge) +"ei" = ( +/obj/machinery/door/poddoor{ + id = "whiteship_starboard" + }, +/obj/machinery/door/firedoor, +/turf/open/floor/plating, +/area/ship/cargo) +"ej" = ( +/obj/effect/turf_decal/industrial/warning{ + dir = 8 + }, +/obj/effect/decal/cleanable/blood, +/obj/machinery/power/terminal{ + dir = 8 + }, +/obj/structure/cable, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/ship/engineering) +"el" = ( +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/orange/hidden{ + dir = 4 + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/ship/engineering) +"em" = ( +/obj/effect/turf_decal/ntspaceworks_big/one, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"eu" = ( +/obj/machinery/computer/helm/viewscreen/directional/east, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"eA" = ( +/obj/machinery/door/airlock/command{ + name = "Bridge"; + dir = 8; + req_one_access = list(19,41) + }, +/obj/machinery/door/firedoor/border_only{ + dir = 4 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 8 + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/obj/effect/turf_decal/corner/transparent/neutral/full, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/bridge) +"eV" = ( +/obj/machinery/hydroponics/constructable, +/obj/effect/turf_decal/corner/opaque/green{ + dir = 9 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel, +/area/ship/crew/canteen/kitchen) +"eX" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/structure/cable{ + icon_state = "2-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer4{ + dir = 1 + }, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"fa" = ( +/obj/structure/table, +/obj/machinery/recharger, +/obj/item/storage/toolbox/emergency{ + pixel_x = -12 + }, +/obj/item/wrench{ + pixel_x = -12 + }, +/obj/machinery/power/apc/auto_name/directional/north, +/obj/machinery/light_switch{ + pixel_x = -13; + pixel_y = 22 + }, +/obj/structure/cable{ + icon_state = "0-2" + }, +/obj/effect/decal/cleanable/dirt/dust, +/obj/item/spacecash/bundle/mediumrand{ + pixel_x = 8; + pixel_y = 5 + }, +/turf/open/floor/plasteel/dark, +/area/ship/bridge) +"fb" = ( +/obj/machinery/power/smes/shuttle/precharged{ + dir = 4 + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/machinery/door/window/northleft{ + dir = 4; + name = "Engine Access" + }, +/obj/structure/cable{ + icon_state = "0-8" + }, +/turf/open/floor/plating, +/area/ship/engineering) +"fX" = ( +/obj/machinery/atmospherics/pipe/simple/orange/hidden{ + dir = 4 + }, +/obj/structure/cable{ + icon_state = "1-8" + }, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/ship/engineering) +"gt" = ( +/obj/structure/window/reinforced/fulltile/shuttle, +/obj/machinery/door/firedoor/window, +/obj/machinery/door/poddoor{ + id = "whiteship_windows" + }, +/obj/structure/grille, +/turf/open/floor/plating, +/area/ship/crew/canteen/kitchen) +"gA" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/engineering) +"hp" = ( +/obj/effect/turf_decal/siding/wood{ + dir = 4 + }, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/wood, +/area/ship/crew/canteen/kitchen) +"hq" = ( +/obj/effect/turf_decal/box/corners{ + dir = 1 + }, +/obj/effect/decal/cleanable/blood/old, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"hv" = ( +/obj/effect/turf_decal/corner/transparent/neutral/full, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"hA" = ( +/obj/machinery/atmospherics/components/binary/pump/on/layer2{ + dir = 1; + name = "Air to Distro" + }, +/obj/effect/decal/cleanable/ash/crematorium, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/ship/engineering) +"hU" = ( +/obj/machinery/door/airlock/glass{ + name = "Recreation"; + dir = 4 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 8 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 4 + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 4 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/crew/canteen/kitchen) +"ib" = ( +/obj/machinery/atmospherics/pipe/simple/orange/hidden{ + dir = 4 + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 5 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/ship/engineering) +"id" = ( +/obj/structure/closet/cabinet, +/obj/item/paicard, +/obj/machinery/airalarm/directional/north, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4{ + dir = 8 + }, +/obj/effect/decal/cleanable/dirt/dust, +/obj/item/clothing/under/color/random, +/obj/item/clothing/shoes/sneakers/black, +/obj/item/clothing/glasses/cheapsuns, +/turf/open/floor/plasteel/dark, +/area/ship/crew) +"im" = ( +/obj/effect/turf_decal/corner/transparent/bar/diagonal, +/obj/machinery/computer/helm/viewscreen/directional/east, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel, +/area/ship/crew/canteen) +"iU" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/effect/decal/cleanable/dirt/dust, +/obj/structure/sign/poster/contraband/random{ + pixel_y = 32 + }, +/turf/open/floor/plasteel/dark, +/area/ship/crew) +"jb" = ( +/obj/machinery/door/poddoor{ + id = "whiteship_port" + }, +/obj/machinery/door/firedoor, +/turf/open/floor/plating, +/area/ship/cargo) +"jw" = ( +/obj/effect/turf_decal/corner/transparent/bar/diagonal, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel, +/area/ship/crew/canteen) +"jF" = ( +/obj/structure/sink/kitchen{ + dir = 8; + pixel_x = 11 + }, +/obj/effect/turf_decal/corner/opaque/white/diagonal, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel, +/area/ship/crew/canteen/kitchen) +"jJ" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/crew) +"km" = ( +/obj/effect/decal/cleanable/blood/old, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"ku" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/structure/cable{ + icon_state = "1-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer4, +/obj/effect/decal/cleanable/oil, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"kz" = ( +/obj/effect/turf_decal/corner/transparent/neutral/full, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 4 + }, +/obj/effect/decal/cleanable/dirt/dust, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer2{ + dir = 1 + }, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"kN" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/structure/closet/crate{ + icon_state = "crateopen"; + opened = 1 + }, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"kX" = ( +/obj/machinery/door/airlock{ + name = "Cryopod Room" + }, +/obj/machinery/door/firedoor/border_only{ + dir = 1 + }, +/obj/machinery/door/firedoor/border_only, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/crew) +"ld" = ( +/obj/effect/turf_decal/corner/transparent/bar/diagonal, +/obj/machinery/firealarm/directional/east, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer2{ + dir = 8 + }, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel, +/area/ship/crew/canteen) +"li" = ( +/obj/structure/closet/emcloset/anchored, +/obj/effect/turf_decal/industrial/outline/yellow, +/obj/machinery/light/small/directional/west, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/cobweb, +/turf/open/floor/plasteel/dark, +/area/ship/crew/canteen) +"lC" = ( +/obj/machinery/power/smes/shuttle/precharged{ + dir = 4 + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/machinery/door/window/northright{ + dir = 4; + name = "Engine Access" + }, +/obj/structure/cable{ + icon_state = "0-8" + }, +/turf/open/floor/plating, +/area/ship/engineering) +"lH" = ( +/obj/item/storage/fancy/egg_box, +/obj/item/reagent_containers/food/condiment/flour, +/obj/item/reagent_containers/food/condiment/rice, +/obj/item/reagent_containers/food/condiment/sugar, +/obj/item/reagent_containers/food/condiment/enzyme, +/obj/item/reagent_containers/food/snacks/meat/slab/synthmeat{ + pixel_x = -3; + pixel_y = 3 + }, +/obj/item/reagent_containers/food/snacks/meat/slab/synthmeat, +/obj/item/reagent_containers/food/snacks/meat/slab/synthmeat{ + pixel_x = 3; + pixel_y = -3 + }, +/obj/effect/turf_decal/corner/opaque/white/diagonal, +/obj/effect/decal/cleanable/dirt/dust, +/obj/structure/closet/secure_closet/freezer{ + name = "fridge"; + anchored = 1 + }, +/obj/item/reagent_containers/food/condiment/soymilk, +/obj/item/reagent_containers/food/condiment/milk, +/obj/item/reagent_containers/food/condiment/milk, +/obj/item/reagent_containers/food/condiment/soymilk, +/turf/open/floor/plasteel, +/area/ship/crew/canteen/kitchen) +"lK" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer2{ + dir = 8 + }, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel, +/area/ship/crew/canteen/kitchen) +"lP" = ( +/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden/layer4, +/obj/effect/decal/cleanable/dirt/dust, +/obj/structure/cable{ + icon_state = "1-8" + }, +/turf/open/floor/plasteel/dark, +/area/ship/crew) +"mb" = ( +/obj/effect/turf_decal/box/corners{ + dir = 4 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"mc" = ( +/obj/structure/window/reinforced/tinted, +/obj/structure/toilet{ + dir = 4 + }, +/obj/machinery/airalarm/directional/north, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4{ + dir = 4 + }, +/obj/machinery/light/small/directional/west, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/freezer, +/area/ship/crew) +"mg" = ( +/obj/structure/table, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/wood, +/area/ship/crew/canteen/kitchen) +"mk" = ( +/obj/structure/cable/yellow{ + icon_state = "2-8" + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4{ + dir = 1 + }, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/garbage, +/turf/open/floor/plating, +/area/ship/engineering) +"my" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer2{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer4{ + dir = 1 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"mL" = ( +/obj/effect/turf_decal/siding/wood{ + dir = 8 + }, +/obj/structure/chair/sofa{ + dir = 4 + }, +/obj/effect/decal/cleanable/dirt/dust, +/obj/item/radio/intercom/directional/west, +/turf/open/floor/wood, +/area/ship/crew/canteen/kitchen) +"nt" = ( +/obj/effect/turf_decal/corner/transparent/neutral/full, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/crew) +"nK" = ( +/obj/effect/turf_decal/corner/transparent/neutral/full, +/obj/structure/cable{ + icon_state = "1-4" + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer4{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer2{ + dir = 8 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/crew) +"nR" = ( +/obj/structure/bed{ + dir = 4 + }, +/obj/item/bedsheet/brown{ + dir = 4 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/crew) +"oc" = ( +/obj/machinery/washing_machine, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer2{ + dir = 8 + }, +/obj/effect/decal/cleanable/dirt/dust, +/obj/machinery/light/small/directional/east, +/turf/open/floor/plasteel/dark, +/area/ship/crew) +"oj" = ( +/obj/effect/turf_decal/corner/transparent/neutral/full, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/structure/cable{ + icon_state = "1-8" + }, +/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer4, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/crew/canteen) +"oF" = ( +/obj/effect/turf_decal/corner/transparent/bar/diagonal, +/obj/machinery/airalarm/directional/east, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel, +/area/ship/crew/canteen) +"pm" = ( +/obj/structure/closet/cabinet, +/obj/machinery/airalarm/directional/north, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4{ + dir = 4 + }, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/cobweb, +/obj/item/clothing/under/color/random, +/obj/item/clothing/shoes/sneakers/black, +/obj/item/clothing/glasses/regular, +/turf/open/floor/plasteel/dark, +/area/ship/crew) +"pn" = ( +/obj/effect/turf_decal/corner/opaque/green{ + dir = 9 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel, +/area/ship/crew/canteen/kitchen) +"pF" = ( +/obj/machinery/vending/snack/random, +/obj/effect/turf_decal/corner/transparent/bar/diagonal, +/obj/machinery/light/directional/east, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel, +/area/ship/crew/canteen) +"pN" = ( +/obj/machinery/atmospherics/components/unary/portables_connector/visible/layer3{ + dir = 8 + }, +/obj/machinery/portable_atmospherics/canister/toxins, +/obj/effect/turf_decal/industrial/outline/yellow, +/obj/machinery/light/small/broken/directional/north, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/ship/engineering) +"qt" = ( +/obj/effect/turf_decal/corner/opaque/green{ + dir = 4 + }, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel, +/area/ship/crew/canteen/kitchen) +"qx" = ( +/obj/docking_port/stationary{ + dwidth = 15; + width = 30; + height = 15 + }, +/turf/template_noop, +/area/template_noop) +"qI" = ( +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer2, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"qT" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/dirt/dust, +/obj/item/radio/intercom/directional/north, +/turf/open/floor/plasteel/dark, +/area/ship/bridge) +"ri" = ( +/obj/effect/turf_decal/industrial/outline/yellow, +/obj/structure/closet/firecloset/full{ + anchored = 1 + }, +/obj/effect/decal/cleanable/dirt/dust, +/obj/structure/sign/poster/contraband/random{ + pixel_y = 32 + }, +/turf/open/floor/plating, +/area/ship/engineering) +"rF" = ( +/obj/structure/chair/comfy/shuttle{ + dir = 4 + }, +/obj/effect/turf_decal/corner/opaque/blue{ + dir = 4 + }, +/obj/effect/decal/cleanable/blood/old, +/obj/effect/decal/cleanable/dirt/dust, +/obj/item/radio/intercom/wideband/directional/north, +/turf/open/floor/plasteel/dark, +/area/ship/bridge) +"rU" = ( +/obj/effect/turf_decal/corner/transparent/bar/diagonal, +/obj/structure/chair{ + dir = 1 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel, +/area/ship/crew/canteen) +"sr" = ( +/obj/machinery/button/door{ + id = "whiteship_starboard"; + name = "Starboard Blast Door Control"; + pixel_x = 25; + pixel_y = -5; + dir = 8 + }, +/obj/machinery/button/shieldwallgen{ + dir = 8; + pixel_x = 23; + pixel_y = 4; + id = "starboard_holofield" + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"sx" = ( +/obj/structure/window/reinforced/fulltile/shuttle, +/obj/machinery/door/firedoor/window, +/obj/machinery/door/poddoor{ + id = "whiteship_windows"; + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/obj/structure/grille, +/turf/open/floor/plating, +/area/ship/engineering) +"sA" = ( +/obj/machinery/airalarm/directional/north, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4{ + dir = 8 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/crew/canteen) +"sJ" = ( +/obj/machinery/smartfridge, +/obj/effect/turf_decal/corner/opaque/green/three_quarters{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/ship/crew/canteen/kitchen) +"sP" = ( +/obj/effect/turf_decal/corner/opaque/green{ + dir = 9 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel, +/area/ship/crew/canteen/kitchen) +"tl" = ( +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel, +/area/ship/crew/canteen/kitchen) +"tS" = ( +/obj/effect/turf_decal/corner/transparent/neutral/full, +/obj/machinery/airalarm/directional/north, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"tU" = ( +/obj/structure/closet/crate/hydroponics, +/obj/effect/turf_decal/corner/opaque/green/three_quarters{ + dir = 1 + }, +/obj/item/seeds/onion, +/obj/item/seeds/banana, +/obj/item/seeds/tomato, +/obj/item/seeds/wheat, +/obj/item/seeds/tower, +/obj/item/seeds/corn, +/obj/item/seeds/random, +/obj/item/seeds/chili, +/obj/effect/decal/cleanable/dirt/dust, +/obj/structure/sign/poster/contraband/random{ + pixel_y = 32 + }, +/turf/open/floor/plasteel, +/area/ship/crew/canteen/kitchen) +"tX" = ( +/obj/structure/closet/secure_closet/personal, +/obj/machinery/airalarm/directional/south, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/crew) +"tZ" = ( +/obj/effect/turf_decal/ntspaceworks_big/two, +/obj/effect/decal/cleanable/dirt/dust, +/obj/structure/closet/crate, +/obj/effect/spawner/lootdrop/tool_surgery_common, +/obj/effect/spawner/lootdrop/maintenance/three, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"uk" = ( +/obj/effect/turf_decal/corner/transparent/neutral/full, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"uw" = ( +/obj/structure/closet/emcloset/anchored, +/obj/effect/turf_decal/industrial/outline/yellow, +/obj/machinery/light/small/broken/directional/west, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/crew) +"uB" = ( +/obj/structure/tank_dispenser/oxygen, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/engineering) +"uO" = ( +/obj/effect/turf_decal/corner/transparent/neutral/full, +/obj/machinery/door/firedoor/border_only, +/obj/machinery/door/firedoor/border_only{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"ve" = ( +/obj/effect/turf_decal/box/corners, +/obj/machinery/light/broken/directional/south, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/dirt/dust, +/obj/structure/sign/poster/contraband/random{ + pixel_x = 32 + }, +/obj/structure/bed/roller, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"vk" = ( +/obj/machinery/atmospherics/pipe/simple/orange/hidden, +/obj/structure/cable{ + icon_state = "1-8" + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer2{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer4{ + dir = 4 + }, +/obj/machinery/light/small/broken/directional/east, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/oil, +/turf/open/floor/plating, +/area/ship/engineering) +"vm" = ( +/obj/structure/rack, +/obj/item/storage/belt/utility, +/obj/item/storage/belt/utility{ + pixel_y = 6 + }, +/obj/item/radio, +/obj/item/radio{ + pixel_x = -3; + pixel_y = 3 + }, +/obj/machinery/power/apc/auto_name/directional/north, +/obj/machinery/light_switch{ + pixel_x = -13; + pixel_y = 22 + }, +/obj/structure/cable{ + icon_state = "0-8" + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/engineering) +"vI" = ( +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/wood, +/area/ship/crew/canteen/kitchen) +"vV" = ( +/obj/structure/bed{ + dir = 4 + }, +/obj/item/bedsheet/qm{ + dir = 4 + }, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/cobweb, +/obj/structure/sign/poster/rilena/random{ + pixel_y = 32 + }, +/turf/open/floor/plasteel/dark, +/area/ship/crew) +"wu" = ( +/obj/machinery/vending/coffee, +/obj/effect/turf_decal/corner/transparent/bar/diagonal, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel, +/area/ship/crew/canteen) +"wD" = ( +/obj/effect/turf_decal/industrial/outline/yellow, +/obj/structure/closet/emcloset/anchored, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/ship/engineering) +"wG" = ( +/obj/machinery/door/airlock/external{ + dir = 4 + }, +/obj/effect/mapping_helpers/airlock/cyclelink_helper{ + dir = 4 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 4 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 8 + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/ship/cargo) +"xm" = ( +/obj/effect/turf_decal/corner/transparent/bar/diagonal, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/structure/cable{ + icon_state = "2-4" + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer4{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer2{ + dir = 8 + }, +/obj/machinery/holopad/emergency/bar, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel, +/area/ship/crew/canteen) +"xI" = ( +/obj/machinery/light_switch{ + pixel_x = -8; + pixel_y = 23 + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer2{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer4{ + dir = 1 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/crew) +"xK" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/obj/effect/turf_decal/corner/transparent/neutral/full, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/bridge) +"xV" = ( +/obj/effect/turf_decal/ntspaceworks_big/six, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"yc" = ( +/obj/structure/bed, +/obj/item/bedsheet/nanotrasen, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/crew) +"yh" = ( +/obj/machinery/power/port_gen/pacman{ + anchored = 1 + }, +/obj/structure/cable/yellow, +/obj/effect/turf_decal/industrial/outline/yellow, +/obj/machinery/light/small/directional/south, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/ship/engineering) +"ys" = ( +/obj/structure/table, +/obj/item/cutting_board, +/obj/item/kitchen/rollingpin, +/obj/item/kitchen/knife, +/obj/effect/turf_decal/corner/opaque/white/diagonal, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel, +/area/ship/crew/canteen/kitchen) +"yS" = ( +/obj/structure/table, +/obj/item/storage/box/lights/mixed{ + pixel_x = 4; + pixel_y = 9 + }, +/obj/item/flashlight{ + pixel_x = -2 + }, +/obj/machinery/button/door{ + id = "whiteship_internal_windows"; + name = "Internal Window Control"; + pixel_x = 25; + pixel_y = -5; + dir = 8 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/engineering) +"yZ" = ( +/obj/machinery/hydroponics/constructable, +/obj/effect/turf_decal/corner/opaque/green{ + dir = 9 + }, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel, +/area/ship/crew/canteen/kitchen) +"za" = ( +/obj/effect/turf_decal/industrial/warning/corner{ + dir = 8 + }, +/obj/machinery/autolathe, +/obj/machinery/airalarm/directional/north, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/ship/engineering) +"zi" = ( +/obj/machinery/door/airlock/external{ + dir = 4 + }, +/obj/effect/mapping_helpers/airlock/cyclelink_helper{ + dir = 8 + }, +/obj/effect/turf_decal/corner/transparent/neutral/full, +/obj/machinery/door/firedoor/border_only{ + dir = 4 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 8 + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"zs" = ( +/obj/effect/turf_decal/siding/wood{ + dir = 5 + }, +/obj/item/kirbyplants/random, +/obj/machinery/firealarm/directional/north, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/wood, +/area/ship/crew/canteen/kitchen) +"zw" = ( +/obj/machinery/atmospherics/pipe/simple/orange/hidden, +/obj/effect/turf_decal/corner/transparent/neutral/full, +/obj/machinery/firealarm/directional/west, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/engineering) +"zC" = ( +/obj/effect/turf_decal/box/corners{ + dir = 1 + }, +/obj/machinery/light/directional/north, +/obj/effect/decal/cleanable/dirt/dust, +/obj/structure/sign/poster/contraband/random{ + pixel_x = -32 + }, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"zU" = ( +/obj/effect/turf_decal/siding/wood{ + dir = 6 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/wood, +/area/ship/crew/canteen/kitchen) +"Ac" = ( +/obj/structure/closet/secure_closet/personal, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/crew) +"Ag" = ( +/obj/effect/decal/cleanable/oil, +/obj/effect/decal/cleanable/dirt/dust, +/obj/structure/closet/crate, +/obj/effect/spawner/lootdrop/maintenance/two, +/obj/effect/spawner/lootdrop/random_prosthetic, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"Ai" = ( +/obj/machinery/atmospherics/pipe/simple/orange/hidden, +/obj/machinery/door/airlock/engineering{ + name = "Engineering" + }, +/obj/machinery/door/firedoor/border_only, +/obj/machinery/door/firedoor/border_only{ + dir = 1 + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/turf/open/floor/plating, +/area/ship/engineering) +"Am" = ( +/obj/machinery/portable_atmospherics/scrubber, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/engineering) +"AT" = ( +/obj/effect/turf_decal/corner/transparent/neutral/full, +/obj/machinery/door/firedoor/border_only, +/obj/machinery/door/firedoor/border_only{ + dir = 1 + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"AU" = ( +/obj/effect/turf_decal/corner/transparent/bar/diagonal, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel, +/area/ship/crew/canteen) +"AY" = ( +/obj/machinery/door/airlock{ + name = "Cabin 2" + }, +/obj/machinery/door/firedoor/border_only, +/obj/machinery/door/firedoor/border_only{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/turf/open/floor/plasteel/dark, +/area/ship/crew) +"Bl" = ( +/obj/structure/table, +/obj/item/kitchen/fork{ + pixel_x = 12; + pixel_y = 3 + }, +/obj/item/kitchen/fork{ + pixel_x = 6; + pixel_y = 3 + }, +/obj/effect/turf_decal/corner/transparent/bar/diagonal, +/obj/item/storage/bag/tray/cafeteria{ + pixel_x = -12 + }, +/obj/item/storage/bag/tray/cafeteria{ + pixel_x = -12; + pixel_y = 3 + }, +/obj/item/storage/bag/tray/cafeteria{ + pixel_x = -12; + pixel_y = 6 + }, +/obj/item/storage/bag/tray/cafeteria{ + pixel_x = -12; + pixel_y = 9 + }, +/obj/item/kitchen/fork{ + pixel_x = 6; + pixel_y = 3 + }, +/obj/item/kitchen/fork{ + pixel_x = 12; + pixel_y = 3 + }, +/obj/effect/decal/cleanable/dirt/dust, +/obj/machinery/light_switch{ + pixel_x = 5; + pixel_y = 23 + }, +/turf/open/floor/plasteel, +/area/ship/crew/canteen) +"By" = ( +/obj/effect/turf_decal/corner/opaque/white/diagonal, +/obj/structure/cable{ + icon_state = "1-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 4 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel, +/area/ship/crew/canteen/kitchen) +"Cy" = ( +/obj/machinery/suit_storage_unit/standard_unit, +/obj/effect/turf_decal/industrial/hatch/yellow, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/crew/canteen) +"CP" = ( +/obj/structure/table, +/obj/item/toy/plush/flushed, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/wood, +/area/ship/crew/canteen/kitchen) +"Dm" = ( +/obj/structure/rack, +/obj/item/reagent_containers/glass/bucket, +/obj/item/mop, +/obj/item/storage/bag/trash{ + pixel_x = 6 + }, +/obj/effect/turf_decal/industrial/outline/yellow, +/obj/effect/turf_decal/corner/transparent/neutral/full, +/obj/machinery/light/small/directional/south, +/obj/effect/decal/cleanable/dirt/dust, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer2{ + dir = 1 + }, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"Du" = ( +/obj/effect/turf_decal/corner/transparent/neutral/full, +/obj/machinery/computer/cargo/express/retro{ + dir = 8 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"DF" = ( +/obj/effect/turf_decal/corner/transparent/neutral/full, +/obj/effect/turf_decal/industrial/outline/yellow, +/obj/structure/rack, +/obj/effect/decal/cleanable/dirt/dust, +/obj/item/radio/intercom/directional/east, +/obj/effect/spawner/lootdrop/maintenance/two, +/obj/item/extinguisher/mini, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"DJ" = ( +/obj/structure/bed, +/obj/item/bedsheet/brown, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/crew) +"Ee" = ( +/obj/structure/closet/crate{ + name = "food crate" + }, +/obj/item/reagent_containers/food/drinks/waterbottle/large{ + pixel_x = -5; + pixel_y = 3 + }, +/obj/item/reagent_containers/food/drinks/waterbottle/large{ + pixel_x = 2; + pixel_y = 3 + }, +/obj/item/reagent_containers/food/drinks/waterbottle/large{ + pixel_x = -2 + }, +/obj/item/reagent_containers/food/drinks/waterbottle/large{ + pixel_x = 5 + }, +/obj/item/reagent_containers/food/drinks/waterbottle/large{ + pixel_x = 1; + pixel_y = -3 + }, +/obj/item/reagent_containers/food/drinks/waterbottle/large{ + pixel_x = 8; + pixel_y = -3 + }, +/obj/effect/turf_decal/box/corners{ + dir = 4 + }, +/obj/machinery/light/broken/directional/north, +/obj/effect/decal/cleanable/dirt/dust, +/obj/item/radio/intercom/directional/east, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"EL" = ( +/obj/machinery/door/poddoor{ + id = "whiteship_port" + }, +/obj/machinery/power/shieldwallgen/atmos/roundstart{ + dir = 4; + id = "port_holofield"; + locked = 1 + }, +/obj/machinery/door/firedoor, +/obj/structure/cable{ + icon_state = "0-2" + }, +/turf/open/floor/plating, +/area/ship/cargo) +"EU" = ( +/obj/effect/turf_decal/box/corners{ + dir = 8 + }, +/obj/machinery/power/apc/auto_name/directional/west, +/obj/machinery/light_switch{ + dir = 4; + pixel_y = 10; + pixel_x = -20 + }, +/obj/structure/cable{ + icon_state = "0-4" + }, +/obj/machinery/light/broken/directional/south, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"EX" = ( +/obj/structure/table, +/obj/item/reagent_containers/food/condiment/saltshaker{ + pixel_x = -8; + pixel_y = 10 + }, +/obj/item/reagent_containers/food/condiment/peppermill{ + pixel_x = -8; + pixel_y = 4 + }, +/obj/item/reagent_containers/food/drinks/drinkingglass{ + pixel_x = 1; + pixel_y = 8 + }, +/obj/effect/turf_decal/corner/transparent/bar/diagonal, +/obj/item/paicard{ + pixel_x = 5; + pixel_y = -5 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel, +/area/ship/crew/canteen) +"Fb" = ( +/obj/effect/turf_decal/corner/transparent/neutral/full, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer2, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"Fk" = ( +/obj/structure/rack, +/obj/item/storage/belt/utility, +/obj/item/weldingtool, +/obj/item/clothing/head/welding, +/obj/effect/turf_decal/industrial/outline/yellow, +/obj/effect/turf_decal/corner/transparent/neutral/full, +/obj/machinery/light_switch{ + dir = 4; + pixel_x = -21; + pixel_y = -10 + }, +/obj/machinery/light/small/broken/directional/north, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"FR" = ( +/obj/structure/table, +/obj/item/stack/rods/twentyfive, +/obj/item/stack/packageWrap, +/obj/item/stack/packageWrap{ + pixel_y = 8 + }, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer2{ + dir = 8 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/engineering) +"FU" = ( +/obj/effect/turf_decal/siding/wood{ + dir = 1 + }, +/obj/structure/chair/sofa/left, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/wood, +/area/ship/crew/canteen/kitchen) +"FV" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/structure/cable{ + icon_state = "1-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"FX" = ( +/obj/effect/turf_decal/box/corners{ + dir = 8 + }, +/obj/structure/closet/crate, +/obj/effect/spawner/lootdrop/maintenance/four, +/obj/effect/decal/cleanable/dirt/dust, +/obj/item/spacecash/bundle/pocketchange, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"FY" = ( +/obj/effect/decal/cleanable/oil, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"Gm" = ( +/obj/effect/turf_decal/corner/transparent/bar/diagonal, +/obj/structure/cable{ + icon_state = "2-4" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel, +/area/ship/crew/canteen) +"Gr" = ( +/obj/structure/table, +/obj/machinery/reagentgrinder{ + pixel_y = 6 + }, +/obj/effect/turf_decal/corner/opaque/white/diagonal, +/obj/item/reagent_containers/food/condiment/saltshaker{ + pixel_x = -8; + pixel_y = 10 + }, +/obj/item/reagent_containers/food/condiment/peppermill{ + pixel_x = -8; + pixel_y = 4 + }, +/obj/machinery/firealarm/directional/south, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel, +/area/ship/crew/canteen/kitchen) +"GH" = ( +/obj/machinery/atmospherics/components/binary/pump{ + name = "engine fuel pump" + }, +/obj/effect/decal/cleanable/blood/old, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/ship/engineering) +"Ha" = ( +/obj/machinery/door/poddoor{ + id = "whiteship_port" + }, +/obj/machinery/power/shieldwallgen/atmos/roundstart{ + dir = 8; + id = "port_holofield"; + locked = 1 + }, +/obj/machinery/door/firedoor, +/obj/structure/cable{ + icon_state = "0-2" + }, +/turf/open/floor/plating, +/area/ship/cargo) +"He" = ( +/turf/closed/wall/mineral/titanium, +/area/ship/crew/canteen/kitchen) +"Hm" = ( +/obj/machinery/atmospherics/components/unary/tank/toxins{ + dir = 4 + }, +/obj/effect/turf_decal/industrial/warning/corner{ + dir = 8 + }, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/cobweb, +/turf/open/floor/plating, +/area/ship/engineering) +"HH" = ( +/obj/effect/turf_decal/corner/transparent/neutral/full, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"HZ" = ( +/obj/effect/decal/cleanable/blood/old, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/dirt/dust, +/obj/machinery/turretid{ + pixel_y = -24; + req_access = null; + locked = 0 + }, +/turf/open/floor/plasteel/dark, +/area/ship/bridge) +"Ie" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer2, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/crew) +"Il" = ( +/obj/effect/turf_decal/corner/transparent/neutral/full, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/crew/canteen) +"In" = ( +/obj/structure/table, +/obj/item/modular_computer/laptop/preset/civilian, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4{ + dir = 8 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/engineering) +"IE" = ( +/obj/effect/turf_decal/corner/transparent/neutral/full, +/obj/effect/turf_decal/industrial/outline/yellow, +/obj/structure/reagent_dispensers/fueltank, +/obj/effect/decal/cleanable/dirt/dust, +/obj/item/radio/intercom/directional/west, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"Jq" = ( +/obj/machinery/atmospherics/pipe/simple/orange/hidden, +/obj/effect/turf_decal/corner/transparent/neutral/full, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/structure/cable{ + icon_state = "2-4" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/effect/decal/cleanable/dirt/dust, +/obj/item/radio/intercom/directional/west, +/turf/open/floor/plasteel/dark, +/area/ship/engineering) +"Ju" = ( +/obj/machinery/atmospherics/components/unary/outlet_injector/on/layer4{ + dir = 4 + }, +/turf/open/floor/plating, +/area/ship/engineering) +"JR" = ( +/obj/machinery/atmospherics/pipe/simple/orange/hidden{ + dir = 4 + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/oil, +/turf/open/floor/plating, +/area/ship/engineering) +"Kc" = ( +/obj/machinery/cryopod{ + dir = 8 + }, +/obj/machinery/computer/cryopod/retro/directional/north{ + pixel_y = 25 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/crew) +"Kw" = ( +/obj/machinery/door/airlock/glass{ + name = "Crew Quarters"; + dir = 4 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 8 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 4 + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/crew) +"KI" = ( +/obj/machinery/button/door{ + id = "whiteship_port"; + name = "Port Blast Door Control"; + pixel_x = -25; + pixel_y = 5; + dir = 4 + }, +/obj/machinery/button/shieldwallgen{ + dir = 4; + pixel_x = -23; + pixel_y = -4; + id = "port_holofield" + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"La" = ( +/obj/machinery/vending/cola/random, +/obj/effect/turf_decal/corner/transparent/bar/diagonal, +/obj/machinery/light/broken/directional/east, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel, +/area/ship/crew/canteen) +"Lb" = ( +/obj/machinery/atmospherics/pipe/manifold/orange/hidden, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 6 + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/ship/engineering) +"Lo" = ( +/obj/machinery/porta_turret/ship/weak{ + dir = 1 + }, +/turf/closed/wall/mineral/titanium, +/area/ship/bridge) +"Lq" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/structure/cable{ + icon_state = "2-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 4 + }, +/obj/effect/decal/cleanable/dirt/dust, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"LF" = ( +/obj/item/shovel/spade{ + pixel_x = -4 + }, +/obj/item/cultivator{ + pixel_x = 9 + }, +/obj/item/hatchet{ + pixel_y = 4 + }, +/obj/item/reagent_containers/glass/bucket{ + pixel_y = -4 + }, +/obj/item/storage/bag/plants/portaseeder{ + pixel_x = -9; + pixel_y = -4 + }, +/obj/structure/rack, +/obj/item/plant_analyzer{ + pixel_x = 10; + pixel_y = -7 + }, +/obj/effect/turf_decal/corner/opaque/green/three_quarters, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel, +/area/ship/crew/canteen/kitchen) +"LK" = ( +/obj/structure/curtain, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 9 + }, +/obj/machinery/light/small/directional/east, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/freezer, +/area/ship/crew) +"Mf" = ( +/obj/machinery/door/poddoor{ + id = "whiteship_starboard" + }, +/obj/machinery/power/shieldwallgen/atmos/roundstart{ + dir = 8; + id = "starboard_holofield"; + locked = 1 + }, +/obj/machinery/door/firedoor, +/obj/structure/cable, +/turf/open/floor/plating, +/area/ship/cargo) +"Mj" = ( +/obj/structure/chair/comfy/shuttle{ + dir = 4 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/engineering) +"Mt" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/effect/decal/cleanable/dirt/dust, +/obj/machinery/firealarm/directional/north, +/turf/open/floor/plasteel/dark, +/area/ship/crew) +"MC" = ( +/obj/machinery/power/apc/auto_name/directional/north, +/obj/machinery/light_switch{ + pixel_x = -13; + pixel_y = 22 + }, +/obj/structure/cable{ + icon_state = "0-2" + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/crew) +"MG" = ( +/obj/machinery/atmospherics/pipe/manifold/orange/hidden{ + dir = 1 + }, +/obj/machinery/firealarm/directional/north, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/ship/engineering) +"MM" = ( +/obj/effect/turf_decal/industrial/warning{ + dir = 8 + }, +/obj/effect/decal/cleanable/ash/crematorium, +/obj/machinery/power/terminal{ + dir = 8 + }, +/obj/structure/cable{ + icon_state = "0-2" + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/ship/engineering) +"MU" = ( +/obj/machinery/airalarm/directional/north, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4{ + dir = 8 + }, +/obj/effect/decal/cleanable/dirt/dust, +/obj/structure/sign/poster/contraband/random{ + pixel_x = 32 + }, +/turf/open/floor/plasteel/dark, +/area/ship/crew) +"MZ" = ( +/obj/effect/turf_decal/corner/transparent/neutral/full, +/obj/effect/turf_decal/industrial/outline/yellow, +/obj/structure/closet/firecloset/full{ + anchored = 1 + }, +/obj/machinery/light/small/directional/north, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"Ns" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer4, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer2, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"Nu" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer2{ + dir = 1 + }, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/crew/canteen) +"NL" = ( +/obj/effect/decal/cleanable/blood/splatter, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/ship/engineering) +"NN" = ( +/obj/machinery/space_heater, +/obj/machinery/light/small/directional/west, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/engineering) +"NY" = ( +/obj/machinery/door/airlock/external{ + dir = 4 + }, +/obj/docking_port/mobile{ + can_move_docking_ports = 1; + name = "Salvage Ship"; + port_direction = 2; + preferred_direction = 4; + dir = 4 + }, +/obj/machinery/atmospherics/pipe/layer_manifold{ + dir = 4 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/ship/engineering) +"Oe" = ( +/obj/effect/turf_decal/corner/opaque/green, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel, +/area/ship/crew/canteen/kitchen) +"On" = ( +/obj/effect/turf_decal/corner/transparent/neutral/full, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"Oq" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 10 + }, +/obj/machinery/light/small/directional/north, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/crew) +"Ov" = ( +/obj/structure/closet/crate/internals, +/obj/item/tank/internals/oxygen{ + pixel_x = -3; + pixel_y = 3 + }, +/obj/item/tank/internals/oxygen, +/obj/item/clothing/mask/breath{ + pixel_x = -3; + pixel_y = 3 + }, +/obj/item/clothing/mask/breath, +/obj/effect/turf_decal/box/corners, +/obj/structure/cable{ + icon_state = "2-8" + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"OX" = ( +/obj/machinery/power/smes/engineering{ + charge = 1e+006 + }, +/obj/structure/cable{ + icon_state = "0-6" + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/ship/engineering) +"Pb" = ( +/obj/effect/turf_decal/siding/wood{ + dir = 10 + }, +/obj/machinery/power/apc/auto_name/directional/west, +/obj/machinery/light_switch{ + dir = 4; + pixel_x = -21; + pixel_y = -10 + }, +/obj/structure/cable{ + icon_state = "0-2" + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/wood, +/area/ship/crew/canteen/kitchen) +"Pr" = ( +/obj/machinery/atmospherics/pipe/simple/orange/hidden{ + dir = 4 + }, +/obj/effect/decal/cleanable/blood, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer2{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/ship/engineering) +"PU" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 5 + }, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer2{ + dir = 1 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/crew) +"PV" = ( +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4{ + dir = 1 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"Qi" = ( +/obj/structure/rack, +/obj/item/storage/toolbox/electrical{ + pixel_x = 1; + pixel_y = 6 + }, +/obj/item/storage/toolbox/mechanical{ + pixel_x = -2; + pixel_y = -1 + }, +/obj/item/clothing/head/welding{ + pixel_x = -2; + pixel_y = 1 + }, +/obj/machinery/computer/helm/viewscreen/directional/south, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/engineering) +"QJ" = ( +/obj/effect/turf_decal/siding/wood, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/wood, +/area/ship/crew/canteen/kitchen) +"Rf" = ( +/obj/effect/turf_decal/corner/transparent/neutral/full, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/landmark/observer_start, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"Rv" = ( +/obj/machinery/door/airlock{ + name = "Bathroom" + }, +/obj/machinery/door/firedoor/border_only{ + dir = 1 + }, +/obj/machinery/door/firedoor/border_only, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/crew) +"Rw" = ( +/obj/machinery/light/small/directional/south, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/crew) +"RQ" = ( +/obj/structure/cable{ + icon_state = "1-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 10 + }, +/obj/effect/turf_decal/corner/transparent/neutral/full, +/obj/effect/decal/cleanable/blood/old, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/bridge) +"Sf" = ( +/obj/effect/turf_decal/corner/transparent/bar/diagonal, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel, +/area/ship/crew/canteen) +"TQ" = ( +/obj/item/reagent_containers/food/snacks/canned/beans{ + pixel_x = -5; + pixel_y = 3 + }, +/obj/item/reagent_containers/food/snacks/canned/beans{ + pixel_x = 2; + pixel_y = 3 + }, +/obj/item/reagent_containers/food/snacks/canned/beans{ + pixel_x = -2 + }, +/obj/item/reagent_containers/food/snacks/canned/beans{ + pixel_x = 5 + }, +/obj/item/reagent_containers/food/snacks/canned/beans{ + pixel_x = 1; + pixel_y = -3 + }, +/obj/item/reagent_containers/food/snacks/canned/beans{ + pixel_x = 8; + pixel_y = -3 + }, +/obj/structure/closet/crate{ + name = "food crate" + }, +/obj/machinery/airalarm/directional/west, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"Uk" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 4 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/crew/canteen) +"Un" = ( +/obj/effect/turf_decal/ntspaceworks_big/three, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"Uo" = ( +/obj/effect/decal/cleanable/ash/crematorium, +/obj/machinery/airalarm/directional/south, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer2{ + dir = 1 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/ship/engineering) +"UE" = ( +/obj/machinery/vending/cigarette, +/obj/effect/turf_decal/corner/transparent/bar/diagonal, +/obj/effect/decal/cleanable/dirt/dust, +/obj/machinery/light_switch{ + dir = 1; + pixel_y = -21; + pixel_x = -7 + }, +/turf/open/floor/plasteel, +/area/ship/crew/canteen) +"UF" = ( +/obj/structure/chair, +/obj/effect/turf_decal/corner/transparent/bar/diagonal, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel, +/area/ship/crew/canteen) +"Vi" = ( +/obj/effect/turf_decal/box/corners, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"VB" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer2, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/effect/decal/cleanable/dirt/dust, +/obj/structure/cable{ + icon_state = "2-4" + }, +/turf/open/floor/plasteel/dark, +/area/ship/crew) +"VN" = ( +/obj/structure/table, +/obj/machinery/cell_charger, +/obj/item/stock_parts/cell/high/empty, +/obj/item/multitool{ + pixel_x = -11; + pixel_y = 9 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/engineering) +"Wd" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4, +/obj/machinery/light/small/directional/north, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/crew) +"Ws" = ( +/obj/machinery/portable_atmospherics/canister/oxygen, +/obj/machinery/light/small/broken/directional/west, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/engineering) +"Xn" = ( +/obj/machinery/power/smes/engineering{ + charge = 1e+006 + }, +/obj/structure/cable{ + icon_state = "0-6" + }, +/obj/machinery/light/small/broken/directional/north, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/ship/engineering) +"Xq" = ( +/obj/machinery/holopad/emergency/bar, +/obj/effect/turf_decal/corner/transparent/neutral/full, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/bridge) +"Xs" = ( +/obj/effect/turf_decal/corner/transparent/neutral/full, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer2{ + dir = 1 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"XE" = ( +/obj/machinery/door/airlock/external{ + dir = 4 + }, +/obj/effect/mapping_helpers/airlock/cyclelink_helper{ + dir = 4 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 8 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 4 + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/ship/cargo) +"XH" = ( +/obj/machinery/button/door{ + id = "whiteship_internal_windows"; + name = "Internal Window Control"; + pixel_x = 25; + pixel_y = 5; + dir = 8 + }, +/obj/effect/decal/cleanable/dirt/dust, +/obj/structure/closet/crate/medical, +/obj/item/storage/firstaid/fire, +/obj/item/reagent_containers/hypospray/medipen/survival, +/obj/item/reagent_containers/glass/bottle/morphine, +/obj/item/reagent_containers/syringe, +/obj/item/storage/firstaid/medical, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"XR" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 9 + }, +/obj/effect/turf_decal/corner/transparent/neutral/full, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/bridge) +"YR" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/effect/decal/cleanable/dirt/dust, +/obj/structure/closet/crate/secure/weapon, +/obj/item/gun/energy/laser/retro, +/obj/item/gun/energy/laser/retro, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"YW" = ( +/turf/closed/wall/mineral/titanium/nodiagonal, +/area/ship/cargo) +"Zd" = ( +/obj/machinery/door/window/southright, +/obj/structure/sink{ + dir = 8; + pixel_x = 11 + }, +/obj/structure/mirror{ + pixel_x = 28 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 9 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/freezer, +/area/ship/crew) +"Zf" = ( +/obj/effect/turf_decal/corner/transparent/bar/diagonal, +/obj/structure/table, +/obj/effect/spawner/lootdrop/ration, +/obj/effect/spawner/lootdrop/ration{ + pixel_x = 7 + }, +/obj/effect/spawner/lootdrop/ration{ + pixel_x = -8 + }, +/obj/machinery/button/door{ + id = "whiteship_internal_windows"; + name = "Internal Window Control"; + pixel_x = -25; + pixel_y = -4; + dir = 4 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel, +/area/ship/crew/canteen) +"Zy" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer4, +/obj/effect/decal/cleanable/dirt/dust, +/obj/machinery/light/small/directional/south, +/turf/open/floor/plasteel/dark, +/area/ship/crew) +"ZB" = ( +/obj/effect/decal/cleanable/blood/old, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/structure/cable{ + icon_state = "1-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer2, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"ZE" = ( +/obj/machinery/button/door{ + id = "whiteship_port"; + name = "Port Blast Door Control"; + pixel_x = 25; + pixel_y = 5; + dir = 8 + }, +/obj/machinery/button/shieldwallgen{ + dir = 8; + pixel_x = 23; + pixel_y = -4; + id = "port_holofield" + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, +/area/ship/cargo) +"ZR" = ( +/obj/machinery/shower{ + dir = 4 + }, +/obj/item/soap/nanotrasen, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer2{ + dir = 4 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/freezer, +/area/ship/crew) + +(1,1,1) = {" +aa +aa +ab +ax +aL +ax +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ax +aL +ax +ab +aa +aa +"} +(2,1,1) = {" +aa +ab +ac +fb +aM +lC +ac +ab +aa +aa +aa +aa +aa +aa +aa +ab +ac +fb +aM +lC +ac +ab +aa +"} +(3,1,1) = {" +aa +ac +Hm +MM +ao +ej +ak +ac +aa +aa +aa +aa +aa +aa +aa +ac +za +cX +dp +dH +dW +ac +aa +"} +(4,1,1) = {" +aa +ac +MG +GH +Lb +hA +al +ac +aN +aa +ac +NY +ac +aa +Ju +ac +Xn +cY +el +dI +dX +ac +aa +"} +(5,1,1) = {" +aa +ac +pN +cL +ib +NL +dY +ac +aO +ac +ac +bH +ac +ac +sx +ac +OX +cZ +JR +mk +yh +ac +aa +"} +(6,1,1) = {" +aa +Lo +ac +ri +Pr +Uo +ac +ac +uB +Ws +ac +dR +ac +NN +Am +ac +ac +bj +fX +dK +ac +Lo +aa +"} +(7,1,1) = {" +aa +aa +cj +wD +ay +eb +bM +Jq +aQ +ci +zw +bJ +bT +cl +cx +cI +Ai +vk +dt +aB +cj +aa +aa +"} +(8,1,1) = {" +aa +aa +YW +YW +wG +YW +YW +vm +yS +FR +Mj +gA +Mj +In +VN +Qi +YW +YW +XE +YW +YW +aa +aa +"} +(9,1,1) = {" +aa +ad +YW +Fk +On +IE +YW +YW +YW +bz +bz +bz +bz +bz +YW +YW +YW +db +kz +Dm +YW +ad +aa +"} +(10,1,1) = {" +aa +EL +KI +ef +ku +ae +cQ +zC +TQ +ap +FX +aF +de +Ag +cb +EU +cQ +dc +Lq +em +cU +ch +aa +"} +(11,1,1) = {" +aa +jb +ap +aE +by +aF +aq +mb +ap +km +Vi +af +mb +ap +ap +Ov +AT +HH +FV +tZ +xV +ei +aa +"} +(12,1,1) = {" +qx +jb +FY +ap +my +uk +ar +Xs +aA +aF +aF +Rf +aF +af +hv +Fb +uO +bm +Ns +Un +dZ +ei +bf +"} +(13,1,1) = {" +aa +jb +ap +ap +by +af +aq +hq +ap +bA +cK +aF +bX +km +ap +cK +cS +aF +YR +dM +ea +ei +aa +"} +(14,1,1) = {" +aa +Ha +ZE +qI +ZB +bF +cQ +Ee +eu +kN +Vi +Du +bU +ap +XH +ve +cQ +tS +eX +PV +sr +Mf +aa +"} +(15,1,1) = {" +aa +ad +YW +MZ +On +cy +YW +YW +YW +bz +bz +bz +bz +bz +YW +YW +YW +DF +On +cn +YW +ad +aa +"} +(16,1,1) = {" +aa +aa +YW +YW +cP +YW +YW +aH +Zf +bq +UF +EX +ca +bq +cA +cM +YW +YW +zi +YW +YW +aa +aa +"} +(17,1,1) = {" +aa +aa +cv +aV +nt +uw +bD +Bl +rU +jw +UF +bO +ca +cp +cB +cN +bD +li +Il +Cy +ec +aa +aa +"} +(18,1,1) = {" +aa +aa +cv +as +bh +nK +at +aI +Sf +bs +Gm +xm +cc +cq +cC +cC +bt +di +oj +Nu +ec +aa +aa +"} +(19,1,1) = {" +aa +Lo +ai +ai +MU +jJ +bD +wu +pF +ld +cH +AU +im +oF +La +UE +bD +sA +Uk +an +bD +Lo +aa +"} +(20,1,1) = {" +aa +ai +pm +ai +ai +Kw +ai +ai +ai +bQ +bQ +eA +bQ +bQ +cO +cO +cO +cO +hU +cO +cO +cO +aa +"} +(21,1,1) = {" +aa +ai +Oq +Ie +bN +Zy +ai +mc +ZR +bQ +bG +xK +ce +bQ +cE +mL +cV +Pb +By +lH +ee +cO +aa +"} +(22,1,1) = {" +aa +cv +DJ +yc +ai +xI +Rv +Zd +LK +bQ +aC +XR +cf +bQ +cF +mg +CP +dl +dD +dS +ys +gt +aa +"} +(23,1,1) = {" +aa +ai +ai +ai +ai +aj +ai +ai +ai +bQ +fa +RQ +cg +bQ +cG +cz +bu +QJ +dE +dT +Gr +cO +aa +"} +(24,1,1) = {" +aa +cv +Ac +tX +ai +Mt +ai +vV +nR +bQ +qT +Xq +HZ +bQ +FU +bC +vI +dk +dF +dU +jF +gt +aa +"} +(25,1,1) = {" +aa +ai +Wd +VB +kX +lP +AY +PU +Rw +bQ +rF +az +eh +bQ +zs +hp +cW +zU +pn +sP +sJ +cO +aa +"} +(26,1,1) = {" +aa +ai +MC +am +ai +iU +ai +id +ai +bQ +dq +dO +dg +bQ +cO +tU +qt +tl +lK +Oe +LF +cO +aa +"} +(27,1,1) = {" +aa +ag +ai +Kc +ai +oc +ai +ai +ai +co +co +co +co +co +cO +cO +bZ +yZ +eV +ed +cO +He +aa +"} +(28,1,1) = {" +aa +aa +Lo +ai +ai +ai +ai +Lo +aa +aa +aa +aa +aa +aa +aa +Lo +cO +cO +cO +cO +Lo +aa +aa +"} diff --git a/_maps/shuttles/pgf/pgf_crying_sun.dmm b/_maps/shuttles/pgf/pgf_crying_sun.dmm new file mode 100644 index 000000000000..f797f25d2f95 --- /dev/null +++ b/_maps/shuttles/pgf/pgf_crying_sun.dmm @@ -0,0 +1,8195 @@ +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"ai" = ( +/obj/structure/railing, +/obj/structure/cable/yellow{ + icon_state = "0-8" + }, +/obj/item/stack/sheet/mineral/uranium/twenty, +/obj/item/wrench, +/obj/machinery/power/port_gen/pacman/super, +/turf/open/floor/plasteel/tech/techmaint, +/area/ship/engineering) +"ar" = ( +/obj/structure/railing{ + dir = 8 + }, +/obj/machinery/vending/coffee, +/obj/item/toy/plush/moth/firewatch{ + pixel_y = 20 + }, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 10 + }, +/obj/machinery/light/directional/east, +/turf/open/floor/plasteel/dark, +/area/ship/crew/dorm) +"au" = ( +/obj/machinery/atmospherics/components/unary/portables_connector/visible/layer2{ + dir = 8 + }, +/obj/machinery/portable_atmospherics/canister/toxins, +/obj/machinery/light/directional/east, +/turf/open/floor/plasteel/tech, +/area/ship/engineering/engines/port) +"aw" = ( +/obj/machinery/photocopier, +/obj/machinery/light/directional/south, +/turf/open/floor/plasteel/tech, +/area/ship/security) +"aF" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/light_switch{ + dir = 2; + pixel_x = -12; + pixel_y = 19 + }, +/obj/item/radio/intercom/directional/north, +/obj/effect/turf_decal/borderfloorblack, +/turf/open/floor/plasteel/dark, +/area/ship/construction) +"aR" = ( +/obj/structure/table/wood, +/obj/item/flashlight/lamp/green{ + pixel_y = 11; + pixel_x = -4 + }, +/obj/item/desk_flag/gezena{ + pixel_x = -9; + pixel_y = 1 + }, +/obj/item/toy/plush/tali{ + pixel_x = 5; + pixel_y = 3 + }, +/obj/effect/turf_decal/borderfloorblack, +/obj/item/radio/intercom/directional/west, +/turf/open/floor/plasteel/tech, +/area/ship/crew/dorm/dormtwo) +"aT" = ( +/obj/effect/turf_decal/corner_steel_grid{ + dir = 5 + }, +/obj/effect/turf_decal/spline/fancy/opaque/lime{ + dir = 1 + }, +/obj/structure/cable{ + icon_state = "1-8" + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/central) +"bb" = ( +/obj/structure/railing{ + dir = 6 + }, +/obj/structure/table/reinforced, +/obj/item/radio/intercom/wideband/table{ + dir = 4; + pixel_x = 4; + pixel_y = 5 + }, +/obj/item/radio/intercom/table{ + dir = 4; + pixel_x = 4; + pixel_y = -6 + }, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 10 + }, +/turf/open/floor/plasteel/telecomms_floor, +/area/ship/bridge) +"bd" = ( +/obj/effect/turf_decal/corner_steel_grid{ + dir = 5 + }, +/obj/effect/turf_decal/spline/fancy/opaque/lime{ + dir = 1 + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/central) +"be" = ( +/obj/effect/turf_decal/trimline/opaque/bottlegreen/arrow_cw{ + dir = 4 + }, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 9 + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/turf/open/floor/plasteel/white, +/area/ship/hallway/port) +"bl" = ( +/obj/effect/turf_decal/industrial/traffic, +/obj/machinery/power/apc/auto_name/directional/north, +/obj/structure/cable{ + icon_state = "0-4" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/turf/open/floor/plasteel/mono, +/area/ship/hangar/starboard) +"bB" = ( +/obj/machinery/atmospherics/components/unary/shuttle/heater{ + dir = 4 + }, +/obj/structure/catwalk/over/plated_catwalk/dark, +/obj/machinery/door/firedoor/border_only{ + dir = 4 + }, +/obj/structure/window/plasma/reinforced{ + dir = 8 + }, +/turf/open/floor/plating, +/area/ship/engineering/engines/starboard) +"bD" = ( +/obj/structure/window/reinforced/fulltile/shuttle, +/obj/structure/grille, +/obj/machinery/door/poddoor/shutters{ + id = "lib_bridge_shut"; + dir = 4 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 4 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 8 + }, +/turf/open/floor/plating, +/area/ship/bridge) +"bE" = ( +/obj/effect/turf_decal/corner_steel_grid{ + dir = 4 + }, +/obj/effect/turf_decal/spline/fancy/opaque/lime/corner{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 9 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/central) +"bF" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/obj/effect/turf_decal/borderfloorblack{ + dir = 4 + }, +/turf/open/floor/plasteel/dark, +/area/ship/construction) +"bM" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/structure/catwalk/over/plated_catwalk, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/turf/open/floor/plating, +/area/ship/engineering) +"bT" = ( +/obj/item/storage/box/flashbangs{ + pixel_x = -7; + pixel_y = 7 + }, +/obj/item/storage/box/zipties{ + pixel_y = 7; + pixel_x = 8 + }, +/obj/item/storage/box/flashes{ + pixel_y = -1 + }, +/obj/item/screwdriver{ + pixel_x = -8; + pixel_y = -5 + }, +/obj/item/screwdriver{ + pixel_x = -5; + pixel_y = -5 + }, +/obj/item/screwdriver{ + pixel_x = -2; + pixel_y = -5 + }, +/obj/item/screwdriver{ + pixel_x = 1; + pixel_y = -5 + }, +/obj/item/screwdriver{ + pixel_x = 4; + pixel_y = -5 + }, +/obj/item/screwdriver{ + pixel_x = 7; + pixel_y = -5 + }, +/obj/structure/closet/secure_closet/wall{ + icon_state = "sec_wall"; + dir = 4; + pixel_x = -28; + name = "equipment locker" + }, +/obj/effect/turf_decal/corner/opaque/purple/border{ + dir = 1 + }, +/turf/open/floor/vault, +/area/ship/security/armory) +"bU" = ( +/obj/structure/table, +/obj/structure/bedsheetbin, +/obj/effect/turf_decal/corner_steel_grid/full{ + dir = 1 + }, +/obj/machinery/power/apc/auto_name/directional/west, +/obj/structure/cable{ + icon_state = "0-4" + }, +/turf/open/floor/plasteel/dark, +/area/ship/crew/dorm) +"bV" = ( +/obj/structure/table/reinforced, +/obj/item/folder/red{ + pixel_x = -4; + pixel_y = -3 + }, +/obj/item/folder/blue{ + pixel_x = 3 + }, +/obj/item/folder/yellow{ + pixel_y = 5; + pixel_x = 7 + }, +/obj/item/table_bell{ + pixel_x = -7; + pixel_y = 9 + }, +/turf/open/floor/plasteel/tech, +/area/ship/security) +"ca" = ( +/obj/structure/bed, +/obj/item/bedsheet/head_of_personnel, +/obj/effect/turf_decal/siding/wood{ + dir = 4 + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/turf/open/floor/plasteel/sepia, +/area/ship/crew/dorm/dormthree) +"cs" = ( +/obj/machinery/power/apc/auto_name/directional/south, +/obj/structure/cable{ + icon_state = "0-5" + }, +/obj/machinery/button/door{ + id = "lib_engine_blast"; + name = "Engine Shutters"; + dir = 4; + pixel_x = -20; + pixel_y = 8 + }, +/turf/open/floor/plasteel/tech, +/area/ship/engineering/engines/starboard) +"cy" = ( +/obj/effect/turf_decal/trimline/opaque/bottlegreen/filled, +/obj/effect/turf_decal/industrial/outline/blue, +/obj/machinery/door/airlock{ + dir = 4; + name = "Cryogenic Storage" + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/door/firedoor/border_only{ + dir = 8 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 4 + }, +/turf/open/floor/plasteel/dark, +/area/ship/crew/cryo) +"cA" = ( +/turf/closed/wall/mineral/titanium/exterior, +/area/ship/security) +"cE" = ( +/obj/effect/turf_decal/corner_steel_grid{ + dir = 10 + }, +/obj/effect/turf_decal/spline/fancy/opaque/lime, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer4, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/central) +"cI" = ( +/obj/effect/turf_decal/corner/opaque/purple/three_quarters{ + dir = 1 + }, +/turf/open/floor/vault, +/area/ship/security/armory) +"cQ" = ( +/obj/structure/bed, +/obj/structure/railing{ + dir = 1 + }, +/obj/item/bedsheet/purple, +/obj/structure/curtain/cloth/grey, +/turf/open/floor/plasteel/dark, +/area/ship/crew/dorm) +"cR" = ( +/turf/open/floor/engine/hull, +/area/ship/external/dark) +"cU" = ( +/obj/structure/window/reinforced/fulltile/shuttle, +/obj/structure/grille, +/obj/machinery/door/poddoor/shutters{ + id = "lib_mess_shut" + }, +/obj/machinery/door/firedoor/border_only{ + dir = 1 + }, +/obj/machinery/door/firedoor/border_only, +/turf/open/floor/plating, +/area/ship/crew/canteen) +"cV" = ( +/obj/item/clothing/suit/space/gezena, +/obj/item/clothing/head/helmet/space/gezena, +/obj/item/tank/internals/oxygen/red, +/obj/item/clothing/mask/gas/explorer, +/obj/machinery/light/directional/east, +/obj/machinery/suit_storage_unit/inherit, +/turf/open/floor/plasteel/tech, +/area/ship/security) +"cY" = ( +/obj/machinery/camera/autoname{ + dir = 1; + network = list("GEC") + }, +/obj/structure/ore_box, +/turf/open/floor/plasteel/dark, +/area/ship/construction) +"cZ" = ( +/obj/structure/cable{ + icon_state = "1-4" + }, +/obj/machinery/atmospherics/components/binary/dp_vent_pump/high_volume/layer2, +/obj/machinery/atmospherics/pipe/simple/scrubbers/visible/layer4, +/turf/open/floor/engine/hull/reinforced/interior, +/area/ship/construction) +"db" = ( +/obj/machinery/atmospherics/pipe/simple/orange/visible{ + dir = 10 + }, +/obj/machinery/atmospherics/pipe/simple/general/visible/layer2{ + dir = 6 + }, +/obj/structure/catwalk/over/plated_catwalk/dark, +/obj/structure/cable{ + icon_state = "1-8" + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/turf/open/floor/plating, +/area/ship/engineering/engines/starboard) +"du" = ( +/obj/machinery/porta_turret/ship/weak{ + dir = 6 + }, +/obj/structure/cable{ + icon_state = "0-8" + }, +/turf/open/floor/engine/hull, +/area/ship/external/dark) +"dz" = ( +/obj/effect/turf_decal/corner_steel_grid{ + dir = 10 + }, +/obj/effect/turf_decal/spline/fancy/opaque/lime, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/central) +"dB" = ( +/obj/structure/cable{ + icon_state = "1-8" + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4{ + dir = 1 + }, +/obj/effect/turf_decal/corner/opaque/bottlegreen/border, +/turf/open/floor/plasteel/dark, +/area/ship/security) +"dE" = ( +/obj/structure/cable{ + icon_state = "1-4" + }, +/obj/effect/turf_decal/corner/opaque/purple/bordercorner{ + dir = 1 + }, +/turf/open/floor/vault, +/area/ship/security/armory) +"dF" = ( +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/structure/table, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 6 + }, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 8 + }, +/turf/open/floor/plasteel/telecomms_floor, +/area/ship/hallway/port) +"dK" = ( +/obj/machinery/computer/cargo/express{ + dir = 8 + }, +/obj/structure/catwalk/over/plated_catwalk/dark, +/obj/structure/cable{ + icon_state = "1-2" + }, +/turf/open/floor/plasteel/telecomms_floor, +/area/ship/bridge) +"dQ" = ( +/obj/effect/turf_decal/industrial/traffic, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/button/shieldwallgen{ + id = "lib_hangar_holo"; + pixel_y = 19; + pixel_x = -5 + }, +/obj/machinery/button/door{ + id = "lib_hangar_blast"; + name = "Hangar Shutters"; + pixel_y = 20; + pixel_x = 3 + }, +/turf/open/floor/plasteel/mono, +/area/ship/hangar/starboard) +"eb" = ( +/obj/effect/turf_decal/corner_steel_grid{ + dir = 8 + }, +/obj/effect/turf_decal/spline/fancy/opaque/lime/corner{ + dir = 8 + }, +/obj/structure/cable{ + icon_state = "1-4" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/central) +"ej" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/central) +"em" = ( +/obj/machinery/atmospherics/components/binary/pump{ + dir = 8; + name = "engine fuel pump" + }, +/obj/structure/cable{ + icon_state = "2-4" + }, +/obj/machinery/camera/autoname{ + dir = 2; + network = list("GEC") + }, +/obj/machinery/light_switch{ + dir = 2; + pixel_x = 10; + pixel_y = 19 + }, +/obj/structure/catwalk/over/plated_catwalk/dark, +/turf/open/floor/plating, +/area/ship/engineering/engines/starboard) +"eB" = ( +/turf/open/floor/pod, +/area/ship/hangar/starboard) +"eE" = ( +/obj/structure/window/reinforced/fulltile/shuttle, +/obj/machinery/door/poddoor/shutters{ + id = "lib_dorm_shut" + }, +/obj/structure/grille, +/obj/machinery/door/firedoor/border_only{ + dir = 1 + }, +/obj/machinery/door/firedoor/border_only, +/turf/open/floor/plating, +/area/ship/crew/dorm) +"eM" = ( +/obj/effect/turf_decal/borderfloorblack, +/obj/machinery/power/apc/auto_name/directional/south, +/obj/machinery/computer/helm/viewscreen/directional/east, +/obj/structure/cable{ + icon_state = "0-1" + }, +/turf/open/floor/plasteel/tech, +/area/ship/crew/dorm/dormtwo) +"eN" = ( +/obj/machinery/shower{ + dir = 8 + }, +/obj/effect/turf_decal/techfloor/hole, +/obj/item/soap/deluxe, +/turf/open/floor/plasteel/mono, +/area/ship/crew/toilet) +"eO" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/turf/open/floor/engine/hull/reinforced, +/area/ship/external/dark) +"eR" = ( +/obj/structure/cable{ + icon_state = "2-8" + }, +/turf/open/floor/engine/hull, +/area/ship/external/dark) +"eY" = ( +/obj/machinery/atmospherics/components/trinary/mixer/flipped/layer2{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/orange/visible, +/obj/structure/cable{ + icon_state = "1-10" + }, +/turf/open/floor/plasteel/tech, +/area/ship/engineering/engines/starboard) +"fd" = ( +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/machinery/light_switch{ + dir = 4; + pixel_x = -19; + pixel_y = 12 + }, +/turf/open/floor/plasteel/tech, +/area/ship/security) +"ft" = ( +/obj/structure/mirror{ + pixel_y = 23 + }, +/obj/structure/sink{ + pixel_y = 20 + }, +/turf/open/floor/plastic, +/area/ship/crew/toilet) +"fG" = ( +/turf/closed/wall/mineral/titanium/exterior, +/area/ship/crew/dorm/dormtwo) +"fN" = ( +/obj/machinery/power/shuttle/engine/electric{ + dir = 4 + }, +/obj/structure/cable/blue{ + icon_state = "0-4" + }, +/obj/structure/catwalk/over/plated_catwalk/dark, +/obj/machinery/door/poddoor{ + dir = 4; + id = "lib_engine_blast" + }, +/turf/open/floor/plating, +/area/ship/engineering/engines/starboard) +"fV" = ( +/obj/machinery/light/directional/west, +/turf/open/floor/plasteel/tech/grid, +/area/ship/construction) +"fZ" = ( +/obj/machinery/microwave, +/obj/structure/table, +/obj/machinery/light/directional/east, +/turf/open/floor/plasteel/white, +/area/ship/crew/canteen) +"gc" = ( +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/structure/table, +/obj/item/paper_bin{ + pixel_y = -3; + pixel_x = -1 + }, +/obj/item/pen/blue{ + pixel_x = -1; + pixel_y = 1 + }, +/obj/item/pen/red{ + pixel_y = -4; + pixel_x = -1 + }, +/obj/effect/turf_decal/corner_steel_grid, +/obj/structure/window/reinforced{ + dir = 1 + }, +/turf/open/floor/plasteel/telecomms_floor, +/area/ship/hallway/port) +"ge" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/structure/catwalk/over/plated_catwalk, +/obj/machinery/light/directional/south, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/obj/machinery/atmospherics/components/binary/pump/on/layer2{ + dir = 4; + name = "distribution output pump" + }, +/turf/open/floor/plating, +/area/ship/engineering) +"gh" = ( +/obj/machinery/door/airlock/security/glass{ + req_one_access_txt = "1"; + name = "Marine Bay" + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/machinery/door/firedoor/border_only, +/obj/machinery/door/firedoor/border_only{ + dir = 1 + }, +/turf/open/floor/plasteel/tech, +/area/ship/security) +"gn" = ( +/obj/structure/cable{ + icon_state = "1-8" + }, +/obj/structure/catwalk/over/plated_catwalk, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 9 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 9 + }, +/obj/item/radio/intercom/directional/east, +/obj/structure/tank_dispenser, +/turf/open/floor/plating, +/area/ship/engineering) +"gx" = ( +/obj/structure/rack, +/obj/machinery/light/directional/west, +/obj/item/gun/energy/kalix/pgf/heavy/sniper{ + pixel_x = -3; + pixel_y = 2 + }, +/obj/effect/turf_decal/corner/opaque/neutral/full, +/turf/open/floor/vault, +/area/ship/security/armory) +"gz" = ( +/obj/structure/chair, +/obj/effect/turf_decal/corner/opaque/lime/mono, +/obj/structure/cable{ + icon_state = "4-8" + }, +/turf/open/floor/plasteel/dark, +/area/ship/crew/canteen) +"gG" = ( +/obj/structure/sign/flag/gezena{ + dir = 4; + pixel_x = -30 + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/turf/open/floor/plasteel/stairs{ + icon = 'icons/obj/stairs.dmi'; + dir = 2 + }, +/area/ship/bridge) +"gM" = ( +/obj/machinery/door/airlock{ + name = "Restroom" + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/door/firedoor/border_only, +/obj/machinery/door/firedoor/border_only{ + dir = 1 + }, +/turf/open/floor/plastic, +/area/ship/crew/toilet) +"gY" = ( +/obj/machinery/power/apc/auto_name/directional/east, +/obj/structure/cable{ + icon_state = "0-8" + }, +/obj/item/radio/intercom/directional/south, +/obj/effect/turf_decal/borderfloorblack, +/turf/open/floor/plasteel/dark, +/area/ship/hallway/port) +"ha" = ( +/obj/structure/railing{ + dir = 4 + }, +/obj/structure/railing{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/turf/open/floor/plasteel/stairs{ + dir = 1 + }, +/area/ship/engineering) +"he" = ( +/obj/machinery/camera/autoname, +/turf/open/floor/plasteel/dark, +/area/ship/bridge) +"hg" = ( +/obj/structure/railing/corner{ + dir = 4 + }, +/obj/effect/turf_decal/siding/wood{ + dir = 10 + }, +/obj/structure/cable{ + icon_state = "1-4" + }, +/obj/structure/closet/wall{ + dir = 1; + icon_door = null; + name = "Uniforms"; + pixel_y = -28 + }, +/obj/item/clothing/under/gezena{ + pixel_y = -5; + pixel_x = -9 + }, +/obj/item/clothing/under/gezena{ + pixel_y = -5; + pixel_x = -9 + }, +/obj/item/clothing/under/gezena{ + pixel_y = -5; + pixel_x = -9 + }, +/obj/item/clothing/under/gezena{ + pixel_y = -5; + pixel_x = -9 + }, +/obj/item/clothing/under/gezena{ + pixel_y = -5; + pixel_x = -9 + }, +/obj/item/clothing/under/gezena{ + pixel_y = -5; + pixel_x = -9 + }, +/obj/item/clothing/neck/cloak/gezena{ + pixel_x = 8; + pixel_y = -5 + }, +/obj/item/clothing/neck/cloak/gezena{ + pixel_x = 8; + pixel_y = -5 + }, +/obj/item/clothing/neck/cloak/gezena{ + pixel_x = 8; + pixel_y = -5 + }, +/obj/item/clothing/neck/cloak/gezena{ + pixel_x = 8; + pixel_y = -5 + }, +/obj/item/clothing/neck/cloak/gezena{ + pixel_x = 8; + pixel_y = -5 + }, +/obj/item/clothing/neck/cloak/gezena{ + pixel_x = 8; + pixel_y = -5 + }, +/obj/item/clothing/shoes/combat/gezena{ + pixel_y = 11; + pixel_x = -4 + }, +/obj/item/clothing/shoes/combat/gezena{ + pixel_y = 11; + pixel_x = -4 + }, +/obj/item/clothing/shoes/combat/gezena{ + pixel_y = 11; + pixel_x = -4 + }, +/obj/item/clothing/shoes/combat/gezena{ + pixel_y = 11; + pixel_x = -4 + }, +/obj/item/clothing/shoes/combat/gezena{ + pixel_y = 11; + pixel_x = -4 + }, +/obj/item/clothing/shoes/combat/gezena{ + pixel_y = 11; + pixel_x = -4 + }, +/obj/item/clothing/suit/toggle/gezena, +/obj/item/clothing/suit/toggle/gezena, +/obj/item/clothing/suit/toggle/gezena, +/obj/item/clothing/suit/toggle/gezena, +/obj/item/clothing/suit/toggle/gezena, +/obj/item/clothing/suit/toggle/gezena, +/obj/item/storage/backpack/duffelbag{ + pixel_x = -3; + pixel_y = -11 + }, +/obj/item/storage/backpack/duffelbag{ + pixel_x = -3; + pixel_y = -11 + }, +/obj/item/storage/backpack/duffelbag{ + pixel_x = -3; + pixel_y = -11 + }, +/obj/item/storage/backpack/duffelbag{ + pixel_x = -3; + pixel_y = -11 + }, +/obj/item/storage/backpack/duffelbag{ + pixel_x = -3; + pixel_y = -11 + }, +/obj/item/storage/backpack/duffelbag{ + pixel_x = -3; + pixel_y = -11 + }, +/turf/open/floor/plasteel/sepia, +/area/ship/crew/dorm) +"hi" = ( +/obj/effect/turf_decal/corner/opaque/purple{ + dir = 10 + }, +/obj/effect/turf_decal/industrial/traffic{ + dir = 4 + }, +/turf/open/floor/vault, +/area/ship/security/armory) +"hl" = ( +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/light_switch{ + dir = 8; + pixel_x = 19; + pixel_y = 9 + }, +/turf/open/floor/plasteel/stairs{ + icon = 'icons/obj/stairs.dmi'; + dir = 1 + }, +/area/ship/crew/dorm/dormtwo) +"hs" = ( +/obj/machinery/light/floor, +/obj/structure/cable{ + icon_state = "2-4" + }, +/turf/open/floor/plastic, +/area/ship/crew/toilet) +"hA" = ( +/obj/machinery/atmospherics/pipe/simple/general/visible/layer2, +/obj/machinery/atmospherics/pipe/simple/orange/visible{ + dir = 6 + }, +/turf/open/floor/plasteel/tech, +/area/ship/engineering/engines/port) +"hB" = ( +/obj/effect/turf_decal/spline/fancy/opaque/lime{ + dir = 10 + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4{ + dir = 1 + }, +/turf/open/floor/plasteel/tech, +/area/ship/crew/office) +"hJ" = ( +/obj/machinery/power/shuttle/engine/electric{ + dir = 4 + }, +/obj/structure/cable/blue{ + icon_state = "0-4" + }, +/obj/structure/catwalk/over/plated_catwalk/dark, +/obj/machinery/door/poddoor{ + dir = 4; + id = "lib_engine_blast" + }, +/turf/open/floor/plating, +/area/ship/engineering/engines/port) +"hK" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber, +/obj/structure/window/plasma/reinforced, +/obj/machinery/door/firedoor/border_only, +/turf/open/floor/engine/airless, +/area/ship/engineering/engines/port) +"hM" = ( +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/structure/catwalk/over/plated_catwalk/dark, +/obj/machinery/door/airlock/hatch{ + req_one_access = list(1, 10) + }, +/obj/machinery/door/firedoor/border_only{ + dir = 1 + }, +/obj/machinery/door/firedoor/border_only, +/turf/open/floor/plating, +/area/ship/engineering/engines/starboard) +"hS" = ( +/obj/effect/turf_decal/corner_steel_grid{ + dir = 9 + }, +/obj/effect/turf_decal/spline/fancy/opaque/lime{ + dir = 8 + }, +/obj/structure/closet/firecloset/wall{ + dir = 4; + pixel_x = -28 + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 6 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/central) +"hW" = ( +/obj/structure/railing/corner, +/obj/structure/railing/corner{ + dir = 8 + }, +/obj/structure/cable/yellow{ + icon_state = "0-4" + }, +/obj/structure/catwalk/over/plated_catwalk, +/obj/machinery/power/terminal{ + dir = 8 + }, +/obj/machinery/light/directional/north, +/turf/open/floor/plating, +/area/ship/engineering) +"if" = ( +/obj/structure/cable{ + icon_state = "0-8" + }, +/obj/machinery/porta_turret/ship/weak{ + dir = 4 + }, +/obj/structure/catwalk/over/plated_catwalk/dark, +/turf/open/floor/plating/airless, +/area/ship/external/dark) +"ih" = ( +/obj/structure/table/reinforced, +/obj/item/modular_computer/laptop/preset, +/obj/structure/window/reinforced{ + dir = 1 + }, +/turf/open/floor/vault, +/area/ship/security/armory) +"ii" = ( +/obj/machinery/button/shieldwallgen{ + id = "lib_entrance_holo"; + dir = 8; + pixel_y = 13; + pixel_x = 19 + }, +/obj/machinery/button/door{ + id = "lib_entrance_blast"; + name = "Entrance Blast Doors"; + dir = 8; + pixel_y = 5; + pixel_x = 20 + }, +/obj/machinery/button/door{ + id = "lib_gate"; + name = "Checkpoint Shutters"; + dir = 8; + pixel_x = 20; + pixel_y = -5 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/port) +"is" = ( +/obj/machinery/power/shuttle/engine/fueled/plasma{ + dir = 4 + }, +/obj/structure/catwalk/over/plated_catwalk/dark, +/obj/machinery/door/poddoor{ + dir = 4; + id = "lib_engine_blast" + }, +/turf/open/floor/plating, +/area/ship/engineering/engines/port) +"it" = ( +/obj/effect/turf_decal/industrial/traffic/corner, +/obj/machinery/airalarm/directional/north, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 6 + }, +/turf/open/floor/plasteel/mono, +/area/ship/hangar/starboard) +"iA" = ( +/obj/structure/closet/crate/bin{ + pixel_y = 4 + }, +/obj/item/radio/intercom/directional/east, +/obj/item/trash/sosjerky{ + pixel_x = 4 + }, +/obj/item/trash/popcorn{ + pixel_y = -7 + }, +/obj/item/trash/raisins{ + pixel_x = 5; + pixel_y = 3 + }, +/obj/item/trash/semki{ + pixel_y = 3; + pixel_x = -3 + }, +/obj/item/trash/pistachios{ + pixel_x = 2; + pixel_y = 4 + }, +/obj/item/trash/energybar, +/obj/item/trash/sosjerky{ + pixel_y = 5 + }, +/obj/item/trash/popcorn{ + pixel_x = 3; + pixel_y = 5 + }, +/turf/open/floor/plasteel/white, +/area/ship/crew/canteen) +"iI" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/structure/cable{ + icon_state = "2-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer4{ + dir = 1 + }, +/obj/effect/turf_decal/etherbor/left, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/central) +"iK" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/light/floor/hangar, +/obj/machinery/camera/autoname{ + dir = 2; + network = list("GEC") + }, +/turf/open/floor/engine/hull/reinforced, +/area/ship/external/dark) +"iT" = ( +/obj/machinery/portable_atmospherics/scrubber, +/turf/open/floor/plasteel/tech, +/area/ship/construction) +"iY" = ( +/obj/structure/cable{ + icon_state = "1-4" + }, +/obj/structure/catwalk/over/plated_catwalk/dark, +/turf/open/floor/plating/airless, +/area/ship/external/dark) +"jd" = ( +/obj/effect/turf_decal/industrial/traffic{ + dir = 1 + }, +/obj/effect/turf_decal/industrial/warning, +/obj/structure/cable{ + icon_state = "4-8" + }, +/turf/open/floor/plasteel/mono, +/area/ship/hangar/starboard) +"jh" = ( +/obj/effect/turf_decal/industrial/traffic{ + dir = 1 + }, +/obj/effect/turf_decal/industrial/warning, +/obj/structure/cable{ + icon_state = "2-4" + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/turf/open/floor/plasteel/mono, +/area/ship/hangar/starboard) +"jm" = ( +/obj/machinery/holopad/emergency, +/obj/effect/turf_decal/spline/fancy/opaque/lime{ + dir = 1 + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/turf/open/floor/plasteel/dark, +/area/ship/bridge) +"jt" = ( +/obj/structure/closet/secure_closet/wall{ + icon_state = "cargo_wall"; + pixel_y = 28; + name = "Engineer's Locker" + }, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer2{ + dir = 4 + }, +/obj/item/clothing/shoes/combat/gezena{ + pixel_x = -8; + pixel_y = -7 + }, +/obj/item/clothing/under/gezena{ + pixel_x = 9; + pixel_y = -3 + }, +/obj/item/clothing/neck/cloak/gezena/engi{ + pixel_y = 6; + pixel_x = -9 + }, +/obj/item/clothing/suit/armor/gezena/engi{ + pixel_y = 11; + pixel_x = 9 + }, +/obj/item/clothing/gloves/gezena/engi, +/obj/item/storage/backpack/satchel/eng{ + pixel_y = 10 + }, +/obj/item/storage/backpack/duffelbag/engineering{ + pixel_y = -5 + }, +/obj/item/storage/belt/utility/full, +/obj/item/clothing/glasses/meson{ + pixel_x = -1; + pixel_y = -8 + }, +/turf/open/floor/plasteel/tech/techmaint, +/area/ship/engineering) +"jv" = ( +/obj/structure/chair/sofa/corner{ + dir = 1 + }, +/obj/effect/turf_decal/corner/opaque/lime/mono, +/obj/machinery/camera/autoname{ + dir = 4 + }, +/turf/open/floor/plasteel/dark, +/area/ship/crew/office) +"jE" = ( +/obj/machinery/door/airlock/mining/glass{ + name = "NAIL - Shuttle Bay" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/machinery/door/firedoor/border_only{ + dir = 1 + }, +/obj/machinery/door/firedoor/border_only, +/turf/open/floor/plasteel/mono, +/area/ship/hangar/starboard) +"jH" = ( +/obj/effect/turf_decal/corner/opaque/lime/half, +/turf/open/floor/plasteel/dark, +/area/ship/bridge) +"jM" = ( +/obj/effect/turf_decal/industrial/traffic/corner{ + dir = 1 + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/button/door{ + id = "lib_armory_2"; + name = "Marine Access"; + pixel_y = 6; + dir = 4; + pixel_x = -20; + req_access = list(3) + }, +/obj/machinery/button/door{ + id = "lib_armory_1"; + name = "Sergeant Access"; + dir = 4; + pixel_x = -20; + pixel_y = -5; + req_access = list(3) + }, +/obj/effect/turf_decal/trimline/opaque/bottlegreen/filled/line{ + dir = 4 + }, +/turf/open/floor/plasteel/tech, +/area/ship/security) +"jY" = ( +/obj/effect/turf_decal/trimline/opaque/green/filled/line{ + dir = 9 + }, +/turf/open/floor/plasteel/dark, +/area/ship/crew/canteen) +"kb" = ( +/obj/effect/turf_decal/trimline/opaque/bottlegreen/filled/line, +/obj/structure/cable{ + icon_state = "2-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 10 + }, +/turf/open/floor/plasteel/dark, +/area/ship/crew/canteen) +"kc" = ( +/obj/effect/turf_decal/borderfloor{ + dir = 8 + }, +/obj/structure/cable{ + icon_state = "2-8" + }, +/turf/open/floor/plasteel, +/area/ship/medical) +"kf" = ( +/obj/machinery/shower{ + dir = 1 + }, +/obj/machinery/light/directional/north, +/turf/open/floor/plasteel/mono, +/area/ship/crew/toilet) +"kp" = ( +/obj/structure/sign/flag/gezena{ + dir = 1; + pixel_y = -28 + }, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 10 + }, +/obj/effect/turf_decal/spline/fancy/opaque/lime, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/central) +"kq" = ( +/obj/machinery/atmospherics/components/unary/portables_connector/visible/layer2{ + dir = 8 + }, +/obj/machinery/portable_atmospherics/canister/toxins, +/turf/open/floor/plasteel/tech, +/area/ship/engineering/engines/starboard) +"kw" = ( +/obj/machinery/atmospherics/pipe/layer_manifold/visible, +/turf/open/floor/engine/hull/reinforced/interior, +/area/ship/construction) +"kB" = ( +/obj/structure/cable{ + icon_state = "1-8" + }, +/turf/open/floor/engine/hull, +/area/ship/external/dark) +"kD" = ( +/obj/effect/turf_decal/industrial/traffic{ + dir = 8 + }, +/obj/machinery/light/directional/east, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer2{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 9 + }, +/turf/open/floor/plasteel/mono, +/area/ship/hangar/starboard) +"kR" = ( +/obj/machinery/atmospherics/components/unary/outlet_injector/on/layer2, +/obj/structure/window/plasma/reinforced, +/obj/machinery/door/firedoor/border_only, +/turf/open/floor/engine/airless, +/area/ship/engineering/engines/port) +"lb" = ( +/obj/structure/railing/corner{ + dir = 4 + }, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer2{ + dir = 1 + }, +/obj/machinery/portable_atmospherics/pump, +/turf/open/floor/plasteel/tech, +/area/ship/construction) +"lc" = ( +/turf/closed/wall/mineral/plastitanium/nodiagonal, +/area/ship/engineering/engines/port) +"le" = ( +/obj/machinery/washing_machine, +/obj/effect/turf_decal/corner_steel_grid/full{ + dir = 4 + }, +/obj/machinery/light/directional/west, +/obj/item/radio/intercom/directional/south, +/turf/open/floor/plasteel/dark, +/area/ship/crew/dorm) +"lf" = ( +/obj/structure/cable{ + icon_state = "1-4" + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 5 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/effect/turf_decal/trimline/opaque/bottlegreen/filled/warning{ + dir = 1 + }, +/turf/open/floor/plasteel/dark, +/area/ship/security) +"lD" = ( +/obj/structure/cable{ + icon_state = "2-4" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/effect/turf_decal/borderfloorblack, +/obj/machinery/holopad/emergency, +/turf/open/floor/plasteel/dark, +/area/ship/hallway/port) +"lQ" = ( +/obj/structure/chair{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/port) +"lZ" = ( +/obj/machinery/fax{ + pixel_y = 3 + }, +/obj/structure/table/reinforced, +/obj/effect/turf_decal/corner/opaque/lime/mono, +/obj/machinery/camera/autoname{ + dir = 1 + }, +/obj/machinery/light/directional/south, +/turf/open/floor/plasteel/mono/dark, +/area/ship/bridge) +"md" = ( +/obj/structure/cable{ + icon_state = "5-8" + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/structure/catwalk/over/plated_catwalk/dark, +/turf/open/floor/plating/airless, +/area/ship/external/dark) +"mk" = ( +/obj/structure/table/wood, +/obj/item/toy/plush/sharai{ + pixel_y = 3; + pixel_x = -7 + }, +/obj/item/flashlight/lamp/green{ + pixel_y = 3; + pixel_x = 7 + }, +/obj/effect/turf_decal/siding/wood{ + dir = 5 + }, +/turf/open/floor/plasteel/sepia, +/area/ship/crew/dorm/dormthree) +"mG" = ( +/obj/structure/table/optable, +/obj/item/storage/backpack/duffelbag/med/surgery{ + pixel_x = 4; + pixel_y = 4 + }, +/obj/item/reagent_containers/food/drinks/bottle/whiskey{ + pixel_x = -10; + pixel_y = 3; + name = "'Anastheasia'"; + desc = "A bottle of Git's with the word 'Anastheasia' written over it in marker." + }, +/obj/machinery/light/directional/north, +/obj/item/clothing/neck/stethoscope, +/turf/open/floor/mineral/titanium, +/area/ship/medical) +"mL" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4{ + dir = 1 + }, +/obj/structure/closet/crate{ + icon_state = "wooden"; + name = "myning geer"; + desc = "A rectangular steel crate with 'myning geer' spelled out in crayon on top." + }, +/obj/item/storage/bag/ore{ + pixel_x = -7 + }, +/obj/item/storage/bag/ore{ + pixel_x = -7 + }, +/obj/item/pickaxe, +/obj/item/pickaxe, +/obj/item/mining_scanner{ + pixel_x = 4; + pixel_y = -3 + }, +/obj/item/mining_scanner{ + pixel_x = 4; + pixel_y = -3 + }, +/turf/open/floor/plasteel/tech/grid, +/area/ship/construction) +"mN" = ( +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/turf/open/floor/plasteel/stairs{ + icon = 'icons/obj/stairs.dmi'; + dir = 1 + }, +/area/ship/security) +"mP" = ( +/obj/effect/turf_decal/siding/wood{ + dir = 2 + }, +/obj/effect/turf_decal/siding/wood/corner{ + dir = 4 + }, +/obj/machinery/light/directional/south, +/turf/open/floor/plasteel/sepia, +/area/ship/crew/dorm/dormthree) +"na" = ( +/obj/structure/closet/firecloset/wall{ + dir = 4; + pixel_x = -28 + }, +/obj/machinery/light/directional/north, +/turf/open/floor/plasteel/mono/dark, +/area/ship/bridge) +"ng" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 6 + }, +/obj/structure/cable{ + icon_state = "1-8" + }, +/obj/structure/cable{ + icon_state = "1-4" + }, +/obj/structure/catwalk/over/plated_catwalk, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/turf/open/floor/plating, +/area/ship/engineering) +"nm" = ( +/obj/structure/closet/wall/blue{ + dir = 4; + pixel_x = -28; + name = "Spare EVA Closet" + }, +/obj/effect/turf_decal/corner/opaque/lime/mono, +/obj/machinery/button/door{ + id = "lib_entrance_blast"; + name = "Entrance Blast Doors"; + dir = 2; + pixel_y = 20; + pixel_x = 9 + }, +/obj/machinery/button/shieldwallgen{ + id = "lib_entrance_holo"; + dir = 2; + pixel_y = 19; + pixel_x = 1 + }, +/obj/effect/turf_decal/industrial/warning/corner{ + dir = 4 + }, +/obj/item/clothing/suit/space/eva{ + pixel_y = 2; + pixel_x = 4 + }, +/obj/item/clothing/suit/space/eva{ + pixel_y = 2; + pixel_x = 4 + }, +/obj/item/clothing/suit/space/eva{ + pixel_y = 2; + pixel_x = 4 + }, +/obj/item/clothing/suit/space/eva{ + pixel_y = 2; + pixel_x = 4 + }, +/obj/item/clothing/suit/space/eva{ + pixel_y = 2; + pixel_x = 4 + }, +/obj/item/clothing/suit/space/eva{ + pixel_y = 2; + pixel_x = 4 + }, +/obj/item/clothing/head/helmet/space/eva{ + pixel_y = -5; + pixel_x = -7 + }, +/obj/item/clothing/head/helmet/space/eva{ + pixel_y = -5; + pixel_x = -7 + }, +/obj/item/clothing/head/helmet/space/eva{ + pixel_y = -5; + pixel_x = -7 + }, +/obj/item/clothing/head/helmet/space/eva{ + pixel_y = -5; + pixel_x = -7 + }, +/obj/item/clothing/head/helmet/space/eva{ + pixel_y = -5; + pixel_x = -7 + }, +/obj/item/clothing/head/helmet/space/eva{ + pixel_y = -5; + pixel_x = -7 + }, +/turf/open/floor/plasteel/white, +/area/ship/hallway/port) +"no" = ( +/obj/structure/bed, +/obj/item/bedsheet/cosmos, +/obj/structure/curtain/cloth/grey, +/turf/open/floor/plasteel/dark, +/area/ship/crew/dorm) +"nv" = ( +/obj/effect/turf_decal/industrial/traffic, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/turf/open/floor/plasteel/mono, +/area/ship/hangar/starboard) +"ny" = ( +/obj/effect/turf_decal/industrial/traffic{ + dir = 8 + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/machinery/camera/autoname{ + dir = 9; + network = list("GEC"); + pixel_y = 5 + }, +/turf/open/floor/plasteel/mono, +/area/ship/hangar/starboard) +"nO" = ( +/obj/effect/turf_decal/industrial/traffic, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer2{ + dir = 8 + }, +/turf/open/floor/plasteel/mono, +/area/ship/hangar/starboard) +"nS" = ( +/obj/effect/turf_decal/corner_steel_grid{ + dir = 9 + }, +/obj/effect/turf_decal/spline/fancy/opaque/lime{ + dir = 8 + }, +/obj/machinery/computer/helm/viewscreen/directional/south, +/obj/machinery/power/apc/auto_name/directional/east, +/obj/structure/cable{ + icon_state = "0-1" + }, +/turf/open/floor/plasteel/telecomms_floor, +/area/ship/crew/cryo) +"ou" = ( +/obj/structure/railing{ + dir = 8 + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/effect/turf_decal/corner/opaque/bottlegreen/border{ + dir = 4 + }, +/obj/effect/turf_decal/corner/opaque/bottlegreen/border{ + dir = 8 + }, +/turf/open/floor/plasteel/dark, +/area/ship/security) +"ow" = ( +/turf/closed/wall/mineral/titanium/nodiagonal, +/area/ship/medical) +"oz" = ( +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/structure/catwalk/over/plated_catwalk/dark, +/obj/machinery/door/airlock/hatch{ + req_one_access = list(1, 10) + }, +/obj/machinery/door/firedoor/border_only{ + dir = 1 + }, +/obj/machinery/door/firedoor/border_only, +/turf/open/floor/plating, +/area/ship/engineering/engines/port) +"oC" = ( +/obj/structure/sign/flag/gezena{ + pixel_y = 30 + }, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 5 + }, +/obj/effect/turf_decal/spline/fancy/opaque/lime{ + dir = 1 + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer2, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/central) +"oE" = ( +/obj/item/clothing/suit/space/gezena, +/obj/item/clothing/head/helmet/space/gezena, +/obj/item/tank/internals/oxygen/red, +/obj/item/clothing/mask/gas/explorer, +/obj/machinery/suit_storage_unit/inherit, +/turf/open/floor/plasteel/tech, +/area/ship/security) +"oM" = ( +/obj/structure/railing/corner{ + dir = 1 + }, +/obj/effect/turf_decal/siding/wood/end{ + dir = 4 + }, +/obj/structure/closet/wall{ + dir = 8; + pixel_x = 28; + name = "Cleaning Station" + }, +/obj/machinery/computer/helm/viewscreen/directional/south, +/obj/item/reagent_containers/spray/cleaner{ + pixel_y = 7; + pixel_x = 5 + }, +/obj/item/storage/bag/trash{ + pixel_x = 10; + pixel_y = -3 + }, +/obj/item/reagent_containers/spray/cleaner{ + pixel_y = 7; + pixel_x = -1 + }, +/obj/item/reagent_containers/spray/cleaner{ + pixel_y = 7; + pixel_x = -7 + }, +/turf/open/floor/plasteel/sepia, +/area/ship/crew/dorm) +"oR" = ( +/obj/effect/turf_decal/industrial/traffic{ + dir = 8 + }, +/obj/machinery/light/directional/east, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer2{ + dir = 1 + }, +/turf/open/floor/plasteel/mono, +/area/ship/hangar/starboard) +"oS" = ( +/obj/structure/sign/flag/gezena{ + dir = 1; + pixel_y = -28 + }, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 10 + }, +/obj/effect/turf_decal/spline/fancy/opaque/lime, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer2{ + dir = 2 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/central) +"oW" = ( +/obj/structure/railing{ + dir = 4 + }, +/obj/structure/table, +/obj/item/toy/plush/knight{ + pixel_y = 10; + pixel_x = -10 + }, +/obj/item/toy/plush/hornet{ + pixel_y = 8; + pixel_x = -3 + }, +/obj/item/toy/plush/mora{ + pixel_y = 4; + pixel_x = 5 + }, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 10 + }, +/turf/open/floor/plasteel/dark, +/area/ship/crew/dorm) +"oX" = ( +/obj/effect/turf_decal/corner_steel_grid{ + dir = 6 + }, +/obj/effect/turf_decal/spline/fancy/opaque/lime{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/central) +"pn" = ( +/obj/machinery/shower{ + dir = 4 + }, +/obj/effect/turf_decal/techfloor/hole/right, +/turf/open/floor/plasteel/mono, +/area/ship/crew/toilet) +"ps" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 1 + }, +/obj/structure/window/plasma/reinforced{ + dir = 1 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 1 + }, +/turf/open/floor/engine/airless, +/area/ship/engineering/engines/starboard) +"pF" = ( +/obj/effect/turf_decal/corner_steel_grid{ + dir = 5 + }, +/obj/effect/turf_decal/spline/fancy/opaque/lime{ + dir = 1 + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/structure/cable{ + icon_state = "1-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/central) +"pW" = ( +/obj/machinery/computer/helm/viewscreen/directional/west, +/obj/effect/turf_decal/siding/wood{ + dir = 8 + }, +/obj/structure/cable{ + icon_state = "1-4" + }, +/turf/open/floor/plasteel/sepia, +/area/ship/crew/dorm/dormthree) +"qh" = ( +/obj/effect/turf_decal/siding/wood/end{ + dir = 4 + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/light_switch{ + dir = 1; + pixel_x = 7; + pixel_y = -19 + }, +/obj/machinery/button/door{ + id = "lib_cap_shut"; + name = "Room Shutters"; + pixel_y = -20; + dir = 1; + pixel_x = -1 + }, +/obj/structure/cable{ + icon_state = "1-4" + }, +/turf/open/floor/plasteel/sepia, +/area/ship/crew/dorm/dormthree) +"qj" = ( +/obj/structure/table/reinforced, +/obj/item/desk_flag/gezena{ + pixel_x = 9; + pixel_y = 1 + }, +/obj/machinery/recharger{ + pixel_y = 1; + pixel_x = -6 + }, +/turf/open/floor/plasteel/telecomms_floor, +/area/ship/bridge) +"qm" = ( +/obj/effect/turf_decal/trimline/opaque/bottlegreen/filled/line{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 10 + }, +/turf/open/floor/plasteel/dark, +/area/ship/crew/canteen) +"qp" = ( +/obj/machinery/atmospherics/pipe/simple/orange/visible, +/obj/machinery/atmospherics/components/trinary/mixer/flipped/layer2{ + dir = 1 + }, +/obj/structure/cable{ + icon_state = "1-10" + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/turf/open/floor/plasteel/tech, +/area/ship/engineering/engines/starboard) +"qy" = ( +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/door/poddoor{ + id = "lib_hangar_blast" + }, +/obj/machinery/door/firedoor/border_only{ + dir = 1 + }, +/obj/machinery/door/firedoor/border_only, +/turf/open/floor/plasteel/dark, +/area/ship/hangar/starboard) +"qB" = ( +/obj/machinery/door/poddoor/shutters{ + id = "lib_armory_1"; + dir = 4 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 4 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 8 + }, +/turf/open/floor/vault, +/area/ship/security) +"qC" = ( +/obj/structure/chair/comfy/black{ + dir = 1 + }, +/obj/effect/turf_decal/spline/fancy/opaque/lime{ + dir = 6 + }, +/obj/structure/cable{ + icon_state = "2-8" + }, +/turf/open/floor/plasteel/tech, +/area/ship/crew/dorm/dormthree) +"qH" = ( +/obj/effect/turf_decal/industrial/traffic, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4{ + dir = 4 + }, +/turf/open/floor/plasteel/mono, +/area/ship/hangar/starboard) +"qI" = ( +/obj/effect/turf_decal/corner/opaque/purple, +/turf/open/floor/vault, +/area/ship/security/armory) +"qV" = ( +/obj/effect/turf_decal/corner_steel_grid/full{ + dir = 8 + }, +/obj/effect/turf_decal/spline/fancy/opaque/lime{ + dir = 9 + }, +/obj/item/kirbyplants/random, +/obj/machinery/light_switch{ + dir = 4; + pixel_x = -19; + pixel_y = -11 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/central) +"qX" = ( +/turf/closed/wall/mineral/titanium/exterior, +/area/ship/construction) +"qZ" = ( +/obj/structure/closet/secure_closet/wall{ + icon_state = "cargo_wall"; + pixel_y = 28; + name = "Engineer's Locker" + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4, +/obj/item/clothing/shoes/combat/gezena{ + pixel_x = -8; + pixel_y = -7 + }, +/obj/item/clothing/under/gezena{ + pixel_x = 9; + pixel_y = -3 + }, +/obj/item/clothing/neck/cloak/gezena/engi{ + pixel_y = 6; + pixel_x = -9 + }, +/obj/item/clothing/suit/armor/gezena/engi{ + pixel_y = 11; + pixel_x = 9 + }, +/obj/item/clothing/gloves/gezena/engi, +/obj/item/storage/backpack/satchel/eng{ + pixel_y = 10 + }, +/obj/item/storage/backpack/duffelbag/engineering{ + pixel_y = -5 + }, +/obj/item/storage/belt/utility/full, +/obj/item/clothing/glasses/meson{ + pixel_x = -1; + pixel_y = -8 + }, +/turf/open/floor/plasteel/tech/techmaint, +/area/ship/engineering) +"ra" = ( +/obj/machinery/light/directional/east, +/obj/machinery/computer/security, +/turf/open/floor/plasteel/tech, +/area/ship/security) +"rd" = ( +/obj/structure/curtain/cloth/grey, +/obj/machinery/recharge_station, +/turf/open/floor/plasteel/dark, +/area/ship/crew/dorm) +"rj" = ( +/obj/structure/chair/sofa/left{ + dir = 4 + }, +/obj/effect/turf_decal/corner/opaque/lime/mono, +/obj/machinery/light_switch{ + dir = 4; + pixel_x = -19; + pixel_y = 9 + }, +/turf/open/floor/plasteel/dark, +/area/ship/crew/office) +"rs" = ( +/obj/structure/railing{ + dir = 1 + }, +/obj/structure/barricade/wooden, +/obj/structure/cable{ + icon_state = "1-2" + }, +/turf/open/floor/plasteel/telecomms_floor, +/area/ship/construction) +"rM" = ( +/obj/effect/turf_decal/spline/fancy/opaque/lime{ + dir = 6 + }, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer2{ + dir = 1 + }, +/turf/open/floor/plasteel/tech, +/area/ship/crew/office) +"rN" = ( +/obj/structure/closet/secure_closet/wall{ + icon_state = "secure_wall"; + dir = 8; + pixel_x = 26 + }, +/obj/machinery/power/apc/auto_name/directional/south, +/obj/structure/cable{ + icon_state = "0-8" + }, +/obj/machinery/light_switch{ + dir = 1; + pixel_x = -12; + pixel_y = -19 + }, +/turf/open/floor/plastic, +/area/ship/crew/toilet) +"rW" = ( +/obj/effect/turf_decal/industrial/traffic{ + dir = 1 + }, +/obj/effect/turf_decal/industrial/warning, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/structure/cable{ + icon_state = "2-4" + }, +/turf/open/floor/plasteel/mono, +/area/ship/hangar/starboard) +"rX" = ( +/obj/machinery/light/directional/south, +/obj/machinery/atmospherics/pipe/layer_manifold/visible, +/turf/open/floor/engine/hull/reinforced/interior, +/area/ship/construction) +"sq" = ( +/turf/closed/wall/mineral/plastitanium, +/area/ship/engineering/engines/starboard) +"sF" = ( +/obj/machinery/door/airlock/security/glass{ + req_one_access_txt = "1"; + req_access = list(1); + name = "Checkpoint" + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/machinery/door/firedoor/border_only{ + dir = 1 + }, +/obj/machinery/door/firedoor/border_only, +/turf/open/floor/plasteel/dark, +/area/ship/hallway/port) +"sJ" = ( +/obj/effect/turf_decal/corner_steel_grid{ + dir = 10 + }, +/obj/structure/closet/emcloset/wall{ + dir = 1; + pixel_y = -27 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/obj/effect/turf_decal/spline/fancy/opaque/lime, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/central) +"sP" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/machinery/door/airlock/hatch{ + name = "Weapon Mount Access" + }, +/obj/machinery/door/firedoor/border_only, +/obj/machinery/door/firedoor/border_only{ + dir = 1 + }, +/turf/open/floor/plasteel/tech, +/area/ship/construction) +"sQ" = ( +/obj/structure/cable{ + icon_state = "0-9" + }, +/obj/structure/catwalk/over/plated_catwalk/dark, +/turf/open/floor/plating/airless, +/area/ship/external/dark) +"sS" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 10 + }, +/obj/item/clothing/suit/space/gezena, +/obj/item/tank/internals/oxygen/red, +/obj/item/clothing/mask/gas/explorer, +/obj/item/clothing/head/helmet/space/gezena, +/obj/machinery/camera/autoname{ + dir = 9 + }, +/obj/machinery/suit_storage_unit/inherit/industrial, +/turf/open/floor/plasteel/tech/techmaint, +/area/ship/engineering) +"sW" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/visible/layer4{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/visible/layer2{ + dir = 4 + }, +/obj/machinery/door/airlock/external/glass{ + dir = 4 + }, +/turf/open/floor/engine/hull/reinforced/interior, +/area/ship/construction) +"sY" = ( +/obj/effect/turf_decal/corner_steel_grid{ + dir = 9 + }, +/obj/effect/turf_decal/spline/fancy/opaque/lime{ + dir = 8 + }, +/obj/machinery/light/directional/west, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4{ + dir = 4 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/central) +"tb" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/obj/effect/turf_decal/etherbor/center, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/central) +"to" = ( +/obj/structure/railing{ + dir = 6 + }, +/obj/structure/closet/emcloset/wall{ + dir = 4; + pixel_x = -28 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/bridge) +"ty" = ( +/obj/structure/table/reinforced, +/obj/item/folder/red{ + pixel_x = -8; + pixel_y = -5 + }, +/obj/item/folder/blue{ + pixel_x = -7 + }, +/obj/item/folder/yellow{ + pixel_y = 7; + pixel_x = -7 + }, +/obj/item/paper_bin{ + pixel_x = 6 + }, +/obj/item/pen/blue{ + pixel_x = 5; + pixel_y = -1 + }, +/obj/item/pen/red{ + pixel_x = 5; + pixel_y = 3 + }, +/obj/effect/turf_decal/corner/opaque/lime/mono, +/obj/machinery/light/directional/south, +/obj/machinery/light_switch{ + dir = 4; + pixel_x = -19; + pixel_y = 9 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/bridge) +"tK" = ( +/obj/structure/cable{ + icon_state = "0-8" + }, +/obj/machinery/power/apc/auto_name/directional/north, +/turf/open/floor/plasteel/tech/techmaint, +/area/ship/engineering) +"tL" = ( +/turf/closed/wall/mineral/titanium/exterior, +/area/ship/crew/cryo) +"tQ" = ( +/obj/structure/chair/comfy/shuttle, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 9 + }, +/turf/open/floor/plasteel/telecomms_floor, +/area/ship/bridge) +"tU" = ( +/obj/machinery/porta_turret/ship/weak{ + dir = 5 + }, +/obj/structure/cable{ + icon_state = "0-2" + }, +/turf/open/floor/engine/hull, +/area/ship/external/dark) +"uh" = ( +/obj/structure/chair/comfy/shuttle{ + dir = 4 + }, +/obj/effect/turf_decal/floordetail/tiled, +/obj/structure/cable{ + icon_state = "4-8" + }, +/turf/open/floor/plasteel/telecomms_floor, +/area/ship/bridge) +"uo" = ( +/obj/item/grenade/frag{ + pixel_x = -8; + pixel_y = -1 + }, +/obj/item/grenade/frag{ + pixel_x = -3; + pixel_y = -8 + }, +/obj/item/grenade/smokebomb{ + pixel_y = 3; + pixel_x = 13 + }, +/obj/item/grenade/smokebomb{ + pixel_y = 1; + pixel_x = 7 + }, +/obj/item/grenade/smokebomb{ + pixel_x = 11; + pixel_y = -5 + }, +/obj/structure/closet/secure_closet/wall{ + icon_state = "sec_wall"; + dir = 4; + pixel_x = -28; + name = "equipment locker" + }, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/effect/turf_decal/corner/opaque/purple{ + dir = 10 + }, +/turf/open/floor/vault, +/area/ship/security/armory) +"uq" = ( +/obj/machinery/door/window/southleft{ + dir = 1; + req_access = list(3) + }, +/obj/effect/turf_decal/corner/opaque/purple{ + dir = 8 + }, +/turf/open/floor/vault, +/area/ship/security/armory) +"us" = ( +/obj/structure/chair{ + dir = 1 + }, +/obj/effect/turf_decal/corner/opaque/lime/mono, +/turf/open/floor/plasteel/dark, +/area/ship/crew/canteen) +"uv" = ( +/obj/machinery/airalarm/directional/west, +/turf/open/floor/plasteel/tech/grid, +/area/ship/construction) +"uA" = ( +/obj/structure/table, +/obj/item/storage/bag/tray{ + pixel_y = 4 + }, +/obj/item/storage/bag/tray{ + pixel_y = 6 + }, +/obj/item/storage/bag/tray{ + pixel_y = 8 + }, +/obj/item/storage/bag/tray{ + pixel_y = 10 + }, +/turf/open/floor/plasteel/white, +/area/ship/crew/canteen) +"uJ" = ( +/turf/closed/wall/mineral/titanium/nodiagonal, +/area/ship/crew/dorm/dormtwo) +"uR" = ( +/obj/effect/turf_decal/industrial/traffic, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 5 + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer4, +/turf/open/floor/plasteel/mono, +/area/ship/hangar/starboard) +"uT" = ( +/obj/effect/turf_decal/siding/wood{ + dir = 2 + }, +/obj/effect/turf_decal/siding/wood{ + dir = 1 + }, +/obj/machinery/power/apc/auto_name/directional/south, +/obj/structure/cable{ + icon_state = "0-4" + }, +/turf/open/floor/plasteel/sepia, +/area/ship/crew/dorm/dormthree) +"uU" = ( +/obj/structure/reagent_dispensers/water_cooler, +/obj/effect/turf_decal/corner/opaque/lime/mono, +/obj/machinery/light/directional/north, +/turf/open/floor/plasteel/dark, +/area/ship/crew/office) +"uX" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/structure/cable{ + icon_state = "2-8" + }, +/obj/structure/catwalk/over/plated_catwalk, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer2{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 10 + }, +/turf/open/floor/plating, +/area/ship/engineering) +"vb" = ( +/obj/structure/window/reinforced/fulltile/shuttle, +/obj/machinery/door/poddoor/shutters{ + id = "lib_dorm_shut" + }, +/obj/structure/grille, +/obj/machinery/door/firedoor/border_only{ + dir = 8 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 1 + }, +/turf/open/floor/plating, +/area/ship/crew/dorm) +"ve" = ( +/obj/structure/table/reinforced, +/obj/machinery/recharger{ + pixel_x = -8; + pixel_y = 9 + }, +/obj/item/paper_bin{ + pixel_y = 7; + pixel_x = 5 + }, +/obj/item/pen/red{ + pixel_y = 5; + pixel_x = 5 + }, +/obj/item/pen/blue{ + pixel_x = 5; + pixel_y = 9 + }, +/turf/open/floor/plasteel/tech, +/area/ship/security) +"vh" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer4{ + dir = 8 + }, +/turf/open/floor/plasteel/tech/grid, +/area/ship/construction) +"vp" = ( +/obj/structure/table/reinforced, +/obj/effect/turf_decal/industrial/traffic/corner, +/obj/machinery/cell_charger{ + pixel_y = 7; + pixel_x = -4 + }, +/obj/structure/cable{ + icon_state = "0-2" + }, +/obj/machinery/recharger{ + pixel_x = 8; + pixel_y = 0 + }, +/turf/open/floor/vault, +/area/ship/security/armory) +"vr" = ( +/obj/structure/window/reinforced/fulltile/shuttle, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/structure/grille, +/obj/machinery/door/poddoor/shutters{ + id = "lib_bridge_shut" + }, +/obj/machinery/door/firedoor/border_only{ + dir = 1 + }, +/obj/machinery/door/firedoor/border_only, +/turf/open/floor/plating, +/area/ship/bridge) +"vG" = ( +/obj/effect/turf_decal/corner/opaque/lime/mono, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4, +/obj/structure/cable{ + icon_state = "1-8" + }, +/obj/effect/turf_decal/industrial/warning{ + dir = 1 + }, +/turf/open/floor/plasteel/white, +/area/ship/hallway/port) +"vN" = ( +/obj/structure/table/wood, +/obj/effect/turf_decal/corner/opaque/lime/mono, +/obj/structure/sign/flag/gezena{ + dir = 4; + pixel_x = -30 + }, +/obj/item/storage/fancy/donut_box{ + pixel_x = 9; + pixel_y = -5 + }, +/obj/item/reagent_containers/food/condiment/saltshaker{ + pixel_y = 10; + pixel_x = -6 + }, +/obj/item/reagent_containers/food/condiment/peppermill{ + pixel_y = 10 + }, +/turf/open/floor/plasteel/dark, +/area/ship/crew/canteen) +"vO" = ( +/obj/structure/chair, +/obj/item/radio/intercom/directional/west, +/turf/open/floor/plasteel/dark, +/area/ship/crew/cryo) +"vQ" = ( +/obj/structure/table, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/item/folder/yellow{ + pixel_y = 1 + }, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 10 + }, +/obj/machinery/door/window/southright{ + dir = 1 + }, +/turf/open/floor/plasteel/telecomms_floor, +/area/ship/hallway/port) +"wa" = ( +/obj/structure/filingcabinet/chestdrawer, +/obj/machinery/camera/autoname{ + dir = 1; + network = list("GEC") + }, +/turf/open/floor/plasteel/tech, +/area/ship/security) +"wg" = ( +/obj/machinery/computer/atmos_control/tank/air_tank{ + dir = 4 + }, +/obj/machinery/camera/autoname{ + dir = 1; + network = list("GEC") + }, +/turf/open/floor/plasteel/tech/techmaint, +/area/ship/engineering) +"wl" = ( +/obj/effect/turf_decal/corner_steel_grid{ + dir = 10 + }, +/obj/effect/turf_decal/spline/fancy/opaque/lime, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/central) +"wm" = ( +/obj/machinery/door/airlock{ + name = "Crew Quarters" + }, +/obj/effect/turf_decal/trimline/opaque/bottlegreen/filled, +/obj/effect/turf_decal/industrial/outline/blue, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/machinery/door/firedoor/border_only{ + dir = 1 + }, +/obj/machinery/door/firedoor/border_only, +/turf/open/floor/plasteel/dark, +/area/ship/crew/dorm) +"wu" = ( +/obj/effect/turf_decal/corner/opaque/lime/mono, +/obj/machinery/telecomms/relay/preset/pgf, +/turf/open/floor/plasteel/tech, +/area/ship/crew/office) +"ww" = ( +/obj/effect/turf_decal/trimline/opaque/bottlegreen/filled/corner{ + dir = 8 + }, +/obj/machinery/vending/snack/random, +/obj/machinery/light/directional/east, +/turf/open/floor/plasteel/dark, +/area/ship/crew/canteen) +"wz" = ( +/obj/effect/turf_decal/corner_steel_grid{ + dir = 9 + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/turf/open/floor/plasteel/telecomms_floor, +/area/ship/bridge) +"wK" = ( +/obj/effect/turf_decal/industrial/stand_clear, +/turf/open/floor/pod, +/area/ship/hangar/starboard) +"wL" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/door/airlock/external/glass{ + dir = 4 + }, +/turf/open/floor/engine/hull/reinforced/interior, +/area/ship/construction) +"wO" = ( +/obj/structure/window/reinforced/fulltile/shuttle, +/obj/machinery/door/poddoor/shutters{ + id = "lib_dorm_shut"; + dir = 4 + }, +/obj/structure/grille, +/obj/machinery/door/firedoor/border_only, +/obj/machinery/door/firedoor/border_only{ + dir = 4 + }, +/turf/open/floor/plating, +/area/ship/crew/dorm) +"wP" = ( +/obj/effect/turf_decal/borderfloor{ + dir = 8 + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer2, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/turf/open/floor/plasteel, +/area/ship/medical) +"wT" = ( +/obj/machinery/computer/cryopod/directional/east, +/obj/machinery/camera/autoname{ + dir = 2; + network = list("GEC") + }, +/turf/open/floor/plasteel/telecomms_floor, +/area/ship/crew/cryo) +"wV" = ( +/obj/machinery/door/airlock/hatch{ + name = "Weapon Mount Access" + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/machinery/door/firedoor/border_only, +/obj/machinery/door/firedoor/border_only{ + dir = 1 + }, +/turf/open/floor/plasteel/tech, +/area/ship/construction) +"wZ" = ( +/obj/effect/turf_decal/corner_steel_grid{ + dir = 10 + }, +/obj/effect/turf_decal/spline/fancy/opaque/lime, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer2{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer4{ + dir = 1 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/central) +"xe" = ( +/obj/effect/turf_decal/corner/opaque/lime/mono, +/obj/effect/turf_decal/trimline/opaque/bottlegreen/filled/line, +/turf/open/floor/plasteel/white, +/area/ship/hallway/port) +"xg" = ( +/obj/structure/cable{ + icon_state = "0-2" + }, +/obj/machinery/door/poddoor{ + id = "lib_entrance_blast" + }, +/obj/machinery/power/shieldwallgen/atmos/roundstart{ + dir = 4; + id = "lib_entrance_holo" + }, +/obj/machinery/door/firedoor/border_only, +/obj/machinery/door/firedoor/border_only{ + dir = 1 + }, +/turf/open/floor/plasteel/dark, +/area/ship/hallway/port) +"xj" = ( +/obj/machinery/door/window/southleft{ + dir = 1; + req_access = list(3) + }, +/obj/effect/turf_decal/industrial/traffic/corner{ + dir = 1 + }, +/obj/effect/turf_decal/industrial/traffic/corner{ + dir = 8 + }, +/obj/machinery/light/directional/west, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/effect/turf_decal/trimline/opaque/bottlegreen/filled/line{ + dir = 4 + }, +/turf/open/floor/plasteel/tech, +/area/ship/security) +"xk" = ( +/obj/structure/window/reinforced/fulltile/shuttle, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/structure/grille, +/obj/machinery/door/poddoor/shutters{ + id = "lib_cap_shut" + }, +/obj/machinery/door/firedoor/border_only{ + dir = 1 + }, +/obj/machinery/door/firedoor/border_only, +/turf/open/floor/plating, +/area/ship/crew/dorm/dormthree) +"xo" = ( +/obj/effect/turf_decal/corner/opaque/lime/mono, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer2, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/structure/cable{ + icon_state = "2-4" + }, +/obj/effect/turf_decal/industrial/warning{ + dir = 1 + }, +/turf/open/floor/plasteel/white, +/area/ship/hallway/port) +"xy" = ( +/obj/structure/table/wood, +/obj/item/desk_flag/gezena{ + pixel_x = 16; + pixel_y = -10 + }, +/obj/item/storage/crayons{ + pixel_y = 3; + pixel_x = -1 + }, +/obj/effect/turf_decal/corner/opaque/lime/mono, +/obj/structure/sign/flag/gezena{ + dir = 4; + pixel_x = -30 + }, +/turf/open/floor/plasteel/dark, +/area/ship/crew/canteen) +"xz" = ( +/turf/template_noop, +/area/template_noop) +"xK" = ( +/obj/effect/turf_decal/industrial/traffic{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/turf/open/floor/plasteel/mono, +/area/ship/hangar/starboard) +"xO" = ( +/obj/structure/crate_shelf, +/obj/effect/turf_decal/borderfloorblack{ + dir = 1 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/construction) +"xS" = ( +/obj/effect/turf_decal/industrial/traffic{ + dir = 4 + }, +/obj/machinery/light/directional/west, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/turf/open/floor/plasteel/mono, +/area/ship/hangar/starboard) +"yn" = ( +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/effect/turf_decal/industrial/traffic{ + dir = 8 + }, +/obj/effect/turf_decal/trimline/opaque/bottlegreen/filled/corner{ + dir = 4 + }, +/obj/effect/turf_decal/trimline/opaque/bottlegreen/filled/corner, +/turf/open/floor/plasteel/tech, +/area/ship/security) +"yq" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/camera/autoname{ + dir = 1; + network = list("GEC") + }, +/turf/open/floor/engine/hull, +/area/ship/external/dark) +"ys" = ( +/obj/machinery/atmospherics/pipe/simple/orange/visible{ + dir = 9 + }, +/obj/machinery/meter, +/obj/machinery/airalarm/directional/east, +/turf/open/floor/plasteel/tech, +/area/ship/engineering/engines/port) +"yF" = ( +/obj/effect/turf_decal/industrial/traffic{ + dir = 1 + }, +/obj/effect/turf_decal/industrial/warning, +/obj/structure/cable{ + icon_state = "2-4" + }, +/turf/open/floor/plasteel/mono, +/area/ship/hangar/starboard) +"yM" = ( +/obj/effect/turf_decal/corner/opaque/lime/mono, +/obj/effect/turf_decal/trimline/opaque/bottlegreen/filled/line, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/turf/open/floor/plasteel/white, +/area/ship/hallway/port) +"yW" = ( +/obj/effect/turf_decal/trimline/opaque/bottlegreen/filled/line{ + dir = 1 + }, +/obj/machinery/vending/cola/random, +/turf/open/floor/plasteel/dark, +/area/ship/crew/canteen) +"zc" = ( +/obj/structure/table/chem, +/obj/item/storage/firstaid/brute{ + pixel_y = 15; + pixel_x = 9 + }, +/obj/item/storage/firstaid/fire{ + pixel_x = -9; + pixel_y = 15 + }, +/obj/item/storage/firstaid/o2{ + pixel_y = 8; + pixel_x = -9 + }, +/obj/item/storage/firstaid/toxin{ + pixel_y = 8; + pixel_x = 9 + }, +/obj/item/roller{ + pixel_y = -4; + pixel_x = -7 + }, +/obj/item/roller{ + pixel_y = 2; + pixel_x = -7 + }, +/obj/item/storage/firstaid/regular{ + pixel_x = 9; + pixel_y = 2 + }, +/turf/open/floor/mineral/titanium, +/area/ship/medical) +"ze" = ( +/obj/machinery/power/terminal{ + dir = 8 + }, +/obj/structure/cable{ + icon_state = "0-6" + }, +/obj/structure/catwalk/over/plated_catwalk/dark, +/turf/open/floor/plating, +/area/ship/engineering/engines/port) +"zm" = ( +/obj/effect/turf_decal/corner_steel_grid{ + dir = 6 + }, +/obj/effect/turf_decal/spline/fancy/opaque/lime{ + dir = 4 + }, +/obj/structure/cable{ + icon_state = "1-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/central) +"zo" = ( +/obj/effect/turf_decal/spline/fancy/opaque/lime{ + dir = 1 + }, +/obj/structure/cable{ + icon_state = "2-8" + }, +/obj/structure/cable{ + icon_state = "2-4" + }, +/turf/open/floor/plasteel/dark, +/area/ship/bridge) +"zr" = ( +/obj/effect/turf_decal/industrial/outline/blue, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 9 + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/turf/open/floor/plasteel/white, +/area/ship/hallway/port) +"zz" = ( +/obj/effect/turf_decal/industrial/traffic{ + dir = 4 + }, +/obj/machinery/light/directional/west, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4{ + dir = 1 + }, +/turf/open/floor/plasteel/mono, +/area/ship/hangar/starboard) +"zG" = ( +/obj/structure/cable{ + icon_state = "1-4" + }, +/obj/structure/catwalk/over/plated_catwalk, +/obj/structure/table/reinforced{ + color = "#c1b6a5" + }, +/obj/machinery/cell_charger, +/obj/item/stock_parts/cell/high, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 5 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 5 + }, +/obj/machinery/airalarm/directional/west, +/turf/open/floor/plating, +/area/ship/engineering) +"zL" = ( +/turf/closed/wall/mineral/titanium/nodiagonal, +/area/ship/engineering) +"zO" = ( +/obj/machinery/iv_drip, +/obj/machinery/camera/autoname{ + dir = 8; + network = list("GEC"); + pixel_y = -5 + }, +/turf/open/floor/mineral/titanium, +/area/ship/medical) +"zX" = ( +/obj/effect/turf_decal/trimline/opaque/yellow/filled, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/door/firedoor/border_only, +/obj/machinery/door/firedoor/border_only{ + dir = 1 + }, +/obj/machinery/door/airlock/security{ + req_access = list(3); + name = "Sergeant's Quarters" + }, +/turf/open/floor/plasteel/tech, +/area/ship/security) +"Ac" = ( +/obj/effect/turf_decal/industrial/traffic{ + dir = 8 + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/turf/open/floor/plasteel/mono, +/area/ship/hangar/starboard) +"Ah" = ( +/obj/effect/turf_decal/industrial/traffic{ + dir = 4 + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/structure/cable{ + icon_state = "1-4" + }, +/turf/open/floor/vault, +/area/ship/security/armory) +"Aq" = ( +/obj/effect/turf_decal/corner_steel_grid{ + dir = 9 + }, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 4 + }, +/obj/machinery/button/door{ + id = "lib_bridge_shut"; + name = "Bridge Shutters"; + pixel_y = 20; + pixel_x = 8 + }, +/obj/structure/chair/comfy/shuttle{ + dir = 4 + }, +/obj/machinery/turretid{ + pixel_y = 23; + pixel_x = -8 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/bridge) +"Ar" = ( +/obj/effect/turf_decal/corner_steel_grid{ + dir = 9 + }, +/obj/structure/closet/wall{ + dir = 2; + icon_door = null; + name = "headset storage"; + pixel_y = 28 + }, +/obj/item/encryptionkey/pgf{ + pixel_y = -5; + pixel_x = 10 + }, +/obj/item/encryptionkey/pgf{ + pixel_x = 4; + pixel_y = -5 + }, +/obj/item/encryptionkey/pgf{ + pixel_y = -1; + pixel_x = 10 + }, +/obj/item/encryptionkey/pgf{ + pixel_y = -1; + pixel_x = 4 + }, +/obj/item/encryptionkey/pgf{ + pixel_y = 3; + pixel_x = 10 + }, +/obj/item/encryptionkey/pgf{ + pixel_y = 3; + pixel_x = 4 + }, +/obj/item/encryptionkey/pgf{ + pixel_y = 7; + pixel_x = 10 + }, +/obj/item/encryptionkey/pgf{ + pixel_y = 7; + pixel_x = 4 + }, +/obj/item/radio/headset/pgf{ + pixel_x = -8; + pixel_y = 11 + }, +/obj/item/radio/headset/pgf{ + pixel_x = -8; + pixel_y = 7 + }, +/obj/item/radio/headset/pgf{ + pixel_x = -8; + pixel_y = 3 + }, +/obj/item/radio/headset/pgf{ + pixel_x = -8; + pixel_y = -1 + }, +/obj/item/radio/headset/pgf{ + pixel_x = -8; + pixel_y = -5 + }, +/obj/item/radio/headset/pgf{ + pixel_x = -8; + pixel_y = -9 + }, +/turf/open/floor/plasteel/telecomms_floor, +/area/ship/crew/cryo) +"At" = ( +/turf/closed/wall/mineral/titanium/nodiagonal, +/area/ship/security/armory) +"AL" = ( +/obj/machinery/vending/toyliberationstation, +/turf/open/floor/plasteel/tech, +/area/ship/security) +"AN" = ( +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/structure/curtain, +/obj/structure/toilet{ + dir = 4 + }, +/obj/machinery/light/directional/west, +/turf/open/floor/plastic, +/area/ship/crew/toilet) +"AP" = ( +/obj/effect/turf_decal/corner_steel_grid{ + dir = 10 + }, +/obj/effect/turf_decal/spline/fancy/opaque/lime, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer2{ + dir = 2 + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer4, +/obj/item/radio/intercom/directional/south, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/central) +"AS" = ( +/obj/effect/turf_decal/corner_steel_grid{ + dir = 5 + }, +/obj/effect/turf_decal/spline/fancy/opaque/lime{ + dir = 1 + }, +/obj/machinery/light/directional/north, +/obj/structure/cable{ + icon_state = "4-8" + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/central) +"AT" = ( +/obj/machinery/door/airlock/medical, +/obj/effect/turf_decal/borderfloor{ + dir = 8 + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/machinery/door/firedoor/border_only, +/obj/machinery/door/firedoor/border_only{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/ship/medical) +"AZ" = ( +/obj/effect/turf_decal/corner_steel_grid{ + dir = 10 + }, +/obj/effect/turf_decal/spline/fancy/opaque/lime, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer4, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/central) +"Bc" = ( +/obj/structure/cable{ + icon_state = "6-8" + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/structure/catwalk/over/plated_catwalk/dark, +/turf/open/floor/plating/airless, +/area/ship/external/dark) +"Bi" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/structure/cable{ + icon_state = "2-4" + }, +/obj/effect/turf_decal/corner/opaque/bottlegreen/border, +/obj/effect/turf_decal/industrial/traffic{ + dir = 8 + }, +/turf/open/floor/plasteel/dark, +/area/ship/security) +"Bo" = ( +/obj/effect/turf_decal/corner_steel_grid{ + dir = 10 + }, +/obj/effect/turf_decal/spline/fancy/opaque/lime, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/central) +"Bq" = ( +/obj/effect/turf_decal/industrial/traffic{ + dir = 8 + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/turf/open/floor/plasteel/mono, +/area/ship/hangar/starboard) +"Bv" = ( +/obj/effect/turf_decal/industrial/stand_clear, +/obj/effect/landmark/subship{ + subship_template = /datum/map_template/shuttle/subshuttles/nail + }, +/turf/open/floor/pod, +/area/ship/hangar/starboard) +"By" = ( +/obj/structure/chair, +/obj/machinery/power/apc/auto_name/directional/north, +/obj/structure/cable{ + icon_state = "0-2" + }, +/obj/machinery/camera/autoname{ + dir = 2; + network = list("GEC") + }, +/obj/effect/turf_decal/corner/opaque/purple/border{ + dir = 8 + }, +/turf/open/floor/vault, +/area/ship/security/armory) +"Bz" = ( +/obj/structure/table/wood, +/obj/effect/turf_decal/corner/opaque/lime/mono, +/obj/machinery/airalarm/directional/north, +/obj/item/storage/box/cups{ + pixel_y = 6 + }, +/turf/open/floor/plasteel/dark, +/area/ship/crew/office) +"BB" = ( +/obj/structure/table/wood, +/obj/effect/turf_decal/corner/opaque/lime/mono, +/obj/item/kitchen/fork/plastic{ + pixel_x = 9; + pixel_y = 5 + }, +/obj/item/kitchen/fork/plastic{ + pixel_x = 7; + pixel_y = 5 + }, +/obj/item/kitchen/fork/plastic{ + pixel_x = 5; + pixel_y = 5 + }, +/obj/item/kitchen/fork/plastic{ + pixel_x = 3; + pixel_y = 5 + }, +/obj/item/kitchen/knife/plastic{ + pixel_y = 5; + pixel_x = -1 + }, +/obj/item/kitchen/knife/plastic{ + pixel_y = 5; + pixel_x = -3 + }, +/obj/item/kitchen/knife/plastic{ + pixel_y = 5; + pixel_x = -5 + }, +/obj/item/kitchen/knife/plastic{ + pixel_y = 5; + pixel_x = -7 + }, +/turf/open/floor/plasteel/dark, +/area/ship/crew/canteen) +"BJ" = ( +/obj/structure/grille, +/obj/machinery/door/firedoor/border_only{ + dir = 4 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 8 + }, +/obj/structure/window/reinforced/fulltile/shuttle, +/turf/open/floor/plating, +/area/ship/engineering) +"BR" = ( +/obj/effect/turf_decal/corner_steel_grid, +/obj/effect/turf_decal/spline/fancy/opaque/lime/corner, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer2{ + dir = 2 + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer4, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/central) +"BX" = ( +/obj/structure/chair, +/obj/effect/turf_decal/corner/opaque/lime/mono, +/obj/machinery/power/apc/auto_name/directional/north, +/obj/machinery/light/directional/west, +/obj/structure/cable{ + icon_state = "0-4" + }, +/turf/open/floor/plasteel/dark, +/area/ship/crew/canteen) +"BZ" = ( +/obj/effect/turf_decal/corner_steel_grid{ + dir = 10 + }, +/obj/effect/turf_decal/spline/fancy/opaque/lime, +/obj/item/kirbyplants/random, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/central) +"Cl" = ( +/obj/effect/turf_decal/industrial/outline/blue, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 6 + }, +/obj/machinery/light/directional/west, +/turf/open/floor/plasteel/white, +/area/ship/hallway/port) +"Cz" = ( +/obj/structure/cable{ + icon_state = "0-8" + }, +/obj/item/toy/plush/lizardplushie, +/obj/structure/catwalk/over/plated_catwalk/dark, +/turf/open/floor/plating/airless, +/area/ship/external/dark) +"CB" = ( +/obj/machinery/power/smes/shuttle/precharged{ + dir = 4 + }, +/obj/structure/cable/blue{ + icon_state = "0-8" + }, +/obj/structure/catwalk/over/plated_catwalk/dark, +/obj/machinery/door/firedoor/border_only{ + dir = 4 + }, +/obj/structure/window/plasma/reinforced{ + dir = 8 + }, +/turf/open/floor/plating, +/area/ship/engineering/engines/port) +"CD" = ( +/turf/open/floor/plasteel/white, +/area/ship/crew/canteen) +"CF" = ( +/obj/machinery/porta_turret/ship/weak{ + dir = 10 + }, +/obj/structure/cable{ + icon_state = "0-4" + }, +/turf/open/floor/engine/hull, +/area/ship/external/dark) +"CO" = ( +/obj/machinery/vending/coffee, +/obj/effect/turf_decal/corner_steel_grid/full{ + dir = 4 + }, +/obj/effect/turf_decal/spline/fancy/opaque/lime{ + dir = 6 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/central) +"CY" = ( +/obj/machinery/atmospherics/pipe/simple/general/visible/layer2{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/orange/visible{ + dir = 5 + }, +/obj/structure/reagent_dispensers/fueltank, +/turf/open/floor/plasteel/tech, +/area/ship/engineering/engines/starboard) +"CZ" = ( +/obj/structure/window/reinforced/fulltile/shuttle, +/obj/structure/grille, +/obj/machinery/door/poddoor/shutters{ + id = "lib_bridge_shut"; + dir = 4 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 4 + }, +/obj/machinery/door/firedoor/border_only, +/turf/open/floor/plating, +/area/ship/bridge) +"Df" = ( +/obj/item/towel, +/obj/item/towel, +/obj/item/towel, +/obj/item/towel, +/obj/item/towel, +/obj/item/towel, +/obj/structure/closet/wall{ + dir = 4; + pixel_x = -28; + name = "towel closet" + }, +/turf/open/floor/plastic, +/area/ship/crew/toilet) +"Dg" = ( +/obj/structure/window/plasma/reinforced/plastitanium, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/door/poddoor/shutters{ + id = "lib_engineering_shut"; + dir = 8 + }, +/obj/structure/grille, +/obj/machinery/door/firedoor/border_only{ + dir = 8 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 4 + }, +/turf/open/floor/plating, +/area/ship/engineering) +"Dm" = ( +/obj/machinery/atmospherics/components/unary/portables_connector/visible/layer2{ + dir = 8 + }, +/obj/machinery/portable_atmospherics/canister/toxins, +/obj/machinery/light/directional/east, +/turf/open/floor/plasteel/tech, +/area/ship/engineering/engines/starboard) +"Dq" = ( +/turf/closed/wall/mineral/titanium/exterior, +/area/ship/hangar/starboard) +"Du" = ( +/obj/effect/turf_decal/siding/wood, +/obj/effect/turf_decal/siding/wood/corner{ + dir = 1 + }, +/obj/effect/turf_decal/siding/wood/corner{ + dir = 4 + }, +/obj/structure/railing/corner{ + dir = 4 + }, +/obj/structure/railing/corner{ + dir = 1 + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/machinery/camera/autoname{ + dir = 1; + network = list("GEC") + }, +/obj/machinery/button/door{ + id = "lib_dorm_shut"; + name = "Dorm Shutters"; + dir = 1; + pixel_x = 1; + pixel_y = -20 + }, +/obj/machinery/light_switch{ + dir = 1; + pixel_x = 8; + pixel_y = -19 + }, +/turf/open/floor/plasteel/sepia, +/area/ship/crew/dorm) +"Dw" = ( +/obj/structure/sign/warning/electricshock{ + pixel_y = -26 + }, +/obj/machinery/computer/bsa_control{ + name = "SUPERNOVA - Controller Console"; + desc = "A decommissioned controller console for a SUPERNOVA type Rail Cannon." + }, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 9 + }, +/turf/open/floor/plasteel/telecomms_floor, +/area/ship/construction) +"DD" = ( +/obj/structure/table/reinforced, +/obj/machinery/door/window/northright{ + req_access = list(3) + }, +/obj/effect/turf_decal/industrial/traffic/corner, +/obj/effect/turf_decal/industrial/traffic/corner{ + dir = 4 + }, +/obj/machinery/light/directional/east, +/obj/item/clipboard{ + pixel_x = 4; + pixel_y = 0 + }, +/obj/item/hand_labeler, +/turf/open/floor/vault, +/area/ship/security/armory) +"DE" = ( +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/structure/catwalk/over/plated_catwalk, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/machinery/suit_storage_unit/inherit/industrial, +/obj/item/clothing/suit/space/gezena, +/obj/item/clothing/mask/gas/explorer, +/obj/item/tank/internals/oxygen/red, +/obj/item/clothing/head/helmet/space/gezena, +/turf/open/floor/plating, +/area/ship/engineering) +"DJ" = ( +/obj/effect/turf_decal/industrial/traffic, +/obj/structure/sign/flag/gezena{ + pixel_y = 30 + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/turf/open/floor/plasteel/mono, +/area/ship/hangar/starboard) +"DM" = ( +/turf/closed/wall/mineral/titanium/nodiagonal, +/area/ship/security) +"DP" = ( +/turf/closed/wall/mineral/plastitanium, +/area/ship/engineering/engines/port) +"DR" = ( +/obj/machinery/computer/crew, +/obj/machinery/light/directional/east, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 10 + }, +/obj/structure/window/reinforced{ + dir = 1 + }, +/turf/open/floor/plasteel/telecomms_floor, +/area/ship/hallway/port) +"DT" = ( +/obj/effect/turf_decal/industrial/traffic/corner{ + dir = 4 + }, +/obj/effect/turf_decal/industrial/warning/corner, +/turf/open/floor/plasteel/mono, +/area/ship/hangar/starboard) +"DY" = ( +/obj/machinery/door/airlock/mining/glass{ + name = "NAIL - Shuttle Bay" + }, +/obj/machinery/door/firedoor/border_only{ + dir = 1 + }, +/obj/machinery/door/firedoor/border_only, +/turf/open/floor/plasteel/mono, +/area/ship/hangar/starboard) +"Eg" = ( +/obj/effect/turf_decal/corner_steel_grid/full{ + dir = 1 + }, +/obj/effect/turf_decal/spline/fancy/opaque/lime{ + dir = 5 + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/central) +"Ei" = ( +/obj/structure/sign/number/random, +/turf/closed/wall/mineral/plastitanium/nodiagonal, +/area/ship/external/dark) +"El" = ( +/obj/structure/railing{ + dir = 8 + }, +/obj/machinery/modular_computer/console/preset/command{ + dir = 1 + }, +/obj/structure/catwalk/over/plated_catwalk/dark, +/turf/open/floor/plasteel/telecomms_floor, +/area/ship/bridge) +"Eo" = ( +/obj/structure/window/reinforced/fulltile/shuttle, +/obj/structure/grille, +/obj/machinery/door/poddoor/shutters{ + id = "lib_bridge_shut" + }, +/obj/machinery/door/firedoor/border_only{ + dir = 1 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 4 + }, +/turf/open/floor/plating, +/area/ship/bridge) +"Ep" = ( +/obj/structure/window/reinforced/fulltile/shuttle, +/obj/structure/grille, +/obj/machinery/door/firedoor/border_only{ + dir = 1 + }, +/obj/machinery/door/firedoor/border_only, +/turf/open/floor/plating, +/area/ship/crew/canteen) +"Er" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/structure/catwalk/over/plated_catwalk/dark, +/turf/open/floor/plating/airless, +/area/ship/external/dark) +"Et" = ( +/obj/effect/turf_decal/borderfloor{ + dir = 8 + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/turf/open/floor/plasteel, +/area/ship/hallway/central) +"Eu" = ( +/obj/machinery/porta_turret/ship/weak{ + dir = 5 + }, +/obj/structure/cable, +/turf/open/floor/engine/hull, +/area/ship/external/dark) +"EA" = ( +/obj/structure/sign/poster/contraband/pgf{ + pixel_y = 32 + }, +/obj/structure/chair{ + dir = 4 + }, +/obj/effect/turf_decal/industrial/traffic/corner{ + dir = 8 + }, +/obj/item/radio/intercom/directional/west, +/obj/effect/turf_decal/trimline/opaque/bottlegreen/filled/corner{ + dir = 4 + }, +/turf/open/floor/plasteel/dark, +/area/ship/security) +"EC" = ( +/obj/effect/turf_decal/industrial/traffic/corner{ + dir = 8 + }, +/obj/structure/cable{ + icon_state = "2-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 10 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 10 + }, +/turf/open/floor/plasteel/mono, +/area/ship/hangar/starboard) +"EE" = ( +/obj/structure/cable{ + icon_state = "1-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 10 + }, +/obj/effect/turf_decal/trimline/opaque/bottlegreen/filled/corner{ + dir = 1 + }, +/obj/effect/turf_decal/corner/opaque/bottlegreen/border{ + dir = 4 + }, +/turf/open/floor/plasteel/dark, +/area/ship/security) +"EF" = ( +/obj/effect/turf_decal/corner_steel_grid{ + dir = 9 + }, +/obj/effect/turf_decal/spline/fancy/opaque/lime{ + dir = 8 + }, +/obj/structure/closet/emcloset/wall{ + dir = 4; + pixel_x = -28 + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/central) +"EJ" = ( +/obj/structure/railing{ + dir = 1 + }, +/obj/effect/turf_decal/siding/wood, +/obj/effect/turf_decal/siding/wood{ + dir = 1 + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer2{ + dir = 4 + }, +/obj/structure/closet/wall{ + dir = 1; + icon_door = null; + name = "Uniforms"; + pixel_y = -28 + }, +/obj/item/clothing/gloves/gezena{ + pixel_x = -5; + pixel_y = -9 + }, +/obj/item/clothing/gloves/gezena{ + pixel_x = -5; + pixel_y = -9 + }, +/obj/item/clothing/gloves/gezena{ + pixel_x = -5; + pixel_y = -9 + }, +/obj/item/clothing/gloves/gezena{ + pixel_x = -5; + pixel_y = -9 + }, +/obj/item/clothing/gloves/gezena{ + pixel_x = -5; + pixel_y = -9 + }, +/obj/item/clothing/gloves/gezena{ + pixel_x = -5; + pixel_y = -9 + }, +/obj/item/clothing/head/gezena{ + pixel_x = 10 + }, +/obj/item/clothing/head/gezena{ + pixel_x = 10 + }, +/obj/item/clothing/head/gezena{ + pixel_x = 10 + }, +/obj/item/clothing/head/gezena{ + pixel_x = 10 + }, +/obj/item/clothing/head/gezena{ + pixel_x = 10 + }, +/obj/item/clothing/head/gezena{ + pixel_x = 10 + }, +/obj/item/clothing/head/gezena/flap, +/obj/item/clothing/head/gezena/flap, +/obj/item/clothing/head/gezena/flap, +/obj/item/clothing/head/gezena/flap, +/obj/item/clothing/head/gezena/flap, +/obj/item/clothing/head/gezena/flap, +/obj/item/storage/backpack/satchel/explorer{ + pixel_x = -12; + pixel_y = 3 + }, +/obj/item/storage/backpack/satchel/explorer{ + pixel_x = -12; + pixel_y = 3 + }, +/obj/item/storage/backpack/satchel/explorer{ + pixel_x = -12; + pixel_y = 3 + }, +/obj/item/storage/backpack/satchel/explorer{ + pixel_x = -12; + pixel_y = 3 + }, +/obj/item/storage/backpack/satchel/explorer{ + pixel_x = -12; + pixel_y = 3 + }, +/obj/item/storage/backpack/satchel/explorer{ + pixel_x = -12; + pixel_y = 3 + }, +/turf/open/floor/plasteel/sepia, +/area/ship/crew/dorm) +"EM" = ( +/obj/structure/chair{ + dir = 8 + }, +/obj/effect/turf_decal/corner/opaque/lime/mono, +/obj/effect/turf_decal/trimline/opaque/bottlegreen/filled/line, +/obj/machinery/camera/autoname{ + dir = 8; + network = list("GEC"); + pixel_y = -5 + }, +/turf/open/floor/plasteel/white, +/area/ship/hallway/port) +"Fb" = ( +/obj/structure/catwalk/over/plated_catwalk, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/structure/cable{ + icon_state = "2-8" + }, +/turf/open/floor/plating, +/area/ship/engineering) +"Ff" = ( +/obj/effect/turf_decal/spline/fancy/opaque/lime{ + dir = 1 + }, +/obj/effect/turf_decal/spline/fancy/opaque/lime/corner{ + dir = 8 + }, +/obj/structure/cable{ + icon_state = "1-8" + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer4{ + dir = 1 + }, +/turf/open/floor/plasteel/tech, +/area/ship/crew/office) +"Fk" = ( +/obj/effect/turf_decal/trimline/opaque/bottlegreen/filled/corner, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4{ + dir = 4 + }, +/obj/machinery/camera/autoname{ + dir = 1; + network = list("GEC") + }, +/obj/machinery/button/door{ + id = "lib_mess_shut"; + name = "Mess Hall Shutters"; + dir = 1; + pixel_y = -20; + pixel_x = 1 + }, +/obj/machinery/light_switch{ + dir = 1; + pixel_x = 9; + pixel_y = -19 + }, +/turf/open/floor/plasteel/dark, +/area/ship/crew/canteen) +"Fm" = ( +/turf/closed/wall/mineral/titanium/nodiagonal, +/area/ship/crew/dorm) +"Fn" = ( +/obj/structure/chair/office/dark{ + dir = 1 + }, +/obj/effect/turf_decal/trimline/opaque/bottlegreen/filled/line, +/obj/effect/turf_decal/trimline/opaque/bottlegreen/filled/line{ + dir = 1 + }, +/turf/open/floor/plasteel/tech, +/area/ship/security) +"FI" = ( +/obj/effect/turf_decal/corner_steel_grid/full, +/obj/effect/turf_decal/spline/fancy/opaque/lime{ + dir = 10 + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer2{ + dir = 8 + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/structure/cable{ + icon_state = "2-4" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 6 + }, +/obj/machinery/camera/autoname{ + dir = 5 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/central) +"FJ" = ( +/obj/machinery/porta_turret/ship/weak{ + dir = 5 + }, +/obj/structure/cable{ + icon_state = "0-4" + }, +/turf/open/floor/engine/hull, +/area/ship/external/dark) +"FN" = ( +/obj/machinery/power/shuttle/engine/fueled/plasma{ + dir = 4 + }, +/obj/structure/catwalk/over/plated_catwalk/dark, +/obj/machinery/door/poddoor{ + dir = 4; + id = "lib_engine_blast" + }, +/turf/open/floor/plating, +/area/ship/engineering/engines/starboard) +"FO" = ( +/obj/machinery/porta_turret/ship/weak{ + dir = 8 + }, +/obj/structure/cable{ + icon_state = "0-4" + }, +/turf/open/floor/engine/hull/reinforced, +/area/ship/external/dark) +"FU" = ( +/obj/effect/turf_decal/corner_steel_grid{ + dir = 10 + }, +/obj/effect/turf_decal/spline/fancy/opaque/lime, +/obj/structure/table/wood, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer4, +/obj/machinery/camera/autoname{ + dir = 10 + }, +/obj/item/reagent_containers/food/drinks/coffee{ + pixel_x = -4; + pixel_y = 13 + }, +/obj/item/newspaper, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/central) +"Gb" = ( +/obj/machinery/computer/crew{ + dir = 8 + }, +/obj/structure/catwalk/over/plated_catwalk/dark, +/obj/structure/cable{ + icon_state = "1-8" + }, +/turf/open/floor/plasteel/telecomms_floor, +/area/ship/bridge) +"Ge" = ( +/obj/effect/turf_decal/trimline/opaque/bottlegreen/filled/corner{ + dir = 4 + }, +/obj/effect/turf_decal/trimline/opaque/green/filled/line{ + dir = 8 + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/holopad/emergency, +/turf/open/floor/plasteel/dark, +/area/ship/crew/canteen) +"Gn" = ( +/obj/machinery/door/window/southright{ + dir = 8 + }, +/obj/machinery/light_switch{ + dir = 1; + pixel_x = 10; + pixel_y = -19 + }, +/obj/effect/turf_decal/borderfloorblack, +/turf/open/floor/plasteel/dark, +/area/ship/hallway/port) +"Gy" = ( +/obj/structure/closet/crate{ + icon_state = "engi_e_crate"; + name = "storm crate" + }, +/obj/item/storage/box/stockparts/basic{ + pixel_x = -6; + pixel_y = -1 + }, +/obj/item/storage/box/stockparts/basic{ + pixel_x = -6; + pixel_y = -1 + }, +/obj/item/circuitboard/machine/smes{ + pixel_x = 4; + pixel_y = -8 + }, +/obj/item/circuitboard/machine/grounding_rod{ + pixel_x = 4; + pixel_y = -6 + }, +/obj/item/circuitboard/machine/grounding_rod{ + pixel_x = 4; + pixel_y = -4 + }, +/obj/item/circuitboard/machine/grounding_rod{ + pixel_x = 4; + pixel_y = -2 + }, +/obj/item/circuitboard/machine/grounding_rod{ + pixel_x = 4; + pixel_y = 0 + }, +/obj/item/circuitboard/machine/tesla_ground{ + pixel_x = -4; + pixel_y = -13 + }, +/obj/item/circuitboard/machine/tesla_ground{ + pixel_x = -4; + pixel_y = -11 + }, +/obj/item/circuitboard/machine/tesla_ground{ + pixel_x = -4; + pixel_y = -9 + }, +/obj/item/circuitboard/machine/tesla_ground{ + pixel_x = -4; + pixel_y = -7 + }, +/obj/effect/turf_decal/borderfloorblack{ + dir = 4 + }, +/turf/open/floor/plasteel/dark, +/area/ship/construction) +"Gz" = ( +/obj/structure/chair{ + dir = 1 + }, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 10 + }, +/obj/effect/turf_decal/spline/fancy/opaque/lime, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/central) +"GB" = ( +/obj/structure/window/reinforced/fulltile/shuttle, +/obj/structure/grille, +/obj/machinery/door/poddoor/shutters{ + id = "lib_cap_shut" + }, +/obj/machinery/door/firedoor/border_only{ + dir = 1 + }, +/obj/machinery/door/firedoor/border_only, +/turf/open/floor/plating, +/area/ship/crew/dorm/dormthree) +"GD" = ( +/obj/machinery/shower{ + dir = 8 + }, +/obj/machinery/door/window/southright, +/obj/effect/turf_decal/techfloor/hole/right{ + dir = 1 + }, +/obj/item/soap/deluxe, +/turf/open/floor/plasteel/mono, +/area/ship/crew/toilet) +"GL" = ( +/obj/item/radio/intercom/wideband/directional/west, +/obj/effect/turf_decal/siding/wood{ + dir = 10 + }, +/obj/item/radio/intercom/directional/south, +/turf/open/floor/plasteel/sepia, +/area/ship/crew/dorm/dormthree) +"GP" = ( +/turf/open/floor/plasteel/tech/grid, +/area/ship/construction) +"GQ" = ( +/obj/effect/turf_decal/trimline/opaque/bottlegreen/filled, +/obj/effect/turf_decal/industrial/outline/blue, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/obj/machinery/door/airlock/glass{ + dir = 4 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 8 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 4 + }, +/turf/open/floor/plasteel/dark, +/area/ship/crew/office) +"GW" = ( +/obj/structure/rack, +/obj/item/stock_parts/cell/gun/pgf{ + pixel_y = 12; + pixel_x = -3 + }, +/obj/item/stock_parts/cell/gun/pgf{ + pixel_y = 10; + pixel_x = 2 + }, +/obj/item/stock_parts/cell/gun/pgf{ + pixel_y = 8; + pixel_x = 8 + }, +/obj/item/stock_parts/cell/gun/pgf{ + pixel_y = 6; + pixel_x = -9 + }, +/obj/item/stock_parts/cell/gun/pgf{ + pixel_y = 4; + pixel_x = -3 + }, +/obj/item/stock_parts/cell/gun/pgf{ + pixel_y = 2; + pixel_x = 3 + }, +/obj/effect/turf_decal/corner/opaque/neutral/full, +/turf/open/floor/vault, +/area/ship/security/armory) +"Ha" = ( +/obj/structure/rack, +/obj/item/gun/energy/kalix/pgf{ + pixel_y = 10 + }, +/obj/item/gun/energy/kalix/pgf{ + pixel_y = 5 + }, +/obj/item/gun/energy/kalix/pgf{ + pixel_y = 0 + }, +/obj/effect/turf_decal/corner/opaque/neutral/full, +/turf/open/floor/vault, +/area/ship/security/armory) +"Hb" = ( +/obj/machinery/porta_turret/ship/weak{ + dir = 4 + }, +/obj/structure/cable{ + icon_state = "0-2" + }, +/turf/open/floor/engine/hull, +/area/ship/external/dark) +"Hf" = ( +/obj/structure/railing, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 9 + }, +/turf/open/floor/plasteel/telecomms_floor, +/area/ship/crew/cryo) +"Hn" = ( +/turf/closed/wall/mineral/titanium/nodiagonal, +/area/ship/crew/cryo) +"Hp" = ( +/obj/effect/turf_decal/trimline/opaque/bottlegreen/filled, +/obj/effect/turf_decal/industrial/outline/blue, +/obj/machinery/door/airlock/command{ + name = "Captain's Quarters"; + req_access_txt = "20"; + dir = 4; + req_access = list(20) + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/door/firedoor/border_only{ + dir = 8 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 4 + }, +/turf/open/floor/plasteel/dark, +/area/ship/bridge) +"Hv" = ( +/obj/structure/chair/sofa{ + dir = 1 + }, +/obj/effect/turf_decal/corner/opaque/lime/mono, +/obj/machinery/light/directional/south, +/turf/open/floor/plasteel/dark, +/area/ship/crew/office) +"Hx" = ( +/obj/effect/turf_decal/siding/wood{ + dir = 4 + }, +/obj/effect/turf_decal/siding/wood{ + dir = 8 + }, +/turf/open/floor/plasteel/sepia, +/area/ship/crew/dorm) +"HH" = ( +/obj/effect/turf_decal/corner/opaque/lime/half, +/obj/structure/cable{ + icon_state = "1-2" + }, +/turf/open/floor/plasteel/dark, +/area/ship/bridge) +"HJ" = ( +/obj/effect/turf_decal/corner_steel_grid{ + dir = 9 + }, +/obj/effect/turf_decal/spline/fancy/opaque/lime{ + dir = 8 + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer2{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer4{ + dir = 8 + }, +/obj/machinery/light/directional/west, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/central) +"HM" = ( +/turf/closed/wall/mineral/titanium/nodiagonal, +/area/ship/crew/office) +"HN" = ( +/obj/machinery/door/poddoor{ + id = "lib_hangar_blast" + }, +/obj/machinery/door/firedoor/border_only{ + dir = 1 + }, +/obj/machinery/door/firedoor/border_only, +/turf/open/floor/plasteel/dark, +/area/ship/hangar/starboard) +"HO" = ( +/obj/effect/turf_decal/borderfloor{ + dir = 8 + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4, +/turf/open/floor/plasteel, +/area/ship/medical) +"HR" = ( +/obj/effect/turf_decal/corner_steel_grid{ + dir = 9 + }, +/obj/effect/turf_decal/spline/fancy/opaque/lime{ + dir = 8 + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/light_switch{ + dir = 8; + pixel_x = 19; + pixel_y = 9 + }, +/turf/open/floor/plasteel/telecomms_floor, +/area/ship/crew/cryo) +"HU" = ( +/turf/closed/wall/mineral/plastitanium/nodiagonal, +/area/ship/crew/office) +"Ib" = ( +/obj/machinery/light/floor/hangar, +/turf/open/floor/engine/hull/reinforced, +/area/ship/external/dark) +"Ic" = ( +/obj/structure/sign/warning/vacuum/external{ + pixel_y = 28 + }, +/obj/structure/barricade/wooden, +/obj/structure/cable{ + icon_state = "2-4" + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/visible/layer4{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/visible/layer2{ + dir = 4 + }, +/turf/open/floor/engine/hull/reinforced/interior, +/area/ship/construction) +"If" = ( +/obj/structure/chair{ + dir = 1 + }, +/obj/effect/turf_decal/corner/opaque/lime/mono, +/obj/machinery/airalarm/directional/west, +/turf/open/floor/plasteel/dark, +/area/ship/crew/canteen) +"Ig" = ( +/obj/machinery/computer/helm/viewscreen/directional/north, +/obj/structure/chair/comfy/shuttle{ + dir = 4 + }, +/obj/effect/turf_decal/floordetail/tiled, +/turf/open/floor/plasteel/telecomms_floor, +/area/ship/bridge) +"Ir" = ( +/turf/open/floor/plasteel/stairs{ + icon = 'icons/obj/stairs.dmi'; + dir = 1 + }, +/area/ship/bridge) +"It" = ( +/obj/structure/cable{ + icon_state = "2-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/effect/turf_decal/borderfloorblack, +/turf/open/floor/plasteel/dark, +/area/ship/construction) +"IF" = ( +/obj/effect/turf_decal/corner_steel_grid{ + dir = 10 + }, +/obj/effect/turf_decal/spline/fancy/opaque/lime, +/obj/item/kirbyplants/random, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer2{ + dir = 2 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/obj/machinery/camera/autoname{ + dir = 10 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/central) +"IN" = ( +/obj/structure/railing{ + dir = 8 + }, +/obj/machinery/power/apc/auto_name/directional/north, +/obj/structure/cable{ + icon_state = "0-2" + }, +/obj/effect/turf_decal/corner/opaque/bottlegreen/border{ + dir = 4 + }, +/obj/effect/turf_decal/corner/opaque/bottlegreen/border{ + dir = 8 + }, +/turf/open/floor/plasteel/dark, +/area/ship/security) +"IV" = ( +/obj/effect/turf_decal/corner_steel_grid{ + dir = 5 + }, +/obj/effect/turf_decal/spline/fancy/opaque/lime{ + dir = 1 + }, +/obj/machinery/power/apc/auto_name/directional/north, +/obj/structure/cable{ + icon_state = "0-8" + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/central) +"Jd" = ( +/obj/structure/table/reinforced, +/obj/machinery/computer/secure_data/laptop, +/obj/effect/turf_decal/spline/fancy/opaque/lime{ + dir = 5 + }, +/turf/open/floor/plasteel/tech, +/area/ship/crew/dorm/dormthree) +"Jw" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer2{ + dir = 1 + }, +/obj/effect/turf_decal/corner/opaque/bottlegreen/border{ + dir = 6 + }, +/turf/open/floor/plasteel/dark, +/area/ship/security) +"JD" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/door/poddoor/shutters{ + id = "lib_armory_2"; + dir = 4 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 4 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 8 + }, +/turf/open/floor/vault, +/area/ship/security) +"JY" = ( +/obj/effect/turf_decal/corner_steel_grid/full{ + dir = 4 + }, +/obj/effect/turf_decal/spline/fancy/opaque/lime{ + dir = 6 + }, +/obj/item/kirbyplants/random, +/obj/machinery/light_switch{ + dir = 8; + pixel_x = 19; + pixel_y = 9 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/central) +"Ki" = ( +/obj/structure/cable{ + icon_state = "2-8" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/visible/layer2{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/visible/layer4{ + dir = 1 + }, +/obj/machinery/advanced_airlock_controller{ + pixel_y = 26 + }, +/turf/open/floor/engine/hull/reinforced/interior, +/area/ship/construction) +"Kn" = ( +/obj/structure/table/wood, +/obj/effect/turf_decal/corner/opaque/lime/mono, +/obj/machinery/jukebox/boombox{ + pixel_y = 0 + }, +/turf/open/floor/plasteel/dark, +/area/ship/crew/canteen) +"Ko" = ( +/obj/effect/turf_decal/corner_steel_grid{ + dir = 10 + }, +/obj/structure/closet/firecloset/wall{ + dir = 1; + pixel_y = -28 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer4, +/obj/effect/turf_decal/spline/fancy/opaque/lime, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/central) +"Kx" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/obj/structure/catwalk/over/plated_catwalk, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/structure/closet/firecloset/wall{ + dir = 1; + pixel_y = -28 + }, +/turf/open/floor/plating, +/area/ship/engineering) +"KB" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/turf/open/floor/engine/hull, +/area/ship/external/dark) +"KM" = ( +/turf/closed/wall/mineral/titanium/nodiagonal, +/area/ship/hallway/port) +"KN" = ( +/obj/effect/turf_decal/corner_steel_grid{ + dir = 4 + }, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 8 + }, +/obj/effect/turf_decal/spline/fancy/opaque/lime/corner{ + dir = 8 + }, +/obj/effect/turf_decal/spline/fancy/opaque/lime/corner{ + dir = 4 + }, +/obj/structure/cable{ + icon_state = "2-8" + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer2{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 10 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/central) +"KP" = ( +/turf/closed/wall/mineral/titanium/nodiagonal, +/area/ship/crew/canteen) +"KS" = ( +/obj/structure/window/plasma/reinforced/plastitanium, +/turf/open/floor/plating/airless, +/area/ship/external/dark) +"KY" = ( +/obj/machinery/computer/helm/viewscreen/directional/east, +/obj/effect/turf_decal/trimline/opaque/bottlegreen/filled/line, +/obj/effect/turf_decal/trimline/opaque/bottlegreen/filled/line{ + dir = 1 + }, +/turf/open/floor/plasteel/tech, +/area/ship/security) +"KZ" = ( +/obj/machinery/atmospherics/components/binary/pump{ + dir = 8; + name = "engine fuel pump" + }, +/obj/structure/cable{ + icon_state = "1-4" + }, +/obj/machinery/camera/autoname{ + dir = 1; + network = list("GEC") + }, +/obj/machinery/light_switch{ + dir = 1; + pixel_x = 10; + pixel_y = -19 + }, +/obj/structure/catwalk/over/plated_catwalk/dark, +/turf/open/floor/plating, +/area/ship/engineering/engines/port) +"Lp" = ( +/obj/effect/turf_decal/industrial/traffic, +/obj/structure/cable{ + icon_state = "1-8" + }, +/obj/structure/cable{ + icon_state = "1-4" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 9 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 5 + }, +/turf/open/floor/plasteel/mono, +/area/ship/hangar/starboard) +"Lu" = ( +/obj/effect/turf_decal/corner_steel_grid{ + dir = 6 + }, +/obj/effect/turf_decal/spline/fancy/opaque/lime{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer4{ + dir = 4 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/central) +"Ly" = ( +/turf/closed/wall/mineral/titanium/nodiagonal, +/area/ship/external/dark) +"LD" = ( +/obj/machinery/atmospherics/components/unary/outlet_injector/on/layer4{ + dir = 4 + }, +/turf/open/floor/engine/hull/reinforced, +/area/ship/external/dark) +"LH" = ( +/obj/effect/turf_decal/corner/opaque/lime/mono, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/structure/cable{ + icon_state = "1-8" + }, +/obj/effect/turf_decal/industrial/warning{ + dir = 1 + }, +/turf/open/floor/plasteel/white, +/area/ship/hallway/port) +"LS" = ( +/obj/effect/turf_decal/corner_steel_grid{ + dir = 5 + }, +/obj/effect/turf_decal/spline/fancy/opaque/lime{ + dir = 1 + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4, +/obj/machinery/button/door{ + id = "lib_gate"; + name = "Checkpoint Shutters"; + dir = 2; + pixel_x = 8; + pixel_y = 20 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/central) +"LT" = ( +/obj/structure/sign/warning/chemdiamond{ + pixel_y = -32 + }, +/obj/structure/sign/warning/radiation{ + pixel_x = 32 + }, +/obj/structure/frame/machine, +/obj/structure/cable, +/obj/item/book/manual/mount, +/turf/open/floor/plasteel/telecomms_floor, +/area/ship/construction) +"Ma" = ( +/obj/machinery/atmospherics/components/trinary/mixer/layer2{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/orange/visible, +/obj/structure/cable{ + icon_state = "2-9" + }, +/turf/open/floor/plasteel/tech, +/area/ship/engineering/engines/port) +"Me" = ( +/obj/effect/turf_decal/corner_steel_grid/full{ + dir = 1 + }, +/obj/effect/turf_decal/spline/fancy/opaque/lime{ + dir = 5 + }, +/obj/machinery/light/directional/north, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer2, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/central) +"Mg" = ( +/obj/effect/turf_decal/trimline/opaque/bottlegreen/filled/line{ + dir = 1 + }, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer2{ + dir = 4 + }, +/turf/open/floor/plasteel/dark, +/area/ship/crew/canteen) +"Mk" = ( +/turf/closed/wall/mineral/plastitanium/nodiagonal, +/area/ship/external/dark) +"Mp" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/components/binary/dp_vent_pump/high_volume/layer2, +/obj/machinery/atmospherics/pipe/simple/scrubbers/visible/layer4, +/turf/open/floor/engine/hull/reinforced/interior, +/area/ship/construction) +"Ms" = ( +/obj/structure/window/reinforced/fulltile/shuttle, +/obj/structure/grille, +/obj/machinery/door/poddoor/shutters{ + id = "lib_bridge_shut" + }, +/obj/machinery/door/firedoor/border_only{ + dir = 1 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 8 + }, +/turf/open/floor/plating, +/area/ship/bridge) +"Mu" = ( +/obj/effect/turf_decal/corner/opaque/lime/mono, +/obj/machinery/vending/modularpc, +/turf/open/floor/plasteel/tech, +/area/ship/crew/office) +"Mw" = ( +/obj/structure/bed, +/obj/item/bedsheet/hos{ + name = "Sergeant's Bedsheet"; + desc = "It is decorated with a shield emblem." + }, +/obj/effect/turf_decal/borderfloorblack, +/turf/open/floor/plasteel/tech, +/area/ship/crew/dorm/dormtwo) +"MC" = ( +/obj/structure/closet/secure_closet/wall{ + icon_door = "med_wall"; + name = "Doctor's Locker"; + pixel_y = 0; + req_access_txt = "5"; + dir = 8; + pixel_x = 28 + }, +/obj/item/clothing/gloves/gezena{ + pixel_x = 3; + pixel_y = 11 + }, +/obj/item/clothing/shoes/combat/gezena{ + pixel_x = 7; + pixel_y = -7 + }, +/obj/item/clothing/under/gezena{ + pixel_x = -9; + pixel_y = -5 + }, +/obj/item/clothing/suit/armor/gezena{ + pixel_y = 9; + pixel_x = -9 + }, +/obj/item/clothing/neck/cloak/gezena/med{ + pixel_y = -4; + pixel_x = 1 + }, +/obj/item/storage/belt/medical/gezena{ + pixel_x = -9; + pixel_y = 3 + }, +/obj/item/clothing/head/gezena/medic/flap{ + pixel_x = 12 + }, +/obj/item/clothing/head/gezena/medic{ + pixel_y = 4; + pixel_x = 7 + }, +/obj/item/storage/backpack/duffelbag/med{ + pixel_x = -6; + pixel_y = -9 + }, +/obj/item/storage/backpack/satchel/med{ + pixel_x = 7; + pixel_y = -10 + }, +/obj/item/reagent_containers/glass/bottle/mannitol{ + pixel_y = 1 + }, +/obj/machinery/button/door{ + id = "lib_medbay_shut"; + name = "Privacy Shutters"; + dir = 1; + pixel_x = -5; + pixel_y = -20 + }, +/obj/machinery/light_switch{ + dir = 1; + pixel_x = -13; + pixel_y = -19 + }, +/turf/open/floor/mineral/titanium, +/area/ship/medical) +"MF" = ( +/turf/closed/wall/mineral/titanium/nodiagonal, +/area/ship/bridge) +"MI" = ( +/obj/structure/cable{ + icon_state = "1-8" + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer2{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/obj/effect/turf_decal/etherbor/right, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/central) +"ML" = ( +/obj/effect/turf_decal/trimline/opaque/bottlegreen/filled/line{ + dir = 4 + }, +/obj/effect/turf_decal/trimline/opaque/green/filled/line{ + dir = 8 + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/turf/open/floor/plasteel/dark, +/area/ship/crew/canteen) +"MQ" = ( +/obj/effect/turf_decal/corner_steel_grid{ + dir = 5 + }, +/obj/effect/turf_decal/spline/fancy/opaque/lime{ + dir = 1 + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/structure/cable{ + icon_state = "1-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/central) +"MS" = ( +/obj/effect/turf_decal/spline/fancy/opaque/lime{ + dir = 1 + }, +/obj/effect/turf_decal/spline/fancy/opaque/lime, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer2{ + dir = 8 + }, +/turf/open/floor/plasteel/tech, +/area/ship/bridge) +"MZ" = ( +/obj/machinery/door/airlock/engineering{ + req_one_access = list(1, 10) + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/door/firedoor/border_only{ + dir = 1 + }, +/obj/machinery/door/firedoor/border_only, +/turf/open/floor/plasteel/tech/techmaint, +/area/ship/engineering) +"Nc" = ( +/obj/effect/turf_decal/spline/fancy/opaque/lime{ + dir = 1 + }, +/obj/effect/turf_decal/spline/fancy/opaque/lime, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/turf/open/floor/plasteel/tech, +/area/ship/crew/office) +"Ne" = ( +/obj/effect/turf_decal/industrial/traffic/corner{ + dir = 1 + }, +/obj/effect/turf_decal/industrial/warning/corner{ + dir = 8 + }, +/obj/structure/cable{ + icon_state = "1-8" + }, +/obj/machinery/button/shieldwallgen{ + id = "lib_hangar_holo"; + pixel_y = -19; + pixel_x = 6; + dir = 1 + }, +/obj/machinery/button/door{ + id = "lib_hangar_blast"; + name = "Hangar Shutters"; + pixel_y = -20; + pixel_x = -2; + dir = 1 + }, +/turf/open/floor/plasteel/mono, +/area/ship/hangar/starboard) +"Nf" = ( +/obj/effect/turf_decal/trimline/opaque/bottlegreen/filled/line, +/obj/effect/turf_decal/trimline/opaque/bottlegreen/filled/line{ + dir = 1 + }, +/turf/open/floor/plasteel/tech, +/area/ship/security) +"Nj" = ( +/obj/structure/cable{ + icon_state = "1-4" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer2{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/obj/structure/closet/crate{ + name = "Mishun Acomplshed" + }, +/obj/item/poster/mission_accomplished_7, +/obj/item/poster/mission_accomplished_6, +/obj/item/poster/mission_accomplished_5, +/obj/item/poster/mission_accomplished_4, +/obj/item/poster/mission_accomplished_3, +/obj/item/poster/mission_accomplished_2, +/obj/item/poster/mission_accomplished_1, +/turf/open/floor/plasteel/tech, +/area/ship/construction) +"Nw" = ( +/obj/effect/turf_decal/trimline/opaque/green/filled/corner{ + dir = 1 + }, +/obj/machinery/computer/helm/viewscreen/directional/south, +/obj/structure/cable{ + icon_state = "1-4" + }, +/turf/open/floor/plasteel/dark, +/area/ship/crew/canteen) +"Ny" = ( +/obj/machinery/autolathe, +/obj/machinery/light/directional/east, +/obj/item/stack/sheet/glass/twenty{ + pixel_x = 6; + pixel_y = 2 + }, +/turf/open/floor/plasteel/tech/techmaint, +/area/ship/engineering) +"Nz" = ( +/obj/structure/cable{ + icon_state = "2-9" + }, +/obj/structure/window/plasma/reinforced/plastitanium, +/turf/open/floor/plating/airless, +/area/ship/external/dark) +"NF" = ( +/obj/structure/closet/crate/radiation, +/obj/effect/turf_decal/borderfloorblack{ + dir = 4 + }, +/turf/open/floor/plasteel/dark, +/area/ship/construction) +"NM" = ( +/obj/effect/turf_decal/corner_steel_grid{ + dir = 9 + }, +/obj/effect/turf_decal/spline/fancy/opaque/lime{ + dir = 8 + }, +/obj/structure/cable{ + icon_state = "2-8" + }, +/obj/structure/cable{ + icon_state = "2-4" + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/central) +"Od" = ( +/obj/effect/turf_decal/corner/opaque/lime/half, +/obj/machinery/power/apc/auto_name/directional/west, +/obj/machinery/airalarm/directional/south, +/obj/structure/cable{ + icon_state = "0-1" + }, +/mob/living/simple_animal/pet/dog/pug{ + pixel_y = 11; + name = "Jumbo" + }, +/obj/structure/bed/dogbed{ + pixel_y = 4; + pixel_x = 2; + anchored = 1 + }, +/turf/open/floor/plasteel/dark, +/area/ship/bridge) +"Oq" = ( +/turf/closed/wall/mineral/titanium/nodiagonal, +/area/ship/crew/toilet) +"Oy" = ( +/obj/effect/turf_decal/industrial/traffic, +/obj/structure/sign/flag/gezena{ + pixel_y = 30 + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/turf/open/floor/plasteel/mono, +/area/ship/hangar/starboard) +"OA" = ( +/obj/structure/railing, +/obj/machinery/light/directional/west, +/obj/structure/table, +/obj/item/radio{ + pixel_y = 11; + pixel_x = -10 + }, +/obj/item/radio{ + pixel_y = 11; + pixel_x = -7 + }, +/obj/item/radio{ + pixel_y = 11; + pixel_x = -4 + }, +/obj/item/radio{ + pixel_y = 11 + }, +/obj/item/radio{ + pixel_y = 11; + pixel_x = 4 + }, +/obj/item/radio{ + pixel_y = 11; + pixel_x = 10 + }, +/obj/item/radio{ + pixel_y = 4; + pixel_x = -10 + }, +/obj/item/radio{ + pixel_y = 4; + pixel_x = -6 + }, +/obj/item/radio{ + pixel_y = 4; + pixel_x = -2 + }, +/obj/item/radio{ + pixel_y = 4; + pixel_x = 2 + }, +/obj/item/radio{ + pixel_y = 4; + pixel_x = 6 + }, +/obj/item/radio{ + pixel_y = 4; + pixel_x = 10 + }, +/turf/open/floor/plasteel/dark, +/area/ship/crew/cryo) +"OQ" = ( +/obj/structure/sign/flag/gezena{ + pixel_y = 30 + }, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 5 + }, +/obj/effect/turf_decal/spline/fancy/opaque/lime{ + dir = 1 + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/structure/cable{ + icon_state = "2-8" + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/central) +"OR" = ( +/obj/effect/turf_decal/corner_steel_grid{ + dir = 10 + }, +/obj/effect/turf_decal/spline/fancy/opaque/lime, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer2{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer4{ + dir = 1 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/central) +"OS" = ( +/obj/machinery/atmospherics/pipe/simple/orange/visible{ + dir = 10 + }, +/obj/machinery/meter, +/obj/structure/reagent_dispensers/watertank, +/obj/machinery/airalarm/directional/east, +/turf/open/floor/plasteel/tech, +/area/ship/engineering/engines/starboard) +"OT" = ( +/obj/machinery/light/directional/west, +/obj/structure/closet/secure_closet{ + anchored = 1; + can_be_unanchored = 1; + icon_state = "armory"; + name = "armor locker"; + req_access_txt = "1" + }, +/obj/effect/turf_decal/corner/opaque/neutral/full, +/obj/item/clothing/suit/armor/gezena/marine{ + pixel_y = 1; + pixel_x = 1 + }, +/obj/item/clothing/suit/armor/gezena/marine{ + pixel_y = 1; + pixel_x = 1 + }, +/obj/item/clothing/suit/armor/gezena/marine{ + pixel_y = 1; + pixel_x = 1 + }, +/obj/item/storage/belt/military/gezena{ + pixel_y = -1; + pixel_x = 1 + }, +/obj/item/storage/belt/military/gezena{ + pixel_y = -1; + pixel_x = 1 + }, +/obj/item/storage/belt/military/gezena{ + pixel_y = -1; + pixel_x = 1 + }, +/obj/item/clothing/head/helmet/gezena{ + pixel_y = -11 + }, +/obj/item/clothing/head/helmet/gezena{ + pixel_y = -11 + }, +/obj/item/clothing/head/helmet/gezena{ + pixel_y = -11 + }, +/turf/open/floor/vault, +/area/ship/security/armory) +"OY" = ( +/obj/effect/turf_decal/corner/opaque/purple{ + dir = 9 + }, +/turf/open/floor/vault, +/area/ship/security/armory) +"Pb" = ( +/turf/open/floor/plasteel/stairs{ + icon = 'icons/obj/stairs.dmi'; + dir = 2 + }, +/area/ship/bridge) +"Pd" = ( +/obj/machinery/power/terminal{ + dir = 8 + }, +/obj/structure/cable{ + icon_state = "0-5" + }, +/obj/structure/catwalk/over/plated_catwalk/dark, +/turf/open/floor/plating, +/area/ship/engineering/engines/starboard) +"Pf" = ( +/obj/machinery/atmospherics/pipe/layer_manifold, +/obj/structure/grille, +/obj/machinery/door/firedoor/border_only{ + dir = 1 + }, +/obj/machinery/door/firedoor/border_only, +/obj/structure/window/reinforced/fulltile/shuttle, +/turf/open/floor/plating, +/area/ship/engineering) +"Ph" = ( +/obj/machinery/atmospherics/pipe/simple/orange/visible, +/obj/machinery/atmospherics/components/trinary/mixer/layer2{ + dir = 1 + }, +/obj/structure/cable{ + icon_state = "2-9" + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/turf/open/floor/plasteel/tech, +/area/ship/engineering/engines/port) +"Pi" = ( +/obj/structure/sign/flag/gezena{ + pixel_y = 30 + }, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 5 + }, +/obj/effect/turf_decal/spline/fancy/opaque/lime{ + dir = 1 + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/central) +"Pr" = ( +/obj/structure/chair{ + dir = 8 + }, +/obj/effect/turf_decal/corner/opaque/lime/mono, +/turf/open/floor/plasteel/dark, +/area/ship/crew/canteen) +"Ps" = ( +/obj/structure/cable{ + icon_state = "1-4" + }, +/turf/open/floor/engine/hull, +/area/ship/external/dark) +"Pu" = ( +/obj/effect/turf_decal/corner_steel_grid{ + dir = 10 + }, +/obj/effect/turf_decal/spline/fancy/opaque/lime, +/obj/structure/sign/flag/gezena{ + dir = 1; + pixel_y = -28 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/central) +"Px" = ( +/obj/effect/turf_decal/corner_steel_grid{ + dir = 6 + }, +/obj/effect/turf_decal/spline/fancy/opaque/lime{ + dir = 4 + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer2{ + dir = 2 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/central) +"PK" = ( +/obj/structure/cable{ + icon_state = "2-4" + }, +/obj/structure/catwalk/over/plated_catwalk/dark, +/turf/open/floor/plating/airless, +/area/ship/external/dark) +"PM" = ( +/obj/effect/turf_decal/trimline/opaque/bottlegreen/filled, +/obj/effect/turf_decal/industrial/outline/blue, +/obj/machinery/door/airlock{ + name = "Mess Hall" + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/machinery/door/firedoor/border_only{ + dir = 1 + }, +/obj/machinery/door/firedoor/border_only, +/turf/open/floor/plasteel/dark, +/area/ship/crew/canteen) +"PP" = ( +/obj/structure/closet/wall{ + dir = 4; + icon_state = "emergency_wall"; + pixel_x = -28; + name = "Spare Internals Closet" + }, +/obj/effect/turf_decal/corner/opaque/lime/mono, +/obj/effect/turf_decal/trimline/opaque/bottlegreen/filled/line, +/obj/item/tank/internals/emergency_oxygen{ + pixel_x = 6 + }, +/obj/item/tank/internals/emergency_oxygen{ + pixel_x = 6 + }, +/obj/item/tank/internals/emergency_oxygen{ + pixel_x = 6 + }, +/obj/item/tank/internals/emergency_oxygen{ + pixel_x = 6 + }, +/obj/item/tank/internals/emergency_oxygen{ + pixel_x = 6 + }, +/obj/item/tank/internals/emergency_oxygen{ + pixel_x = 6 + }, +/obj/item/clothing/mask/breath{ + pixel_y = 0; + pixel_x = -6 + }, +/obj/item/clothing/mask/breath{ + pixel_y = 0; + pixel_x = -6 + }, +/obj/item/clothing/mask/breath{ + pixel_y = 0; + pixel_x = -6 + }, +/obj/item/clothing/mask/breath{ + pixel_y = 0; + pixel_x = -6 + }, +/obj/item/clothing/mask/breath{ + pixel_y = 0; + pixel_x = -6 + }, +/obj/item/clothing/mask/breath{ + pixel_y = 0; + pixel_x = -6 + }, +/turf/open/floor/plasteel/white, +/area/ship/hallway/port) +"PY" = ( +/obj/effect/turf_decal/corner_steel_grid{ + dir = 10 + }, +/obj/effect/turf_decal/spline/fancy/opaque/lime, +/obj/structure/chair{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/obj/item/radio/intercom/directional/south, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/central) +"Qa" = ( +/obj/machinery/light_switch{ + dir = 8; + pixel_x = 19; + pixel_y = 9 + }, +/obj/structure/rack, +/obj/item/flashlight/seclite{ + pixel_x = 5; + pixel_y = 9 + }, +/obj/item/flashlight/seclite{ + pixel_x = 5; + pixel_y = 6 + }, +/obj/item/flashlight/seclite{ + pixel_x = 5; + pixel_y = 3 + }, +/obj/item/flashlight/seclite{ + pixel_x = 5; + pixel_y = 0 + }, +/obj/item/flashlight/seclite{ + pixel_x = 5; + pixel_y = -3 + }, +/obj/item/gps{ + pixel_x = -10; + pixel_y = 9 + }, +/obj/item/gps{ + pixel_x = -10; + pixel_y = 7 + }, +/obj/item/gps{ + pixel_x = -10; + pixel_y = 5 + }, +/obj/item/gps{ + pixel_x = -10; + pixel_y = 3 + }, +/obj/item/gps{ + pixel_x = -10; + pixel_y = 1 + }, +/obj/effect/turf_decal/industrial/traffic/corner{ + dir = 4 + }, +/obj/effect/turf_decal/corner/opaque/neutral/full, +/turf/open/floor/vault, +/area/ship/security/armory) +"Qq" = ( +/obj/structure/rack, +/obj/item/kitchen/knife/combat/survival{ + pixel_x = -7; + pixel_y = 4 + }, +/obj/item/kitchen/knife/combat/survival{ + pixel_x = -2; + pixel_y = 4 + }, +/obj/item/kitchen/knife/combat/survival{ + pixel_y = 4; + pixel_x = 3 + }, +/obj/item/kitchen/knife/combat/survival{ + pixel_y = 4; + pixel_x = 8 + }, +/obj/effect/turf_decal/corner/opaque/neutral/full, +/turf/open/floor/vault, +/area/ship/security/armory) +"QI" = ( +/obj/structure/catwalk/over/plated_catwalk, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/structure/closet/emcloset/wall{ + dir = 1; + pixel_y = -27 + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer4, +/turf/open/floor/plating, +/area/ship/engineering) +"QJ" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/high_volume/siphon/atmos/air_output{ + dir = 1 + }, +/obj/machinery/air_sensor/atmos/air_tank{ + pixel_x = 11; + pixel_y = -9 + }, +/turf/open/floor/engine/air, +/area/ship/engineering) +"QK" = ( +/obj/effect/turf_decal/spline/fancy/opaque/lime{ + dir = 1 + }, +/obj/effect/turf_decal/spline/fancy/opaque/lime, +/obj/structure/cable{ + icon_state = "1-8" + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/turf/open/floor/plasteel/tech, +/area/ship/bridge) +"QL" = ( +/obj/effect/turf_decal/industrial/traffic{ + dir = 8 + }, +/obj/machinery/light/directional/east, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/turf/open/floor/plasteel/mono, +/area/ship/hangar/starboard) +"QO" = ( +/obj/effect/turf_decal/corner_steel_grid{ + dir = 5 + }, +/obj/machinery/computer/helm{ + dir = 8 + }, +/turf/open/floor/plasteel/telecomms_floor, +/area/ship/bridge) +"QU" = ( +/obj/effect/turf_decal/industrial/traffic, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/light_switch{ + dir = 2; + pixel_x = -12; + pixel_y = 19 + }, +/obj/item/radio/intercom/directional/north, +/turf/open/floor/plasteel/mono, +/area/ship/hangar/starboard) +"Rg" = ( +/obj/effect/turf_decal/trimline/opaque/green/filled/line{ + dir = 10 + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/turf/open/floor/plasteel/dark, +/area/ship/crew/canteen) +"Ri" = ( +/obj/structure/bed, +/obj/structure/railing{ + dir = 1 + }, +/obj/item/bedsheet/yellow, +/obj/structure/curtain/cloth/grey, +/turf/open/floor/plasteel/dark, +/area/ship/crew/dorm) +"Rl" = ( +/obj/machinery/shower{ + dir = 4 + }, +/obj/machinery/door/window/southleft, +/obj/effect/turf_decal/techfloor/hole{ + dir = 1 + }, +/turf/open/floor/plasteel/mono, +/area/ship/crew/toilet) +"Ro" = ( +/obj/structure/chair, +/turf/open/floor/mineral/titanium/tiled, +/area/ship/hallway/central) +"Rx" = ( +/obj/structure/window/reinforced/fulltile/shuttle, +/obj/structure/grille, +/obj/machinery/door/poddoor/shutters{ + id = "lib_bridge_shut"; + dir = 4 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 1 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 4 + }, +/turf/open/floor/plating, +/area/ship/bridge) +"RB" = ( +/turf/closed/wall/mineral/titanium/exterior, +/area/ship/crew/dorm) +"RC" = ( +/obj/machinery/atmospherics/components/binary/pump/on/layer4{ + dir = 8; + name = "scrubbers output pump" + }, +/obj/structure/cable{ + icon_state = "2-4" + }, +/obj/structure/cable{ + icon_state = "1-4" + }, +/obj/structure/catwalk/over/plated_catwalk, +/turf/open/floor/plating, +/area/ship/engineering) +"RI" = ( +/obj/structure/sink{ + dir = 8; + pixel_x = 13; + pixel_y = 8 + }, +/obj/machinery/light/directional/east, +/turf/open/floor/mineral/titanium, +/area/ship/medical) +"RN" = ( +/obj/machinery/vending/cigarette, +/obj/effect/turf_decal/corner/opaque/lime/mono, +/obj/machinery/light/directional/north, +/turf/open/floor/plasteel/dark, +/area/ship/crew/office) +"RP" = ( +/turf/closed/wall/mineral/titanium/nodiagonal, +/area/ship/crew/dorm/dormthree) +"RR" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/visible/layer4{ + dir = 10 + }, +/obj/machinery/atmospherics/pipe/simple/supply/visible/layer2{ + dir = 10 + }, +/obj/machinery/light/directional/north, +/obj/structure/closet/emcloset/wall{ + dir = 8; + pixel_x = 28 + }, +/turf/open/floor/engine/hull/reinforced/interior, +/area/ship/construction) +"RX" = ( +/obj/machinery/door/airlock/mining/glass{ + name = "NAIL - Shuttle Bay" + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/machinery/door/firedoor/border_only{ + dir = 1 + }, +/obj/machinery/door/firedoor/border_only, +/turf/open/floor/plasteel/mono, +/area/ship/hangar/starboard) +"RZ" = ( +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/effect/turf_decal/trimline/opaque/bottlegreen/filled, +/obj/effect/turf_decal/industrial/outline/blue, +/obj/machinery/door/poddoor/shutters{ + id = "lib_gate" + }, +/obj/machinery/door/firedoor/border_only, +/obj/machinery/door/firedoor/border_only{ + dir = 1 + }, +/turf/open/floor/plasteel/tech, +/area/ship/hallway/port) +"Sa" = ( +/obj/structure/bed, +/obj/structure/railing{ + dir = 1 + }, +/obj/item/bedsheet/black, +/obj/structure/curtain/cloth/grey, +/turf/open/floor/plasteel/dark, +/area/ship/crew/dorm) +"Sc" = ( +/obj/effect/turf_decal/corner/opaque/lime/mono, +/obj/effect/turf_decal/trimline/opaque/bottlegreen/filled/line, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/turf/open/floor/plasteel/white, +/area/ship/hallway/port) +"Sd" = ( +/obj/structure/window/reinforced/fulltile/shuttle, +/obj/structure/grille, +/obj/machinery/door/poddoor/shutters{ + id = "lib_bridge_shut" + }, +/obj/machinery/door/firedoor/border_only{ + dir = 1 + }, +/obj/machinery/door/firedoor/border_only, +/turf/open/floor/plating, +/area/ship/bridge) +"Sh" = ( +/obj/structure/cable{ + icon_state = "1-8" + }, +/obj/structure/cable{ + icon_state = "1-4" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/effect/turf_decal/borderfloorblack, +/turf/open/floor/plasteel/dark, +/area/ship/construction) +"Si" = ( +/obj/docking_port/stationary{ + height = 15; + width = 15; + name = "liberty exterior dock"; + dwidth = 7 + }, +/turf/template_noop, +/area/template_noop) +"Sp" = ( +/turf/open/floor/engine/hull/reinforced, +/area/ship/external/dark) +"Ss" = ( +/obj/structure/table/wood, +/obj/effect/turf_decal/corner/opaque/lime/mono, +/obj/machinery/power/apc/auto_name/directional/north, +/obj/structure/cable{ + icon_state = "0-2" + }, +/obj/item/paicard{ + pixel_x = -10; + pixel_y = 0 + }, +/obj/item/toy/cards/deck{ + pixel_y = 1; + pixel_x = 7 + }, +/obj/item/storage/pill_bottle/dice{ + pixel_y = 11; + pixel_x = 7 + }, +/turf/open/floor/plasteel/dark, +/area/ship/crew/office) +"St" = ( +/obj/structure/railing/corner{ + dir = 8 + }, +/obj/structure/cable{ + icon_state = "2-4" + }, +/turf/open/floor/plasteel/telecomms_floor, +/area/ship/crew/cryo) +"Su" = ( +/obj/structure/cable{ + icon_state = "1-10" + }, +/obj/structure/window/plasma/reinforced/plastitanium, +/turf/open/floor/plating/airless, +/area/ship/external/dark) +"Sx" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/structure/cable{ + icon_state = "6-8" + }, +/obj/structure/cable{ + icon_state = "5-8" + }, +/obj/structure/catwalk/over/plated_catwalk/dark, +/turf/open/floor/plating/airless, +/area/ship/external/dark) +"Sz" = ( +/obj/machinery/cryopod{ + dir = 4 + }, +/turf/open/floor/pod/dark, +/area/ship/crew/cryo) +"SB" = ( +/turf/closed/wall/mineral/titanium/nodiagonal, +/area/ship/hangar/starboard) +"ST" = ( +/obj/effect/turf_decal/trimline/opaque/bottlegreen/arrow_ccw{ + dir = 8 + }, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 6 + }, +/obj/structure/sign/flag/gezena{ + dir = 4; + pixel_x = -30 + }, +/turf/open/floor/plasteel/white, +/area/ship/hallway/port) +"SU" = ( +/obj/vehicle/ridden/wheelchair, +/turf/open/floor/mineral/titanium/tiled, +/area/ship/hallway/central) +"Te" = ( +/obj/structure/chair{ + dir = 8 + }, +/obj/effect/turf_decal/corner/opaque/lime/mono, +/obj/machinery/airalarm/directional/north, +/obj/effect/turf_decal/industrial/warning/corner{ + dir = 1 + }, +/turf/open/floor/plasteel/white, +/area/ship/hallway/port) +"To" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/light/floor/hangar, +/turf/open/floor/engine/hull/reinforced, +/area/ship/external/dark) +"Tw" = ( +/obj/structure/cable{ + icon_state = "0-2" + }, +/obj/machinery/door/poddoor{ + id = "lib_entrance_blast" + }, +/obj/machinery/power/shieldwallgen/atmos/roundstart{ + dir = 8; + id = "lib_entrance_holo" + }, +/obj/machinery/door/firedoor/border_only, +/obj/machinery/door/firedoor/border_only{ + dir = 1 + }, +/turf/open/floor/plasteel/dark, +/area/ship/hallway/port) +"TK" = ( +/obj/structure/window/reinforced/fulltile/shuttle, +/obj/structure/grille, +/obj/machinery/door/poddoor/shutters{ + id = "lib_medbay_shut"; + dir = 4 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 4 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 8 + }, +/turf/open/floor/plating, +/area/ship/medical) +"TO" = ( +/turf/closed/wall/mineral/titanium/nodiagonal, +/area/ship/construction) +"TS" = ( +/obj/structure/cable{ + icon_state = "0-1" + }, +/obj/machinery/door/poddoor{ + id = "lib_hangar_blast" + }, +/obj/machinery/power/shieldwallgen/atmos/strong/roundstart{ + dir = 4; + id = "lib_hangar_holo" + }, +/obj/machinery/door/firedoor/border_only{ + dir = 1 + }, +/obj/machinery/door/firedoor/border_only, +/turf/open/floor/plasteel/dark, +/area/ship/hangar/starboard) +"TV" = ( +/turf/closed/wall/mineral/plastitanium/nodiagonal, +/area/ship/engineering/engines/starboard) +"TW" = ( +/obj/structure/closet/crate/solarpanel_small, +/obj/effect/turf_decal/borderfloorblack{ + dir = 1 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/construction) +"TY" = ( +/obj/effect/turf_decal/corner_steel_grid{ + dir = 5 + }, +/obj/effect/turf_decal/spline/fancy/opaque/lime{ + dir = 1 + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/central) +"Us" = ( +/turf/closed/wall/mineral/plastitanium/nodiagonal, +/area/ship/construction) +"Uv" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/light/floor/hangar, +/obj/machinery/camera/autoname{ + dir = 1; + network = list("GEC") + }, +/turf/open/floor/engine/hull/reinforced, +/area/ship/external/dark) +"Uw" = ( +/obj/machinery/atmospherics/components/unary/portables_connector/visible/layer2{ + dir = 8 + }, +/obj/machinery/portable_atmospherics/canister/toxins, +/turf/open/floor/plasteel/tech, +/area/ship/engineering/engines/port) +"UB" = ( +/obj/structure/bed, +/obj/structure/railing{ + dir = 1 + }, +/obj/item/bedsheet/red, +/obj/structure/curtain/cloth/grey, +/turf/open/floor/plasteel/dark, +/area/ship/crew/dorm) +"UE" = ( +/obj/effect/turf_decal/siding/wood{ + dir = 9 + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/item/clothing/neck/cloak/gezena/captain{ + pixel_y = -5; + pixel_x = 1 + }, +/obj/item/clothing/gloves/gezena/captain{ + pixel_y = 4 + }, +/obj/item/clothing/under/gezena/captain{ + pixel_y = -4; + pixel_x = -10 + }, +/obj/item/clothing/suit/armor/gezena/captain{ + pixel_y = -3; + pixel_x = 9 + }, +/obj/item/clothing/head/gezena/captain{ + pixel_y = 6 + }, +/obj/item/storage/backpack/duffelbag/captain{ + pixel_x = 6; + pixel_y = -14 + }, +/obj/item/storage/backpack/satchel/cap{ + pixel_y = -18; + pixel_x = -8 + }, +/obj/item/storage/belt/sabre, +/obj/item/storage/lockbox/medal, +/obj/item/radio/headset/pgf/captain, +/obj/item/radio/headset/pgf/alt/captain, +/obj/structure/closet/secure_closet{ + icon_state = "blueshield"; + req_access = list(20); + name = "captain's locker" + }, +/obj/item/gun/energy/kalix/pistol{ + pixel_y = -16 + }, +/turf/open/floor/plasteel/sepia, +/area/ship/crew/dorm/dormthree) +"UH" = ( +/obj/effect/turf_decal/corner_steel_grid/full, +/obj/effect/turf_decal/spline/fancy/opaque/lime{ + dir = 10 + }, +/obj/item/kirbyplants/random, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/central) +"UM" = ( +/obj/machinery/atmospherics/components/unary/shuttle/heater{ + dir = 4 + }, +/obj/structure/catwalk/over/plated_catwalk/dark, +/obj/machinery/door/firedoor/border_only{ + dir = 4 + }, +/obj/structure/window/plasma/reinforced{ + dir = 8 + }, +/turf/open/floor/plating, +/area/ship/engineering/engines/port) +"Vc" = ( +/obj/machinery/atmospherics/components/unary/outlet_injector/on/layer2{ + dir = 1 + }, +/obj/structure/window/plasma/reinforced{ + dir = 1 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 1 + }, +/turf/open/floor/engine/airless, +/area/ship/engineering/engines/starboard) +"Vo" = ( +/obj/item/clothing/under/gezena/marine{ + pixel_x = -10; + pixel_y = -7 + }, +/obj/item/clothing/under/gezena/marine{ + pixel_x = -10; + pixel_y = -7 + }, +/obj/item/clothing/under/gezena/marine{ + pixel_x = -10; + pixel_y = -7 + }, +/obj/item/clothing/under/gezena/marine{ + pixel_x = -10; + pixel_y = -7 + }, +/obj/item/clothing/gloves/gezena/marine{ + pixel_y = 11 + }, +/obj/item/clothing/gloves/gezena/marine{ + pixel_y = 11 + }, +/obj/item/clothing/gloves/gezena/marine{ + pixel_y = 11 + }, +/obj/item/clothing/gloves/gezena/marine{ + pixel_y = 11 + }, +/obj/item/clothing/head/gezena/marine/flap{ + pixel_x = -10 + }, +/obj/item/clothing/head/gezena/marine/flap{ + pixel_x = -10 + }, +/obj/item/clothing/head/gezena/marine/flap{ + pixel_x = -10 + }, +/obj/item/clothing/head/gezena/marine/flap{ + pixel_x = -10 + }, +/obj/item/clothing/head/gezena/marine{ + pixel_y = 10; + pixel_x = -10 + }, +/obj/item/clothing/head/gezena/marine{ + pixel_y = 10; + pixel_x = -10 + }, +/obj/item/clothing/head/gezena/marine{ + pixel_y = 10; + pixel_x = -10 + }, +/obj/item/clothing/head/gezena/marine{ + pixel_y = 10; + pixel_x = -10 + }, +/obj/structure/closet/secure_closet{ + anchored = 1; + can_be_unanchored = 1; + icon_state = "sec"; + name = "uniforms locker"; + req_access_txt = "1" + }, +/obj/item/storage/backpack/duffelbag/sec{ + pixel_y = -13 + }, +/obj/item/storage/backpack/duffelbag/sec{ + pixel_y = -13 + }, +/obj/item/storage/backpack/duffelbag/sec{ + pixel_y = -13 + }, +/obj/item/storage/backpack/duffelbag/sec{ + pixel_y = -13 + }, +/obj/item/storage/backpack/satchel/sec{ + pixel_x = -8; + pixel_y = -17 + }, +/obj/item/storage/backpack/satchel/sec{ + pixel_x = -8; + pixel_y = -17 + }, +/obj/item/storage/backpack/satchel/sec{ + pixel_x = -8; + pixel_y = -17 + }, +/obj/item/storage/backpack/satchel/sec{ + pixel_x = -8; + pixel_y = -17 + }, +/obj/item/clothing/shoes/combat/gezena{ + pixel_x = 3; + pixel_y = 0 + }, +/obj/item/clothing/shoes/combat/gezena{ + pixel_x = 3; + pixel_y = 0 + }, +/obj/item/clothing/shoes/combat/gezena{ + pixel_x = 3; + pixel_y = 0 + }, +/obj/item/clothing/shoes/combat/gezena{ + pixel_x = 3; + pixel_y = 0 + }, +/obj/effect/turf_decal/corner/opaque/neutral/full, +/turf/open/floor/vault, +/area/ship/security/armory) +"Vp" = ( +/obj/structure/railing{ + dir = 1 + }, +/obj/effect/turf_decal/siding/wood, +/obj/effect/turf_decal/siding/wood{ + dir = 1 + }, +/obj/structure/cable{ + icon_state = "2-8" + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 10 + }, +/turf/open/floor/plasteel/sepia, +/area/ship/crew/dorm) +"Vr" = ( +/obj/structure/table/chem, +/obj/item/storage/box/syringes{ + pixel_y = 7; + pixel_x = -7 + }, +/obj/item/storage/box/beakers{ + pixel_y = 16; + pixel_x = 9 + }, +/obj/item/storage/box/bodybags{ + pixel_x = 9; + pixel_y = 8 + }, +/turf/open/floor/mineral/titanium, +/area/ship/medical) +"VB" = ( +/obj/effect/turf_decal/industrial/traffic{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/machinery/camera/autoname{ + dir = 5; + network = list("GEC"); + pixel_y = 8 + }, +/turf/open/floor/plasteel/mono, +/area/ship/hangar/starboard) +"VM" = ( +/obj/machinery/power/terminal{ + dir = 8 + }, +/obj/structure/cable, +/obj/structure/catwalk/over/plated_catwalk/dark, +/turf/open/floor/plating, +/area/ship/engineering/engines/starboard) +"VY" = ( +/obj/effect/turf_decal/corner/opaque/purple/three_quarters, +/turf/open/floor/vault, +/area/ship/security/armory) +"Wb" = ( +/obj/structure/closet/secure_closet{ + anchored = 1; + can_be_unanchored = 1; + icon_state = "warden"; + name = "sergeant's locker"; + req_access_txt = "3"; + req_access = list(3) + }, +/obj/structure/railing{ + dir = 4 + }, +/obj/effect/turf_decal/borderfloorblack{ + dir = 1 + }, +/obj/machinery/light/directional/north, +/obj/item/clothing/gloves/gezena/marine{ + pixel_y = -2; + pixel_x = 3 + }, +/obj/item/clothing/shoes/combat/gezena{ + pixel_x = 3; + pixel_y = -7 + }, +/obj/item/clothing/under/gezena/marine{ + pixel_x = -6; + pixel_y = -7 + }, +/obj/item/clothing/neck/cloak/gezena/lead{ + pixel_y = -4; + pixel_x = -12 + }, +/obj/item/clothing/head/gezena/marine/lead{ + pixel_y = 1; + pixel_x = -11 + }, +/obj/item/clothing/head/gezena/marine/lead/flap{ + pixel_y = 9; + pixel_x = -11 + }, +/obj/item/clothing/suit/armor/gezena/marinecoat{ + pixel_y = 8 + }, +/obj/item/radio/headset/pgf/alt/captain{ + pixel_y = 11; + pixel_x = 5 + }, +/obj/item/radio/headset/pgf/captain{ + pixel_x = -4; + pixel_y = 9 + }, +/obj/item/kitchen/knife/combat/survival{ + pixel_y = 0; + pixel_x = 1 + }, +/obj/item/storage/belt/military/gezena{ + pixel_y = 1 + }, +/obj/item/storage/backpack/satchel/sec{ + pixel_x = -8; + pixel_y = -17 + }, +/obj/item/storage/backpack/duffelbag/sec{ + pixel_y = -13 + }, +/obj/item/gun/energy/kalix/pistol{ + pixel_y = -9; + pixel_x = -3 + }, +/turf/open/floor/plasteel/tech, +/area/ship/crew/dorm/dormtwo) +"Wc" = ( +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/structure/catwalk/over/plated_catwalk, +/obj/machinery/button/door{ + id = "lib_engineering_shut"; + name = "Exhaust Shutters"; + dir = 8; + pixel_x = 20; + pixel_y = 1 + }, +/obj/machinery/light_switch{ + dir = 8; + pixel_x = 19; + pixel_y = 9 + }, +/turf/open/floor/plating, +/area/ship/engineering) +"Wf" = ( +/obj/effect/turf_decal/siding/wood/end{ + dir = 1 + }, +/turf/open/floor/plasteel/sepia, +/area/ship/crew/dorm) +"Wk" = ( +/obj/machinery/power/smes/shuttle/precharged{ + dir = 4 + }, +/obj/structure/cable/blue{ + icon_state = "0-8" + }, +/obj/structure/catwalk/over/plated_catwalk/dark, +/obj/machinery/door/firedoor/border_only{ + dir = 4 + }, +/obj/structure/window/plasma/reinforced{ + dir = 8 + }, +/turf/open/floor/plating, +/area/ship/engineering/engines/starboard) +"Ww" = ( +/obj/structure/window/plasma/reinforced/plastitanium, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/obj/machinery/door/poddoor/shutters{ + id = "lib_engineering_shut"; + dir = 8 + }, +/obj/structure/grille, +/obj/machinery/door/firedoor/border_only{ + dir = 8 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 4 + }, +/turf/open/floor/plating, +/area/ship/engineering) +"WH" = ( +/obj/structure/closet/secure_closet/freezer{ + name = "fridge" + }, +/obj/item/storage/ration/crayons, +/obj/item/storage/ration/vegan_chili, +/obj/item/storage/ration/vegan_chili, +/obj/item/storage/ration/beef_strips, +/obj/item/storage/ration/beef_strips, +/obj/effect/spawner/lootdrop/ration, +/obj/effect/spawner/lootdrop/ration, +/obj/effect/spawner/lootdrop/ration, +/obj/effect/spawner/lootdrop/ration, +/obj/item/storage/cans/sixbeer, +/turf/open/floor/plasteel/white, +/area/ship/crew/canteen) +"WQ" = ( +/obj/machinery/atmospherics/pipe/simple/orange/visible{ + dir = 9 + }, +/obj/machinery/atmospherics/pipe/simple/general/visible/layer2{ + dir = 5 + }, +/obj/structure/catwalk/over/plated_catwalk/dark, +/obj/structure/cable{ + icon_state = "2-8" + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/turf/open/floor/plating, +/area/ship/engineering/engines/port) +"WS" = ( +/obj/structure/cable{ + icon_state = "0-10" + }, +/obj/structure/catwalk/over/plated_catwalk/dark, +/turf/open/floor/plating/airless, +/area/ship/external/dark) +"WV" = ( +/obj/effect/turf_decal/trimline/opaque/bottlegreen/filled/line{ + dir = 4 + }, +/obj/effect/turf_decal/trimline/opaque/green/filled/corner{ + dir = 8 + }, +/obj/structure/cable{ + icon_state = "2-8" + }, +/turf/open/floor/plasteel/dark, +/area/ship/crew/canteen) +"Xb" = ( +/obj/structure/cable{ + icon_state = "2-4" + }, +/obj/structure/cable{ + icon_state = "2-8" + }, +/turf/open/floor/engine/hull, +/area/ship/external/dark) +"Xg" = ( +/obj/structure/window/reinforced/fulltile/shuttle, +/obj/structure/grille, +/obj/machinery/door/poddoor/shutters{ + id = "lib_medbay_shut" + }, +/obj/machinery/door/firedoor/border_only, +/obj/machinery/door/firedoor/border_only{ + dir = 1 + }, +/turf/open/floor/plating, +/area/ship/medical) +"Xh" = ( +/obj/docking_port/mobile{ + can_move_docking_ports = 1; + name = "liberty docking port"; + port_direction = 8; + preferred_direction = 4; + dir = 2 + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/door/poddoor{ + id = "lib_entrance_blast" + }, +/obj/machinery/door/firedoor/border_only, +/obj/machinery/door/firedoor/border_only{ + dir = 1 + }, +/turf/open/floor/plasteel/dark, +/area/ship/hallway/port) +"Xs" = ( +/obj/structure/railing{ + dir = 10 + }, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 9 + }, +/obj/effect/turf_decal/corner_steel_grid, +/turf/open/floor/plasteel/mono/dark, +/area/ship/bridge) +"Xw" = ( +/obj/effect/turf_decal/corner_steel_grid{ + dir = 10 + }, +/obj/effect/turf_decal/spline/fancy/opaque/lime, +/obj/structure/chair{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/obj/machinery/light/directional/south, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/central) +"Xz" = ( +/obj/structure/closet/secure_closet/wall{ + icon_state = "secure_wall"; + dir = 8; + pixel_x = 26 + }, +/turf/open/floor/plastic, +/area/ship/crew/toilet) +"XC" = ( +/obj/effect/turf_decal/corner/opaque/purple/border{ + dir = 1 + }, +/turf/open/floor/vault, +/area/ship/security/armory) +"XD" = ( +/turf/open/floor/plasteel/stairs{ + icon = 'icons/obj/stairs.dmi'; + dir = 4 + }, +/area/ship/crew/cryo) +"XH" = ( +/obj/effect/turf_decal/corner_steel_grid{ + dir = 5 + }, +/obj/effect/turf_decal/spline/fancy/opaque/lime{ + dir = 1 + }, +/obj/machinery/airalarm/directional/north, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/central) +"XJ" = ( +/obj/structure/railing{ + dir = 8 + }, +/obj/effect/turf_decal/spline/fancy/opaque/lime{ + dir = 10 + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/turf/open/floor/plasteel/tech, +/area/ship/crew/dorm/dormthree) +"XR" = ( +/obj/structure/sign/warning/explosives{ + pixel_y = 32 + }, +/obj/structure/barricade/wooden, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 9 + }, +/turf/open/floor/plasteel/tech, +/area/ship/construction) +"Yd" = ( +/obj/machinery/power/terminal{ + dir = 8 + }, +/obj/structure/cable{ + icon_state = "0-2" + }, +/obj/structure/catwalk/over/plated_catwalk/dark, +/turf/open/floor/plating, +/area/ship/engineering/engines/port) +"Yo" = ( +/obj/structure/chair/sofa/right{ + dir = 1 + }, +/obj/effect/turf_decal/corner/opaque/lime/mono, +/obj/item/radio/intercom/directional/south, +/turf/open/floor/plasteel/dark, +/area/ship/crew/office) +"Yu" = ( +/obj/machinery/power/apc/auto_name/directional/west, +/obj/structure/cable{ + icon_state = "0-4" + }, +/obj/effect/turf_decal/borderfloorblack, +/turf/open/floor/plasteel/dark, +/area/ship/construction) +"Yx" = ( +/obj/structure/railing, +/obj/structure/cable{ + icon_state = "0-2" + }, +/obj/machinery/power/smes/engineering{ + charge = 1e+006 + }, +/turf/open/floor/plasteel/tech/techmaint, +/area/ship/engineering) +"YA" = ( +/obj/structure/railing{ + dir = 1 + }, +/obj/structure/barricade/wooden, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 9 + }, +/turf/open/floor/plasteel/telecomms_floor, +/area/ship/construction) +"YD" = ( +/obj/effect/turf_decal/corner_steel_grid/full, +/obj/effect/turf_decal/spline/fancy/opaque/lime{ + dir = 10 + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/obj/machinery/camera/autoname{ + dir = 4 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/central) +"YG" = ( +/obj/structure/closet/crate/freezer/blood{ + pixel_x = 4 + }, +/obj/machinery/power/apc/auto_name/directional/north, +/obj/machinery/computer/helm/viewscreen/directional/west, +/obj/structure/cable{ + icon_state = "0-4" + }, +/turf/open/floor/mineral/titanium, +/area/ship/medical) +"YI" = ( +/obj/structure/cable{ + icon_state = "0-1" + }, +/obj/machinery/door/poddoor{ + id = "lib_hangar_blast" + }, +/obj/machinery/power/shieldwallgen/atmos/strong/roundstart{ + dir = 8; + id = "lib_hangar_holo" + }, +/obj/machinery/door/firedoor/border_only{ + dir = 1 + }, +/obj/machinery/door/firedoor/border_only, +/turf/open/floor/plasteel/dark, +/area/ship/hangar/starboard) +"YS" = ( +/obj/effect/turf_decal/trimline/opaque/bottlegreen/filled, +/obj/effect/turf_decal/industrial/outline/blue, +/obj/machinery/door/poddoor/shutters{ + id = "lib_gate" + }, +/obj/machinery/door/firedoor/border_only, +/obj/machinery/door/firedoor/border_only{ + dir = 1 + }, +/turf/open/floor/plasteel/tech, +/area/ship/hallway/port) +"YT" = ( +/obj/effect/turf_decal/trimline/opaque/bottlegreen/filled, +/obj/effect/turf_decal/industrial/outline/blue, +/obj/machinery/door/airlock/command{ + dir = 4; + name = "Bridge"; + req_one_access = list(20, 57, 58) + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 8 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 4 + }, +/turf/open/floor/plasteel/tech, +/area/ship/bridge) +"YY" = ( +/obj/effect/turf_decal/spline/fancy/opaque/lime{ + dir = 1 + }, +/obj/effect/turf_decal/spline/fancy/opaque/lime/corner, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer2{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/turf/open/floor/plasteel/tech, +/area/ship/crew/office) +"Zh" = ( +/obj/effect/turf_decal/spline/fancy/opaque/lime{ + dir = 1 + }, +/obj/structure/cable{ + icon_state = "2-4" + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/turf/open/floor/plasteel/dark, +/area/ship/bridge) +"Zj" = ( +/obj/effect/turf_decal/corner_steel_grid{ + dir = 5 + }, +/obj/effect/turf_decal/spline/fancy/opaque/lime{ + dir = 1 + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/structure/cable{ + icon_state = "1-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/central) +"Zn" = ( +/obj/machinery/power/apc/auto_name/directional/north, +/obj/machinery/button/door{ + id = "lib_engine_blast"; + name = "Engine Shutters"; + dir = 4; + pixel_x = -20; + pixel_y = -8 + }, +/obj/structure/cable{ + icon_state = "0-6" + }, +/turf/open/floor/plasteel/tech, +/area/ship/engineering/engines/port) +"Zw" = ( +/obj/structure/railing{ + dir = 4 + }, +/obj/effect/turf_decal/siding/wood/end{ + dir = 1 + }, +/obj/structure/cable{ + icon_state = "2-8" + }, +/turf/open/floor/plasteel/sepia, +/area/ship/crew/dorm) +"ZC" = ( +/obj/structure/table/reinforced, +/obj/item/paper_bin/bundlenatural{ + pixel_y = 7; + pixel_x = -5 + }, +/obj/item/pen/fountain{ + pixel_y = 8; + pixel_x = -5 + }, +/obj/structure/railing{ + dir = 8 + }, +/obj/effect/turf_decal/spline/fancy/opaque/lime{ + dir = 9 + }, +/obj/item/folder/white{ + pixel_x = 6; + pixel_y = 5 + }, +/obj/item/spacecash/bundle/c1000{ + pixel_y = 0; + pixel_x = -3 + }, +/turf/open/floor/plasteel/tech, +/area/ship/crew/dorm/dormthree) +"ZH" = ( +/obj/structure/closet/secure_closet/wall{ + icon_state = "cargo_wall"; + pixel_y = -28; + dir = 1; + name = "Engineering Equipment" + }, +/obj/item/storage/box/metalfoam{ + pixel_y = 12; + pixel_x = 9 + }, +/obj/item/storage/toolbox/mechanical{ + pixel_y = 12; + pixel_x = -7 + }, +/obj/item/storage/toolbox/mechanical{ + pixel_y = 10; + pixel_x = -5 + }, +/obj/item/storage/toolbox/electrical{ + pixel_y = 3; + pixel_x = -7 + }, +/obj/item/storage/toolbox/electrical{ + pixel_y = 1; + pixel_x = -5 + }, +/obj/item/weldingtool/largetank{ + pixel_x = 7 + }, +/obj/item/weldingtool/largetank{ + pixel_x = 1 + }, +/obj/item/multitool{ + pixel_y = -6; + pixel_x = -13 + }, +/obj/item/multitool{ + pixel_y = -6; + pixel_x = -8 + }, +/obj/item/holosign_creator/atmos{ + pixel_x = -2; + pixel_y = -8 + }, +/obj/item/holosign_creator/atmos{ + pixel_x = -2; + pixel_y = -11 + }, +/obj/item/holosign_creator/engineering{ + pixel_x = 9; + pixel_y = -7 + }, +/obj/item/holosign_creator/engineering{ + pixel_x = 9; + pixel_y = -11 + }, +/obj/item/geiger_counter{ + pixel_y = 10; + pixel_x = 8 + }, +/obj/item/geiger_counter{ + pixel_y = 7; + pixel_x = 8 + }, +/obj/item/pipe_dispenser, +/turf/open/floor/plasteel/tech/techmaint, +/area/ship/engineering) +"ZX" = ( +/obj/effect/turf_decal/corner_steel_grid/full{ + dir = 1 + }, +/obj/effect/turf_decal/spline/fancy/opaque/lime{ + dir = 5 + }, +/obj/machinery/light/directional/north, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer2, +/obj/machinery/camera/autoname{ + dir = 9; + network = list("GEC"); + pixel_y = 5 + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/hallway/central) +"ZY" = ( +/obj/structure/table, +/obj/item/defibrillator/loaded{ + pixel_y = 6 + }, +/obj/machinery/camera/autoname{ + dir = 6 + }, +/obj/item/radio/intercom/directional/north, +/turf/open/floor/mineral/titanium, +/area/ship/medical) + +(1,1,1) = {" +xz +xz +xz +xz +xz +xz +xz +lc +hJ +hJ +is +lc +xz +xz +TV +FN +fN +fN +TV +xz +xz +xz +xz +xz +xz +xz +"} +(2,1,1) = {" +xz +xz +xz +xz +xz +xz +lc +lc +CB +CB +UM +lc +FO +LD +TV +bB +Wk +Wk +TV +TV +xz +xz +xz +xz +xz +xz +"} +(3,1,1) = {" +xz +xz +xz +xz +xz +lc +lc +Zn +ze +Yd +KZ +lc +Dg +Ww +TV +em +VM +Pd +cs +TV +TV +xz +xz +xz +xz +xz +"} +(4,1,1) = {" +xz +xz +xz +xz +DP +lc +kR +hA +Ma +Ph +WQ +oz +Fb +RC +hM +db +qp +eY +CY +Vc +TV +sq +xz +xz +xz +xz +"} +(5,1,1) = {" +xz +xz +xz +Sp +lc +lc +hK +ys +Uw +au +Uw +lc +qZ +QI +TV +kq +Dm +kq +OS +ps +TV +TV +Sp +xz +xz +xz +"} +(6,1,1) = {" +xz +xz +xz +Fm +Fm +lc +lc +lc +lc +lc +lc +lc +jt +Kx +TV +TV +TV +TV +TV +TV +TV +At +At +xz +xz +xz +"} +(7,1,1) = {" +xz +xz +vb +Fm +Fm +Fm +vO +OA +Sz +Sz +Hn +Yx +DE +ng +Pf +QJ +zL +OT +bT +uo +Qq +gx +At +fG +xz +xz +"} +(8,1,1) = {" +xz +vb +wO +bU +le +Fm +Ar +Hf +XD +XD +Hn +hW +ha +ge +zL +BJ +zL +Vo +XC +uq +OY +cI +GW +uJ +fG +xz +"} +(9,1,1) = {" +vb +wO +oW +Zw +hg +Fm +wT +St +HR +nS +Hn +ai +sS +uX +zG +wg +zL +By +dE +ih +qI +VY +Ha +uJ +uJ +fG +"} +(10,1,1) = {" +eE +rd +Ri +UB +EJ +Fm +tL +cy +Hn +Hn +Hn +zL +zL +tK +bM +ZH +zL +vp +Ah +DD +hi +Qa +At +uJ +aR +uJ +"} +(11,1,1) = {" +eE +Wf +Hx +Hx +Du +Fm +qV +NM +sY +EF +hS +FI +MZ +Wc +gn +Ny +zL +DM +JD +DM +qB +DM +DM +Wb +Mw +uJ +"} +(12,1,1) = {" +eE +no +Sa +cQ +Vp +wm +Eg +zm +Lu +oX +bE +AZ +zL +zL +zL +zL +zL +EA +Bi +xj +yn +jM +zX +hl +eM +uJ +"} +(13,1,1) = {" +RB +Fm +Fm +ar +oM +Fm +ow +TK +TK +ow +Me +KN +HJ +YD +gh +fd +mN +lf +dB +ve +Nf +wa +DM +uJ +uJ +fG +"} +(14,1,1) = {" +xz +xz +Fm +Fm +Fm +ow +YG +zc +Vr +Xg +SU +bd +ej +Gz +DM +IN +ou +EE +Jw +bV +Fn +aw +DM +cA +xz +xz +"} +(15,1,1) = {" +xz +xz +FJ +ow +ow +mG +kc +HO +wP +AT +Et +aT +BR +CO +DM +cV +oE +oE +oE +ra +KY +AL +DM +xz +xz +xz +"} +(16,1,1) = {" +xz +xz +eR +Ps +ow +ZY +zO +RI +MC +ow +Ro +bd +PY +SB +SB +SB +SB +SB +SB +SB +SB +SB +SB +Dq +xz +xz +"} +(17,1,1) = {" +xz +xz +xz +yq +KM +KM +KM +KM +KM +KM +KM +LS +FU +SB +it +xS +xK +xK +xS +VB +xK +zz +DT +SB +CF +xz +"} +(18,1,1) = {" +xz +xz +xz +KB +KM +nm +PP +ST +Cl +ST +YS +bd +Xw +SB +bl +wK +eB +eB +eB +eB +eB +Bv +yF +TS +KB +xz +"} +(19,1,1) = {" +xz +xz +xz +KB +xg +xo +yM +be +zr +be +RZ +pF +oS +SB +DJ +eB +eB +eB +eB +eB +eB +eB +rW +qy +kB +xz +"} +(20,1,1) = {" +xz +xz +xz +Xb +Xh +LH +xe +gc +dF +Gn +KM +OQ +wZ +RX +Lp +eB +eB +eB +eB +eB +eB +eB +jd +HN +xz +xz +"} +(21,1,1) = {" +xz +xz +xz +KB +Tw +vG +Sc +vQ +lQ +lD +sF +Zj +cE +DY +nO +eB +eB +eB +eB +eB +eB +eB +jd +HN +xz +xz +"} +(22,1,1) = {" +xz +xz +Si +KB +KM +Te +EM +DR +ii +gY +KM +oC +IF +SB +QU +eB +eB +eB +eB +eB +eB +eB +jd +HN +xz +xz +"} +(23,1,1) = {" +xz +xz +xz +KB +KM +KP +KP +KP +KP +KP +KP +AS +BZ +SB +dQ +eB +eB +eB +eB +eB +eB +eB +jd +HN +xz +xz +"} +(24,1,1) = {" +xz +xz +xz +eR +Eu +KP +BX +xy +vN +If +Ep +bd +Bo +DY +qH +eB +eB +eB +eB +eB +eB +eB +jd +HN +xz +xz +"} +(25,1,1) = {" +xz +xz +xz +xz +cR +cU +gz +Kn +BB +us +Ep +bd +OR +jE +uR +eB +eB +eB +eB +eB +eB +eB +jd +HN +xz +xz +"} +(26,1,1) = {" +xz +xz +xz +xz +xz +cU +Rg +Pr +Pr +jY +Ep +bd +kp +SB +Oy +eB +eB +eB +eB +eB +eB +eB +rW +qy +Ps +xz +"} +(27,1,1) = {" +xz +xz +xz +xz +xz +cU +WV +ML +Ge +Nw +KP +AS +sJ +SB +nv +wK +eB +eB +eB +eB +eB +wK +jh +YI +KB +xz +"} +(28,1,1) = {" +xz +xz +xz +xz +xz +cU +WH +CD +Mg +Fk +KP +Pi +Ko +SB +EC +QL +Ac +Ac +kD +ny +Bq +oR +Ne +SB +du +xz +"} +(29,1,1) = {" +xz +xz +xz +xz +xz +cU +uA +CD +qm +kb +PM +MQ +AP +SB +SB +SB +SB +SB +SB +SB +SB +SB +SB +Dq +xz +xz +"} +(30,1,1) = {" +xz +xz +xz +xz +xz +KP +fZ +iA +yW +ww +KP +OQ +eb +UH +TO +Yu +uv +fV +GP +xO +TO +qX +xz +xz +xz +xz +"} +(31,1,1) = {" +xz +xz +xz +xz +xz +KP +KP +KP +KP +KP +KP +IV +iI +wl +wV +Sh +vh +mL +cY +xO +TO +xz +xz +xz +xz +xz +"} +(32,1,1) = {" +xz +xz +xz +xz +xz +Oq +pn +GD +Df +AN +Oq +XH +tb +Pu +TO +aF +bF +Gy +NF +TW +TO +xz +xz +xz +xz +xz +"} +(33,1,1) = {" +xz +xz +xz +xz +xz +Oq +kf +Oq +ft +hs +gM +TY +MI +dz +sP +It +Nj +lb +iT +TW +TO +xz +xz +xz +xz +xz +"} +(34,1,1) = {" +xz +xz +xz +xz +xz +Oq +eN +Rl +Xz +rN +Oq +ZX +Px +JY +TO +Us +XR +YA +Dw +Us +TO +xz +xz +xz +xz +xz +"} +(35,1,1) = {" +xz +xz +xz +xz +xz +RP +RP +RP +RP +RP +RP +HM +GQ +HM +HM +Us +Ic +rs +LT +Us +qX +xz +xz +xz +xz +xz +"} +(36,1,1) = {" +xz +xz +xz +xz +xz +tU +xk +UE +pW +GL +RP +RN +Nc +rj +jv +Us +sW +Us +Us +Us +xz +xz +xz +xz +xz +xz +"} +(37,1,1) = {" +xz +xz +xz +xz +xz +cR +GB +mk +ca +mP +RP +Ss +Ff +hB +Hv +Us +Ki +cZ +rX +Us +xz +xz +xz +xz +xz +xz +"} +(38,1,1) = {" +xz +xz +xz +xz +xz +xz +GB +ZC +XJ +uT +RP +Bz +YY +rM +Yo +Us +RR +Mp +kw +Us +xz +xz +xz +xz +xz +xz +"} +(39,1,1) = {" +xz +xz +xz +xz +xz +xz +GB +Jd +qC +qh +RP +uU +Nc +wu +HU +Us +Us +wL +Us +Us +Ei +xz +xz +xz +xz +xz +"} +(40,1,1) = {" +xz +xz +xz +xz +xz +xz +MF +MF +MF +Hp +MF +MF +Nc +Mu +HU +Sp +Ib +eO +Ib +Sp +Ei +xz +xz +xz +xz +xz +"} +(41,1,1) = {" +xz +xz +xz +xz +xz +xz +MF +na +to +Zh +Od +MF +YT +MF +MF +Sp +Ly +eO +Ly +Sp +Ei +xz +xz +xz +xz +xz +"} +(42,1,1) = {" +xz +xz +xz +xz +xz +xz +MF +he +Ir +zo +HH +gG +QK +ty +MF +Sp +KS +Sx +KS +Sp +Ei +xz +xz +xz +xz +xz +"} +(43,1,1) = {" +xz +xz +xz +xz +xz +xz +MF +Aq +Xs +jm +jH +Pb +MS +lZ +MF +PK +Su +Cz +Nz +iY +Mk +xz +xz +xz +xz +xz +"} +(44,1,1) = {" +xz +xz +xz +xz +xz +xz +Sd +QO +bb +wz +tQ +El +Ms +MF +MF +eO +Ly +KS +Ly +eO +Mk +xz +xz +xz +xz +xz +"} +(45,1,1) = {" +xz +xz +xz +xz +xz +xz +Eo +MF +Ig +uh +qj +Ms +CZ +xz +Mk +Bc +KS +Sp +KS +md +Mk +xz +xz +xz +xz +xz +"} +(46,1,1) = {" +xz +xz +xz +xz +xz +xz +Hb +vr +dK +Gb +Ms +CZ +xz +xz +Mk +iK +sQ +xz +WS +Uv +Mk +xz +xz +xz +xz +xz +"} +(47,1,1) = {" +xz +xz +xz +xz +xz +xz +cR +Rx +bD +bD +CZ +xz +xz +xz +Mk +Er +Mk +xz +Mk +Er +Mk +xz +xz +xz +xz +xz +"} +(48,1,1) = {" +xz +xz +xz +xz +xz +xz +xz +xz +xz +xz +xz +xz +xz +xz +Mk +eO +Mk +xz +Mk +eO +Mk +xz +xz +xz +xz +xz +"} +(49,1,1) = {" +xz +xz +xz +xz +xz +xz +xz +xz +xz +xz +xz +xz +xz +xz +Mk +Er +Mk +xz +Mk +Er +Mk +xz +xz +xz +xz +xz +"} +(50,1,1) = {" +xz +xz +xz +xz +xz +xz +xz +xz +xz +xz +xz +xz +xz +xz +Mk +To +Mk +xz +Mk +To +Mk +xz +xz +xz +xz +xz +"} +(51,1,1) = {" +xz +xz +xz +xz +xz +xz +xz +xz +xz +xz +xz +xz +xz +xz +Mk +eO +xz +xz +xz +eO +Mk +xz +xz +xz +xz +xz +"} +(52,1,1) = {" +xz +xz +xz +xz +xz +xz +xz +xz +xz +xz +xz +xz +xz +xz +xz +if +xz +xz +xz +if +xz +xz +xz +xz +xz +xz +"} diff --git a/_maps/shuttles/subshuttles/pgf_nail.dmm b/_maps/shuttles/subshuttles/pgf_nail.dmm new file mode 100644 index 000000000000..80534adfc514 --- /dev/null +++ b/_maps/shuttles/subshuttles/pgf_nail.dmm @@ -0,0 +1,519 @@ +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/obj/structure/cable{ + icon_state = "0-1" + }, +/obj/machinery/power/shieldwallgen/atmos/roundstart{ + id = "nail_holo"; + dir = 1 + }, +/obj/machinery/door/poddoor/preopen{ + dir = 8; + id = "nail_door_blast" + }, +/obj/machinery/door/firedoor/border_only{ + dir = 4 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 8 + }, +/turf/open/floor/plasteel/patterned/brushed, +/area/ship/bridge) +"b" = ( +/obj/structure/chair/comfy/shuttle{ + dir = 1 + }, +/obj/structure/railing{ + dir = 8 + }, +/obj/machinery/light/directional/south, +/turf/open/floor/plasteel/dark, +/area/ship/bridge) +"c" = ( +/turf/template_noop, +/area/template_noop) +"d" = ( +/obj/structure/window/plasma/reinforced/plastitanium, +/obj/machinery/door/poddoor/shutters{ + id = "nail_window_shut" + }, +/obj/structure/grille, +/obj/machinery/door/firedoor/border_only{ + dir = 8 + }, +/obj/machinery/door/firedoor/border_only, +/obj/structure/cable{ + icon_state = "4-8" + }, +/turf/open/floor/plating, +/area/ship/bridge) +"e" = ( +/obj/structure/railing{ + dir = 8 + }, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer2{ + dir = 1; + name = "nail supply pump" + }, +/turf/open/floor/plasteel/tech, +/area/ship/bridge) +"h" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/effect/turf_decal/etherbor/left, +/turf/open/floor/plasteel/patterned/brushed, +/area/ship/bridge) +"i" = ( +/obj/structure/railing{ + dir = 8 + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4, +/turf/open/floor/plasteel/tech, +/area/ship/bridge) +"l" = ( +/obj/structure/railing/corner, +/obj/machinery/power/smes/engineering, +/obj/structure/cable{ + icon_state = "0-4" + }, +/obj/structure/cable{ + icon_state = "0-2" + }, +/turf/open/floor/plasteel/tech, +/area/ship/bridge) +"n" = ( +/obj/structure/sign/number/random, +/turf/closed/wall/mineral/plastitanium, +/area/ship/bridge) +"o" = ( +/obj/machinery/button/shieldwallgen{ + id = "nail_holo"; + dir = 1; + pixel_x = 12; + pixel_y = -19 + }, +/obj/machinery/button/door{ + id = "nail_door_blast"; + name = "Nail Blast Doors"; + dir = 1; + pixel_y = -20; + pixel_x = 4 + }, +/obj/machinery/button/door{ + id = "nail_window_shut"; + name = "Nail Window Shutters"; + dir = 1; + pixel_y = -20; + pixel_x = -6 + }, +/obj/machinery/light_switch{ + dir = 1; + pixel_x = -13; + pixel_y = -19 + }, +/obj/structure/chair/comfy/shuttle{ + dir = 8 + }, +/turf/open/floor/plasteel/telecomms_floor, +/area/ship/bridge) +"p" = ( +/obj/structure/cable{ + icon_state = "0-2" + }, +/obj/machinery/power/shieldwallgen/atmos/roundstart{ + id = "nail_holo" + }, +/obj/machinery/door/poddoor/preopen{ + dir = 8; + id = "nail_door_blast" + }, +/obj/machinery/door/firedoor/border_only{ + dir = 4 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 8 + }, +/turf/open/floor/plasteel/patterned/brushed, +/area/ship/bridge) +"r" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/structure/cable{ + icon_state = "2-8" + }, +/obj/structure/cable{ + icon_state = "1-8" + }, +/obj/effect/turf_decal/etherbor/center, +/turf/open/floor/plasteel/patterned/brushed, +/area/ship/bridge) +"s" = ( +/turf/open/floor/plasteel/tech, +/area/ship/bridge) +"t" = ( +/turf/closed/wall/mineral/plastitanium, +/area/ship/bridge) +"u" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/effect/turf_decal/etherbor/right, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 5 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 6 + }, +/turf/open/floor/plasteel/patterned/brushed, +/area/ship/bridge) +"v" = ( +/obj/structure/chair/comfy/shuttle{ + dir = 1 + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/turf/open/floor/plasteel/dark, +/area/ship/bridge) +"w" = ( +/obj/machinery/power/terminal{ + dir = 4 + }, +/obj/structure/railing/corner{ + dir = 1 + }, +/obj/structure/cable{ + icon_state = "0-8" + }, +/obj/structure/catwalk/over/plated_catwalk/dark, +/turf/open/floor/plating, +/area/ship/bridge) +"x" = ( +/obj/structure/railing{ + dir = 4 + }, +/obj/structure/closet/emcloset/wall{ + pixel_y = 28 + }, +/turf/open/floor/plasteel/tech, +/area/ship/bridge) +"y" = ( +/obj/structure/window/plasma/reinforced/plastitanium, +/obj/machinery/door/poddoor/shutters{ + id = "nail_window_shut" + }, +/obj/structure/grille, +/obj/machinery/door/firedoor/border_only{ + dir = 4 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 1 + }, +/obj/structure/cable{ + icon_state = "1-8" + }, +/turf/open/floor/plating, +/area/ship/bridge) +"z" = ( +/obj/machinery/power/apc/auto_name/directional/north, +/obj/structure/cable{ + icon_state = "0-2" + }, +/obj/structure/catwalk/over/plated_catwalk/dark, +/turf/open/floor/plating, +/area/ship/bridge) +"A" = ( +/obj/structure/railing, +/obj/structure/cable{ + icon_state = "1-8" + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/structure/catwalk/over/plated_catwalk/dark, +/turf/open/floor/plating, +/area/ship/bridge) +"B" = ( +/obj/machinery/power/terminal{ + dir = 4 + }, +/obj/structure/railing/corner{ + dir = 8 + }, +/obj/structure/cable{ + icon_state = "0-8" + }, +/obj/structure/catwalk/over/plated_catwalk/dark, +/turf/open/floor/plating, +/area/ship/bridge) +"D" = ( +/obj/machinery/power/smes/shuttle/precharged{ + dir = 8 + }, +/obj/structure/cable/blue{ + icon_state = "0-4" + }, +/obj/structure/window/plasma/reinforced{ + dir = 4 + }, +/obj/structure/window/plasma/reinforced{ + dir = 1 + }, +/turf/open/floor/plasteel/tech, +/area/ship/bridge) +"E" = ( +/obj/structure/chair/comfy/shuttle, +/obj/structure/cable{ + icon_state = "1-2" + }, +/turf/open/floor/plasteel/dark, +/area/ship/bridge) +"G" = ( +/obj/structure/sign/number/random, +/turf/closed/wall/mineral/plastitanium/nodiagonal, +/area/ship/bridge) +"H" = ( +/obj/structure/cable{ + icon_state = "0-4" + }, +/obj/machinery/power/port_gen/pacman, +/obj/structure/catwalk/over/plated_catwalk/dark, +/obj/machinery/light/directional/west, +/obj/item/wrench, +/turf/open/floor/plating, +/area/ship/bridge) +"I" = ( +/obj/machinery/computer/helm{ + dir = 4 + }, +/obj/item/radio/intercom/wideband/directional/south, +/turf/open/floor/plasteel/telecomms_floor, +/area/ship/bridge) +"J" = ( +/obj/structure/cable{ + icon_state = "2-8" + }, +/obj/structure/cable{ + icon_state = "1-8" + }, +/obj/machinery/door/poddoor/preopen{ + dir = 8; + id = "nail_door_blast" + }, +/obj/machinery/door/firedoor/border_only{ + dir = 8 + }, +/obj/docking_port/mobile{ + dir = 8; + name = "nail dock"; + preferred_direction = 8; + port_direction = 2 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ + dir = 8 + }, +/turf/open/floor/plasteel/patterned/brushed, +/area/ship/bridge) +"L" = ( +/obj/machinery/power/smes/shuttle/precharged{ + dir = 8 + }, +/obj/structure/cable/blue{ + icon_state = "0-4" + }, +/obj/structure/window/plasma/reinforced{ + dir = 4 + }, +/obj/structure/window/plasma/reinforced, +/turf/open/floor/plasteel/tech, +/area/ship/bridge) +"M" = ( +/obj/structure/window/plasma/reinforced/plastitanium, +/obj/structure/grille, +/obj/machinery/door/firedoor/border_only{ + dir = 8 + }, +/obj/machinery/door/firedoor/border_only, +/obj/machinery/door/poddoor/shutters{ + id = "nail_window_shut" + }, +/turf/open/floor/plating, +/area/ship/bridge) +"N" = ( +/obj/machinery/atmospherics/components/binary/pump/layer2{ + dir = 8; + name = "supply pump" + }, +/obj/machinery/atmospherics/components/binary/pump/layer4{ + dir = 4; + name = "nail exhaust pump" + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/turf/open/floor/plasteel/patterned/brushed, +/area/ship/bridge) +"O" = ( +/obj/structure/railing, +/obj/structure/catwalk/over/plated_catwalk/dark, +/obj/structure/cable{ + icon_state = "2-4" + }, +/obj/structure/rack, +/turf/open/floor/plating, +/area/ship/bridge) +"R" = ( +/obj/structure/railing{ + dir = 1 + }, +/obj/structure/cable{ + icon_state = "1-4" + }, +/obj/structure/catwalk/over/plated_catwalk/dark, +/obj/structure/closet/crate, +/turf/open/floor/plating, +/area/ship/bridge) +"S" = ( +/obj/machinery/holopad/emergency, +/obj/structure/cable{ + icon_state = "4-8" + }, +/turf/open/floor/plasteel/patterned/brushed, +/area/ship/bridge) +"T" = ( +/obj/structure/cable{ + icon_state = "0-4" + }, +/obj/machinery/porta_turret/ship/weak{ + dir = 8 + }, +/turf/open/floor/engine/hull/reinforced/interior, +/area/ship/external/dark) +"U" = ( +/obj/structure/chair/comfy/shuttle, +/obj/machinery/light/directional/north, +/turf/open/floor/plasteel/dark, +/area/ship/bridge) +"V" = ( +/obj/machinery/power/shuttle/engine/electric{ + dir = 8 + }, +/obj/structure/cable/blue{ + icon_state = "0-8" + }, +/obj/machinery/door/firedoor/border_only{ + dir = 8 + }, +/turf/open/floor/plating, +/area/ship/bridge) +"W" = ( +/turf/closed/wall/mineral/plastitanium/nodiagonal, +/area/ship/bridge) +"X" = ( +/obj/structure/cable{ + icon_state = "0-8" + }, +/obj/machinery/power/terminal, +/obj/structure/catwalk/over/plated_catwalk/dark, +/obj/machinery/airalarm/directional/north, +/turf/open/floor/plating, +/area/ship/bridge) + +(1,1,1) = {" +c +W +W +t +T +c +c +"} +(2,1,1) = {" +c +W +H +W +d +c +c +"} +(3,1,1) = {" +c +W +X +l +y +M +c +"} +(4,1,1) = {" +c +W +z +A +I +W +c +"} +(5,1,1) = {" +c +W +x +S +o +W +c +"} +(6,1,1) = {" +n +W +U +h +b +W +t +"} +(7,1,1) = {" +n +O +E +r +v +R +t +"} +(8,1,1) = {" +n +B +i +u +e +w +t +"} +(9,1,1) = {" +G +D +s +N +s +L +W +"} +(10,1,1) = {" +c +V +p +J +a +V +c +"} diff --git a/code/__DEFINES/guns.dm b/code/__DEFINES/guns.dm new file mode 100644 index 000000000000..0256ed11bedd --- /dev/null +++ b/code/__DEFINES/guns.dm @@ -0,0 +1,16 @@ +//weapon manufacturers +#define MANUFACTURER_NONE null +#define MANUFACTURER_SHARPLITE "the Sharplite Defense logo" +#define MANUFACTURER_SHARPLITE_NEW "the Nanotrasen-Sharplite logo" +#define MANUFACTURER_HUNTERSPRIDE "the Hunter's Pride Arms and Ammunition logo" +#define MANUFACTURER_SOLARARMORIES "the Solarbundswaffenkammer emblem" +#define MANUFACTURER_SCARBOROUGH "the Scarborough Arms logo" +#define MANUFACTURER_EOEHOMA "the Eoehoma Firearms emblem" +#define MANUFACTURER_NANOTRASEN_OLD "an outdated Nanotrasen logo" +#define MANUFACTURER_NANOTRASEN "the Nanotrasen logo" +#define MANUFACTURER_BRAZIL "a green flag with a blue circle and a yellow diamond around it" +#define MANUFACTURER_INTEQ "an orange crest with the letters 'IRMG'" +#define MANUFACTURER_MINUTEMAN "the Lanchester City Firearms Plant logo" +#define MANUFACTURER_DONKCO "the Donk! Co. logo" +#define MANUFACTURER_PGF "the Etherbor Industries emblem" +#define MANUFACTURER_IMPORT "Lanchester Import Co." diff --git a/code/__HELPERS/_auxtools_api.dm b/code/__HELPERS/_auxtools_api.dm new file mode 100644 index 000000000000..d0e840b7d802 --- /dev/null +++ b/code/__HELPERS/_auxtools_api.dm @@ -0,0 +1,8 @@ +/proc/auxtools_stack_trace(msg) + CRASH(msg) + +/proc/enable_debugging(mode, port) + CRASH("auxtools not loaded") + +/proc/auxtools_expr_stub() + CRASH("auxtools not loaded") diff --git a/code/__HELPERS/bindings.dm b/code/__HELPERS/bindings.dm new file mode 100644 index 000000000000..c2c19136854e --- /dev/null +++ b/code/__HELPERS/bindings.dm @@ -0,0 +1,184 @@ +//THIS FILE IS AUTOMATICALLY GENERATED BY AUXMOS, PLEASE DO NOT TOUCH IT +//PROC DEFINITIONS MAY MOVE AROUND, THIS IS NORMAL + +/* This comment bypasses grep checks */ /var/__auxmos + +/proc/__detect_auxmos() + if (world.system_type == UNIX) + return __auxmos = "libauxmos" + else + return __auxmos = "auxmos" + +#define AUXMOS (__auxmos || __detect_auxmos()) + +/datum/gas_mixture/proc/__auxtools_parse_gas_string(string) + return call_ext(AUXMOS, "byond:parse_gas_string_ffi")(src, string) + +/datum/controller/subsystem/air/proc/get_max_gas_mixes() + return call_ext(AUXMOS, "byond:hook_max_gas_mixes_ffi")() + +/datum/controller/subsystem/air/proc/get_amt_gas_mixes() + return call_ext(AUXMOS, "byond:hook_amt_gas_mixes_ffi")() + +/proc/equalize_all_gases_in_list(gas_list) + return call_ext(AUXMOS, "byond:equalize_all_hook_ffi")(gas_list) + +/datum/gas_mixture/proc/get_oxidation_power(temp) + return call_ext(AUXMOS, "byond:oxidation_power_hook_ffi")(src, temp) + +/datum/gas_mixture/proc/get_fuel_amount(temp) + return call_ext(AUXMOS, "byond:fuel_amount_hook_ffi")(src, temp) + +/datum/gas_mixture/proc/equalize_with(total) + return call_ext(AUXMOS, "byond:equalize_with_hook_ffi")(src, total) + +/datum/gas_mixture/proc/transfer_ratio_to(other, ratio) + return call_ext(AUXMOS, "byond:transfer_ratio_hook_ffi")(src, other, ratio) + +/datum/gas_mixture/proc/transfer_to(other, moles) + return call_ext(AUXMOS, "byond:transfer_hook_ffi")(src, other, moles) + +/datum/gas_mixture/proc/adjust_heat(temp) + return call_ext(AUXMOS, "byond:adjust_heat_hook_ffi")(src, temp) + +/datum/gas_mixture/proc/react(holder) + return call_ext(AUXMOS, "byond:react_hook_ffi")(src, holder) + +/datum/gas_mixture/proc/compare(other) + return call_ext(AUXMOS, "byond:compare_hook_ffi")(src, other) + +/datum/gas_mixture/proc/clear() + return call_ext(AUXMOS, "byond:clear_hook_ffi")(src) + +/datum/gas_mixture/proc/mark_immutable() + return call_ext(AUXMOS, "byond:mark_immutable_hook_ffi")(src) + +/datum/gas_mixture/proc/scrub_into(into, ratio_v, gas_list) + return call_ext(AUXMOS, "byond:scrub_into_hook_ffi")(src, into, ratio_v, gas_list) + +/datum/gas_mixture/proc/get_by_flag(flag_val) + return call_ext(AUXMOS, "byond:get_by_flag_hook_ffi")(src, flag_val) + +/datum/gas_mixture/proc/__remove_by_flag(into, flag_val, amount_val) + return call_ext(AUXMOS, "byond:remove_by_flag_hook_ffi")(src, into, flag_val, amount_val) + +/datum/gas_mixture/proc/divide(num_val) + return call_ext(AUXMOS, "byond:divide_hook_ffi")(src, num_val) + +/datum/gas_mixture/proc/multiply(num_val) + return call_ext(AUXMOS, "byond:multiply_hook_ffi")(src, num_val) + +/datum/gas_mixture/proc/subtract(num_val) + return call_ext(AUXMOS, "byond:subtract_hook_ffi")(src, num_val) + +/datum/gas_mixture/proc/add(num_val) + return call_ext(AUXMOS, "byond:add_hook_ffi")(src, num_val) + +/datum/gas_mixture/proc/adjust_multi(...) + var/list/args_copy = args.Copy() + args_copy.Insert(1, src) + return call_ext(AUXMOS, "byond:adjust_multi_hook_ffi")(arglist(args_copy)) + +/datum/gas_mixture/proc/adjust_moles_temp(id_val, num_val, temp_val) + return call_ext(AUXMOS, "byond:adjust_moles_temp_hook_ffi")(src, id_val, num_val, temp_val) + +/datum/gas_mixture/proc/adjust_moles(id_val, num_val) + return call_ext(AUXMOS, "byond:adjust_moles_hook_ffi")(src, id_val, num_val) + +/datum/gas_mixture/proc/set_moles(gas_id, amt_val) + return call_ext(AUXMOS, "byond:set_moles_hook_ffi")(src, gas_id, amt_val) + +/datum/gas_mixture/proc/get_moles(gas_id) + return call_ext(AUXMOS, "byond:get_moles_hook_ffi")(src, gas_id) + +/datum/gas_mixture/proc/set_volume(vol_arg) + return call_ext(AUXMOS, "byond:set_volume_hook_ffi")(src, vol_arg) + +/datum/gas_mixture/proc/partial_heat_capacity(gas_id) + return call_ext(AUXMOS, "byond:partial_heat_capacity_ffi")(src, gas_id) + +/datum/gas_mixture/proc/set_temperature(arg_temp) + return call_ext(AUXMOS, "byond:set_temperature_hook_ffi")(src, arg_temp) + +/datum/gas_mixture/proc/get_gases() + return call_ext(AUXMOS, "byond:get_gases_hook_ffi")(src) + +/datum/gas_mixture/proc/temperature_share(...) + var/list/args_copy = args.Copy() + args_copy.Insert(1, src) + return call_ext(AUXMOS, "byond:temperature_share_hook_ffi")(arglist(args_copy)) + +/datum/gas_mixture/proc/copy_from(giver) + return call_ext(AUXMOS, "byond:copy_from_hook_ffi")(src, giver) + +/datum/gas_mixture/proc/__remove(into, amount_arg) + return call_ext(AUXMOS, "byond:remove_hook_ffi")(src, into, amount_arg) + +/datum/gas_mixture/proc/__remove_ratio(into, ratio_arg) + return call_ext(AUXMOS, "byond:remove_ratio_hook_ffi")(src, into, ratio_arg) + +/datum/gas_mixture/proc/merge(giver) + return call_ext(AUXMOS, "byond:merge_hook_ffi")(src, giver) + +/datum/gas_mixture/proc/thermal_energy() + return call_ext(AUXMOS, "byond:thermal_energy_hook_ffi")(src) + +/datum/gas_mixture/proc/return_volume() + return call_ext(AUXMOS, "byond:return_volume_hook_ffi")(src) + +/datum/gas_mixture/proc/return_temperature() + return call_ext(AUXMOS, "byond:return_temperature_hook_ffi")(src) + +/datum/gas_mixture/proc/return_pressure() + return call_ext(AUXMOS, "byond:return_pressure_hook_ffi")(src) + +/datum/gas_mixture/proc/total_moles() + return call_ext(AUXMOS, "byond:total_moles_hook_ffi")(src) + +/datum/gas_mixture/proc/set_min_heat_capacity(arg_min) + return call_ext(AUXMOS, "byond:min_heat_cap_hook_ffi")(src, arg_min) + +/datum/gas_mixture/proc/heat_capacity() + return call_ext(AUXMOS, "byond:heat_cap_hook_ffi")(src) + +/datum/gas_mixture/proc/__gasmixture_unregister() + return call_ext(AUXMOS, "byond:unregister_gasmixture_hook_ffi")(src) + +/datum/gas_mixture/proc/__gasmixture_register() + return call_ext(AUXMOS, "byond:register_gasmixture_hook_ffi")(src) + +/proc/process_atmos_callbacks(remaining) + return call_ext(AUXMOS, "byond:atmos_callback_handle_ffi")(remaining) + +/turf/proc/__update_auxtools_turf_adjacency_info() + return call_ext(AUXMOS, "byond:hook_infos_ffi")(src) + +/turf/proc/update_air_ref(flag) + return call_ext(AUXMOS, "byond:hook_register_turf_ffi")(src, flag) + +/datum/controller/subsystem/air/proc/process_turf_equalize_auxtools(remaining) + return call_ext(AUXMOS, "byond:equalize_hook_ffi")(src, remaining) + +/datum/controller/subsystem/air/proc/process_excited_groups_auxtools(remaining) + return call_ext(AUXMOS, "byond:groups_hook_ffi")(src, remaining) + +/datum/controller/subsystem/air/proc/process_turfs_auxtools(remaining) + return call_ext(AUXMOS, "byond:process_turf_hook_ffi")(src, remaining) + +/datum/controller/subsystem/air/proc/finish_turf_processing_auxtools(time_remaining) + return call_ext(AUXMOS, "byond:finish_process_turfs_ffi")(time_remaining) + +/datum/controller/subsystem/air/proc/thread_running() + return call_ext(AUXMOS, "byond:thread_running_hook_ffi")() + +/proc/finalize_gas_refs() + return call_ext(AUXMOS, "byond:finalize_gas_refs_ffi")() + +/datum/controller/subsystem/air/proc/auxtools_update_reactions() + return call_ext(AUXMOS, "byond:update_reactions_ffi")() + +/proc/auxtools_atmos_init(gas_data) + return call_ext(AUXMOS, "byond:hook_init_ffi")(gas_data) + +/proc/_auxtools_register_gas(gas) + return call_ext(AUXMOS, "byond:hook_register_gas_ffi")(gas) diff --git a/code/datums/wires/mines.dm b/code/datums/wires/mines.dm new file mode 100644 index 000000000000..4c856cf99d3f --- /dev/null +++ b/code/datums/wires/mines.dm @@ -0,0 +1,82 @@ +/datum/wires/mine + holder_type = /obj/item/mine/pressure + randomize = TRUE + +/datum/wires/mine/New(atom/holder) + wires = list( + WIRE_BOOM, WIRE_DELAYBOOM, WIRE_PIN, WIRE_RESET + ) + ..() + +/datum/wires/mine/interactable(mob/user) + var/obj/item/mine/pressure/ourmine = holder + if(ourmine.open_panel) + return TRUE + +//are you feelin lucky, punk? +/datum/wires/mine/on_pulse(wire) + var/obj/item/mine/pressure/ourmine = holder + switch(wire) + if(WIRE_BOOM)//oopsies + holder.visible_message(span_userdanger("[icon2html(ourmine, viewers(holder))] \The [ourmine] makes a shrill noise! It's go-")) + ourmine.trigger_mine() + if(WIRE_DELAYBOOM)//oopsies but you get to run + ourmine.blast_delay = clamp(ourmine.blast_delay * 5, 8, 50) + holder.visible_message(span_userdanger("[icon2html(ourmine, viewers(holder))] \The [ourmine] makes a shrill noise! It's go-")) + ourmine.trigger_mine() + //Resets the detonation pin, allowing someone to step off the mine. Minor success. + if(WIRE_PIN) + if(ourmine.clicked == TRUE) + holder.visible_message(span_notice("[icon2html(ourmine, viewers(holder))] You hear something inside \the [ourmine] click softly.")) + playsound(ourmine, 'sound/weapons/empty.ogg', 30, TRUE) + ourmine.clicked = FALSE + else + holder.visible_message(span_notice("[icon2html(ourmine, viewers(holder))] \The [ourmine]'s detonation pad shifts slightly. Nothing happens.")) + if(WIRE_RESET)//Disarms the mine, allowing it to be picked up. Major success. + if(ourmine.armed && ourmine.anchored) + holder.visible_message(span_notice("[icon2html(ourmine, viewers(holder))] \The [ourmine]'s arming lights fade, and the securing bolts loosen. ")) + playsound(ourmine, 'sound/machines/click.ogg', 100, TRUE) + ourmine.disarm() + else if(ourmine.anchored) + holder.visible_message(span_notice("[icon2html(ourmine, viewers(holder))] \The [ourmine]'s yellow arming light flickers.")) + else + holder.visible_message(span_notice("[icon2html(ourmine, viewers(holder))] \The [ourmine]'s securing bolt shifts. Nothing happens.")) + +/datum/wires/mine/on_cut(wire, mend) + var/obj/item/mine/pressure/ourmine = holder + switch(wire) + if(WIRE_BOOM) + if(!mend) + holder.visible_message(span_userdanger("[icon2html(ourmine, viewers(holder))] \The [ourmine] makes a shrill noise! It's go-")) + ourmine.trigger_mine() + if(WIRE_DELAYBOOM) + if(!mend) + ourmine.blast_delay = clamp(ourmine.blast_delay * 5, 8, 50) + holder.visible_message(span_userdanger("[icon2html(ourmine, viewers(holder))] \The [ourmine] makes a shrill noise! It's go-")) + ourmine.trigger_mine() + //Disables the detonation pin. Nothing will happen when the mine is triggered. + //Mine can still be exploded by cutting wires & damage. + if(WIRE_PIN) + if(!mend) + ourmine.dud = TRUE + if(ourmine.clicked == TRUE) + holder.visible_message(span_notice("[icon2html(ourmine, viewers(holder))] You hear something inside \the [ourmine] shift out of place.")) + playsound(ourmine, 'sound/weapons/empty.ogg', 30, TRUE) + ourmine.clicked = FALSE + else + holder.visible_message(span_notice("[icon2html(ourmine, viewers(holder))] \The [ourmine]'s detonation pad goes loose.")) + ourmine.foot_on_mine = null + else + ourmine.dud = FALSE + ourmine.clicked = FALSE + holder.visible_message(span_notice("[icon2html(ourmine, viewers(holder))] You hear something inside \the [ourmine] shift back into place.")) + if(WIRE_RESET) + if(!mend) + if(ourmine.armed && ourmine.anchored) + holder.visible_message(span_notice("[icon2html(ourmine, viewers(holder))] \The [ourmine]'s arming lights fade, and the securing bolts loosen. Disarmed. ")) + playsound(ourmine, 'sound/machines/click.ogg', 100, TRUE) + ourmine.disarm() + else if(ourmine.anchored) + holder.visible_message(span_notice("[icon2html(ourmine, viewers(holder))] \The [ourmine]'s yellow arming light flickers.")) + else + holder.visible_message(span_notice("[icon2html(ourmine, viewers(holder))] \The [ourmine]'s securing bolt shifts. Nothing happens.")) diff --git a/code/game/MapData/shuttles/pgf_crying_sun.dm b/code/game/MapData/shuttles/pgf_crying_sun.dm new file mode 100644 index 000000000000..6df40aa0efdd --- /dev/null +++ b/code/game/MapData/shuttles/pgf_crying_sun.dm @@ -0,0 +1,43 @@ +/obj/item/book/manual/mount + name = "The UCWLWM" + desc = "It's looks old and worn out." + icon_state = "book3" + author = "Welds-the-Steel" + title = "The Universal Colossal Warship Linear Weapon Mount" + dat = {" + + + + +
+

Copy No. 5441

+
+ +

Pan-Gezenan Federation

+

Universal Battleship Linear Weapon Mounts

+

Etherbor Lihmona Shipyards

+
+
+

The Universal Colossal Battleship Linear Weapon Mount or simply "Universal Linear Mount" (USM), is a linear rail system that can be commonly found in many ships created in the Etherbor Lihmona Shipyards. Attachment of a weapon to a Universal Linear Mount requires the use of a Linear Mount Tool Facility. An engineering marvel are the massive machines at these facilities that effortlessly handle these systems on a regular basis. Most shipyards dealing in Kalixcian Colossal Arms will also have such a facility to install the weapons.

+ +

The installation of weapons into a Universal Linear Mount is rather simplistic. A weapon must first be delivered to the Linear Mount Tool Facility, where it will be manually loaded onto the SMT's massive cargo lift. The SMT is then extended out around the weapon, and the weapon is then secured into the SMT with engaging locks. The next step is to bring the ship into the facility, placed just in line with the SMT. The weapon is then lined up with the Universal Linear Mount and slotted into place. The USM's hardware locks are then engaged, the weapon is welded to the USM, and electronic systems are hooked into the ship's computer systems. The weapons are then hooked into an independent power bank to prevent overdraw from main ship power banks, and prevent explosive backsurge.

+ +

Common Colossal Battleship Weapons compatible with the Universal Linear Mount include the following:

+ +

HORUS Colossal Energy Cannon

+ + A massive laser cannon capable of variable strength, and sustained fire up to 10 seconds. One of the highest power draws of all colossal warship guns. Multiple independent power banks are required to fire this gun, with the lowest power setting drawing 4MW/s, and the highest drawing 16MW/s. + +

SUPERNOVA High-Performance Giant Rail Cannon

+ + While not as powerful as the QUASAR SMITER Colossal Rail Cannon, this gun is one of the most commonly produced at the Lihmona Shipyards. Fires a 9/5ths meter "Huge Slug" ordinance, accelerated by 1MW draw pair of electromagnetic accelerators. + +

Massive Ordinance Missile Array (B.O.M.B)

+ + A popular choice amongst bomber ships, the "Massive Ordinance Missile Array" or "M.O.M.A" for short, is a rapid fire missile array chain launcher. Capable of firing up to 4 missiles per second, these weapons often find their homes on ships with exceedingly large cargo bays built for holding large hoards of heavy ordinance. + +

QUASAR SMITER Colossal Rail Cannon

+ + The largest gun ever produced by the Lihmona Shipyards, the QUASAR SMITER is a truly terrifying tool of destruction. A gun requiring 3 Universal Linear Mounts to hold, this gun finds its place only on the largest ships in the PGFN and PGFMC. This gun fires 18/5ths meter gigantic "DEMON SLUG"s at a rate of approximately 1 shot every 5 minutes. The power draw of such a massive weapon sings to the tun of 50MW of power per round. + + "} diff --git a/code/game/machinery/shuttle/turbine.dm b/code/game/machinery/shuttle/turbine.dm new file mode 100644 index 000000000000..7d310d37cd30 --- /dev/null +++ b/code/game/machinery/shuttle/turbine.dm @@ -0,0 +1,436 @@ +// TURBINE v2 AKA rev4407 Engine reborn! + +// How to use it? - Mappers +// +// This is a very good power generating mechanism. All you need is a blast furnace with soaring flames and output. +// Not everything is included yet so the turbine can run out of fuel quiet quickly. The best thing about the turbine is that even +// though something is on fire that passes through it, it won't be on fire as it passes out of it. So the exhaust fumes can still +// containt unreacted fuel - plasma and oxygen that needs to be filtered out and re-routed back. This of course requires smart piping +// For a computer to work with the turbine the compressor requires a comp_id matching with the turbine computer's id. This will be +// subjected to a change in the near future mind you. Right now this method of generating power is a good backup but don't expect it +// become a main power source unless some work is done. Have fun. At 50k RPM it generates 60k power. So more than one turbine is needed! +// +// - Numbers +// +// Example setup S - sparker +// B - Blast doors into space for venting +// *BBB****BBB* C - Compressor +// S CT * T - Turbine +// * ^ * * V * D - Doors with firedoor +// **|***D**|** ^ - Fuel feed (Not vent, but a gas outlet) +// | | V - Suction vent (Like the ones in atmos +// + + +/obj/machinery/power/compressor + name = "compressor" + desc = "The compressor stage of a gas turbine generator." + icon = 'icons/obj/atmospherics/components/turbine.dmi' + icon_state = "compressor" + density = TRUE + resistance_flags = FIRE_PROOF + CanAtmosPass = ATMOS_PASS_DENSITY + use_power = NO_POWER_USE // powered by gas flow + interacts_with_air = TRUE + circuit = /obj/item/circuitboard/machine/power_compressor + var/obj/machinery/power/shuttle/engine/turbine/turbine + var/datum/gas_mixture/gas_contained + var/starter = 0 + var/rpm = 0 + var/rpmtarget = 0 + var/capacity = 1e6 + var/comp_id = 0 + var/efficiency = 1 + var/intake_ratio = 0.1 // might add a way to adjust this in-game later + +/obj/machinery/power/shuttle/engine/turbine/lavaland + destroy_output = TRUE + +/obj/machinery/power/compressor/Destroy() + SSair.stop_processing_machine(src) + if (turbine && turbine.compressor == src) + turbine.compressor = null + if(isopenturf(loc)) + loc.assume_air(gas_contained) + loc.air_update_turf() + turbine = null + return ..() + +/obj/machinery/power/shuttle/engine/turbine + name = "gas turbine generator" + desc = "A gas turbine used for backup power generation." + icon = 'icons/obj/atmospherics/components/turbine.dmi' + icon_state = "turbine" + density = TRUE + resistance_flags = FIRE_PROOF + CanAtmosPass = ATMOS_PASS_DENSITY + use_power = NO_POWER_USE // powered by gas flow + interacts_with_air = TRUE + circuit = /obj/item/circuitboard/machine/power_turbine + thrust = 0 // no thrust by default + icon_state_closed = "turbine" + icon_state_open = "turbine" + icon_state_off = "turbine" + var/opened = 0 + var/obj/machinery/power/compressor/compressor + var/lastgen = 0 + var/productivity = 1 + var/destroy_output = FALSE //Destroy the output gas instead of actually outputting it. Used on lavaland to prevent cooking the zlevel + +/obj/machinery/power/shuttle/engine/turbine/Destroy() + SSair.stop_processing_machine(src) + if (compressor && compressor.turbine == src) + compressor.turbine = null + compressor = null + return ..() + +// the inlet stage of the gas turbine electricity generator + +/obj/machinery/power/compressor/Initialize(mapload) + . = ..() + // The inlet of the compressor is the direction it faces + gas_contained = new + SSair.start_processing_machine(src, mapload) + locate_machinery() + if(!turbine) + obj_break() + return INITIALIZE_HINT_LATELOAD + +/obj/machinery/power/compressor/LateInitialize() + . = ..() + var/turf/comp_turf = get_turf(src) + comp_turf.ImmediateCalculateAdjacentTurfs() // turbine blocks atmos so update the turf it's on or stuff breaks + +#define COMPFRICTION 5e5 + +/obj/machinery/power/compressor/locate_machinery() + if(turbine) + return + turbine = locate() in get_step(src, turn(dir, 180)) + if(turbine) + set_machine_stat(machine_stat & ~BROKEN) + turbine.locate_machinery() + else + turbine = null + obj_break() + +/obj/machinery/power/compressor/RefreshParts() + var/E = 0 + for(var/obj/item/stock_parts/manipulator/M in component_parts) + E += M.rating + efficiency = max(E / 6, 1) + +/obj/machinery/power/compressor/examine(mob/user) + . = ..() + if(in_range(user, src) || isobserver(user)) + . += "The status display reads: Efficiency at [efficiency*100]%." + +/obj/machinery/power/compressor/attackby(obj/item/I, mob/user, params) + if(default_deconstruction_screwdriver(user, initial(icon_state), initial(icon_state), I)) + return + + if(default_change_direction_wrench(user, I)) + if(turbine) + to_chat(user, "Turbine connected.") + set_machine_stat(machine_stat & ~BROKEN) + else + to_chat(user, "Turbine not connected.") + return + + default_deconstruction_crowbar(I) + +/obj/machinery/power/compressor/default_deconstruction_screwdriver(mob/user, icon_state_open, icon_state_closed, obj/item/I) + . = ..() + if(panel_open) + set_machine_stat(machine_stat | MAINT) + else + set_machine_stat(machine_stat & ~MAINT) + +//update when moved or changing direction +/obj/machinery/power/compressor/setDir(newdir) + . = ..() + locate_machinery() + +/obj/machinery/power/compressor/Move(atom/newloc, direct, glide_size_override) + . = ..() + locate_machinery() + +/obj/machinery/power/compressor/process(delta_time) + return + +/obj/machinery/power/compressor/process_atmos(delta_time) + // RPM function to include compression friction - be advised that too low/high of a compfriction value can make things screwy + rpm -= 1 + rpm = (0.9 * rpm) + (0.1 * rpmtarget) + rpm = min(rpm, (COMPFRICTION*efficiency)/2) + rpm = max(0, rpm - (rpm**2)/(COMPFRICTION*efficiency)) + + update_overlays() + + if(!turbine || (turbine.machine_stat & BROKEN)) + locate_machinery() // try to find the other part if we somehow got disconnected + + if((machine_stat & (BROKEN|MAINT)) || !starter) // if we didn't find it... + rpmtarget = 0 + return + + var/turf/inturf = get_step(src, dir) + var/datum/gas_mixture/environment = inturf.return_air() + var/external_pressure = environment.return_pressure() + var/pressure_delta = external_pressure - gas_contained.return_pressure() + + // Equalize the gas between the environment and the internal gas mix + if(pressure_delta > 0) + var/datum/gas_mixture/removed = environment.remove_ratio((1 - ((1 - intake_ratio)**delta_time)) * pressure_delta / (external_pressure * 2)) // silly math to keep it consistent with delta_time + gas_contained.merge(removed) + inturf.air_update_turf() + +/obj/machinery/power/compressor/update_overlays() + . = ..() + if(rpm>50000) + add_overlay(mutable_appearance(icon, "comp-o4", FLY_LAYER)) + else if(rpm>10000) + add_overlay(mutable_appearance(icon, "comp-o3", FLY_LAYER)) + else if(rpm>2000) + add_overlay(mutable_appearance(icon, "comp-o2", FLY_LAYER)) + else if(rpm>500) + add_overlay(mutable_appearance(icon, "comp-o1", FLY_LAYER)) + +// These are crucial to working of a turbine - the stats modify the power output. TurbGenQ modifies how much raw energy can you get from +// rpms, TurbGenG modifies the shape of the curve - the lower the value the less straight the curve is. + +#define TURBGENQ 100000 +#define TURBGENG 0.5 +#define POWER_TO_THRUST 0.001 // power production to thrust ratio + +/obj/machinery/power/shuttle/engine/turbine/Initialize(mapload) + . = ..() + SSair.start_processing_machine(src, mapload) + locate_machinery() + if(!compressor) + obj_break() + connect_to_network() + return INITIALIZE_HINT_LATELOAD + +/obj/machinery/power/shuttle/engine/turbine/LateInitialize() + . = ..() + var/turf/comp_turf = get_turf(src) + comp_turf.ImmediateCalculateAdjacentTurfs() // turbine blocks atmos so update the turf it's on or stuff breaks + +/obj/machinery/power/shuttle/engine/turbine/RefreshParts() + var/P = 0 + for(var/obj/item/stock_parts/capacitor/C in component_parts) + P += C.rating + productivity = P / 6 + +/obj/machinery/power/shuttle/engine/turbine/examine(mob/user) + . = ..() + if(in_range(user, src) || isobserver(user)) + . += "The status display reads: Productivity at [productivity*100]%." + +/obj/machinery/power/shuttle/engine/turbine/locate_machinery() + if(compressor) + return + compressor = locate() in get_step(src, turn(dir, 180)) + if(compressor) + set_machine_stat(machine_stat & ~BROKEN) + compressor.locate_machinery() + else + compressor = null + obj_break() + +/obj/machinery/power/shuttle/engine/turbine/process(delta_time) + add_avail(lastgen) // add power in process() so it doesn't update power output separately from the rest of the powernet (bad) + update_overlays() + +/obj/machinery/power/shuttle/engine/turbine/process_atmos(delta_time) + if(!compressor) + set_machine_stat(BROKEN) + locate_machinery() // try to find the missing piece + + if(machine_stat & (BROKEN|MAINT)) // we're only running half a turbine, don't continue + return + + // This is the power generation function. If anything is needed it's good to plot it in EXCEL before modifying + // the TURBGENQ and TURBGENG values + + lastgen = ((compressor.rpm / TURBGENQ)**TURBGENG) * TURBGENQ * productivity + thrust = lastgen * POWER_TO_THRUST // second law + + var/turf/outturf = get_step(src, dir) + if(!LAZYLEN(outturf.atmos_adjacent_turfs)) + compressor.rpmtarget = 0 + return + + // Move gas from the compressor to the outlet + var/datum/gas_mixture/environment = outturf.return_air() + var/internal_pressure = compressor.gas_contained.return_pressure() + var/pressure_delta = internal_pressure - environment.return_pressure() + + // Now set the compressor's RPM target based on how much gas is flowing through + compressor.rpmtarget = max(0, pressure_delta * compressor.gas_contained.return_volume() / (R_IDEAL_GAS_EQUATION * 4)) + + // Equalize the gas between the internal gas mix and the environment + if(pressure_delta > 0) + var/datum/gas_mixture/removed = compressor.gas_contained.remove_ratio(pressure_delta / (internal_pressure * 2)) + if(destroy_output) + qdel(removed) + return + outturf.assume_air(removed) + outturf.air_update_turf() + +// Return the current thrust amount +/obj/machinery/power/shuttle/engine/turbine/burn_engine(percentage, deltatime) + return thrust * deltatime * (percentage / 100) + +// Return the current power output +/obj/machinery/power/shuttle/engine/turbine/return_fuel() + return lastgen + +// Return the maximum power output +/obj/machinery/power/shuttle/engine/turbine/return_fuel_cap() + return ((COMPFRICTION*(compressor ? compressor.efficiency : 1) / (TURBGENQ*4))**TURBGENG) * TURBGENQ * productivity + +// Return the maximum power output +/obj/machinery/power/shuttle/engine/turbine/update_engine() + if(!(flags_1 & INITIALIZED_1)) + return FALSE + thruster_active = !panel_open && compressor + return thruster_active + +// If it works, put an overlay that it works! +/obj/machinery/power/shuttle/engine/turbine/update_overlays() + . = ..() + if(lastgen > 100) + add_overlay(mutable_appearance(icon, "turb-o", FLY_LAYER)) + +/obj/machinery/power/shuttle/engine/turbine/attackby(obj/item/I, mob/user, params) + if(default_deconstruction_screwdriver(user, initial(icon_state), initial(icon_state), I)) + return + + if(default_change_direction_wrench(user, I)) + if(compressor) + to_chat(user, "Compressor connected.") + else + to_chat(user, "Compressor not connected.") + obj_break() + return + + default_deconstruction_crowbar(I) + +/obj/machinery/power/shuttle/engine/turbine/default_deconstruction_screwdriver(mob/user, icon_state_open, icon_state_closed, obj/item/I) + . = ..() + if(panel_open) + set_machine_stat(machine_stat | MAINT) + else + set_machine_stat(machine_stat & ~MAINT) + +// update if it moves or changes direction +/obj/machinery/power/shuttle/engine/turbine/setDir(newdir) + . = ..() + locate_machinery() + +/obj/machinery/power/shuttle/engine/turbine/Move(atom/newloc, direct, glide_size_override) + . = ..() + locate_machinery() + +/obj/machinery/power/shuttle/engine/turbine/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) + if(!ui) + ui = new(user, src, "TurbineComputer", name) + ui.open() + +/obj/machinery/power/shuttle/engine/turbine/ui_data(mob/user) + var/list/data = list() + data["compressor"] = compressor ? TRUE : FALSE + data["compressor_broke"] = (!compressor || (compressor.machine_stat & (BROKEN|MAINT))) ? TRUE : FALSE + data["turbine"] = compressor?.turbine ? TRUE : FALSE + data["turbine_broke"] = (!compressor || !compressor.turbine || (compressor.turbine.machine_stat & (BROKEN|MAINT))) ? TRUE : FALSE + data["online"] = compressor?.starter + data["power"] = DisplayPower(compressor?.turbine?.lastgen) + data["rpm"] = compressor?.rpm + data["temp"] = compressor?.gas_contained.return_temperature() + data["pressure"] = compressor?.gas_contained.return_pressure() + return data + +/obj/machinery/power/shuttle/engine/turbine/ui_act(action, params) + . = ..() + if(.) + return + + switch(action) + if("toggle_power") + if(compressor && compressor.turbine) + compressor.starter = !compressor.starter + . = TRUE + if("reconnect") + locate_machinery() + . = TRUE + +///////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +///////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + +// COMPUTER NEEDS A SERIOUS REWRITE. + +/obj/machinery/computer/turbine_computer + name = "gas turbine control computer" + desc = "A computer to remotely control a gas turbine." + icon_screen = "turbinecomp" + icon_keyboard = "tech_key" + circuit = /obj/item/circuitboard/computer/turbine_computer + var/obj/machinery/power/compressor/compressor + var/id = 0 + +/obj/machinery/computer/turbine_computer/Initialize() + . = ..() + return INITIALIZE_HINT_LATELOAD + +/obj/machinery/computer/turbine_computer/LateInitialize() + locate_machinery() + +/obj/machinery/computer/turbine_computer/locate_machinery() + if(id) + for(var/obj/machinery/power/compressor/C in SSair.atmos_air_machinery) + if(C.comp_id == id) + compressor = C + return + else + compressor = locate(/obj/machinery/power/compressor) in range(7, src) + +/obj/machinery/computer/turbine_computer/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) + if(!ui) + ui = new(user, src, "TurbineComputer", name) + ui.open() + +/obj/machinery/computer/turbine_computer/ui_data(mob/user) + var/list/data = list() + data["compressor"] = compressor ? TRUE : FALSE + data["compressor_broke"] = (!compressor || (compressor.machine_stat & (BROKEN|MAINT))) ? TRUE : FALSE + data["turbine"] = compressor?.turbine ? TRUE : FALSE + data["turbine_broke"] = (!compressor || !compressor.turbine || (compressor.turbine.machine_stat & (BROKEN|MAINT))) ? TRUE : FALSE + data["online"] = compressor?.starter + data["power"] = DisplayPower(compressor?.turbine?.lastgen) + data["rpm"] = compressor?.rpm + data["temp"] = compressor?.gas_contained.return_temperature() + data["pressure"] = compressor?.gas_contained.return_pressure() + return data + +/obj/machinery/computer/turbine_computer/ui_act(action, params) + . = ..() + if(.) + return + + switch(action) + if("toggle_power") + if(compressor && compressor.turbine) + compressor.starter = !compressor.starter + . = TRUE + if("reconnect") + locate_machinery() + . = TRUE + +#undef POWER_TO_THRUST +#undef COMPFRICTION +#undef TURBGENQ +#undef TURBGENG diff --git a/code/game/objects/items/devices/mines.dm b/code/game/objects/items/devices/mines.dm new file mode 100644 index 000000000000..112e26e1303b --- /dev/null +++ b/code/game/objects/items/devices/mines.dm @@ -0,0 +1,708 @@ + +/obj/item/mine + name = "mine" + desc = "An anti-personnel mine. This one explodes into nothing and does nothing. Why can you see this? You should't be able to see this. Stop looking at this." + icon = 'icons/obj/landmine.dmi' + w_class = WEIGHT_CLASS_SMALL + throw_speed = 3 + throw_range = 5 + lefthand_file = 'icons/mob/inhands/misc/devices_lefthand.dmi' + righthand_file = 'icons/mob/inhands/misc/devices_righthand.dmi' + icon_state = "mine" + item_state = "assembly"//when we get custom sprites replace this. please + base_icon_state = "mine" + + /// Is our mine live? + var/armed = FALSE + /// Is our mine currently exploding? + var/triggered = FALSE + + /// Sets a delay for mines going live after being planted + var/arm_delay = 5 SECONDS + /// Use to set a delay after activation to trigger the explosion. + var/blast_delay = 1 DECISECONDS + + var/manufacturer = MANUFACTURER_NONE + + +/obj/item/mine/Initialize(mapload) + . = ..() + if(armed) + now_armed() + + +/obj/item/mine/examine(mob/user) + . = ..() + if(!armed) + . += span_info("It appears to be inactive...") + else + . += span_info("It looks ready to explode.") + + if(manufacturer) + . += span_notice("It has [manufacturer] engraved on it.") + +/obj/item/mine/update_icon_state() + . = ..() + icon_state = "[base_icon_state][triggered ? "_exploding" : null][!armed && anchored ? "_arming" : null][armed && anchored && !triggered ? "_armed" : null]" + +//mines have a small chance to be triggered by damage, but they take longer to explode +/obj/item/mine/take_damage(damage_amount, damage_type, damage_flag, sound_effect, attack_dir) + . = ..() + if(prob(35) & obj_integrity > 0) + blast_delay = blast_delay * 2 + trigger_mine() + +//insert your horrible fate here +/obj/item/mine/proc/mine_effect(mob/victim) + return + +//handles controlled deactivation +/obj/item/mine/proc/disarm() + if(triggered) //no turning back now + return + anchored = FALSE + armed = FALSE + update_appearance(UPDATE_ICON_STATE) + return + +//using an unarmed mine inhand deploys it. +/obj/item/mine/attack_self(mob/user) + if(!armed) + user.visible_message(span_danger("[user] deploys the [src]."), span_notice("You deploy the [src].")) + + user.dropItemToGround(src) + anchored = TRUE + playsound(src, 'sound/machines/click.ogg', 60, TRUE) + + if(arm_delay) + armed = FALSE + update_appearance(UPDATE_ICON_STATE) + addtimer(CALLBACK(src, PROC_REF(now_armed)), arm_delay) + else + armed = TRUE + message_admins("[key_name(user)] has placed \a [src] at ([x],[y],[z]).") + +//let them know the mine's done cooking +/obj/item/mine/proc/now_armed() + armed = TRUE + update_appearance(UPDATE_ICON_STATE) + playsound(src, 'sound/machines/nuke/angry_beep.ogg', 55, FALSE, 1) + visible_message("\The [src] beeps softly, indicating it is now active.", vision_distance = COMBAT_MESSAGE_RANGE) + +/// Can this mine trigger on the passed movable? +/obj/item/mine/proc/can_trigger(atom/movable/on_who) + //var/badtype = typecacheof(list(/obj/effect, /obj/item/mine)) + if(triggered || !isturf(loc) || !armed || iseffect(on_who) || istype(on_who, /obj/item/mine)) + return FALSE + //if(on_who == badtype)//no recursive self triggering. Bad landmine + // return FALSE + return TRUE + +/// When something sets off a mine +/obj/item/mine/proc/trigger_mine(atom/movable/triggerer) + if(obj_integrity <= 0) + return + if(triggered) //too busy detonating to detonate again + return + if(triggerer) + triggerer.visible_message(span_danger("[icon2html(src, viewers(src))] [triggerer] sets off \the [src]. It's gonna blow!"), span_danger("[icon2html(src, viewers(src))] \The [src] activates.")) + else + visible_message(span_danger("[icon2html(src, viewers(src))] \the [src] begins to flash bright red!")) + triggered = TRUE + update_appearance(UPDATE_ICON_STATE) + if(blast_delay >= 5 DECISECONDS) + playsound(src, 'sound/items/mine_activate.ogg', 70, FALSE) + else + playsound(src, 'sound/items/mine_activate_short.ogg', 80, FALSE) + light_color = "#FF0000" + light_power = 5 + light_range = 3 + if(!blast_delay)//addtimer gets mad if the delay is 0 + blast_now(triggerer) + else + addtimer(CALLBACK(src, PROC_REF(blast_now), triggerer), blast_delay) + +//NOW we actually blow up +/obj/item/mine/proc/blast_now(atom/movable/triggerer) + var/datum/effect_system/spark_spread/sporks = new /datum/effect_system/spark_spread + sporks.set_up(3, 1, src) + sporks.start() + if(ismob(triggerer)) + mine_effect(triggerer) + else + mine_effect() + visible_message(span_danger("[icon2html(src, viewers(src))] \the [src] detonates!")) + SEND_SIGNAL(src, COMSIG_MINE_TRIGGERED, triggerer) + if(triggered)//setting triggered to false in mine_effect() creates a reusable mine + qdel(src) + +//trying to pick up a live mine is probably up there when it comes to terrible ideas +/obj/item/mine/attack_hand(mob/user) + if(armed) + user.visible_message(span_warning("[user] extends their hand towards \the [src]!"), span_userdanger("You extend your arms to pick up \the [src], knowing that it will likely blow up when you touch it!")) + if(do_after(user, 5 SECONDS, target = src))//SO SO generous. You can still step back from the edge. + if(prob(10)) + user.visible_message(span_notice("[user] picks up \the [src], which miraculously doesn't explode!"), span_notice("You pick up \the [src], which miraculously doesn't explode!")) + disarm() + else + user.visible_message(span_danger("[user] attempts to pick up \the [src] only to hear a beep as it activates in their hand!"), span_danger("You attempt to pick up \the [src] only to hear a beep as it activates in your hands!")) + anchored = FALSE + trigger_mine(user) + return . =..() + else + user.visible_message(span_notice("[user] withdraws their hand from \the [src]."), span_notice("You decide against picking up \the [src].")) + . =..() + +//just don't. +/obj/item/mine/attackby(obj/item/I, mob/user) + if(!armed) + to_chat(user, span_notice("You smack \the [src] with [I]. Thankfully, nothing happens.")) + return + else//please stop hitting the live mine with a rock + if(user.a_intent != INTENT_HARM)//are you SURE you want to hit the live mine with a rock + user.visible_message(user, span_notice("[user] gently pokes \the [src] with [I]. Nothing seems to happen."), span_notice("You gently prod \the [src] with [I]. Thankfully, nothing happens.")) + else//at this point it's just natural selection + user.visible_message(span_danger("[user] hits \the [src] with [I], activating it!"), span_userdanger("[icon2html(src, viewers(src))]You hit \the [src] with [I]. The light goes red.")) + trigger_mine(user) + +// +//PRESSURE BASED MINE: +//Mine that explodes when stepped on. +/obj/item/mine/pressure + name = "dummy landmine" + /// When true, mines trigger instantly on being stepped upon + var/hair_trigger = FALSE + /// Has the mine loc been entered? + var/clicked = FALSE + /// Prevents a mine from being screwdrivable (e.g. cannot be disarmed) + var/sealed = FALSE + /// Disables the mine without disarming it. perfect for practical jokes + var/dud = FALSE + + /// Are the wires exposed? + var/open_panel = FALSE + + /// Who's got their foot on the mine's pressure plate + /// Stepping on the mine will set this to the first mob who stepped over it + /// The mine will not detonate via movement unless the first mob steps off of it + var/datum/weakref/foot_on_mine + +/obj/item/mine/pressure/Initialize() + . = ..() + var/static/list/loc_connections = list( + COMSIG_ATOM_ENTERED = PROC_REF(on_entered), + COMSIG_ATOM_EXITED = PROC_REF(on_exited), + ) + AddElement(/datum/element/connect_loc, loc_connections) + wires = new /datum/wires/mine(src) + +/obj/item/mine/pressure/examine(mob/user) + . = ..() + if(hair_trigger) + . += span_danger("It's been rigged to detonate as soon as someone steps on it.") + else + var/atom/movable/unlucky_sod = foot_on_mine?.resolve() + if(user == unlucky_sod) + . += span_bolddanger("The pressure plate is depressed. Any movement you make will set it off now.") + else if(!isnull(unlucky_sod)) + . += span_danger("The pressure plate is depressed by [unlucky_sod]. Any move they make'll set it off now.") + +//step 1: the mistake +/obj/item/mine/pressure/proc/on_entered(datum/source, atom/movable/arrived) + SIGNAL_HANDLER + if(!can_trigger(arrived)) + return + // Flying = can't step on a mine + if(arrived.movement_type & FLYING) + return + //no cheap disarming + if(arrived.throwing && isitem(arrived)) + return + // Someone already on it + if(foot_on_mine?.resolve()) + return + + if(dud == FALSE)//we don't actually need this if the mine's been disabled + foot_on_mine = WEAKREF(arrived) + + if(ismob(arrived)) + var/mob/living/fool = arrived + fool.do_alert_animation(fool) + if(!hair_trigger) + fool.Immobilize(25 DECISECONDS, TRUE) + to_chat(fool, span_userdanger("You step on \the [src] and freeze.")) + visible_message(span_danger("[icon2html(src, viewers(src))] *click*")) + if(dud == FALSE)//see wirecutting + clicked = TRUE + if(hair_trigger) + trigger_mine(arrived) + playsound(src, 'sound/machines/click.ogg', 100, TRUE) + +//step 2: the consequences +/obj/item/mine/pressure/proc/on_exited(datum/source, atom/movable/gone) + SIGNAL_HANDLER + if(hair_trigger) + return + if(!clicked) + return + if(!can_trigger(gone)) + return + // Check that the guy who's on it is stepping off + if(foot_on_mine && !IS_WEAKREF_OF(gone, foot_on_mine)) + return + INVOKE_ASYNC(src, PROC_REF(trigger_mine), gone) + foot_on_mine = null + +/obj/item/mine/pressure/disarm() + clicked = FALSE + . = ..() + +//handles disarming(and failing to disarm) +/obj/item/mine/pressure/attackby(obj/item/I, mob/user) + if(I.tool_behaviour == TOOL_SCREWDRIVER) + if(sealed) + to_chat(user, "You can't see any way to access \the [src]'s wiring.") + return + open_panel = !open_panel + update_appearance(UPDATE_ICON_STATE) + to_chat(user, "You [open_panel ? "reveal" : "hide"] \the [src]'s wiring.") + I.play_tool_sound(src, 50) + return + else if(is_wire_tool(I) && open_panel) + wires.interact(user) + return + else + . = ..() + +// +//PROXIMITY MINES +//Mines that explode when someone moves nearby. Simpler, because I don't have to worry about saving step info or disarming logic +// + +/obj/item/mine/proximity + name = "dummy proximity mine" + blast_delay = 15 DECISECONDS + arm_delay = 10 SECONDS//clear the area + ///needed for the proximity checks. + var/datum/proximity_monitor/proximity_monitor + var/proximity_range = 2 + +/obj/item/mine/proximity/Initialize(mapload) + . = ..() + START_PROCESSING(SSfastprocess, src) + +/obj/item/mine/proximity/examine(mob/user) + . = ..() + if(armed) + . += span_danger("It's been rigged to detonate as soon as someone moves nearby...") + else + . += span_notice("When armed, it activates based on the proximity of living targets.") + +/obj/item/mine/proximity/now_armed() + . = ..() + proximity_monitor = new(src, proximity_range) + light_color = "#FF0000" + light_power = 1 + light_range = 1 + +/obj/item/mine/proximity/disarm() + . = ..() + QDEL_NULL(proximity_monitor) + +/obj/item/mine/proximity/Destroy() + STOP_PROCESSING(SSfastprocess, src) + QDEL_NULL(proximity_monitor) + . = ..() + +/obj/item/mine/proximity/HasProximity(atom/movable/triggerer) + if(!iscarbon(triggerer))//let's keep these on player movements for now. + return + if(!can_trigger(triggerer)) + return + var/mob/living/clueless = triggerer + clueless.do_alert_animation(clueless) + trigger_mine(triggerer) + QDEL_NULL(proximity_monitor) + return + +// +//LANDMINE TYPES +//Rylie please help me make these more immersive +// + +/obj/item/mine/pressure/explosive + name = "\improper G-80 Landmine" + desc = "An anti-infantry explosive produced during the corporate wars. Watch your step." + + //customize explosive power + var/range_devastation = 0 + var/range_heavy = 1 + var/range_light = 5 + var/range_flame = 1 + + //using this to indicate pb + var/range_flash = 1 + + //customize shrapnel. Magnitude zero prevents them from spawning + var/shrapnel_type = /obj/projectile/bullet/shrapnel + var/shrapnel_magnitude = 3 + + /// If TRUE, we spawn extra pellets to eviscerate a person still sitting on it, otherwise it just spawns a ring of pellets around the tile we're on (making setting it off an offensive move) + var/shred_triggerer = TRUE + + manufacturer = MANUFACTURER_SCARBOROUGH + +/obj/item/mine/pressure/explosive/mine_effect(mob/victim) + explosion(loc, range_devastation, range_heavy, range_light, range_flash, 1, 0, range_flame, 0, 1) + if(shrapnel_magnitude > 0) + AddComponent(/datum/component/pellet_cloud, projectile_type=shrapnel_type, magnitude=shrapnel_magnitude) + + +/obj/item/mine/pressure/explosive/rusty + name = "\improper Rusted Landmine" + desc = "An anti-infantry explosive, designed to go off underfoot. This one has seen better days." + manufacturer = MANUFACTURER_NONE + range_heavy = 0 + range_light = 3 + shrapnel_type = /obj/projectile/bullet/shrapnel/rusty + + +/obj/item/mine/pressure/explosive/fire + name = "\improper G-82 Incindeary" + desc = "An anti-infantry explosive produced during the corporate wars. Transforms into superheated slag and a ball of fire on detonation. " + + range_flame = 6 + range_light = 3 + range_flash = 3 + + shrapnel_type = /obj/projectile/bullet/shrapnel/hot + shrapnel_magnitude = 4 + +/obj/item/mine/pressure/explosive/fire/mine_effect(mob/victim) + if(victim.is_holding(src))//in case it's been picked up + for(var/turf/T in view(4,victim)) + T.IgniteTurf(15) + new /obj/effect/hotspot(T) + else + for(var/turf/T in view(4,src)) + T.IgniteTurf(15) + new /obj/effect/hotspot(T) + . = ..() + + +/obj/item/mine/pressure/explosive/heavy + name = "\improper G-81 Anti-Tank Mine" + desc = "An immense anti-vehicle explosive built during the corporate wars. Someone has recklessly switched out the detonator for one that activates for lighter targets." + w_class = WEIGHT_CLASS_BULKY + range_heavy = 6 + range_light = 9 + shrapnel_magnitude = 7 + shrapnel_type = /obj/projectile/bullet/shrapnel/mega + blast_delay = 50//run. + sealed = TRUE//unless we specifically give it to people disarmed, we probably don't want them stealing this + + +/obj/item/mine/pressure/explosive/shrapnel + name = "\improper G-84 Fragmentation" + desc = "An anti-infantry explosive built during the corporate wars. Metal banding inside creates additional deadly shrapnel on detonation. " + + range_heavy = 1 + range_light = 4 + + shrapnel_magnitude = 6 + shred_triggerer = TRUE + +/obj/item/mine/pressure/explosive/rad + name = "\improper G-85 Fission" + desc = "An anti-infantry explosive produced during the corporate wars. This one detonates a small microfission core, creating a bloom of deadly radiation. " + range_light = 4 + range_flame = 2 + shrapnel_magnitude = 7 + shrapnel_type = /obj/projectile/bullet/shrapnel/spicy + var/radpower = 750 + +/obj/item/mine/pressure/explosive/rad/mine_effect(mob/victim) + radiation_pulse(src, radpower, 1) + . = ..() + +//put this on military ships for disarming practice +/obj/item/mine/pressure/training + name = "\improper G-MTH Defusal Trainer" + desc = "A mothballed anti-personnel explosive, equipped with VISCERAL DEFUSAL ACTION for training purposes. Though Scarborough was forced to decomission their stockpiles of mines as part of the ceasefire, the deployed minefields remain." + arm_delay = 2 SECONDS + manufacturer = MANUFACTURER_SCARBOROUGH + +/obj/item/mine/pressure/training/mine_effect(mob/living/victim) + src.say("BOOM! Better luck next time!") + src.visible_message(span_notice("The mine resets itself for another disarming attempt.")) + triggered = FALSE + disarm() + . = ..() + +/obj/item/mine/pressure/gas + name = "chilled vapor mine" + desc = "A non-lethal security deterrent." + var/gas_amount = 500 + var/gas_type = "water_vapor" + hair_trigger = TRUE + +/obj/item/mine/pressure/gas/mine_effect(mob/victim) + atmos_spawn_air("[gas_type]=[gas_amount]") + + +/obj/item/mine/proximity/explosive + name = "\improper G-80P Bouncer" + desc = "An anti-infantry explosive produced during the corporate wars. This one has been rearmed with a proximity movement detector." + + var/range_devastation = 0 + var/range_heavy = 2 + var/range_light = 4 + var/range_flame = 1 + + var/range_flash = 1 + + var/shrapnel_type = /obj/projectile/bullet/shrapnel + var/shrapnel_magnitude = 5 + + manufacturer = MANUFACTURER_SCARBOROUGH + +/obj/item/mine/proximity/explosive/mine_effect(mob/victim) + explosion(loc, range_devastation, range_heavy, range_light, range_flash, 1, 0, range_flame, 0, 1) + if(shrapnel_magnitude > 0) + AddComponent(/datum/component/pellet_cloud, projectile_type=shrapnel_type, magnitude=shrapnel_magnitude) + + +//like all real 'less' than lethal crowd control options this is, in fact, not very good at being nonlethal +/obj/item/mine/proximity/explosive/sting + name = "\improper'Stinger' Crowd Management Device" + desc = "A \"less\" than lethal crowd control weapon, designed to demoralise and scatter anti-NT protestors. The bands of ballistic gel inside strike targets and incapacitate without causing serious maiming. In Theory." + + range_heavy = 0 + range_light = 1 + range_flash = 3 + range_flame = 0 + + shrapnel_magnitude = 8 + shrapnel_type = /obj/projectile/bullet/pellet/stingball + manufacturer = MANUFACTURER_NANOTRASEN_OLD + + +/obj/item/mine/proximity/explosive/plasma + name = "\improper Etherbor EP-3" + desc = "An anti-infantry explosive designed by the PGF for denial of territory to enemy forces. Radiates high energy plasma to eradicate nearby targets." + range_light = 2 + range_flame = 3 + range_heavy = 0 + shrapnel_magnitude = 8 + shrapnel_type = /obj/projectile/energy/plasmabolt + manufacturer = MANUFACTURER_PGF + +/obj/item/mine/proximity/explosive/plasma/mine_effect(mob/victim) + if(victim.is_holding(src))//in case it's been picked up + for(var/turf/T in view(3,victim)) + T.IgniteTurf(25, "green") + else + for(var/turf/T in view(3,src)) + T.IgniteTurf(25, "green") + . = ..() + +//Manhacks... so pretty... +/obj/item/mine/proximity/spawner + name = "debug spawner mine" + desc = "Real no Virus. 100% free. Coders hate him!" + var/spawn_type = null //manhacks go here :) + var/spawn_number = 5 + +/obj/item/mine/proximity/spawner/mine_effect(mob/victim) + if(isturf(loc)) + var/turf/T = get_turf(src) + playsound(T, 'sound/effects/phasein.ogg', 100, TRUE) + spawn_and_random_walk(spawn_type, T, spawn_number, walk_chance=50, admin_spawn=((flags_1 & ADMIN_SPAWNED_1) ? TRUE : FALSE)) + . = ..() + +/obj/item/mine/proximity/spawner/manhack + name = "\improper P-83 Lacerator" + desc = "An anti-infantry device produced during the corporate wars. The explosive payload has been swapped out for 'viscerator'-type antipersonnel drones." + spawn_type = /mob/living/simple_animal/hostile/viscerator + +// +//GIMMICK MINES// +//pretty much exclusively for adminbus & code dependencies +// + +/obj/item/mine/pressure/kickmine + name = "\improper A-00 'Adminbus'" + desc = "An Anti-Griefer proximity expulsive. Delivers Justice." + blast_delay = null//funnier this way + hair_trigger = TRUE + +/obj/item/mine/pressure/kickmine/mine_effect(mob/victim) + if(isliving(victim) && victim.client && Adjacent(victim)) + to_chat(victim, span_userdanger("You have been kicked from the game. Take this time to think about what you've done.")) + qdel(victim.client) + +/obj/item/mine/pressure/sound + name = "sonic mine" + desc = "A potent tool of psychological warfare." + var/sound = 'sound/effects/adminhelp.ogg' + blast_delay = null + hair_trigger = TRUE + +/obj/item/mine/pressure/sound/mine_effect(mob/victim) + playsound(loc, sound, 100, TRUE) + +/obj/item/mine/pressure/pickup + name = "pickup mine" + desc = "does nothing" + icon = 'icons/obj/marg.dmi' + icon_state = "marg" + density = FALSE + var/duration = 0 + pixel_x = -8 + pixel_y = 1 + anchored = TRUE + armed = TRUE + blast_delay = null + hair_trigger = TRUE + +/obj/item/mine/pressure/pickup/Initialize() + . = ..() + animate(src, time = 20, loop = -1) + +/obj/item/mine/pressure/pickup/trigger_mine(mob/victim) + if(triggered) + return + triggered = TRUE + invisibility = INVISIBILITY_ABSTRACT + mine_effect(victim) + qdel(src) + + +/obj/item/mine/pressure/pickup/bloodbath + name = "bloody orb" + desc = "Embrace righteous fury." + duration = 1200 //2min + color = "#FF0000" + var/mob/living/doomslayer + var/obj/item/chainsaw/doomslayer/chainsaw + +/obj/item/mine/pressure/pickup/bloodbath/mine_effect(mob/living/carbon/victim) + if(!victim.client || !istype(victim)) + return + to_chat(victim, "RIP AND TEAR") + + INVOKE_ASYNC(src, PROC_REF(blood_delusion), victim) + + chainsaw = new(victim.loc) + victim.log_message("entered a marg frenzy", LOG_ATTACK) + + ADD_TRAIT(chainsaw, TRAIT_NODROP, CHAINSAW_FRENZY_TRAIT) + victim.drop_all_held_items() + victim.put_in_hands(chainsaw, forced = TRUE) + chainsaw.attack_self(victim) + victim.reagents.add_reagent(/datum/reagent/medicine/adminordrazine,25) + to_chat(victim, "KILL, KILL, KILL! YOU HAVE NO ALLIES ANYMORE, KILL THEM ALL!") + + var/datum/client_colour/colour = victim.add_client_colour(/datum/client_colour/bloodlust) + QDEL_IN(colour, 11) + doomslayer = victim + RegisterSignal(src, COMSIG_PARENT_QDELETING, PROC_REF(end_blood_frenzy)) + QDEL_IN(WEAKREF(src), duration) + +/obj/item/mine/pressure/pickup/bloodbath/proc/end_blood_frenzy() + if(doomslayer) + to_chat(doomslayer, "Your bloodlust seeps back into the bog of your subconscious and you regain self control.") + doomslayer.log_message("exited a blood frenzy", LOG_ATTACK) + if(chainsaw) + qdel(chainsaw) + +/obj/item/mine/pressure/pickup/bloodbath/proc/blood_delusion(mob/living/carbon/victim) + new /datum/hallucination/delusion(victim, TRUE, "demon", duration, 0) + +/obj/item/mine/pressure/pickup/healing + name = "healing orb" + desc = "Your wounds shall be undone." + +/obj/item/mine/pressure/pickup/healing/mine_effect(mob/living/carbon/victim) + if(!victim.client || !istype(victim)) + return + to_chat(victim, "You feel great!") + victim.revive(full_heal = TRUE, admin_revive = TRUE) + +/obj/item/mine/pressure/pickup/speed + name = "quick orb" + desc = "Quickens you." + duration = 300 + +/obj/item/mine/pressure/pickup/speed/mine_effect(mob/living/carbon/victim) + if(!victim.client || !istype(victim)) + return + to_chat(victim, "You feel fast!") + victim.add_movespeed_modifier(/datum/movespeed_modifier/yellow_orb) + addtimer(CALLBACK(src, PROC_REF(finish_effect), victim), duration) + +/obj/item/mine/pressure/pickup/speed/proc/finish_effect(mob/living/carbon/victim) + victim.remove_movespeed_modifier(/datum/movespeed_modifier/yellow_orb) + to_chat(victim, "You slow down.") + + + +// +//mapping tool that generates "live" variants of all mine subtypes, which are anchored and ready to blow. +//Add new mine variants you make below as a LIVE_MINE_HELPER define containing their subtyping. +// + +#define LIVE_MINE_HELPER(mine_type) \ + /obj/item/mine/##mine_type/live { \ + anchored = TRUE; \ + armed = TRUE; \ + } + +LIVE_MINE_HELPER(pressure/explosive) +LIVE_MINE_HELPER(pressure/explosive/fire) +LIVE_MINE_HELPER(pressure/explosive/rusty) +LIVE_MINE_HELPER(pressure/explosive/rad) +LIVE_MINE_HELPER(pressure/explosive/heavy) +LIVE_MINE_HELPER(pressure/explosive/shrapnel) + +LIVE_MINE_HELPER(proximity/explosive) +LIVE_MINE_HELPER(proximity/explosive/sting) +LIVE_MINE_HELPER(proximity/spawner/manhack) +LIVE_MINE_HELPER(proximity/explosive/plasma) + +LIVE_MINE_HELPER(pressure/gas) +LIVE_MINE_HELPER(pressure/kickmine) +LIVE_MINE_HELPER(pressure/sound) + +// +// spawners (random mines, minefields, non-guaranteed mine) +// + +/obj/effect/spawner/lootdrop/mine + name = "live mine spawner (random)" + lootcount = 1 + fan_out_items = TRUE + loot = list( + /obj/item/mine/pressure/explosive/live = 10, + /obj/item/mine/pressure/explosive/shrapnel/live = 3, + /obj/item/mine/pressure/explosive/rad/live = 3, + /obj/item/mine/pressure/explosive/fire/live = 3) + +/obj/effect/spawner/minefield + name = "minefield spawner" + var/minerange = 9 + var/minetype = /obj/item/mine/pressure/explosive/rusty/live + +/obj/effect/spawner/minefield/Initialize(mapload) + . = ..() + for(var/turf/open/T in view(minerange,loc)) + if(prob(5)) + new minetype(T) + +/obj/effect/spawner/minefield/random + name = "random minefield spawner" + minetype = /obj/effect/spawner/lootdrop/mine + +/obj/effect/spawner/minefield/manhack + name = "manhack field spawner" + minetype = /obj/item/mine/proximity/spawner/manhack/live diff --git a/code/modules/clothing/factions/clip.dm b/code/modules/clothing/factions/clip.dm new file mode 100644 index 000000000000..82e1fdee68b0 --- /dev/null +++ b/code/modules/clothing/factions/clip.dm @@ -0,0 +1,427 @@ +//under + +/obj/item/clothing/under/clip + name = "clip deck worker jumpsuit" + desc = "A jumpsuit worn by deck workers in the CLIP Minutemen Navy vessels." + + icon = 'icons/obj/clothing/faction/clip/uniforms.dmi' + mob_overlay_icon = 'icons/mob/clothing/faction/clip/uniforms.dmi' + + icon_state = "clip_deck" + item_state = "b_suit" + + alt_covers_chest = TRUE + sensor_mode = SENSOR_COORDS + random_sensor = FALSE + dying_key = DYE_REGISTRY_UNDER //??? // it's for washing machines don't worry about it + + can_adjust = FALSE + supports_variations = DIGITIGRADE_VARIATION | VOX_VARIATION | KEPORI_VARIATION // a new record! + +/obj/item/clothing/under/clip/minutemen + name = "clip minutemen fatigues" + desc = "Fatigues worn by the CLIP Minutemen's enlisted." + + icon_state = "clip_minuteman" + + armor = list("melee" = 10, "bullet" = 0, "laser" = 0,"energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 30, "acid" = 30) + strip_delay = 50 + + can_adjust = FALSE + supports_variations = DIGITIGRADE_VARIATION | VOX_VARIATION | KEPORI_VARIATION + +/obj/item/clothing/under/clip/formal + name = "formal clip outfit" + desc = "A formal outfit containing a white shirt and navy slacks issued to CLIP government workers. Commonly seen on more white collar CLIP bureaucrats than low ranking CLIP Minutemen officers." + + icon_state = "clip_formal" + + armor = null + supports_variations = null + +/obj/item/clothing/under/clip/formal/alt + name = "formal clip outfit" + desc = "A formal outfit containing a white shirt and a navy skirt issued to CLIP government workers. Commonly seen on more white collar CLIP bureaucrats than low ranking CLIP Minutemen officers." + + icon_state = "clip_formal_skirt" + +/obj/item/clothing/under/clip/formal/with_shirt/Initialize() + . = ..() + var/obj/item/clothing/accessory/clip_formal_overshirt/accessory = new (src) + attach_accessory(accessory) + +/obj/item/clothing/under/clip/formal/with_shirt/alt //because of how fucking skirt code works... + name = "formal clip outfit" + desc = "A formal outfit containing a white shirt and a navy skirt issued to CLIP government workers. Commonly seen on more white collar CLIP bureaucrats than low ranking CLIP Minutemen officers." + + icon_state = "clip_formal_skirt" + +/obj/item/clothing/under/clip/medic + name = "medical clip uniform" + desc = "A uniform with navy slacks and a CLIP blue buttondown shirt. The shoulder markings have a medical symbol. " + + icon_state = "clip_medic" + +/obj/item/clothing/under/clip/officer + name = "clip minutemen officer uniform" + desc = "A uniform used by higher ranking officers of the CLIP Minutemen." + icon_state = "clip_officer" + item_state = "g_suit" + can_adjust = FALSE + +/obj/item/clothing/under/clip/officer/alt + name = "clip minutemen officer uniform" + desc = "A uniform with a pencil skirt used by higher ranking officers of the CLIP Minutemen." + icon_state = "clip_officer_skirt" + +//suit +/obj/item/clothing/suit/toggle/lawyer/clip + name = "CLIP Minutemen suit jacket" + desc = "An enterprising dress jacket used by officers of the CLIP Minutemen." + + icon = 'icons/obj/clothing/faction/clip/suits.dmi' + mob_overlay_icon = 'icons/mob/clothing/faction/clip/suits.dmi' + + icon_state = "suitjacket_clip" + item_state = "suitjacket_navy" + +/obj/item/clothing/suit/toggle/lawyer/clip/Initialize() + . = ..() + if(!allowed) + allowed = GLOB.security_vest_allowed //it's hop-equivalent gear after all + +/obj/item/clothing/suit/toggle/lawyer/clip/fo + name = "CLIP Minutemen First Officer suit jacket" + desc = "An enterprising dress jacket used by First Officer of CLIP Minutemen vessels." + + icon_state = "suitjacket_clip_command" + item_state = "suitjacket_clip_command" + +//armor + +/obj/item/clothing/suit/armor/vest/capcarapace/clip + name = "CLIP Minutemen general coat" + desc = "A very fancy coat used by generals of the CLIP Minutemen." + + icon = 'icons/obj/clothing/faction/clip/suits.dmi' + mob_overlay_icon = 'icons/mob/clothing/faction/clip/suits.dmi' + + icon_state = "clip_general" + item_state = "clip_general" + +/obj/item/clothing/suit/armor/vest/capcarapace/clip/admiral + name = "CLIP Minutemen admiral trenchcoat" + desc = "A very fancy trenchcoat used by admirals of the CLIP Minutemen." + + icon_state = "clip_admiral" + item_state = "clip_admiral" + +/obj/item/clothing/suit/armor/riot/clip + name = "black riot suit" + desc = "Designed to protect against close range attacks. This one is painted black. Mainly used by the CM-BARD against hostile xenofauna, it also sees prolific by some CLIP members." + + icon = 'icons/obj/clothing/faction/clip/suits.dmi' + mob_overlay_icon = 'icons/mob/clothing/faction/clip/suits.dmi' + icon_state = "riot_clip" + +/obj/item/clothing/suit/armor/clip_trenchcoat + name = "\improper CLIP trenchcoat" + desc = "A CLIP trenchcoat. Despite it's reputation as a officer coat, it's actually issued to the entire CLIP government and it's branches. Has a lot of pockets." + + icon = 'icons/obj/clothing/faction/clip/suits.dmi' + mob_overlay_icon = 'icons/mob/clothing/faction/clip/suits.dmi' + + icon_state = "clip_trenchcoat" + item_state = "trenchcoat_solgov" + body_parts_covered = CHEST|LEGS|ARMS + armor = list("melee" = 25, "bullet" = 10, "laser" = 25, "energy" = 10, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 50, "acid" = 0) + cold_protection = CHEST|LEGS|ARMS + heat_protection = CHEST|LEGS|ARMS + supports_variations = DIGITIGRADE_VARIATION_NO_NEW_ICON + +/obj/item/clothing/suit/armor/clip_capcoat + name = "\improper CLIP Minutemen captain's coat" + desc = "A well-made coat used by CLIP Minutemen captains. It's thick padding stops some hazards for its user." + + icon = 'icons/obj/clothing/faction/clip/suits.dmi' + mob_overlay_icon = 'icons/mob/clothing/faction/clip/suits.dmi' + + icon_state = "clip_captaincoat" + item_state = "clip_captaincoat" + body_parts_covered = CHEST|LEGS|ARMS + armor = list("melee" = 25, "bullet" = 10, "laser" = 25, "energy" = 10, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 50, "acid" = 0) + cold_protection = CHEST|LEGS|ARMS + heat_protection = CHEST|LEGS|ARMS + supports_variations = DIGITIGRADE_VARIATION_NO_NEW_ICON + +//spacesuits +/obj/item/clothing/suit/space/hardsuit/security/independent/clip //TODO: replace + name = "\improper CMM Patroller hardsuit" + desc = "A hardsuit used by the CLIP Minutemen. To reduce costs, its a modified version of a more popular model from a independent manufacturer, and given to patrol vessels. As should be obvious, it's not extremely armored, as it's made for reconnaissance and speed." + + icon = 'icons/obj/clothing/faction/clip/suits.dmi' + mob_overlay_icon = 'icons/mob/clothing/faction/clip/suits.dmi' + + icon_state = "hardsuit-clip-patrol" + hardsuit_type = "hardsuit-clip-patrol" + helmettype = /obj/item/clothing/head/helmet/space/hardsuit/security/independent/clip + +/obj/item/clothing/head/helmet/space/hardsuit/security/independent/clip //TODO: replace + name = "\improper CMM Patroller hardsuit helmet" + desc = "A hardsuit used by the CLIP Minutemen. To reduce costs, its a modified version of a more popular model from a independent manufacturer, and given to patrol vessels. As should be obvious, it's not extremely armored, as it's made for reconnaissance and speed." + + icon = 'icons/obj/clothing/faction/clip/head.dmi' + mob_overlay_icon = 'icons/mob/clothing/faction/clip/head.dmi' + + icon_state = "hardsuit0-clip-patrol" + hardsuit_type = "clip-patrol" + +/obj/item/clothing/suit/space/hardsuit/clip_spotter + name = "CM-490 'Spotter' Combat Hardsuit" + desc = "CLIP's standard EVA combat hardsuit. Due to CLIP's doctrine on range, it doesn't have advanced components that allow swift movement, and thus slows down the user despite the heavy armor." + + icon = 'icons/obj/clothing/faction/clip/suits.dmi' + mob_overlay_icon = 'icons/mob/clothing/faction/clip/suits.dmi' + + icon_state = "clip_spotter" + hardsuit_type = "clip_spotter" + + armor = list("melee" = 50, "bullet" = 50, "laser" = 30, "energy" = 40, "bomb" = 35, "bio" = 100, "rad" = 60, "fire" = 50, "acid" = 80) + helmettype = /obj/item/clothing/head/helmet/space/hardsuit/clip_spotter + allowed = list(/obj/item/gun, /obj/item/ammo_box,/obj/item/ammo_casing, /obj/item/melee/baton, /obj/item/melee/transforming/energy/sword/saber, /obj/item/restraints/handcuffs, /obj/item/tank/internals) + + resistance_flags = null + slowdown = 1 + +/obj/item/clothing/head/helmet/space/hardsuit/clip_spotter + name = "CM-490 'Spotter' Combat Hardsuit Helmet" + desc = "CLIP's standard EVA combat hardsuit. Due to CLIP's doctrine on range, it doesn't have advanced components that allow swift movement, and thus slows down the user despite the heavy armor." + + icon = 'icons/obj/clothing/faction/clip/head.dmi' + mob_overlay_icon = 'icons/mob/clothing/faction/clip/head.dmi' + + icon_state = "hardsuit0-clip_spotter" + hardsuit_type = "clip_spotter" + + armor = list("melee" = 50, "bullet" = 50, "laser" = 30, "energy" = 40, "bomb" = 35, "bio" = 100, "rad" = 60, "fire" = 50, "acid" = 80) + resistance_flags = null + + +//hats +/obj/item/clothing/head/clip + name = "\improper CLIP Minutemen service cap" + desc = "A standard issue soft cap dating back to the original Zohil colonial peroid. While usually given to recruits and volunteers, it's sometimes used by occasionally by some Minutemen." + icon = 'icons/obj/clothing/faction/clip/head.dmi' + mob_overlay_icon = 'icons/mob/clothing/faction/clip/head.dmi' +// lefthand_file = 'icons/mob/inhands/faction/clip/gezena_lefthand.dmi' +// righthand_file = 'icons/mob/inhands/faction/clip/gezena_righthand.dmi' + icon_state = "clip_cap" + item_state = "bluecloth" + armor = list("melee" = 10, "bullet" = 10, "laser" = 10, "energy" = 10, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 50, "acid" = 50) + +/obj/item/clothing/head/clip/corpsman + name = "\improper CLIP Minutemen corpsman cap" + desc = "A standard issue soft cap dating back to the original Zohil colonial peroid. This one is in corpsman colors." + icon_state = "clip_mediccap" + item_state = "whitecloth" + +/obj/item/clothing/head/clip/slouch + name = "CLIP Minutemen slouch hat" + desc = "A commanding slouch hat used by the CLIP Minutemen." + icon_state = "clip_slouch_hat" + +/obj/item/clothing/head/clip/slouch/officer + name = "CLIP Minutemen officer's slouch hat" + desc = "A commanding slouch hat adorned with a officer's badge, used by the CLIP Minutemen." + icon_state = "clip_officer_hat" + armor = list("melee" = 35, "bullet" = 30, "laser" = 30,"energy" = 40, "bomb" = 25, "bio" = 0, "rad" = 0, "fire" = 50, "acid" = 50) + strip_delay = 60 + +/obj/item/clothing/head/clip/boonie + name = "CLIP Minutemen boonie hat" + desc = "A wide brimmed cap to keep yourself cool during blistering hot weather." + icon_state = "clip_boonie" + +/obj/item/clothing/head/clip/bicorne + name = "general's bicorne" + desc = "A fancy bicorne used by generals of the CLIP Minutemen." + icon_state = "clip_general_hat" + armor = list("melee" = 35, "bullet" = 30, "laser" = 30,"energy" = 40, "bomb" = 25, "bio" = 0, "rad" = 0, "fire" = 50, "acid" = 50) + +/obj/item/clothing/head/helmet/bulletproof/x11/clip + name = "\improper Minutemen X11 Helmet" + desc = "A bulletproof helmet worn by members of the CLIP Minutemen." + + icon = 'icons/obj/clothing/faction/clip/head.dmi' + mob_overlay_icon = 'icons/mob/clothing/faction/clip/head.dmi' + + icon_state = "clip_x11" + allow_post_reskins = FALSE + unique_reskin = null + +/obj/item/clothing/head/helmet/bulletproof/m10/clip_vc + name = "\improper Minutemen Vehicle Crewman M10 Helmet" + desc = "A light bulletproof helmet worn by Vehicle Crewmen of the CLIP Minutemen. The ear padding protects the ears from loud noises and the microphone automatically connects with a headset." + + icon = 'icons/obj/clothing/faction/clip/head.dmi' + mob_overlay_icon = 'icons/mob/clothing/faction/clip/head.dmi' + + icon_state = "clip_m10_vc" + allow_post_reskins = FALSE + unique_reskin = null + +/obj/item/clothing/head/helmet/bulletproof/m10/clip_vc/ComponentInitialize() + . = ..() + AddComponent(/datum/component/wearertargeting/earprotection, list(ITEM_SLOT_HEAD)) + +/obj/item/clothing/head/helmet/riot/clip + name = "\improper Minutemen riot helmet" + desc = "Designed to protect against close range attacks. Mainly used by the CMM-BARD against hostile xenofauna, it also sees prolific use on some Minutemen member worlds." + + icon = 'icons/obj/clothing/faction/clip/head.dmi' + mob_overlay_icon = 'icons/mob/clothing/faction/clip/head.dmi' + icon_state = "riot_clip" + +//GOLD +/obj/item/clothing/head/fedora/det_hat/clip + name = "GOLD fedora" + desc = "A hat issued by the GOLD division of the CLIP Minutemen. Designed to look fashionable and more casual than standard CLIP attire." + + icon = 'icons/obj/clothing/faction/clip/head.dmi' + mob_overlay_icon = 'icons/mob/clothing/faction/clip/head.dmi' + + icon_state = "clip_fedora" + item_state = "detective" + + armor = list("melee" = 10, "bullet" = 10, "laser" = 10, "energy" = 10, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 50, "acid" = 50) //dets hat is armored for some reaon + +/obj/item/clothing/head/flatcap/clip + name = "GOLD flatcap" + desc = "A hat issued by the GOLD division of the CLIP Minutemen. An office worker's hat." + + icon = 'icons/obj/clothing/faction/clip/head.dmi' + mob_overlay_icon = 'icons/mob/clothing/faction/clip/head.dmi' + + icon_state = "flatcap_clip" + item_state = "detective" +//mask + +/obj/item/clothing/mask/gas/clip + name = "CM-20 gas mask" + desc = "A close-fitting gas mask that can be connected to an air supply. Created in 420 FS during the Xenofauna war after it was discovered that 20 year old gas masks weren't going cut it against Xenofauna. Standard issue for every Minuteman, but rarely used; it's mostly used as a deterrence against chemical attacks." + + icon = 'icons/obj/clothing/faction/clip/mask.dmi' + mob_overlay_icon = 'icons/mob/clothing/faction/clip/mask.dmi' + + icon_state = "clip-gasmask" + strip_delay = 60 + +//gloves + +/obj/item/clothing/gloves/color/latex/nitrile/clip + name = "long white nitrile gloves" + desc = "Thick sterile gloves that reach up to the elbows. Transfers combat medic knowledge into the user via nanochips." + + icon = 'icons/obj/clothing/faction/clip/hands.dmi' + mob_overlay_icon = 'icons/mob/clothing/faction/clip/hands.dmi' + + icon_state = "nitrile_clip" + item_state = "nitrile_clip" + +//boots + +//belt +/obj/item/storage/belt/military/clip + name = "CLIP Minutemen chest rig" + desc = "A chest rig worn by the CLIP Minutemen." + + icon = 'icons/obj/clothing/faction/clip/belt.dmi' + mob_overlay_icon = 'icons/mob/clothing/faction/clip/belt.dmi' + + icon_state = "clipwebbing" + item_state = "clipwebbing" + + unique_reskin = null + +/obj/item/storage/belt/military/clip/p16/PopulateContents() + for(var/i in 1 to 4) + new /obj/item/ammo_box/magazine/p16(src) + new /obj/item/grenade/frag(src) + +/obj/item/storage/belt/military/clip/gal/PopulateContents() + for(var/i in 1 to 4) + new /obj/item/ammo_box/magazine/gal(src) + new /obj/item/grenade/frag(src) + +/obj/item/storage/belt/military/clip/cm5/PopulateContents() + for(var/i in 1 to 4) + new /obj/item/ammo_box/magazine/smgm9mm(src) + new /obj/item/grenade/frag(src) + +/obj/item/storage/belt/military/clip/cm15/PopulateContents() + for(var/i in 1 to 5) + new /obj/item/ammo_box/magazine/cm15_mag(src) + new /obj/item/grenade/frag(src) + +/obj/item/storage/belt/military/clip/e50/PopulateContents() + for(var/i in 1 to 5) + new /obj/item/stock_parts/cell/gun/large(src) + new /obj/item/grenade/frag(src) + new /obj/item/screwdriver/nuke(src) + +/obj/item/storage/belt/military/clip/engi/PopulateContents() + new /obj/item/screwdriver/power(src) + new /obj/item/crowbar/power(src) + new /obj/item/weldingtool/experimental(src) + new /obj/item/multitool(src) + new /obj/item/construction/rcd/combat(src) + new /obj/item/extinguisher/mini(src) + new /obj/item/stack/cable_coil(src) + +/obj/item/storage/belt/military/clip/flamer/PopulateContents() + for(var/i in 1 to 3) + new /obj/item/reagent_containers/glass/beaker/large/fuel(src) + new /obj/item/ammo_box/magazine/co9mm(src) + +/obj/item/storage/belt/medical/webbing/clip + name = "medical webbing" + desc = "A chest rig worn by corpsmen of the CLIP Minutemen ." + + icon = 'icons/obj/clothing/faction/clip/belt.dmi' + mob_overlay_icon = 'icons/mob/clothing/faction/clip/belt.dmi' + + icon_state = "clip-medwebbing" + +/obj/item/storage/belt/medical/webbing/clip/prefilled/PopulateContents() + new /obj/item/reagent_containers/medigel/styptic(src) + new /obj/item/reagent_containers/medigel/styptic(src) + new /obj/item/reagent_containers/medigel/silver_sulf(src) + new /obj/item/reagent_containers/medigel/silver_sulf(src) + new /obj/item/reagent_containers/medigel/synthflesh(src) + new /obj/item/reagent_containers/medigel/synthflesh(src) + new /obj/item/stack/medical/splint(src) + +//back +/obj/item/storage/backpack/security/clip + name = "clip backpack" + desc = "It's a very blue backpack." + + icon_state = "clippack" + +/obj/item/storage/backpack/satchel/sec/clip + name = "clip satchel" + desc = "A robust satchel for anti-piracy related needs." + icon_state = "satchel-clip" + + +//neck + +//accessories + +/obj/item/clothing/accessory/clip_formal_overshirt + name = "\improper CLIP overshirt" + desc = "A standard issue shirt designed to be worn over the formal uniform's undershirt." + icon_state = "clip_formal_overshirt" + icon = 'icons/obj/clothing/accessories.dmi' + mob_overlay_icon = 'icons/mob/clothing/accessories.dmi' + minimize_when_attached = FALSE diff --git a/code/modules/paperwork/biscuit.dm b/code/modules/paperwork/biscuit.dm new file mode 100644 index 000000000000..38776e5005bf --- /dev/null +++ b/code/modules/paperwork/biscuit.dm @@ -0,0 +1,104 @@ +/obj/item/folder/biscuit + name = "\proper biscuit card" + desc = "An biscuit card. Has label which says DO NOT DIGEST." + icon_state = "paperbiscuit" + bg_color = "#ffffff" + w_class = WEIGHT_CLASS_TINY + max_integrity = 130 + drop_sound = 'sound/items/handling/disk_drop.ogg' + pickup_sound = 'sound/items/handling/disk_pickup.ogg' + /// Is biscuit cracked open or not? + var/cracked = FALSE + +/obj/item/folder/biscuit/update_overlays() + . = ..() + if(contents.len) //This is to prevent the not-sealed biscuit to have the folder_paper overlay when it gets sealed + . -= "folder_paper" + if(cracked) //Shows overlay only when it has content and is cracked open + . += "paperbiscuit_paper" + +///Checks if the biscuit has been already cracked. If its not then it dipsplays "unopened!" ballon alert. If it is cracked then it lets the code continue. +/obj/item/folder/biscuit/proc/crack_check(mob/user) + if (cracked) + return TRUE + balloon_alert(user, "unopened!") + return FALSE + +/obj/item/folder/biscuit/examine() + . = ..() + if(!cracked) + . += span_notice("To reach contents you need to crack it open.") + +//All next is done so you can't reach contents, or put any new contents when its not cracked open +/obj/item/folder/biscuit/remove_item(obj/item/item, mob/user) + if (!crack_check(user)) + return + + return ..() + +/obj/item/folder/biscuit/attack_hand(mob/user, list/modifiers) + if (LAZYACCESS(modifiers, RIGHT_CLICK) && !crack_check(user)) + return + + return ..() + +/obj/item/folder/biscuit/attackby(obj/item/weapon, mob/user, params) + if (is_type_in_typecache(weapon, folder_insertables) && !crack_check(user)) + return + + return ..() + +/obj/item/folder/biscuit/attack_self(mob/user) + add_fingerprint(user) + if (!cracked) + if (tgui_alert(user, "Do you want to crack it open?", "Biscuit Cracking", list("Yes", "No")) != "Yes") + return + cracked = TRUE + playsound(get_turf(user), 'sound/effects/snap.ogg', 60) + icon_state = "[icon_state]_cracked" + update_appearance() + + ui_interact(user) +//Corporate "confidental" biscuit cards +/obj/item/folder/biscuit/confidental + name = "\proper confidental biscuit card" + desc = "An confidental biscuit card. In a tasteful blue color with NT logo, looks like a chocolate bar. Has label which says DO NOT DIGEST." + icon_state = "paperbiscuit_secret" + bg_color = "#355e9f" + +//Biscuits which start not-sealed/cracked initially for the crafting, printing and such +/obj/item/folder/biscuit/unsealed + name = "\proper biscuit card" + desc = "An biscuit card. Has a label which says DO NOT DIGEST." + icon_state = "paperbiscuit_cracked" + cracked = TRUE + ///Was the biscuit already sealed by players? To prevent several tgui alerts + var/sealed = FALSE + ///What is the sprite for when its not cracked? As it starts already cracked, and for re-sealing needs to have a sprite + var/not_cracked_icon = "paperbiscuit" + +/obj/item/folder/biscuit/unsealed/examine() + . = ..() + if(!sealed) + . += span_notice("This one have not been sealed yet. You many insert anything to seal it by pressing it in hand. Once sealed, the contents are inaccessible until cracked open (irreversible).") + +//Asks if you want to seal the biscuit, after you do that it behaves like normal paper biscuit. +/obj/item/folder/biscuit/unsealed/attack_self(mob/user) + add_fingerprint(user) + if (!sealed) + if (tgui_alert(user, "Do you want to seal it? You must crack it open to reach the contents again!", "Biscuit Sealing", list("Yes", "No")) != "Yes") + return + cracked = FALSE + sealed = TRUE + playsound(get_turf(user), 'sound/items/tape.ogg', 60) + icon_state = "[not_cracked_icon]" + update_appearance() + + return ..() + +/obj/item/folder/biscuit/unsealed/confidental + name = "\proper confidental biscuit card" + desc = "An confidental biscuit card. In a tasteful blue color with NT logo, looks like a chocolate bar. To reach contents you need to crack it open. Has label which says DO NOT DIGEST." + icon_state = "paperbiscuit_secret_cracked" + bg_color = "#355e9f" + not_cracked_icon = "paperbiscuit_secret" diff --git a/code/modules/paperwork/folders_premade.dm b/code/modules/paperwork/folders_premade.dm new file mode 100644 index 000000000000..a919dce944ce --- /dev/null +++ b/code/modules/paperwork/folders_premade.dm @@ -0,0 +1,63 @@ +/obj/item/folder/blue + desc = "A blue folder." + icon_state = "folder_blue" + +/obj/item/folder/red + desc = "A red folder." + icon_state = "folder_red" + +/obj/item/folder/yellow + desc = "A yellow folder." + icon_state = "folder_yellow" + +/obj/item/folder/white + desc = "A white folder." + icon_state = "folder_white" + +/obj/item/folder/solgov + desc = "A blue folder with a SolGov seal." + icon_state = "folder_solgov" + +/obj/item/folder/terragov + desc = "A green folder with a Terran Regency seal." + icon_state = "folder_terragov" + +/obj/item/folder/syndicate + desc = "A folder with a Syndicate color scheme." + icon_state = "folder_syndie" + +/obj/item/folder/documents + var/document = /obj/item/documents/nanotrasen + name = "folder- 'TOP SECRET'" + desc = "A folder stamped \"Top Secret - Property of Nanotrasen Corporation. Unauthorized distribution is punishable by death.\"" + +/obj/item/folder/documents/Initialize() + . = ..() + new document(src) + update_appearance() + +/obj/item/folder/documents/syndicate + icon_state = "folder_syndie" + name = "folder- 'TOP SECRET'" + desc = "A folder stamped \"Top Secret - Property of The Syndicate.\"" + +/obj/item/folder/documents/syndicate/red + document = /obj/item/documents/syndicate/red + icon_state = "folder_sred" + +/obj/item/folder/documents/syndicate/blue + document = /obj/item/documents/syndicate/blue + icon_state = "folder_sblue" + +/obj/item/folder/documents/syndicate/mining + document = /obj/item/documents/syndicate/mining + +/obj/item/folder/documents/solgov + document = /obj/item/documents/solgov + desc = "A blue folder with a SolGov seal." + icon_state = "folder_solgovred" + +/obj/item/folder/documents/terragov + document = /obj/item/documents/terragov + desc = "A green folder with a Terran Regency seal." + icon_state = "folder_terragovred" diff --git a/code/modules/projectiles/guns/gunhud.dm b/code/modules/projectiles/guns/gunhud.dm new file mode 100644 index 000000000000..9d1a40db8bb6 --- /dev/null +++ b/code/modules/projectiles/guns/gunhud.dm @@ -0,0 +1,287 @@ +/* +* Customizable ammo hud +* - Adapted from SR's gun hud. Most of the bad stuff was cut out and sprites were mostly replace by some azlan did years ago. +* - var names and code have been cleaned up, for the most parts. There still some weirdly named stuff like the number hud (wtf does OTH even mean?) +* - Most of this SHOULDN'T be used yet, only instance of this being used at the moment is the revolver which has completely differnt behavior +*/ + +/* +* This hud is controlled namely by the ammo_hud component. Generally speaking this is inactive much like all other hud components until it's needed. +* It does not do any calculations of it's own, you must do this externally. +* If you wish to use this hud, use the ammo_hud component or create another one which interacts with it via the below procs. +* proc/turn_off +* proc/turn_on +* proc/set_hud +* Check the gun_hud.dmi for all available icons you can use. +*/ + +// Ammo counter +#define ui_ammocounter "EAST-1:28,CENTER+1:25" + +///The gun needs to update the gun hud! +#define COMSIG_UPDATE_AMMO_HUD "update_ammo_hud" + +/datum/hud + var/atom/movable/screen/ammo_counter + +/atom/movable/screen/ammo_counter + name = "ammo counter" + icon = 'icons/hud/gun_hud.dmi' + icon_state = "backing" + screen_loc = ui_ammocounter + invisibility = INVISIBILITY_ABSTRACT + + ///This is the color assigned to the OTH backing, numbers and indicator. + var/backing_color = COLOR_RED + /// The prefix used for the hud + var/prefix = "" + + //Below are the OTH numbers, these are assigned by oX, tX and hX, x being the number you wish to display(0-9) + ///OTH position X00 + var/oth_o + ///OTH position 0X0 + var/oth_t + ///OTH position 00X + var/oth_h + ///This is the custom indicator sprite that will appear in the box at the bottom of the ammo hud, use this for something like semi/auto toggle on a gun. + var/indicator + +///This proc simply resets the hud to standard and removes it from the players visible hud. +/atom/movable/screen/ammo_counter/proc/turn_off() + invisibility = INVISIBILITY_ABSTRACT + maptext = null + backing_color = COLOR_RED + oth_o = "" + oth_t = "" + oth_h = "" + indicator = "" + update_appearance() + +///This proc turns the hud on, but does not set it to anything other than the currently set values +/atom/movable/screen/ammo_counter/proc/turn_on() + invisibility = 0 + +///This is the main proc for altering the hud's appeareance, it controls the setting of the overlays. Use the OTH and below variables to set it accordingly. +/atom/movable/screen/ammo_counter/proc/set_hud(_backing_color, _oth_o, _oth_t, _oth_h, _indicator) + backing_color = _backing_color + oth_o = _oth_o + oth_t = _oth_t + oth_h = _oth_h + indicator = _indicator + + update_appearance() + +/atom/movable/screen/ammo_counter/update_overlays(list/rounds) + . = ..() + cut_overlays() + if(oth_o) + var/mutable_appearance/o_overlay = mutable_appearance(icon, oth_o) + o_overlay.color = backing_color + . += o_overlay + if(oth_t) + var/mutable_appearance/t_overlay = mutable_appearance(icon, oth_t) + t_overlay.color = backing_color + . += t_overlay + if(oth_h) + var/mutable_appearance/h_overlay = mutable_appearance(icon, oth_h) + h_overlay.color = backing_color + . += h_overlay + if(indicator) + var/mutable_appearance/indicator_overlay = mutable_appearance(icon, indicator) + indicator_overlay.color = backing_color + . += indicator_overlay + if(!rounds) + return + + for(var/image/round as anything in rounds) + add_overlay(round) + +//*////////////////////////////////////////////////////////////////////////////////////////////////////////////* + +/datum/component/ammo_hud + var/atom/movable/screen/ammo_counter/hud + /// The prefix used for the hud + var/prefix = "" + var/backing_color = "#FFFFFF" // why was this hardcoded dlfhakhjdfj + +/datum/component/ammo_hud/Initialize() + . = ..() + if(!istype(parent, /obj/item/gun) && !istype(parent, /obj/item/weldingtool)) + return COMPONENT_INCOMPATIBLE + RegisterSignal(parent, COMSIG_ITEM_EQUIPPED, PROC_REF(wake_up)) + +/datum/component/ammo_hud/Destroy() + turn_off() + return ..() + +/datum/component/ammo_hud/proc/wake_up(datum/source, mob/user, slot) + SIGNAL_HANDLER + + if(ishuman(user)) + var/mob/living/carbon/human/H = user + if(H.is_holding(parent)) + if(H.hud_used) + hud = H.hud_used.ammo_counter + turn_on() + else + turn_off() + +/datum/component/ammo_hud/proc/turn_on() + SIGNAL_HANDLER + + RegisterSignal(parent, COMSIG_ITEM_DROPPED, PROC_REF(turn_off)) + RegisterSignal(parent, list(COMSIG_UPDATE_AMMO_HUD, COMSIG_GUN_CHAMBER_PROCESSED), PROC_REF(update_hud)) + + hud.turn_on() + update_hud() + +/datum/component/ammo_hud/proc/turn_off() + SIGNAL_HANDLER + + UnregisterSignal(parent, list(COMSIG_ITEM_DROPPED, COMSIG_UPDATE_AMMO_HUD, COMSIG_GUN_CHAMBER_PROCESSED)) + + if(hud) + hud.turn_off() + hud = null + +/// Returns get_ammo() with the appropriate args passed to it - some guns like the revolver and bow are special cases +/datum/component/ammo_hud/proc/get_accurate_ammo_count(obj/item/gun/ballistic/the_gun) + // fucking revolvers indeed - do not count empty or chambered rounds for the display HUD + if(istype(the_gun, /obj/item/gun/ballistic/revolver)) + var/obj/item/gun/ballistic/revolver/the_revolver = the_gun + return the_revolver.get_ammo(countchambered = FALSE, countempties = FALSE) + + // bows are also weird and shouldn't count the chambered + if(istype(the_gun, /obj/item/gun/ballistic/bow)) + return the_gun.get_ammo(countchambered = FALSE) + + return the_gun.get_ammo(countchambered = TRUE) + +/datum/component/ammo_hud/proc/get_accurate_laser_count(obj/item/gun/energy/the_gun) + var/obj/item/ammo_casing/energy/current_mode = the_gun.chambered + if(!current_mode) + return FALSE + return round(the_gun.cell.charge/current_mode.e_cost) + +/datum/component/ammo_hud/proc/update_hud() + SIGNAL_HANDLER + var/obj/item/gun/ballistic/pew = parent + hud.maptext = null + hud.icon_state = "[prefix]backing" + if(!pew.magazine) + hud.set_hud(backing_color, "[prefix]oe", "[prefix]te", "[prefix]he", "[prefix]no_mag") + return + if(!pew.get_ammo()) + hud.set_hud(backing_color, "[prefix]oe", "[prefix]te", "[prefix]he", "[prefix]empty_flash") + return + + var/indicator + var/rounds = num2text(get_accurate_ammo_count(pew)) + var/oth_o + var/oth_t + var/oth_h + + switch(length(rounds)) + if(1) + oth_o = "[prefix]o[rounds[1]]" + if(2) + oth_o = "[prefix]o[rounds[2]]" + oth_t = "[prefix]t[rounds[1]]" + if(3) + oth_o = "[prefix]o[rounds[3]]" + oth_t = "[prefix]t[rounds[2]]" + oth_h = "[prefix]h[rounds[1]]" + else + oth_o = "[prefix]o9" + oth_t = "[prefix]t9" + oth_h = "[prefix]h9" + hud.set_hud(backing_color, oth_o, oth_t, oth_h, indicator) + +/datum/component/ammo_hud/laser/update_hud() + var/obj/item/gun/energy/pew = parent + hud.maptext = null + hud.icon_state = "[prefix]backing" + if(!pew.cell) + hud.set_hud(backing_color, "[prefix]oe", "[prefix]te", "[prefix]he", "[prefix]no_mag") + return + if(!get_accurate_laser_count(pew)) + hud.set_hud(backing_color, "[prefix]oe", "[prefix]te", "[prefix]he", "[prefix]empty_flash") + return + + var/indicator + var/rounds = num2text(get_accurate_laser_count(pew)) + var/oth_o + var/oth_t + var/oth_h + + switch(length(rounds)) + if(1) + oth_o = "[prefix]o[rounds[1]]" + if(2) + oth_o = "[prefix]o[rounds[2]]" + oth_t = "[prefix]t[rounds[1]]" + if(3) + oth_o = "[prefix]o[rounds[3]]" + oth_t = "[prefix]t[rounds[2]]" + oth_h = "[prefix]h[rounds[1]]" + else + oth_o = "[prefix]o9" + oth_t = "[prefix]t9" + oth_h = "[prefix]h9" + hud.set_hud(backing_color, oth_o, oth_t, oth_h, indicator) + +/datum/component/ammo_hud/laser/cybersun + prefix = "cybersun_" + +/datum/component/ammo_hud/revolver + prefix = "revolver_" + +/// Returns get_ammo() with the appropriate args passed to it - some guns like the revolver and bow are special cases +/datum/component/ammo_hud/revolver/get_accurate_ammo_count(obj/item/gun/ballistic/revolver/the_gun) + if(istype(the_gun, /obj/item/gun/ballistic/revolver)) + var/obj/item/gun/ballistic/revolver/the_revolver = the_gun + if(the_revolver.magazine) + return the_revolver.magazine.ammo_list() + +/* //for counter-clockwise, kept here for reference + var/list/round_positions = list( + list("x" = 12,"y" = 22), + + list("x" = 20,"y" = 17), + list("x" = 20,"y" = 7 ), + list("x" = 12,"y" = 2 ), + list("x" = 4 ,"y" = 7 ), + list("x" = 4 ,"y" = 17) + ) +*/ + +/datum/component/ammo_hud/revolver/update_hud() + var/obj/item/gun/ballistic/revolver/pew = parent + hud.icon_state = "[prefix]backing" + + var/list/rounds = get_accurate_ammo_count(pew) + var/list/round_images = list() + var/list/round_positions = list( + list("x" = 12,"y" = 22), + + list("x" = 4 ,"y" = 17), + list("x" = 4 ,"y" = 7 ), + list("x" = 12,"y" = 2 ), + list("x" = 20,"y" = 7 ), + list("x" = 20,"y" = 17) + + ) + + var/bullet_count = 0 + for(var/obj/item/ammo_casing/bullet as anything in rounds) + bullet_count++ + if(!bullet) + continue + var/image/current_bullet_image = image(icon = 'icons/hud/gun_hud.dmi') + var/list/bullet_position = round_positions[bullet_count] + current_bullet_image.pixel_x = bullet_position["x"] + current_bullet_image.pixel_y = bullet_position["y"] + current_bullet_image.icon_state = "revolver_casing[bullet.BB ? "_live" : ""]" + round_images += current_bullet_image + + hud.update_overlays(round_images) diff --git a/code/modules/surgery/limb_grafting.dm b/code/modules/surgery/limb_grafting.dm new file mode 100644 index 000000000000..f3cc0d08d5c8 --- /dev/null +++ b/code/modules/surgery/limb_grafting.dm @@ -0,0 +1,117 @@ +// Formerly prosthetic_replacement.dm + +/datum/surgery/limb_grafting + name = "Limb grafting" + steps = list(/datum/surgery_step/incise, /datum/surgery_step/clamp_bleeders, /datum/surgery_step/retract_skin, /datum/surgery_step/graft_limb) + target_mobtypes = list(/mob/living/carbon/human, /mob/living/carbon/monkey) + possible_locs = list(BODY_ZONE_R_ARM, BODY_ZONE_L_ARM, BODY_ZONE_L_LEG, BODY_ZONE_R_LEG, BODY_ZONE_HEAD) + requires_bodypart = FALSE //need a missing limb + requires_bodypart_type = 0 + +/datum/surgery/limb_grafting/can_start(mob/user, mob/living/carbon/target) + if(!iscarbon(target)) + return 0 + var/mob/living/carbon/C = target + if(!C.get_bodypart(user.zone_selected)) //can only start if limb is missing + return 1 + +/datum/surgery_step/graft_limb + name = "graft limb" + implements = list( + /obj/item/bodypart = 100, + /obj/item/organ_storage = 100) +// /obj/item/chainsaw = 100, +// /obj/item/melee/synthetic_arm_blade = 100) +// Frankly these have always bothered me. They fill like a bad fit for Shiptest. +// Marking out for now. Keeping the later code used to install unconventional prostheses just in case someone finds a good use for it. + + time = 32 + experience_given = MEDICAL_SKILL_ORGAN_FIX //won't get full XP if rejected + var/organ_rejection_dam = 0 + +/datum/surgery_step/graft_limb/preop(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) + if(istype(tool, /obj/item/organ_storage)) + if(!tool.contents.len) + to_chat(user, "There is nothing inside [tool]!") + return -1 + var/obj/item/I = tool.contents[1] + if(!isbodypart(I)) + to_chat(user, "[I] cannot be attached!") + return -1 + tool = I + if(istype(tool, /obj/item/bodypart)) + var/obj/item/bodypart/BP = tool + if(ismonkey(target))// monkey patient only accept organic monkey limbs + if(!IS_ORGANIC_LIMB(BP) || BP.animal_origin != MONKEY_BODYPART) + to_chat(user, "[BP] doesn't match the patient's morphology.") + return -1 + if(IS_ORGANIC_LIMB(BP)) + organ_rejection_dam = 10 + if(ishuman(target)) + if(BP.animal_origin) + to_chat(user, "[BP] doesn't match the patient's morphology.") + return -1 + var/mob/living/carbon/human/H = target + if(H.dna.species.id != BP.limb_id) + organ_rejection_dam = 30 + + if(target_zone == BP.body_zone) //so we can't replace a leg with an arm, or a human arm with a monkey arm. + display_results(user, target, "You begin to replace [target]'s [parse_zone(target_zone)] with [tool]...", + "[user] begins to replace [target]'s [parse_zone(target_zone)] with [tool].", + "[user] begins to replace [target]'s [parse_zone(target_zone)].") + else + to_chat(user, "[tool] isn't the right type for [parse_zone(target_zone)].") + return -1 + else if(target_zone == BODY_ZONE_L_ARM || target_zone == BODY_ZONE_R_ARM) + display_results(user, target, "You begin to attach [tool] onto [target]...", + "[user] begins to attach [tool] onto [target]'s [parse_zone(target_zone)].", + "[user] begins to attach something onto [target]'s [parse_zone(target_zone)].") + else + to_chat(user, "[tool] must be installed onto an arm.") + return -1 + +/datum/surgery_step/graft_limb/success(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery, default_display_results = FALSE) + . = ..() + if(istype(tool, /obj/item/organ_storage)) + tool.icon_state = initial(tool.icon_state) + tool.desc = initial(tool.desc) + tool.cut_overlays() + tool = tool.contents[1] + if(istype(tool, /obj/item/bodypart) && user.temporarilyRemoveItemFromInventory(tool)) + var/obj/item/bodypart/L = tool + if(!L.attach_limb(target)) + display_results(user, target, "You fail in replacing [target]'s [parse_zone(target_zone)]! Their body has rejected [L]!", + "[user] fails to replace [target]'s [parse_zone(target_zone)]!", + "[user] fails to replaces [target]'s [parse_zone(target_zone)]!") + L.forceMove(target.loc) + return + if(organ_rejection_dam) + target.adjustToxLoss(organ_rejection_dam) + experience_given -= (round(organ_rejection_dam/10)) + display_results(user, target, "You succeed in replacing [target]'s [parse_zone(target_zone)].", + "[user] successfully replaces [target]'s [parse_zone(target_zone)] with [tool]!", + "[user] successfully replaces [target]'s [parse_zone(target_zone)]!") + return + else + var/obj/item/bodypart/L = target.new_body_part(target_zone, FALSE, FALSE) + L.is_pseudopart = TRUE + if(!L.attach_limb(target)) + display_results(user, target, "You fail in attaching [target]'s [parse_zone(target_zone)]! Their body has rejected [L]!", + "[user] fails to attach [target]'s [parse_zone(target_zone)]!", + "[user] fails to attach [target]'s [parse_zone(target_zone)]!") + L.forceMove(target.loc) + return + user.visible_message("[user] finishes attaching [tool]!", "You attach [tool].") + display_results(user, target, "You attach [tool].", + "[user] finishes attaching [tool]!", + "[user] finishes the attachment procedure!") + qdel(tool) + if(istype(tool, /obj/item/chainsaw)) + var/obj/item/mounted_chainsaw/new_arm = new(target) + target_zone == BODY_ZONE_R_ARM ? target.put_in_r_hand(new_arm) : target.put_in_l_hand(new_arm) + return + else if(istype(tool, /obj/item/melee/synthetic_arm_blade)) + var/obj/item/melee/arm_blade/new_arm = new(target,TRUE,TRUE) + target_zone == BODY_ZONE_R_ARM ? target.put_in_r_hand(new_arm) : target.put_in_l_hand(new_arm) + return + return ..() //if for some reason we fail everything we'll print out some text okay? diff --git a/code/modules/unit_tests/icons/inhands.dm b/code/modules/unit_tests/icons/inhands.dm new file mode 100644 index 000000000000..858c6d2f2840 --- /dev/null +++ b/code/modules/unit_tests/icons/inhands.dm @@ -0,0 +1,94 @@ +/// Makes sure items with defined item_states... actually have icons that exist! +/datum/unit_test/defined_item_states + var/static/list/possible_icon_states = list() + var/fallback_log_message + var/unset_inhand_var_message + /// additional_inhands_location is for downstream modularity support. as an example, for skyrat's usage, set additional_inhands_location = "modular_skyrat/master_files/icons/mob/inhands/" + /// Make sure this location is also present in tools/deploy.sh + /// If you need additional paths ontop of this second one, you can add another generate_possible_icon_states_list("your/folder/path/inhands/") below the if(additional_inhands_location) block in Run(), and make sure to add that path to tools/deploy.sh as well. + var/additional_inhands_location = null + +/datum/unit_test/defined_item_states/proc/generate_possible_icon_states_list(directory_path) + if(!directory_path) + directory_path = "icons/mob/inhands/" + for(var/file_path in flist(directory_path)) + if(findtext(file_path, ".dmi")) + for(var/sprite_icon in icon_states("[directory_path][file_path]", 1)) //2nd arg = 1 enables 64x64+ icon support, otherwise you'll end up with "sword0_1" instead of "sword" + possible_icon_states[sprite_icon] += list("[directory_path][file_path]") + else + possible_icon_states += generate_possible_icon_states_list("[directory_path][file_path]") + +/datum/unit_test/defined_item_states/Run() + generate_possible_icon_states_list() + if(additional_inhands_location) + generate_possible_icon_states_list(additional_inhands_location) + + //Add EVEN MORE paths if needed here! + //generate_possible_icon_states_list("your/folder/path/inhands/") + + for(var/obj/item/item_path as anything in subtypesof(/obj/item)) + if(initial(item_path.item_flags) & ABSTRACT) + continue + + var/skip_left + var/skip_right + + var/lefthand_file = initial(item_path.lefthand_file) + var/righthand_file = initial(item_path.righthand_file) + + var/item_state = initial(item_path.item_state) + if(!item_state) + var/base_icon_state = initial(item_path.icon_state) + if(!isnull(base_icon_state) && lefthand_file && righthand_file) //Suggest inhand icons that match with the icon_state var. + var/missing_var_message + if(base_icon_state in possible_icon_states) + for(var/file_place in possible_icon_states[base_icon_state]) + missing_var_message += (missing_var_message ? " & '[file_place]'" : " - Possible matching sprites for \"[base_icon_state]\" found in: '[file_place]'") + unset_inhand_var_message += "\n\t[item_path] does not have an item_state value[missing_var_message]" + continue + + var/match_message + if(item_state in possible_icon_states) + for(var/file_place in possible_icon_states[item_state]) + match_message += (match_message ? " & '[file_place]'" : " - Matching sprite found in: '[file_place]'") + + if(!(skip_left || skip_right) && !lefthand_file && !righthand_file) + TEST_FAIL("Missing both icon files for [item_path].\n\titem_state = \"[item_state]\"[match_message]") + continue + + var/missing_left + var/left_fallback + if(!skip_left) + if(!lefthand_file) + TEST_FAIL("Missing left inhand icon file for [item_path].\n\titem_state = \"[item_state]\"[match_message]") + else + missing_left = !icon_exists(lefthand_file, item_state) + if(missing_left && icon_exists(lefthand_file, "")) + left_fallback = TRUE + + var/missing_right + var/right_fallback + if(!skip_right) + if(!righthand_file) + TEST_FAIL("Missing right inhand icon file for [item_path].\n\titem_state = \"[item_state]\"[match_message]") + else + missing_right = !icon_exists(righthand_file, item_state) + if(missing_right && icon_exists(righthand_file, "")) + right_fallback = TRUE + + if(missing_right && missing_left) + if(!match_message && right_fallback && left_fallback) + fallback_log_message += "\n\t[item_path] has invalid value, using fallback icon.\n\titem_state = \"[item_state]\"" + continue + TEST_FAIL("Missing inhand sprites for [item_path] in both '[lefthand_file]' & '[righthand_file]'.\n\titem_state = \"[item_state]\"[match_message]") + else if(missing_left) + TEST_FAIL("Missing left inhand sprite for [item_path] in '[lefthand_file]'[left_fallback ? ", using fallback icon" : null].\n\titem_state = \"[item_state]\"[match_message]") + else if(missing_right) + TEST_FAIL("Missing right inhand sprite for [item_path] in '[righthand_file]'[right_fallback ? ", using fallback icon" : null].\n\titem_state = \"[item_state]\"[match_message]") + + if(fallback_log_message) + TEST_FAIL("Invalid item_state values should be set to null if there isn't a valid icon.[fallback_log_message]") + + if(unset_inhand_var_message) + log_test("\tNotice - Possible inhand icon matches found. It is best to be explicit with inhand sprite values.[unset_inhand_var_message]") + diff --git a/code/modules/unit_tests/icons/missing_icons.dm b/code/modules/unit_tests/icons/missing_icons.dm new file mode 100644 index 000000000000..f548d2844a0f --- /dev/null +++ b/code/modules/unit_tests/icons/missing_icons.dm @@ -0,0 +1,57 @@ +/// Makes sure objects actually have icons that exist! +/datum/unit_test/missing_icons + var/static/list/possible_icon_states = list() + /// additional_icon_location is for downstream modularity support. + /// Make sure this location is also present in tools/deploy.sh + /// If you need additional paths ontop of this second one, you can add another generate_possible_icon_states_list("your/folder/path/") below the if(additional_icon_location) block in Run(), and make sure to add that path to tools/deploy.sh as well. + var/additional_icon_location = null + +/datum/unit_test/missing_icons/proc/generate_possible_icon_states_list(directory_path) + if(!directory_path) + directory_path = "icons/obj/" + for(var/file_path in flist(directory_path)) + if(findtext(file_path, ".dmi")) + for(var/sprite_icon in icon_states("[directory_path][file_path]", 1)) //2nd arg = 1 enables 64x64+ icon support, otherwise you'll end up with "sword0_1" instead of "sword" + possible_icon_states[sprite_icon] += list("[directory_path][file_path]") + else + possible_icon_states += generate_possible_icon_states_list("[directory_path][file_path]") + +/datum/unit_test/missing_icons/Run() + generate_possible_icon_states_list() + generate_possible_icon_states_list("icons/effects/") + if(additional_icon_location) + generate_possible_icon_states_list(additional_icon_location) + + //Add EVEN MORE paths if needed here! + //generate_possible_icon_states_list("your/folder/path/") + var/list/bad_list = list() + for(var/obj/obj_path as anything in subtypesof(/obj)) + if(ispath(obj_path, /obj/item)) + var/obj/item/item_path = obj_path + if(initial(item_path.item_flags) & ABSTRACT) + continue + + var/icon = initial(obj_path.icon) + if(isnull(icon)) + continue + var/icon_state = initial(obj_path.icon_state) + if(isnull(icon_state)) + continue + + if(length(bad_list) && (icon_state in bad_list[icon])) + continue + + if(icon_exists(icon, icon_state)) + continue + + if(icon_state == "nothing") + continue + + bad_list[icon] += list(icon_state) + + var/match_message + if(icon_state in possible_icon_states) + for(var/file_place in possible_icon_states[icon_state]) + match_message += (match_message ? " & '[file_place]'" : " - Matching sprite found in: '[file_place]'") + TEST_FAIL("Missing icon_state for [obj_path] in '[icon]'.\n\ticon_state = \"[icon_state]\"[match_message]") + diff --git a/code/modules/unit_tests/icons/spritesheets.dm b/code/modules/unit_tests/icons/spritesheets.dm new file mode 100644 index 000000000000..c7c16c6535e8 --- /dev/null +++ b/code/modules/unit_tests/icons/spritesheets.dm @@ -0,0 +1,11 @@ +///Checks if spritesheet assets contain icon states with invalid names +/datum/unit_test/spritesheets + +/datum/unit_test/spritesheets/Run() + for(var/datum/asset/spritesheet/sheet as anything in subtypesof(/datum/asset/spritesheet)) + if(!initial(sheet.name)) //Ignore abstract types + continue + sheet = get_asset_datum(sheet) + for(var/sprite_name in sheet.sprites) + if(!sprite_name) + TEST_FAIL("Spritesheet [sheet.type] has a nameless icon state.") diff --git a/code/modules/unit_tests/icons/worn_icons.dm b/code/modules/unit_tests/icons/worn_icons.dm new file mode 100644 index 000000000000..eb2d84b73f68 --- /dev/null +++ b/code/modules/unit_tests/icons/worn_icons.dm @@ -0,0 +1,116 @@ +/// Makes sure suit slot items aren't using CS:S fallbacks. +/datum/unit_test/mob_overlay_icons + var/static/list/possible_icon_states = list() + /// additional_icon_location is for downstream modularity support for finding missing sprites in additonal DMI file locations. + /// Make sure this location is also present in tools/deploy.sh + /// If you need additional paths ontop of this second one, you can add another generate_possible_icon_states_list("your/folder/path/") below the if(additional_icon_location) block in Run(), and make sure to add that path to tools/deploy.sh as well. + var/additional_icon_location = null + +/datum/unit_test/mob_overlay_icons/proc/generate_possible_icon_states_list(directory_path) + if(!directory_path) + directory_path = "icons/mob/clothing/" + for(var/file_path in flist(directory_path)) + if(findtext(file_path, ".dmi")) + for(var/sprite_icon in icon_states("[directory_path][file_path]", 1)) //2nd arg = 1 enables 64x64+ icon support, otherwise you'll end up with "sword0_1" instead of "sword" + possible_icon_states[sprite_icon] += list("[directory_path][file_path]") + else + possible_icon_states += generate_possible_icon_states_list("[directory_path][file_path]") + +/datum/unit_test/mob_overlay_icons/Run() + generate_possible_icon_states_list() + if(additional_icon_location) + generate_possible_icon_states_list(additional_icon_location) + + var/list/already_warned_icons = list() + + for(var/obj/item/item_path as anything in (subtypesof(/obj/item/clothing))) + var/cached_slot_flags = initial(item_path.slot_flags) + if(!cached_slot_flags || (cached_slot_flags & ITEM_SLOT_LPOCKET) || (cached_slot_flags & ITEM_SLOT_RPOCKET) || initial(item_path.item_flags) & ABSTRACT) + continue + + var/mob_overlay_icon = initial(item_path.mob_overlay_icon) //override icon file. where our sprite is contained if set. (ie modularity stuff) + var/mob_overlay_state = initial(item_path.mob_overlay_state) //overrides icon_state. + var/icon_state = mob_overlay_state || initial(item_path.icon_state) //icon_state. what sprite name we are looking for. + + + if(isnull(icon_state)) + continue //no sprite for the item. + if(icon_state in already_warned_icons) + continue + + var/match_message + if(icon_state in possible_icon_states) + for(var/file_place in possible_icon_states[icon_state]) + match_message += (match_message ? " & '[file_place]'" : " - Matching sprite found in: '[file_place]'") + + if(mob_overlay_icon) //easiest to check since we override everything. this automatically includes downstream support. + if(!(icon_state in icon_states(mob_overlay_icon, 1))) + TEST_FAIL("[item_path] using invalid [mob_overlay_state ? "mob_overlay_state" : "icon_state"], \"[icon_state]\" in mob_overlay_icon override file, '[mob_overlay_icon]'[match_message]") + continue + + var/icon_file //checks against all the default icon locations if one isn't defined. + var/fail_reasons + var/spacer + + + if(cached_slot_flags & ITEM_SLOT_BACK) + icon_file = 'icons/mob/clothing/back.dmi' + + if(!(icon_state in icon_states(icon_file, 1))) + already_warned_icons += icon_state + fail_reasons += "[item_path] using invalid [mob_overlay_state ? "mob_overlay_state" : "icon_state"], \"[icon_state]\" in '[icon_file]'[match_message]" + spacer = "\n\t" + + /* + if(cached_slot_flags & ITEM_SLOT_ID) + icon_file = 'icons/mob/clothing/id.dmi' + if(!(icon_state in icon_states(icon_file, 1))) + already_warned_icons += icon_state + fail_reasons += "[spacer][item_path] using invalid [mob_overlay_state ? "mob_overlay_state" : "icon_state"], \"[icon_state]\" in '[icon_file]'[match_message]" + spacer = "\n\t" + */ + + if(cached_slot_flags & ITEM_SLOT_GLOVES) + icon_file = 'icons/mob/clothing/hands.dmi' + if(!(icon_state in icon_states(icon_file, 1))) + already_warned_icons += icon_state + fail_reasons += "[spacer][item_path] using invalid [mob_overlay_state ? "mob_overlay_state" : "icon_state"], \"[icon_state]\" in '[icon_file]'[match_message]" + spacer = "\n\t" + + if(cached_slot_flags & ITEM_SLOT_EYES) + icon_file = 'icons/mob/clothing/eyes.dmi' + if(!(icon_state in icon_states(icon_file, 1))) + already_warned_icons += icon_state + fail_reasons += "[spacer][item_path] using invalid [mob_overlay_state ? "mob_overlay_state" : "icon_state"], \"[icon_state]\" in '[icon_file]'[match_message]" + spacer = "\n\t" + + if(cached_slot_flags & ITEM_SLOT_EARS) + icon_file = 'icons/mob/clothing/ears.dmi' + if(!(icon_state in icon_states(icon_file, 1))) + already_warned_icons += icon_state + fail_reasons += "[spacer][item_path] using invalid [mob_overlay_state ? "mob_overlay_state" : "icon_state"], \"[icon_state]\" in '[icon_file]'[match_message]" + spacer = "\n\t" + + if(cached_slot_flags & ITEM_SLOT_NECK) + icon_file = 'icons/mob/clothing/neck.dmi' + if(!(icon_state in icon_states(icon_file, 1))) + already_warned_icons += icon_state + fail_reasons += "[spacer][item_path] using invalid [mob_overlay_state ? "mob_overlay_state" : "icon_state"], \"[icon_state]\" in '[icon_file]'[match_message]" + spacer = "\n\t" + + if(cached_slot_flags & ITEM_SLOT_MASK) + icon_file = 'icons/mob/clothing/mask.dmi' + if(!(icon_state in icon_states(icon_file, 1))) + already_warned_icons += icon_state + fail_reasons += "[spacer][item_path] using invalid [mob_overlay_state ? "mob_overlay_state" : "icon_state"], \"[icon_state]\" in '[icon_file]'[match_message]" + spacer = "\n\t" + + if(cached_slot_flags & ITEM_SLOT_BELT) + icon_file = 'icons/mob/clothing/belt.dmi' + if(!(icon_state in icon_states(icon_file, 1))) + already_warned_icons += icon_state + fail_reasons += "[spacer][item_path] using invalid [mob_overlay_state ? "mob_overlay_state" : "icon_state"], \"[icon_state]\" in '[icon_file]'[match_message]" + spacer = "\n\t" + + if(fail_reasons) + TEST_FAIL(fail_reasons) diff --git a/html/changelogs/archive/2024-04.yml b/html/changelogs/archive/2024-04.yml new file mode 100644 index 000000000000..277ae650feb3 --- /dev/null +++ b/html/changelogs/archive/2024-04.yml @@ -0,0 +1,76 @@ +2024-04-01: + phoaly, coleminerman, MeeMofCourse, Retlaw34: + - rscadd: Added the Crying Sun-class + - rscadd: Added PGF comms +2024-04-02: + goober3: + - tweak: Blood Cult content has been removed from all maps. + - rscdel: Jungle_demon.dmm, jungle_witch.dmm, lavaland_surface_cultaltar.dmm, lavaland_surface_fuckedupandevilclub.dmm, + clericden.dmm, and rockplanet_cult.dmm have been removed. + - tweak: Onehalf.dmm, rockplanet_crash_cult.dmm & icemoon_underground_abandoned_village.dmm + have been reworked slightly, to feature no more magic. +2024-04-08: + Apogee-dev: + - tweak: Remapped the Shetland + - balance: Removed RnD and ORM from Shetland + phoaly: + - tweak: tweaks supplies and kills the wall laptop on the Ranger +2024-04-09: + Imaginos16, spookywastaken: + - rscadd: Resprites a ton of gun magazines + - bugfix: Changes how magainzes with only a empty and loaded state are +2024-04-12: + Gristlebee: + - rscadd: Punching bags can be built with 5 cloth. + - rscadd: Bench press and chest press can be built with 5 metal. + - rscadd: Exercise equipment can be deconstructed. + Martinpachu: + - bugfix: Fixes MAA on the Colossus not being able to access the bridge. + Sadhorizon: + - tweak: Random blood packs now can roll Elzu and IPC blood. + SomeguyManperson: + - bugfix: anesthetic can no longer semi permanently knock people out + Yata9ar4su: + - rscadd: Fullscreen on F11 + Zxaber: + - tweak: You can now use drop / use inhand hotkey to retract and deploy arm implants + meemofcourse: + - rscadd: Long-range bluespace technologies in fax machines now allow the faxing + of photos. I am not responsible for any consequences that might result from + sending your faction's command personnel a photo of your character's ass. + phoaly: + - rscdel: Removed some old ships + - tweak: Aspawned the Lagoon and Junker + sapphicoverload, PestoVerde322, PacifistDalek: + - rscadd: turbines now provide thrust for ships + - tweak: turbines respect conservation of energy instead of moving gas around for + free + - tweak: turbine control console now shows the internal pressure of the turbine + - code_imp: refactored how gas flows through the turbine + - bugfix: fixed turbines making free energy from nowhere at low RPM + - bugfix: fixed turbines forcing air into the output turf when it's blocked + - bugfix: fixed turbines not updating air at the input and output turfs + - bugfix: fixed turbines disconnecting when docking and undocking + - imageadd: new turbine sprites + thgvr: + - rscadd: Suicide & Execution with a damaging firearm is now more deadly and gruesome. +2024-04-13: + FalloutFalcon: + - tweak: all radios start off + - tweak: all survival boxs start with a radio + Sun-Soaked: + - rscadd: Redesigns landmines as an item that can be picked up, disarmed, deployed. + Some logic courtesy of /tg/. + - rscadd: Adds a proximity explosive variant of landmines. + - bugfix: shrapnel embedding once again respects targeted limb and no longer runtimes + on hitting a wall or destroying an object. + - bugfix: storage can no longer pick up anchored objects, causing them to get stuck + inside + - balance: Nerfs the ability of heavy explosions to immediately breach to space + - soundadd: adds two mine detonation noises + - code_imp: moves weapon manufacturer defines to a DEFINE file + generalthrax: + - rscadd: Etherbor SG-8 Beam Pistol to cargo for 1000 credits + - rscadd: Etherbor BG-12 Beam Rifle to cargo for 3000 credits + - rscadd: Etherbor civilian weapon cells for 600 credits, slightly higher capacity + than the generic cells diff --git a/icons/hud/gun_hud.dmi b/icons/hud/gun_hud.dmi new file mode 100644 index 000000000000..a24f7f2964f3 Binary files /dev/null and b/icons/hud/gun_hud.dmi differ diff --git a/icons/mob/clothing/faction/clip/accessory.dmi b/icons/mob/clothing/faction/clip/accessory.dmi new file mode 100644 index 000000000000..733bb3d863e0 Binary files /dev/null and b/icons/mob/clothing/faction/clip/accessory.dmi differ diff --git a/icons/mob/clothing/faction/clip/belt.dmi b/icons/mob/clothing/faction/clip/belt.dmi new file mode 100644 index 000000000000..befce1b54b10 Binary files /dev/null and b/icons/mob/clothing/faction/clip/belt.dmi differ diff --git a/icons/mob/clothing/faction/clip/hands.dmi b/icons/mob/clothing/faction/clip/hands.dmi new file mode 100644 index 000000000000..8e35e752ab8c Binary files /dev/null and b/icons/mob/clothing/faction/clip/hands.dmi differ diff --git a/icons/mob/clothing/faction/clip/head.dmi b/icons/mob/clothing/faction/clip/head.dmi new file mode 100644 index 000000000000..2122a9a2f328 Binary files /dev/null and b/icons/mob/clothing/faction/clip/head.dmi differ diff --git a/icons/mob/clothing/faction/clip/mask.dmi b/icons/mob/clothing/faction/clip/mask.dmi new file mode 100644 index 000000000000..a46424e63096 Binary files /dev/null and b/icons/mob/clothing/faction/clip/mask.dmi differ diff --git a/icons/mob/clothing/faction/clip/suits.dmi b/icons/mob/clothing/faction/clip/suits.dmi new file mode 100644 index 000000000000..f7a64dc8b320 Binary files /dev/null and b/icons/mob/clothing/faction/clip/suits.dmi differ diff --git a/icons/mob/clothing/faction/clip/uniforms.dmi b/icons/mob/clothing/faction/clip/uniforms.dmi new file mode 100644 index 000000000000..71ad9e1b6a3e Binary files /dev/null and b/icons/mob/clothing/faction/clip/uniforms.dmi differ diff --git a/icons/mob/inhands/clothing/ears_lefthand.dmi b/icons/mob/inhands/clothing/ears_lefthand.dmi new file mode 100644 index 000000000000..61b186a7b21c Binary files /dev/null and b/icons/mob/inhands/clothing/ears_lefthand.dmi differ diff --git a/icons/mob/inhands/clothing/ears_righthand.dmi b/icons/mob/inhands/clothing/ears_righthand.dmi new file mode 100644 index 000000000000..39558ef9496e Binary files /dev/null and b/icons/mob/inhands/clothing/ears_righthand.dmi differ diff --git a/icons/mob/inhands/clothing/glasses_lefthand.dmi b/icons/mob/inhands/clothing/glasses_lefthand.dmi new file mode 100644 index 000000000000..34c9e47dc24b Binary files /dev/null and b/icons/mob/inhands/clothing/glasses_lefthand.dmi differ diff --git a/icons/mob/inhands/clothing/glasses_righthand.dmi b/icons/mob/inhands/clothing/glasses_righthand.dmi new file mode 100644 index 000000000000..43282d028c6a Binary files /dev/null and b/icons/mob/inhands/clothing/glasses_righthand.dmi differ diff --git a/icons/mob/inhands/clothing/gloves_lefthand.dmi b/icons/mob/inhands/clothing/gloves_lefthand.dmi new file mode 100644 index 000000000000..19d3ce28517e Binary files /dev/null and b/icons/mob/inhands/clothing/gloves_lefthand.dmi differ diff --git a/icons/mob/inhands/clothing/gloves_righthand.dmi b/icons/mob/inhands/clothing/gloves_righthand.dmi new file mode 100644 index 000000000000..bca7fd504359 Binary files /dev/null and b/icons/mob/inhands/clothing/gloves_righthand.dmi differ diff --git a/icons/mob/inhands/clothing/hats_lefthand.dmi b/icons/mob/inhands/clothing/hats_lefthand.dmi new file mode 100644 index 000000000000..d63c5c7d673a Binary files /dev/null and b/icons/mob/inhands/clothing/hats_lefthand.dmi differ diff --git a/icons/mob/inhands/clothing/hats_righthand.dmi b/icons/mob/inhands/clothing/hats_righthand.dmi new file mode 100644 index 000000000000..c34438f09928 Binary files /dev/null and b/icons/mob/inhands/clothing/hats_righthand.dmi differ diff --git a/icons/mob/inhands/clothing/masks_lefthand.dmi b/icons/mob/inhands/clothing/masks_lefthand.dmi new file mode 100644 index 000000000000..33be3dfee0b5 Binary files /dev/null and b/icons/mob/inhands/clothing/masks_lefthand.dmi differ diff --git a/icons/mob/inhands/clothing/masks_righthand.dmi b/icons/mob/inhands/clothing/masks_righthand.dmi new file mode 100644 index 000000000000..e34e8cdd2c72 Binary files /dev/null and b/icons/mob/inhands/clothing/masks_righthand.dmi differ diff --git a/icons/mob/inhands/clothing/shoes_lefthand.dmi b/icons/mob/inhands/clothing/shoes_lefthand.dmi new file mode 100644 index 000000000000..7e1a796f1fcf Binary files /dev/null and b/icons/mob/inhands/clothing/shoes_lefthand.dmi differ diff --git a/icons/mob/inhands/clothing/shoes_righthand.dmi b/icons/mob/inhands/clothing/shoes_righthand.dmi new file mode 100644 index 000000000000..383f01dc49be Binary files /dev/null and b/icons/mob/inhands/clothing/shoes_righthand.dmi differ diff --git a/icons/mob/inhands/clothing/suits_lefthand.dmi b/icons/mob/inhands/clothing/suits_lefthand.dmi new file mode 100644 index 000000000000..8b9fa5256a93 Binary files /dev/null and b/icons/mob/inhands/clothing/suits_lefthand.dmi differ diff --git a/icons/mob/inhands/clothing/suits_righthand.dmi b/icons/mob/inhands/clothing/suits_righthand.dmi new file mode 100644 index 000000000000..989b7c0860ae Binary files /dev/null and b/icons/mob/inhands/clothing/suits_righthand.dmi differ diff --git a/icons/obj/atmospherics/components/turbine.dmi b/icons/obj/atmospherics/components/turbine.dmi new file mode 100644 index 000000000000..6e499911a75b Binary files /dev/null and b/icons/obj/atmospherics/components/turbine.dmi differ diff --git a/icons/obj/clothing/faction/clip/accessory.dmi b/icons/obj/clothing/faction/clip/accessory.dmi new file mode 100644 index 000000000000..dd081c9f9ca8 Binary files /dev/null and b/icons/obj/clothing/faction/clip/accessory.dmi differ diff --git a/icons/obj/clothing/faction/clip/belt.dmi b/icons/obj/clothing/faction/clip/belt.dmi new file mode 100644 index 000000000000..bd513a28c2f2 Binary files /dev/null and b/icons/obj/clothing/faction/clip/belt.dmi differ diff --git a/icons/obj/clothing/faction/clip/hands.dmi b/icons/obj/clothing/faction/clip/hands.dmi new file mode 100644 index 000000000000..ad3700cf5f61 Binary files /dev/null and b/icons/obj/clothing/faction/clip/hands.dmi differ diff --git a/icons/obj/clothing/faction/clip/head.dmi b/icons/obj/clothing/faction/clip/head.dmi new file mode 100644 index 000000000000..3982f324b9a2 Binary files /dev/null and b/icons/obj/clothing/faction/clip/head.dmi differ diff --git a/icons/obj/clothing/faction/clip/mask.dmi b/icons/obj/clothing/faction/clip/mask.dmi new file mode 100644 index 000000000000..646c90868cdd Binary files /dev/null and b/icons/obj/clothing/faction/clip/mask.dmi differ diff --git a/icons/obj/clothing/faction/clip/suits.dmi b/icons/obj/clothing/faction/clip/suits.dmi new file mode 100644 index 000000000000..16390028fee7 Binary files /dev/null and b/icons/obj/clothing/faction/clip/suits.dmi differ diff --git a/icons/obj/clothing/faction/clip/uniforms.dmi b/icons/obj/clothing/faction/clip/uniforms.dmi new file mode 100644 index 000000000000..c736bc109bf8 Binary files /dev/null and b/icons/obj/clothing/faction/clip/uniforms.dmi differ diff --git a/icons/obj/drinks/bottle.dmi b/icons/obj/drinks/bottle.dmi new file mode 100644 index 000000000000..cf74d73796c8 Binary files /dev/null and b/icons/obj/drinks/bottle.dmi differ diff --git a/icons/obj/drinks/drinks.dmi b/icons/obj/drinks/drinks.dmi new file mode 100644 index 000000000000..03fdf63dd00b Binary files /dev/null and b/icons/obj/drinks/drinks.dmi differ diff --git a/icons/obj/implants/implant.dmi b/icons/obj/implants/implant.dmi new file mode 100644 index 000000000000..31bd68db0caf Binary files /dev/null and b/icons/obj/implants/implant.dmi differ diff --git a/icons/obj/landmine.dmi b/icons/obj/landmine.dmi new file mode 100644 index 000000000000..dd19fd9d3991 Binary files /dev/null and b/icons/obj/landmine.dmi differ diff --git a/icons/stamp_icons/large_stamp-clip.png b/icons/stamp_icons/large_stamp-clip.png new file mode 100644 index 000000000000..82872f034be5 Binary files /dev/null and b/icons/stamp_icons/large_stamp-clip.png differ diff --git a/sound/items/mine_activate.ogg b/sound/items/mine_activate.ogg new file mode 100644 index 000000000000..ed39ba283be7 Binary files /dev/null and b/sound/items/mine_activate.ogg differ diff --git a/sound/items/mine_activate_short.ogg b/sound/items/mine_activate_short.ogg new file mode 100644 index 000000000000..8c6e81a06bbe Binary files /dev/null and b/sound/items/mine_activate_short.ogg differ diff --git a/sound/misc/trenchwhistle.ogg b/sound/misc/trenchwhistle.ogg new file mode 100644 index 000000000000..24ca6772547a Binary files /dev/null and b/sound/misc/trenchwhistle.ogg differ diff --git a/sound/roundend/boowomp.ogg b/sound/roundend/boowomp.ogg new file mode 100644 index 000000000000..1a1ed5878b10 Binary files /dev/null and b/sound/roundend/boowomp.ogg differ diff --git a/sound/roundend/deliguana.ogg b/sound/roundend/deliguana.ogg new file mode 100644 index 000000000000..058900271040 Binary files /dev/null and b/sound/roundend/deliguana.ogg differ diff --git a/sound/roundend/gayrights.ogg b/sound/roundend/gayrights.ogg new file mode 100644 index 000000000000..230a421f0096 Binary files /dev/null and b/sound/roundend/gayrights.ogg differ diff --git a/sound/roundend/repair.ogg b/sound/roundend/repair.ogg new file mode 100644 index 000000000000..756abb5a4b7c Binary files /dev/null and b/sound/roundend/repair.ogg differ diff --git a/sound/roundend/shiptestingthursday.ogg b/sound/roundend/shiptestingthursday.ogg new file mode 100644 index 000000000000..9943d78f7262 Binary files /dev/null and b/sound/roundend/shiptestingthursday.ogg differ diff --git a/sound/roundend/undecided.ogg b/sound/roundend/undecided.ogg new file mode 100644 index 000000000000..604cbe8b6dc9 Binary files /dev/null and b/sound/roundend/undecided.ogg differ diff --git a/sound/roundstart/addiguana.ogg b/sound/roundstart/addiguana.ogg new file mode 100644 index 000000000000..8b21b9835516 Binary files /dev/null and b/sound/roundstart/addiguana.ogg differ diff --git a/sound/weapons/gun/laser/cs-fire.ogg b/sound/weapons/gun/laser/cs-fire.ogg new file mode 100644 index 000000000000..a773bd203d12 Binary files /dev/null and b/sound/weapons/gun/laser/cs-fire.ogg differ diff --git a/sound/weapons/gun/revolver/spin_single.ogg b/sound/weapons/gun/revolver/spin_single.ogg new file mode 100644 index 000000000000..46cbcb2ad5dc Binary files /dev/null and b/sound/weapons/gun/revolver/spin_single.ogg differ diff --git a/tgui/packages/tgui/interfaces/Clipboard.js b/tgui/packages/tgui/interfaces/Clipboard.js new file mode 100644 index 000000000000..82e9001335da --- /dev/null +++ b/tgui/packages/tgui/interfaces/Clipboard.js @@ -0,0 +1,107 @@ +import { useBackend } from '../backend'; +import { + Box, + Button, + Divider, + LabeledList, + Flex, + Section, +} from '../components'; +import { Window } from '../layouts'; + +export const Clipboard = (props, context) => { + const { act, data } = useBackend(context); + const { pen, top_paper, top_paper_ref, paper, paper_ref } = data; + return ( + + +
+ {pen ? ( + + act('remove_pen')} /> + } + > + {pen} + + + ) : ( + + No pen attached! + + )} +
+ + {top_paper ? ( + + + {top_paper} + + +