From 9a49824d63b05118829a0471c63de286b2ef4b0f Mon Sep 17 00:00:00 2001 From: Ian Turk Date: Wed, 11 Jul 2018 22:38:09 -0700 Subject: [PATCH] Added Free Miners --- _maps/RandomRuins/SpaceRuins/asteroid2.dmm | 2080 +++++- _maps/RandomRuins/SpaceRuins/asteroid5.dmm | 2182 ++++-- .../SpaceRuins/freeminer_asteroid.dmm | 6601 +++++++++++++++++ _maps/shuttles/whiteship_miner.dmm | 1769 +++++ code/__DEFINES/~yogs_defines/access.dm | 4 +- code/game/mecha/mecha_wreckage.dm | 1 + code/modules/mapping/ruins.dm | 13 +- yogstation.dme | 5 +- yogstation/code/datums/ruins/free_miners.dm | 187 + yogstation/code/datums/shuttles.dm | 3 + yogstation/code/game/mecha/mecha_wreckage.dm | 265 + .../circuitboards/computer_circuitboards.dm | 3 + 12 files changed, 12295 insertions(+), 818 deletions(-) create mode 100644 _maps/RandomRuins/SpaceRuins/freeminer_asteroid.dmm create mode 100644 _maps/shuttles/whiteship_miner.dmm create mode 100644 yogstation/code/datums/ruins/free_miners.dm create mode 100644 yogstation/code/datums/shuttles.dm create mode 100644 yogstation/code/game/mecha/mecha_wreckage.dm create mode 100644 yogstation/code/game/objects/items/circuitboards/computer_circuitboards.dm diff --git a/_maps/RandomRuins/SpaceRuins/asteroid2.dmm b/_maps/RandomRuins/SpaceRuins/asteroid2.dmm index 22c54103f0a9..5178f6c6e23e 100644 --- a/_maps/RandomRuins/SpaceRuins/asteroid2.dmm +++ b/_maps/RandomRuins/SpaceRuins/asteroid2.dmm @@ -1,16 +1,28 @@ -//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE "a" = ( -/turf/template_noop, -/area/template_noop) -"b" = ( +/turf/open/space, +/area/space) +"x" = ( /turf/open/floor/plating/asteroid/airless, -/area/ruin/unpowered/no_grav) -"c" = ( -/turf/closed/mineral, -/area/ruin/unpowered/no_grav) -"d" = ( +/area/ruin/unpowered) +"K" = ( +/mob/living/simple_animal/hostile/asteroid/goliath, +/turf/open/floor/plating/asteroid/airless, +/area/ruin/unpowered) +"N" = ( +/obj/docking_port/stationary{ + dir = 2; + dwidth = 11; + height = 22; + id = "whiteship_mining2"; + name = "Medium Asteroid"; + width = 35 + }, +/turf/open/space, +/area/space) +"Y" = ( /turf/closed/mineral/random/high_chance, -/area/ruin/unpowered/no_grav) +/area/ruin/unpowered) (1,1,1) = {" a @@ -29,17 +41,81 @@ a a a a -b +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a a "} (2,1,1) = {" a a a -b -b -b -b +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a a a a @@ -55,16 +131,48 @@ a (3,1,1) = {" a a -b -b -b -b -b a -b -b -b -b +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a a a a @@ -74,300 +182,780 @@ a "} (4,1,1) = {" a -b -b -b -b -b -b -b -b -b -b -b -b a a -b +a +a +a +a +a +a +a +a +a +a +a +a +a +a +x +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a a a "} (5,1,1) = {" a -b -b -b -c -c -c -c -b -b -b -b -b -b +a +a +a +x +x +x +x +a +a +a +a +a +a +x +x +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a a a a a "} (6,1,1) = {" -b -b -b -b -c -c -c -c -d -d -d -d -d -b +a +a +a +x +x +x +x +x +a +x +x +x +x +a +x +x +x +x +x +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a a a a a "} (7,1,1) = {" -b -b -b -c -c -c -c -c -d -d -d -d -d -b -b -b +a +a +x +x +x +x +x +x +x +x +x +x +x +x +x +x +x +x +x +x +x +x +x +a +a +a +a +x +x +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a a a "} (8,1,1) = {" -b -b -c -c -c -c -d -c -c -c -c -c -c -b -b -b +a +a +x +x +x +Y +Y +Y +Y +x +x +x +x +x +Y +Y +Y +x +x +x +x +Y +Y +Y +Y +x +x +Y +x +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a a a "} (9,1,1) = {" -b -b -b -c -c -c -d -c -c -c -c -d -d -d -c -b -b +a +x +x +x +x +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +x +Y +Y +Y +Y +Y +Y +x +Y +x +x +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a a "} (10,1,1) = {" a -b -b -b -c -c -d -d -c -c -d -d -c -c -c -b -b +x +x +x +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +x +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a a "} (11,1,1) = {" a -b -b -b -c -c -c -d -d -d -d -d -c -c -c -b -b +x +x +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +x +Y +Y +Y +Y +Y +Y +Y +Y +x +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a a "} (12,1,1) = {" a +x +x +x +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +x +x +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a a -b -b -d -d -c -d -d -d -d -c -c -c -d -c -b a "} (13,1,1) = {" a a -b -b -d -d -d -c -c -c -c -c -c -c -c -c -b -b +x +x +x +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +x +x +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a "} (14,1,1) = {" a a -b -b -b -b -b -c -c -c -c -c -c -d -c -c -c -b +x +x +x +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +x +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a "} (15,1,1) = {" a a a +x +x +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +x +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a a -b -b -b -c -d -c -c -d -d -d -c -c -c -b "} (16,1,1) = {" a a a +x +x +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +x +x +a +a +a +a +a +a +a +a +a +a +a +a +a a a a -b -b -b -c -c -d -d -d -b -b -b -b "} (17,1,1) = {" a -b +a +a +x +x +x +x +x +Y +Y +Y +Y +Y +Y +Y +Y +Y +x +K +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +x +a +a +a +a +a +a +a +a +a +a a a a a -b -b -b -b -b -b -b -b -b -b a a "} (18,1,1) = {" a -b -b +a +a +a +a +x +x +x +Y +Y +Y +Y +Y +Y +Y +Y +Y +x +x +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +x +a +a +a +a +a +a +a +a a a a a a -b -b -b -b -b -b -b a a a @@ -380,20 +968,1020 @@ a a a a +x +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +x +x +x +a +a +a +a +a +a +a +a +a +a +a +a a -b -b -b -b -b -b -b a a a "} (20,1,1) = {" -b +a +a +x +a +a +a +x +x +x +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +x +x +x +x +x +a +a +N +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(21,1,1) = {" +a +a +x +x +a +a +a +x +x +x +x +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +x +x +x +x +x +Y +Y +x +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(22,1,1) = {" +a +a +a +a +a +a +a +a +x +x +x +x +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +x +x +x +x +x +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(23,1,1) = {" +a +x +a +a +a +a +a +a +a +x +x +x +x +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +x +x +x +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(24,1,1) = {" +a +a +a +a +a +a +a +a +a +a +x +x +x +x +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +x +x +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(25,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +a +x +x +x +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +x +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(26,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +a +x +x +x +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +x +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(27,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +a +a +a +x +x +x +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +x +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(28,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +x +x +x +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +x +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(29,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +x +x +x +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +x +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(30,1,1) = {" +a +a +a +a +x +x +a +a +a +a +a +a +a +a +a +a +a +a +x +x +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +Y +x +x +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(31,1,1) = {" +a +a +a +x +Y +Y +x +a +a +a +a +a +a +a +a +a +a +a +a +x +x +Y +Y +Y +Y +Y +Y +Y +Y +Y +x +x +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(32,1,1) = {" +a +a +a +x +Y +Y +Y +x +a +a +a +a +a +a +a +a +a +a +a +a +x +x +x +x +x +Y +x +x +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(33,1,1) = {" +a +a +a +x +Y +Y +Y +x +a +a +a +a +a +a +a +a +a +a +a +a +a +a +x +x +x +x +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(34,1,1) = {" +a +a +a +x +x +x +x +x +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(35,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(36,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(37,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(38,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a a a a diff --git a/_maps/RandomRuins/SpaceRuins/asteroid5.dmm b/_maps/RandomRuins/SpaceRuins/asteroid5.dmm index 04f3e57b3ea8..2eeeae1e5cf7 100644 --- a/_maps/RandomRuins/SpaceRuins/asteroid5.dmm +++ b/_maps/RandomRuins/SpaceRuins/asteroid5.dmm @@ -1,16 +1,24 @@ -//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE "a" = ( -/turf/template_noop, -/area/template_noop) -"b" = ( -/turf/closed/mineral, -/area/ruin/unpowered) +/turf/open/space, +/area/space) "c" = ( /turf/closed/mineral/random/high_chance, /area/ruin/unpowered) "d" = ( /turf/open/floor/plating/asteroid/airless, /area/ruin/unpowered) +"o" = ( +/obj/docking_port/stationary{ + dir = 2; + dwidth = 11; + height = 22; + id = "whiteship_mining1"; + name = "Small Asteroid"; + width = 35 + }, +/turf/open/space, +/area/space) (1,1,1) = {" a @@ -43,10 +51,34 @@ a a a a -b -c -c -c +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a a a a @@ -83,12 +115,36 @@ a a a a -b +a c c c c -b +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a a a "} @@ -98,10 +154,6 @@ a a a a -b -b -c -c a a a @@ -121,16 +173,44 @@ a a a a -d -d -d -b +a +a +a +a +a +a +a c c c -b -b -b +c +c +c +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a "} (4,1,1) = {" a @@ -138,11 +218,14 @@ a a a a -b -b -b -b -b +a +c +c +c +c +a +a +a a a a @@ -162,30 +245,52 @@ a d d d -d -d -b -b -b -b -b -b -b +c +c +c +c +c +c +c +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a "} (5,1,1) = {" a a a +a +a +a c c c -b -b -b -b -b -b -b +c +c +a +a +a a a a @@ -204,28 +309,49 @@ d d d d -b -b -b -b -b -b -b +c +c +c +c +c +c +c +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a "} (6,1,1) = {" a a a +a +c +c +c c c c c -b -b -b -b -b -b c c c @@ -237,35 +363,62 @@ a a a a -b -b +a +a +a +a +a d d d d -b -b -b -b -b -b -b -b +d +c +c +c +c +c +c +c +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a "} (7,1,1) = {" a a a +a +c +c +c +c +c +c c c c c -b -b -b -b -b -b c c c @@ -276,39 +429,63 @@ a a a a -b +a +c +c d d d d -b c c c c -b -b -b -b -b +c +c +c +c +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a "} (8,1,1) = {" a a -b +a +a +c +c +c +c +c +c +c +c +c +c c c c -b -b -b -d -d -d -d -b -b -b a a a @@ -316,75 +493,123 @@ a a a a +c +d d d d -b -b -b c c c c -b -b c c +c +c +c +c +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a a "} (9,1,1) = {" a a -b -b -b -b -b +a +c +c +c +c +c +c +c d d d d -d -d -d -d -b +c +c +c +a a a a a a a -b d d -b -b -b -b c c c c -b -b c c +c +c +c +c +c +c +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a a "} (10,1,1) = {" a -b -b -b -b -b +a +a +c +c +c +c c d d d -a -a +d +d d d d @@ -395,10 +620,9 @@ a a a a +c d d -d -b c c c @@ -406,39 +630,41 @@ c c c c -b -b -b -b +c +c +c +c +c +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a a "} (11,1,1) = {" a -b -b -b -b -b -d -d a -a -a -a -d -d -d -b -a -a -a -a -a -a -d -d -b -b +c +c c c c @@ -446,29 +672,76 @@ c d d d -b -b -b +a +a +d +d +d +c +a +a +a +a +a +a +d +d +d +c +c +c +c +c +c +c +c +c +c +c +c +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a a a "} (12,1,1) = {" a -b -b -b -b +a +c +c +c +c +c d d a a a a -a -a -a -a -a +d +d +d +c a a a @@ -480,23 +753,47 @@ d c c c +c +c +c d d d -d -d -d -b -b -b -b +c +c +c +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a a "} (13,1,1) = {" a -b -b -b +a +c +c +c c d d @@ -514,185 +811,306 @@ a a a a -b +a d d c c -b -d -d c d d d -b -b -b -b +d +d +d +c +c +c +c +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a a "} (14,1,1) = {" a -b -b -b -c -d a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -d -d -b c c -b +c +c d d -b +a +a +a +a +a +a +a +a +a +a +a +a +a +a +c +d +d +c +c +c +d +d +c d d d -b -b -b -b +c +c +c +c +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a a "} (15,1,1) = {" -b -b -b -d -d -d a a -a -a -a -b -a -a -a -a -a -a -a -a -a -d -d -b c c -b -b -b -b +c +c +d +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +d +d +c +c +c +c +d +d +c d d d -b -b -b -b +c +c +c +c +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a a "} (16,1,1) = {" -b -b -b -d -d -d a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -d -d -b c c -b -b +c d d d +a +a +a +a +a +c +a +a +a +a +a +a +a +a +a d d -b -b -b -b -b +c +c +c +c +c +c +c +d +d +d +c +c +c +c +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a "} (17,1,1) = {" -b -b -b -d -d -d a -a -a -a -a -a -a -a -a -b -b -b -a -a -a -d -d -b -b -b -b -b -d -d -d -d -b -b -b -b c c +c +d +d +d +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +d +d +c +c +c +c +c +d +d +d +d +d +c +c +c +c +c +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a "} (18,1,1) = {" +a +c c c d @@ -700,39 +1118,62 @@ d d a a -b -b a a a a a a -b -b -b -b +a +c +c +c +a a a d d -b -b -b -b +c +c +c +c +c +d d d d c -b -b c c -b c c +c +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a "} (19,1,1) = {" +a c c d @@ -740,39 +1181,63 @@ d d a a -b -b -b -a -a -a -a -b -b c c -b a a -b +a +a +a +a +c +c +c +c +a +a d -b -b -b -b +d +c +c +c +c d d d -b -b -b c c -b c c +c +c +c +c +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a "} (20,1,1) = {" +a c c d @@ -780,82 +1245,130 @@ d d a a -b -b -b -a -a -a -a -b -b -b -a -a -a -a -b -d -d -d -b -b -d -d -d -d -b -b -b -b -b c c +c +a +a +a +a +c +c +c +c +c +a +a +c +d +c +c +c +c +d +d +d +c +c +c +c +c +c +c +c +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a "} (21,1,1) = {" +a c c -b +d d d a a +c +c +c a a a a +c +c +c a a a a -a -a -a -a -a -a -b +c +d +d +d +c +c +d d d d c c c -b -d -d -b -b -b -b -b -b -b +c +c +c +c +a +o +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a "} (22,1,1) = {" -b -b -b +a +c +c +c d d a @@ -874,29 +1387,52 @@ a a a a -a +c d d d c c c -b +c d d -b -b -b -b -b -b -b +c +c +c +c +c +c +c +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a "} (23,1,1) = {" a -b -b -d +c +c +c d d a @@ -907,7 +1443,6 @@ a a a a -b a a a @@ -920,27 +1455,51 @@ a d d d +c +c +c +c d d -d -d -b -b -b -b -b -b +c +c +c +c +c +c +c +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a a "} (24,1,1) = {" a -b -b +a +c c d d d -d a a a @@ -949,35 +1508,61 @@ a a a a -a -a -a -a -a -a -a -a -b c +a +a +a +a +a +a +a +a +a d d d d d -b -b -b -b -b -b +d +d +c +c +c +c +c +c +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a a "} (25,1,1) = {" a -b -b -b -b +a +c +c +c +d d d d @@ -997,8 +1582,8 @@ a a a a -a -a +c +c d d d @@ -1006,7 +1591,30 @@ d d c c -b +c +c +c +c +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a a a a @@ -1014,10 +1622,11 @@ a "} (26,1,1) = {" a -b -b -b -b +a +c +c +c +c d d d @@ -1039,6 +1648,29 @@ a a a a +d +d +d +d +d +c +c +c +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a a a a @@ -1054,18 +1686,43 @@ a "} (27,1,1) = {" a -b -b +a c c -b -b -b -a -a -a -b -b +c +c +d +d +d +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a a a a @@ -1074,7 +1731,6 @@ a a a a -b a a a @@ -1095,27 +1751,51 @@ a (28,1,1) = {" a a -b c c -b -b -b -b -b -b -b -b +c +c +c +c +c +a +a +a +c +c +a +a +a +a +a +a +a +a +c +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a a a a a -d -d -d -b -b -b a a a @@ -1136,16 +1816,17 @@ a a a a -a -a -a -b -b -b -b -b -a -a +c +c +c +c +c +c +c +c +c +c +c a a a @@ -1154,8 +1835,31 @@ d d d c -b -b +c +c +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a a a a @@ -1180,10 +1884,11 @@ a a a a -a -a -a -a +c +c +c +c +c a a a @@ -1193,12 +1898,35 @@ a d d d -b -b -b -b -b -b +c +c +c +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a a a a @@ -1228,18 +1956,42 @@ a a a a +a +a +a d d d -d -d -b -b -b -b -b -b -b +c +c +c +c +c +c +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a a a a @@ -1268,18 +2020,42 @@ a a a a +a +d +d d d d -b -b -b -b -b -b -b -b c +c +c +c +c +c +c +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a a a a @@ -1307,20 +2083,46 @@ a a a a -d -d -d -d +a +a d d d c c c -b -b c -b +c +c +c +c +c +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a a a a @@ -1328,8 +2130,6 @@ a a a a -b -b a "} (34,1,1) = {" @@ -1347,6 +2147,7 @@ a a a a +a d d d @@ -1354,22 +2155,45 @@ d d d d -d -d -d -b -b -b -b +c +c +c +c +c +c +c +a +a +a +a +a +a +a +c +c +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a a a a a a a -b -b -b a "} (35,1,1) = {" @@ -1384,32 +2208,56 @@ a a a a -b -b -b -d -d -d -b -b -b +a +a +a +a d d d d -b -b -b +d +d +d +d +d +d +c +c +c c a a a a a -b -b -b -b +a +c +c +c +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a a "} (36,1,1) = {" @@ -1423,22 +2271,49 @@ a a a a -b +a +a c c c -b -b -b -b -b -b -b d d -b -b -b +d +c +c +c +d +d +d +d +c +c +c +c +a +a +a +a +a +c +c +c +c +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a a a a @@ -1446,9 +2321,6 @@ a a a a -b -b -b a a "} @@ -1462,23 +2334,47 @@ a a a a -b +a +a c c c c -b -b -b -b -b -b c c -b -b -b -b +c +c +c +c +c +d +d +c +c +c +a +a +a +a +a +a +a +c +c +c +a +a +a +a +a +a +a +a +a +a +a +a +a a a a @@ -1503,19 +2399,171 @@ a a a a -a c c c -b +c +c +c +c +c +c +c +c +c +c +c +c +c +c +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(39,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +a +c +c +c +c +a +a +a +c +c +c +c +c +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(40,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a a a a -b -b -b -b -b a a a diff --git a/_maps/RandomRuins/SpaceRuins/freeminer_asteroid.dmm b/_maps/RandomRuins/SpaceRuins/freeminer_asteroid.dmm new file mode 100644 index 000000000000..31d584b7f0f9 --- /dev/null +++ b/_maps/RandomRuins/SpaceRuins/freeminer_asteroid.dmm @@ -0,0 +1,6601 @@ +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/turf/open/space, +/area/space) +"b" = ( +/turf/closed/mineral/random/low_chance, +/area/ruin/unpowered) +"d" = ( +/turf/open/floor/plating/asteroid/airless, +/area/ruin/unpowered) +"n" = ( +/mob/living/simple_animal/hostile/asteroid/goliath, +/turf/open/floor/plating/asteroid/airless, +/area/ruin/unpowered) +"s" = ( +/mob/living/simple_animal/hostile/asteroid/basilisk, +/turf/open/floor/plating/asteroid/airless, +/area/ruin/unpowered) +"D" = ( +/turf/closed/mineral/random/high_chance, +/area/ruin/unpowered) +"I" = ( +/mob/living/simple_animal/hostile/asteroid/hivelord, +/turf/open/floor/plating/asteroid/airless, +/area/ruin/unpowered) +"K" = ( +/mob/living/simple_animal/hostile/asteroid/goldgrub, +/turf/open/floor/plating/asteroid/airless, +/area/ruin/unpowered) +"X" = ( +/obj/docking_port/stationary{ + dir = 2; + dwidth = 11; + height = 22; + id = "whiteship_mining0"; + name = "Free Miner Asteroid"; + width = 35 + }, +/turf/open/space, +/area/space) + +(1,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(2,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(3,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(4,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(5,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(6,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(7,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(8,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +b +b +b +b +b +b +a +b +b +b +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(9,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +b +b +b +b +b +b +b +b +b +b +b +b +b +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(10,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(11,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(12,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +a +b +b +b +b +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(13,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(14,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(15,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +b +b +b +b +b +b +D +D +D +D +D +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(16,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +b +b +b +b +b +b +D +d +d +d +D +b +b +b +b +b +b +b +b +b +D +D +D +D +D +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(17,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +D +b +b +b +b +b +b +D +d +d +I +D +b +b +b +b +b +b +b +b +b +D +d +d +d +D +D +D +D +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(18,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +D +b +b +b +b +b +b +D +d +d +d +D +b +b +b +b +b +b +b +b +b +D +d +s +d +d +d +d +d +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +d +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(19,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +a +a +a +D +b +b +b +b +b +b +b +D +D +D +D +D +b +b +b +b +b +b +b +b +b +D +D +D +D +D +d +d +d +d +d +d +b +b +b +b +b +b +b +b +b +b +b +b +b +b +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(20,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +a +a +a +D +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +D +D +b +b +d +d +d +d +d +b +b +b +b +b +b +b +b +b +b +b +b +d +d +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(21,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +a +a +b +D +D +b +D +b +b +D +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +d +d +d +b +b +b +b +b +D +D +D +b +b +b +b +d +d +d +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(22,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +a +b +b +D +D +D +D +D +D +b +b +b +b +b +b +b +b +b +d +d +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +d +d +b +b +b +D +D +D +D +D +D +D +D +b +b +d +d +d +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(23,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +a +a +b +b +b +D +D +D +D +D +D +b +b +b +b +b +b +b +d +d +d +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +D +D +D +D +D +D +D +D +b +b +d +d +d +d +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(24,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +a +b +b +b +D +D +D +D +D +D +D +b +D +b +D +b +b +b +b +d +d +d +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +D +D +D +d +d +d +D +D +D +b +b +d +d +d +d +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(25,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +b +b +b +b +b +D +D +D +D +D +D +D +b +b +D +b +b +b +b +b +d +d +d +d +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +D +D +D +D +d +d +d +d +D +D +b +b +b +d +d +d +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(26,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +b +b +b +b +b +D +D +D +D +D +D +D +D +D +D +D +D +D +b +b +b +d +d +d +d +d +b +b +b +b +b +b +b +b +b +b +b +b +b +D +D +D +d +d +n +D +D +D +D +b +b +b +d +d +d +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(27,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +b +b +b +b +D +D +D +D +D +D +D +D +D +D +b +b +b +D +b +b +b +b +b +d +d +d +d +b +b +b +b +b +b +b +b +b +b +b +b +D +D +D +d +d +d +D +D +D +D +b +b +b +d +d +d +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(28,1,1) = {" +a +a +a +a +a +a +a +a +a +a +d +d +b +b +b +D +D +D +D +D +D +D +D +D +D +D +D +b +b +D +b +b +b +b +b +b +b +d +b +b +b +b +b +b +b +b +b +b +b +b +D +D +D +d +d +d +D +D +D +D +b +b +b +b +d +d +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(29,1,1) = {" +a +a +a +a +a +a +a +a +a +a +d +d +b +b +b +D +D +D +D +D +D +D +D +D +D +D +D +D +D +b +b +D +D +b +b +b +b +d +d +d +b +b +b +b +b +b +b +b +b +b +b +D +D +D +D +D +D +D +D +D +b +b +b +b +d +d +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(30,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +b +b +b +b +b +D +D +D +D +D +D +D +D +D +D +D +D +D +D +D +D +D +D +b +b +b +b +b +d +d +b +b +b +b +b +b +b +b +b +b +D +D +D +D +D +D +D +D +D +b +b +b +b +d +d +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(31,1,1) = {" +a +a +a +a +a +a +a +a +a +a +d +b +b +b +b +D +D +D +D +D +D +D +D +D +D +D +D +D +D +D +D +D +D +D +b +b +b +b +b +b +d +d +b +b +b +b +b +b +b +b +b +b +D +D +D +D +D +D +b +b +b +b +b +b +d +d +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(32,1,1) = {" +a +a +a +a +a +a +a +a +a +a +d +b +b +b +b +D +D +D +D +D +D +D +D +D +D +D +D +D +D +D +D +D +D +D +D +b +b +b +b +b +b +d +d +b +b +b +b +b +b +b +b +b +b +D +D +D +D +b +b +b +b +b +b +b +d +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(33,1,1) = {" +a +a +a +a +a +a +a +a +a +a +d +b +b +b +D +D +D +D +D +D +D +D +D +b +D +D +D +D +D +D +D +D +D +D +D +D +b +b +b +b +b +b +d +d +b +b +b +b +b +b +b +b +b +D +D +D +b +b +b +b +b +b +b +d +d +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(34,1,1) = {" +a +a +a +a +a +a +a +a +a +a +d +b +b +b +D +D +D +D +D +D +D +D +b +b +b +b +D +D +D +D +D +D +D +D +D +D +D +b +b +b +b +b +b +d +d +b +b +b +b +b +b +b +b +D +D +D +b +b +b +b +b +b +b +d +d +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(35,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +b +b +D +D +D +D +D +D +D +b +b +b +b +b +b +b +D +D +D +D +D +D +D +D +D +D +D +b +b +b +b +b +b +d +d +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +d +d +d +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(36,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +b +b +b +b +b +b +D +D +b +b +b +b +b +b +b +b +b +D +D +D +D +D +D +D +D +D +D +D +D +b +b +b +b +b +d +d +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +d +d +d +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(37,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +b +b +b +b +b +b +b +b +b +d +d +d +b +b +b +b +b +b +D +D +D +D +D +D +D +D +D +D +b +b +b +b +b +b +b +d +d +b +b +b +b +b +b +b +b +b +b +b +b +b +b +d +d +d +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(38,1,1) = {" +a +a +a +a +a +a +a +a +a +a +d +b +b +b +b +b +b +b +b +d +d +d +d +d +b +b +b +b +b +D +D +D +D +D +D +D +D +D +D +D +D +b +b +b +b +b +b +d +d +b +b +b +b +b +b +b +b +b +b +b +b +d +d +d +d +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(39,1,1) = {" +a +a +a +a +a +a +a +a +a +a +d +b +b +b +b +b +b +b +d +d +d +b +b +d +d +b +b +b +b +b +D +D +D +D +D +D +D +D +D +D +D +b +b +b +b +b +b +b +d +d +b +b +b +b +b +b +b +b +b +b +d +d +d +d +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(40,1,1) = {" +a +a +a +a +a +a +a +a +a +a +d +b +b +b +b +b +d +d +d +d +b +b +b +d +d +d +b +b +b +b +D +D +D +D +D +D +D +D +D +D +b +b +b +b +b +d +b +b +b +d +b +d +d +d +d +d +d +d +d +d +d +d +d +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(41,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +b +b +b +d +d +d +d +b +b +b +b +b +b +d +d +d +b +b +b +D +D +D +D +D +D +D +D +D +D +D +b +b +b +b +d +d +d +d +d +d +d +d +d +d +d +d +d +d +d +d +d +d +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(42,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +b +d +d +d +d +b +b +b +b +b +b +b +b +b +d +d +d +b +b +b +D +D +D +D +D +D +D +D +D +D +b +b +b +b +b +b +d +d +d +d +d +d +d +d +d +d +d +d +d +d +d +d +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(43,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +d +d +d +b +b +b +b +b +b +b +b +b +b +b +b +d +d +d +b +b +b +b +D +D +D +D +D +D +D +D +b +b +b +b +b +b +b +b +d +d +b +b +b +b +b +b +b +d +d +d +d +d +d +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(44,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +d +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +d +d +d +b +b +b +b +D +D +D +D +D +D +D +b +b +b +b +b +b +d +d +d +b +b +b +b +b +b +b +b +b +b +b +b +d +d +a +a +a +X +a +a +a +a +a +a +a +a +a +a +a +a +"} +(45,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +d +d +d +b +b +b +b +b +b +D +D +D +D +b +b +b +b +b +b +d +d +b +b +b +b +b +b +b +b +b +b +b +b +b +d +d +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(46,1,1) = {" +a +a +a +a +a +a +a +a +a +a +d +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +d +d +d +b +b +b +b +b +D +b +b +b +b +b +b +b +d +d +d +b +b +b +b +b +b +b +b +b +b +b +b +b +b +d +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(47,1,1) = {" +a +a +a +a +a +a +a +a +a +a +d +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +d +d +b +b +b +b +b +b +b +b +b +b +b +d +d +d +d +b +b +b +b +b +b +b +D +D +b +b +b +b +b +b +d +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(48,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +b +b +b +b +b +b +b +D +b +b +b +b +b +b +b +b +b +b +b +b +d +d +d +d +d +d +d +d +d +d +d +d +d +d +d +b +b +b +b +b +b +b +b +D +D +b +b +b +b +b +b +d +d +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(49,1,1) = {" +a +a +a +a +a +a +a +a +a +a +d +b +b +b +b +b +b +b +b +D +b +b +b +b +b +b +b +b +b +b +b +b +b +d +d +d +d +d +d +d +d +d +d +d +d +b +b +b +b +b +b +b +D +D +D +b +b +b +b +b +b +d +d +d +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(50,1,1) = {" +a +a +a +a +a +a +a +a +a +a +d +b +b +b +b +b +b +b +D +D +D +D +b +D +b +b +D +D +b +b +b +b +b +b +b +b +d +d +d +d +d +b +b +b +b +b +b +b +b +b +D +D +D +D +D +D +D +b +b +b +b +d +d +d +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(51,1,1) = {" +a +a +a +a +a +a +a +a +a +d +d +b +b +b +b +b +b +D +D +D +D +D +D +D +b +b +D +D +b +b +b +b +b +b +b +b +b +b +d +b +b +b +b +b +b +b +b +b +b +D +D +D +D +D +D +D +D +D +b +b +b +d +d +d +d +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(52,1,1) = {" +a +a +a +a +a +a +a +a +a +a +d +b +b +b +b +D +D +D +D +D +D +D +D +D +D +b +D +D +b +b +b +b +b +b +b +b +b +d +d +b +b +b +b +b +b +b +b +D +D +D +D +D +D +D +D +D +D +b +b +b +b +d +d +d +d +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(53,1,1) = {" +a +a +a +a +a +a +a +a +a +d +d +b +b +b +D +D +b +D +D +D +D +D +D +D +D +D +D +D +D +b +b +b +b +b +b +b +b +d +b +b +b +b +b +b +b +b +b +D +D +D +D +D +D +D +D +D +b +b +b +b +b +d +d +d +d +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(54,1,1) = {" +a +a +a +a +a +a +a +a +a +a +b +b +b +b +b +b +b +D +D +D +D +D +D +D +D +D +D +D +D +D +D +D +D +b +b +b +d +d +b +b +b +b +b +b +b +D +D +D +D +D +D +D +D +D +D +D +b +b +b +b +b +d +d +d +d +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(55,1,1) = {" +a +a +a +a +a +a +a +a +a +b +b +b +b +b +b +b +b +D +D +D +D +D +D +D +D +D +D +D +D +D +b +b +b +D +D +D +d +d +b +b +b +b +b +b +D +D +D +D +D +D +D +D +D +D +b +b +b +b +b +b +b +d +d +d +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(56,1,1) = {" +a +a +a +a +a +a +a +a +d +b +b +b +b +b +b +D +D +D +D +D +D +D +D +D +D +D +D +D +D +D +b +b +D +b +d +d +d +b +b +b +b +b +b +D +D +D +D +D +D +D +D +D +D +b +b +b +b +b +b +b +b +d +d +d +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(57,1,1) = {" +a +a +a +a +a +a +a +a +d +b +b +b +b +b +b +b +D +D +D +D +D +D +D +D +D +D +D +D +D +D +D +D +b +K +d +d +b +b +b +b +b +b +D +D +D +D +D +D +D +D +D +D +b +b +b +b +b +b +b +b +d +d +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(58,1,1) = {" +a +a +a +a +a +a +a +a +d +b +b +b +b +b +b +b +D +D +D +D +D +D +D +D +D +D +D +D +D +D +D +D +d +d +d +b +b +b +b +b +b +D +D +b +D +D +D +D +D +D +b +b +b +b +b +b +b +b +b +b +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(59,1,1) = {" +a +a +a +a +a +a +a +a +a +b +b +b +b +b +b +b +D +D +D +D +b +b +D +D +D +D +D +D +D +D +b +D +D +D +D +D +D +b +b +b +D +D +D +D +D +D +D +D +b +b +b +b +b +b +b +b +b +d +d +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(60,1,1) = {" +a +a +a +a +a +a +a +a +a +b +b +b +b +b +b +b +b +b +D +D +b +b +D +D +D +D +D +D +D +D +b +b +b +b +D +D +b +b +b +D +D +b +b +b +D +D +b +b +b +b +b +b +b +b +b +b +d +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(61,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +D +D +D +D +D +b +b +b +D +b +b +D +D +D +b +b +D +b +D +b +b +b +b +b +b +b +b +b +b +d +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(62,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +a +b +b +b +b +b +D +b +b +b +b +b +b +b +b +b +D +b +b +b +b +b +b +b +b +b +D +D +D +b +D +D +D +b +b +b +b +b +b +b +b +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(63,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +a +a +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +D +b +b +b +b +b +b +b +b +b +b +b +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(64,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +a +a +b +b +b +D +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(65,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +a +a +a +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(66,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +b +D +b +b +b +d +d +d +d +d +d +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +d +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(67,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +d +D +d +d +D +D +d +d +d +d +d +d +d +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +d +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(68,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +d +d +d +d +d +d +d +d +d +d +d +d +b +b +b +b +b +b +b +b +d +d +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(69,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +d +d +d +d +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(70,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(71,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(72,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(73,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(74,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(75,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(76,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(77,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(78,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(79,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(80,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} diff --git a/_maps/shuttles/whiteship_miner.dmm b/_maps/shuttles/whiteship_miner.dmm new file mode 100644 index 000000000000..fe487d2c157d --- /dev/null +++ b/_maps/shuttles/whiteship_miner.dmm @@ -0,0 +1,1769 @@ +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"aa" = ( +/turf/open/space, +/area/space) +"ab" = ( +/obj/machinery/door/airlock/shuttle{ + name = "cargo bay"; + req_access_txt = "71" + }, +/turf/open/floor/plasteel/shuttle, +/area/shuttle/abandoned) +"ac" = ( +/obj/structure/ore_box, +/turf/open/floor/plasteel/shuttle, +/area/shuttle/abandoned) +"ad" = ( +/obj/structure/closet/crate/medical{ + name = "medical crate" + }, +/obj/item/storage/firstaid/o2{ + pixel_x = 3; + pixel_y = 3 + }, +/obj/item/roller{ + pixel_y = 4 + }, +/obj/item/healthanalyzer, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plasteel/shuttle, +/area/shuttle/abandoned) +"ae" = ( +/obj/structure/grille, +/obj/structure/window/shuttle, +/turf/open/floor/plating, +/area/shuttle/abandoned) +"af" = ( +/obj/structure/frame/machine, +/turf/open/floor/plasteel/shuttle, +/area/shuttle/abandoned) +"ag" = ( +/obj/effect/decal/cleanable/oil, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plasteel/shuttle, +/area/shuttle/abandoned) +"ah" = ( +/obj/machinery/door/airlock/shuttle{ + name = "recovery shuttle external airlock" + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plasteel/shuttle, +/area/shuttle/abandoned) +"ai" = ( +/obj/effect/decal/cleanable/robot_debris/old, +/obj/effect/decal/cleanable/oil, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plasteel/shuttle, +/area/shuttle/abandoned) +"aj" = ( +/obj/structure/mirror{ + pixel_x = 28; + pixel_y = 0 + }, +/obj/structure/sink{ + dir = 4; + icon_state = "sink"; + pixel_x = 11; + pixel_y = 0 + }, +/obj/effect/decal/cleanable/dirt, +/obj/effect/decal/cleanable/dirt, +/obj/machinery/light/small{ + dir = 4 + }, +/turf/open/floor/plasteel/shuttle{ + icon_state = "shuttlefloor3" + }, +/area/shuttle/abandoned) +"ak" = ( +/obj/structure/shuttle/engine/propulsion{ + icon_state = "propulsion_l"; + dir = 4 + }, +/turf/open/floor/plating/airless, +/area/shuttle/abandoned) +"al" = ( +/obj/structure/closet/emcloset, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plasteel/shuttle, +/area/shuttle/abandoned) +"am" = ( +/obj/structure/closet/crate{ + name = "emergency supplies crate" + }, +/obj/item/storage/toolbox/emergency, +/obj/item/flashlight/flare{ + pixel_x = 3; + pixel_y = 3 + }, +/obj/item/wrench, +/obj/item/extinguisher, +/obj/effect/decal/cleanable/cobweb, +/obj/item/grenade/chem_grenade/metalfoam, +/obj/item/tank/internals/oxygen/red, +/obj/item/clothing/mask/breath, +/obj/item/clothing/mask/breath, +/obj/item/mining_scanner, +/obj/item/clothing/glasses/meson, +/turf/open/floor/plasteel/shuttle, +/area/shuttle/abandoned) +"an" = ( +/obj/structure/toilet{ + pixel_y = 9 + }, +/obj/effect/decal/cleanable/dirt, +/obj/effect/decal/cleanable/greenglow{ + desc = "Looks like something's sprung a leak" + }, +/turf/open/floor/plasteel/shuttle{ + icon_state = "shuttlefloor3" + }, +/area/shuttle/abandoned) +"ao" = ( +/obj/structure/ore_box, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plasteel/shuttle, +/area/shuttle/abandoned) +"ap" = ( +/obj/machinery/door/airlock/shuttle{ + name = "cargo bay" + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plasteel/shuttle, +/area/shuttle/abandoned) +"aq" = ( +/obj/structure/bed, +/obj/effect/mob_spawn/human/free_miner{ + dir = 8 + }, +/obj/machinery/light/small{ + dir = 4 + }, +/turf/open/floor/plasteel/shuttle{ + icon_state = "shuttlefloor3" + }, +/area/shuttle/abandoned) +"ar" = ( +/obj/effect/decal/cleanable/dirt, +/obj/machinery/portable_atmospherics/canister/oxygen, +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/plasteel/shuttle, +/area/shuttle/abandoned) +"as" = ( +/obj/effect/decal/cleanable/blood/gibs/old, +/obj/effect/decal/cleanable/dirt, +/obj/machinery/light/small{ + dir = 4 + }, +/turf/open/floor/plasteel/shuttle, +/area/shuttle/abandoned) +"at" = ( +/obj/structure/mirror{ + pixel_x = 28; + pixel_y = 0 + }, +/obj/effect/decal/cleanable/dirt, +/obj/machinery/light/small{ + dir = 4 + }, +/turf/open/floor/plasteel/shuttle, +/area/shuttle/abandoned) +"au" = ( +/obj/structure/tank_dispenser/oxygen{ + layer = 2.7; + pixel_x = -1; + pixel_y = 2 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plasteel/shuttle{ + icon_state = "shuttlefloor3" + }, +/area/shuttle/abandoned) +"av" = ( +/obj/effect/decal/cleanable/oil, +/obj/effect/decal/cleanable/dirt, +/obj/structure/closet/crate, +/obj/item/circuitboard/machine/ore_redemption, +/obj/item/stack/cable_coil, +/obj/item/assembly/igniter, +/obj/item/stack/sheet/glass, +/obj/item/stock_parts/manipulator, +/obj/item/stock_parts/matter_bin, +/obj/item/stock_parts/micro_laser, +/obj/machinery/light/broken, +/turf/open/floor/plasteel/shuttle, +/area/shuttle/abandoned) +"aw" = ( +/obj/structure/sign/warning/vacuum{ + pixel_x = -32 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plasteel/shuttle, +/area/shuttle/abandoned) +"ax" = ( +/obj/effect/decal/cleanable/dirt, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plasteel/shuttle, +/area/shuttle/abandoned) +"ay" = ( +/obj/effect/decal/cleanable/dirt, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plasteel/shuttle, +/area/shuttle/abandoned) +"az" = ( +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plasteel/shuttle, +/area/shuttle/abandoned) +"aA" = ( +/obj/structure/table, +/obj/item/camera, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plasteel/shuttle{ + icon_state = "shuttlefloor3" + }, +/area/shuttle/abandoned) +"aB" = ( +/obj/item/paper/crumpled{ + info = "Card readers are expensive, so I only put access restrictions on the outer doors of the main airlock and the cargo bay. I doubt anyone would want to stow away on this hunk of junk anyway.

-E" + }, +/obj/structure/reagent_dispensers/watertank, +/obj/effect/decal/cleanable/dirt, +/obj/machinery/light/small{ + dir = 4 + }, +/turf/open/floor/plasteel/shuttle, +/area/shuttle/abandoned) +"aC" = ( +/obj/structure/shuttle/engine/propulsion{ + icon_state = "propulsion"; + dir = 4 + }, +/turf/open/floor/plating/airless, +/area/shuttle/abandoned) +"aD" = ( +/obj/structure/shuttle/engine/heater{ + icon_state = "heater"; + dir = 8 + }, +/obj/structure/window/reinforced{ + dir = 4 + }, +/turf/open/floor/plating/airless, +/area/shuttle/abandoned) +"aE" = ( +/obj/machinery/light, +/turf/open/floor/plasteel/shuttle, +/area/shuttle/abandoned) +"aF" = ( +/obj/effect/decal/cleanable/dirt, +/obj/machinery/light, +/turf/open/floor/plasteel/shuttle, +/area/shuttle/abandoned) +"aG" = ( +/obj/machinery/door/airlock/shuttle{ + name = "bathroom" + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plasteel/shuttle, +/area/shuttle/abandoned) +"aH" = ( +/obj/structure/table, +/obj/item/megaphone, +/obj/item/clothing/glasses/meson{ + pixel_x = 7; + pixel_y = 5 + }, +/obj/machinery/light, +/turf/open/floor/plasteel/shuttle{ + icon_state = "shuttlefloor3" + }, +/area/shuttle/abandoned) +"aI" = ( +/obj/machinery/processor, +/obj/effect/decal/cleanable/dirt, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plasteel/shuttle{ + icon_state = "shuttlefloor3" + }, +/area/shuttle/abandoned) +"aJ" = ( +/obj/structure/closet/crate/freezer, +/obj/item/reagent_containers/blood/random{ + pixel_x = -3; + pixel_y = -3 + }, +/obj/item/reagent_containers/blood/OMinus, +/obj/item/reagent_containers/blood/random, +/obj/effect/decal/cleanable/blood/old, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plasteel/shuttle{ + icon_state = "shuttlefloor3" + }, +/area/shuttle/abandoned) +"aK" = ( +/obj/structure/table, +/obj/item/wrench, +/obj/item/crowbar, +/obj/item/clothing/suit/apron, +/obj/item/shovel/spade, +/obj/item/cultivator, +/obj/effect/decal/cleanable/dirt, +/obj/item/wirecutters, +/obj/item/reagent_containers/glass/bucket, +/obj/machinery/light{ + dir = 8 + }, +/turf/open/floor/plasteel/shuttle{ + icon_state = "shuttlefloor3" + }, +/area/shuttle/abandoned) +"aL" = ( +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plasteel/shuttle, +/area/shuttle/abandoned) +"aM" = ( +/obj/machinery/door/airlock/shuttle{ + name = "E.V.A. equipment" + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plasteel/shuttle, +/area/shuttle/abandoned) +"aN" = ( +/obj/machinery/computer/camera_advanced/shuttle_docker/whiteship/miner, +/turf/open/floor/plasteel/shuttle{ + icon_state = "shuttlefloor3" + }, +/area/shuttle/abandoned) +"aO" = ( +/obj/machinery/vending/wallmed{ + name = "Emergency NanoMed"; + pixel_x = -28; + pixel_y = 0; + req_access_txt = "0"; + }, +/obj/machinery/light{ + dir = 8 + }, +/turf/open/floor/plasteel/shuttle, +/area/shuttle/abandoned) +"aP" = ( +/obj/effect/decal/cleanable/dirt, +/obj/item/mecha_parts/mecha_equipment/hydraulic_clamp, +/obj/item/mecha_parts/mecha_equipment/mining_scanner, +/obj/item/mecha_parts/mecha_equipment/drill, +/obj/structure/closet/crate{ + moving_diagonally = 0; + name = "mech equipment crate" + }, +/obj/item/stack/sheet/metal{ + alternate_worn_layer = null; + amount = 5 + }, +/obj/item/stack/sheet/plasteel{ + amount = 5 + }, +/obj/item/stack/cable_coil, +/obj/machinery/light{ + dir = 8 + }, +/obj/item/stock_parts/cell/hyper/empty, +/turf/open/floor/plasteel/shuttle{ + icon_state = "shuttlefloor3" + }, +/area/shuttle/abandoned) +"bd" = ( +/obj/machinery/door/airlock/shuttle{ + name = "bathroom" + }, +/obj/effect/decal/cleanable/blood/old, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plasteel/shuttle, +/area/shuttle/abandoned) +"bf" = ( +/obj/machinery/door/airlock/shuttle{ + name = "dormitory" + }, +/obj/effect/decal/cleanable/blood/old, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plasteel/shuttle, +/area/shuttle/abandoned) +"bg" = ( +/obj/machinery/vending/boozeomat{ + icon_deny = "smartfridge"; + icon_state = "smartfridge"; + req_access_txt = "0"; + }, +/turf/closed/wall/mineral/titanium, +/area/shuttle/abandoned) +"bk" = ( +/turf/closed/wall/mineral/titanium, +/area/shuttle/abandoned) +"bm" = ( +/obj/machinery/vending/cigarette, +/turf/open/floor/plasteel/shuttle{ + icon_state = "shuttlefloor3" + }, +/area/shuttle/abandoned) +"bv" = ( +/obj/structure/reagent_dispensers/fueltank, +/obj/structure/sign/warning/vacuum{ + pixel_x = -32 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plasteel/shuttle, +/area/shuttle/abandoned) +"bw" = ( +/obj/machinery/vending/coffee{ + pixel_x = -2; + }, +/turf/open/floor/plasteel/shuttle{ + icon_state = "shuttlefloor3" + }, +/area/shuttle/abandoned) +"bx" = ( +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plasteel/shuttle{ + icon_state = "shuttlefloor3" + }, +/area/shuttle/abandoned) +"by" = ( +/obj/structure/chair, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plasteel/shuttle{ + icon_state = "shuttlefloor3" + }, +/area/shuttle/abandoned) +"bz" = ( +/obj/effect/decal/cleanable/dirt, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plasteel/shuttle{ + icon_state = "shuttlefloor3" + }, +/area/shuttle/abandoned) +"bC" = ( +/obj/machinery/door/airlock/shuttle{ + name = "recovery shuttle interior airlock" + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plasteel/shuttle, +/area/shuttle/abandoned) +"bD" = ( +/obj/structure/chair{ + dir = 4 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plasteel/shuttle{ + icon_state = "shuttlefloor3" + }, +/area/shuttle/abandoned) +"bE" = ( +/obj/structure/table, +/obj/item/reagent_containers/food/drinks/shaker, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plasteel/shuttle{ + icon_state = "shuttlefloor3" + }, +/area/shuttle/abandoned) +"bG" = ( +/obj/structure/table, +/obj/item/storage/fancy/donut_box, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plasteel/shuttle{ + icon_state = "shuttlefloor3" + }, +/area/shuttle/abandoned) +"bH" = ( +/obj/structure/chair{ + dir = 8 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plasteel/shuttle{ + icon_state = "shuttlefloor3" + }, +/area/shuttle/abandoned) +"bI" = ( +/obj/machinery/door/airlock/shuttle{ + name = "living quarters" + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plasteel/shuttle, +/area/shuttle/abandoned) +"bP" = ( +/obj/machinery/door/airlock/shuttle{ + name = "bridge" + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plasteel/shuttle, +/area/shuttle/abandoned) +"bT" = ( +/obj/machinery/vending/cola{ + pixel_x = -1; + }, +/turf/open/floor/plasteel/shuttle{ + icon_state = "shuttlefloor3" + }, +/area/shuttle/abandoned) +"bU" = ( +/obj/structure/chair{ + dir = 1 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plasteel/shuttle{ + icon_state = "shuttlefloor3" + }, +/area/shuttle/abandoned) +"bZ" = ( +/obj/machinery/vending/snack{ + pixel_x = -1; + }, +/turf/open/floor/plasteel/shuttle{ + icon_state = "shuttlefloor3" + }, +/area/shuttle/abandoned) +"ce" = ( +/obj/structure/sign/departments/botany, +/turf/closed/wall/mineral/titanium, +/area/shuttle/abandoned) +"cf" = ( +/obj/machinery/door/airlock/shuttle{ + name = "hydroponics" + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plasteel/shuttle, +/area/shuttle/abandoned) +"cg" = ( +/obj/machinery/door/airlock/shuttle{ + name = "kitchen" + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plasteel/shuttle, +/area/shuttle/abandoned) +"ci" = ( +/obj/structure/sign/departments/medbay/alt, +/turf/closed/wall/mineral/titanium, +/area/shuttle/abandoned) +"cj" = ( +/obj/machinery/door/airlock/shuttle{ + icon_state = "closed"; + name = "medbay"; + welded = 0 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plasteel/shuttle, +/area/shuttle/abandoned) +"ck" = ( +/turf/open/space, +/turf/closed/wall/mineral/titanium, +/area/shuttle/abandoned) +"cl" = ( +/obj/item/storage/bag/plants/portaseeder, +/obj/structure/table, +/obj/item/reagent_containers/spray/plantbgone{ + pixel_x = 13; + pixel_y = 5 + }, +/obj/item/reagent_containers/glass/bottle/nutrient/ez, +/obj/item/reagent_containers/glass/bottle/nutrient/ez, +/obj/item/reagent_containers/glass/bottle/nutrient/ez, +/obj/item/reagent_containers/glass/bottle/nutrient/rh{ + pixel_x = -2; + pixel_y = 3 + }, +/obj/effect/decal/cleanable/cobweb, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plasteel/shuttle{ + icon_state = "shuttlefloor3" + }, +/area/shuttle/abandoned) +"cm" = ( +/obj/machinery/biogenerator{ + idle_power_usage = 0; + }, +/turf/open/floor/plasteel/shuttle{ + icon_state = "shuttlefloor3" + }, +/area/shuttle/abandoned) +"cn" = ( +/obj/machinery/vending/hydroseeds{ + pixel_x = 2; + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plasteel/shuttle{ + icon_state = "shuttlefloor3" + }, +/area/shuttle/abandoned) +"cp" = ( +/obj/structure/kitchenspike, +/obj/effect/decal/cleanable/blood/gibs/old, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plasteel/shuttle{ + icon_state = "shuttlefloor3" + }, +/area/shuttle/abandoned) +"cq" = ( +/obj/structure/table, +/obj/machinery/microwave{ + pixel_x = -3; + pixel_y = 6 + }, +/obj/item/storage/box/donkpockets, +/obj/effect/decal/cleanable/dirt, +/obj/effect/decal/cleanable/cobweb, +/turf/open/floor/plasteel/shuttle{ + icon_state = "shuttlefloor3" + }, +/area/shuttle/abandoned) +"cw" = ( +/obj/structure/sink{ + dir = 4; + icon_state = "sink"; + pixel_x = 11; + pixel_y = 0 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plasteel/shuttle, +/area/shuttle/abandoned) +"cx" = ( +/obj/machinery/smartfridge, +/turf/closed/wall/mineral/titanium, +/area/shuttle/abandoned) +"cy" = ( +/obj/structure/sink{ + icon_state = "sink"; + dir = 8; + pixel_x = -12; + pixel_y = 2 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plasteel/shuttle, +/area/shuttle/abandoned) +"cz" = ( +/obj/effect/decal/cleanable/egg_smudge, +/obj/effect/decal/cleanable/flour, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plasteel/shuttle, +/area/shuttle/abandoned) +"cG" = ( +/obj/structure/shuttle/engine/propulsion{ + icon_state = "propulsion_r"; + dir = 4 + }, +/turf/open/floor/plating/airless, +/area/shuttle/abandoned) +"cH" = ( +/obj/machinery/hydroponics/constructable, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plasteel/shuttle{ + icon_state = "shuttlefloor3" + }, +/area/shuttle/abandoned) +"cI" = ( +/obj/machinery/hydroponics/constructable, +/obj/item/seeds/glowshroom, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plasteel/shuttle{ + icon_state = "shuttlefloor3" + }, +/area/shuttle/abandoned) +"cJ" = ( +/obj/structure/table, +/obj/machinery/reagentgrinder{ + pixel_y = 6 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plasteel/shuttle{ + icon_state = "shuttlefloor3" + }, +/area/shuttle/abandoned) +"cT" = ( +/obj/structure/table, +/obj/item/storage/backpack/duffelbag/med{ + contents = newlist(/obj/item/scalpel,/obj/item/hemostat,/obj/item/retractor,/obj/item/cautery,/obj/item/circular_saw,/obj/item/surgicaldrill,/obj/item/razor); + desc = "A large dufflebag for holding extra medical supplies - this one seems to be designed for holding surgical tools."; + name = "surgical dufflebag"; + pixel_y = 4 + }, +/turf/open/floor/plasteel/shuttle{ + icon_state = "shuttlefloor3" + }, +/area/shuttle/abandoned) +"cZ" = ( +/obj/machinery/shower{ + icon_state = "shower"; + dir = 4 + }, +/obj/machinery/door/window/westright{ + dir = 4 + }, +/obj/effect/decal/cleanable/dirt, +/obj/item/soap/nanotrasen, +/obj/effect/decal/cleanable/oil, +/turf/open/floor/plasteel/shuttle{ + icon_state = "shuttlefloor3" + }, +/area/shuttle/abandoned) +"ea" = ( +/obj/structure/table, +/obj/item/healthanalyzer, +/turf/open/floor/plasteel/shuttle{ + icon_state = "shuttlefloor3" + }, +/area/shuttle/abandoned) +"eT" = ( +/obj/effect/decal/cleanable/cobweb, +/obj/structure/ore_box, +/turf/open/floor/plasteel/shuttle{ + icon_state = "shuttlefloor3" + }, +/area/shuttle/abandoned) +"fh" = ( +/obj/item/paper/crumpled{ + info = "For the love of god, someone clean this place up. We eat in here.

-C" + }, +/obj/structure/table, +/obj/item/reagent_containers/food/condiment/peppermill{ + pixel_x = 3; + pixel_y = 4 + }, +/obj/item/reagent_containers/food/condiment/saltshaker{ + pixel_x = -3; + pixel_y = 4 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plasteel/shuttle{ + icon_state = "shuttlefloor3" + }, +/area/shuttle/abandoned) +"fw" = ( +/obj/structure/table, +/obj/item/storage/photo_album, +/turf/open/floor/plasteel/shuttle{ + icon_state = "shuttlefloor3" + }, +/area/shuttle/abandoned) +"gv" = ( +/obj/effect/decal/cleanable/dirt, +/obj/machinery/syndicatebomb/training{ + desc = "A sticky note on the side says 'DO NOT TOUCH, VERY DANGEROUS'."; + name = "self-destruct device" + }, +/turf/open/floor/plasteel/shuttle{ + icon_state = "shuttlefloor3" + }, +/area/shuttle/abandoned) +"gP" = ( +/obj/effect/decal/cleanable/xenoblood, +/obj/machinery/iv_drip{ + density = 0; + pixel_x = -8 + }, +/turf/open/floor/plasteel/shuttle, +/area/shuttle/abandoned) +"ho" = ( +/obj/structure/table, +/obj/item/paper_bin{ + pixel_x = -1; + pixel_y = 6 + }, +/turf/open/floor/plasteel/shuttle{ + icon_state = "shuttlefloor3" + }, +/area/shuttle/abandoned) +"hs" = ( +/obj/effect/decal/cleanable/oil, +/obj/effect/decal/cleanable/dirt, +/obj/structure/table, +/obj/item/paper/crumpled{ + inertia_dir = 0; + info = "HA! FINALLY! All those years of hoarding parts finally payed off! All I have to do is take this old wreck apart with a welder, crowbar out the boards, and I can have my own mech! I can't let myself forget to DNA lock it so those damn miners don't steal it. Hopefully we don't fly through another rad storm that scrambles all our genes after I do.

-E"; + pixel_x = 4; + pixel_y = 6 + }, +/obj/item/clothing/head/welding{ + pixel_x = -3; + pixel_y = 5 + }, +/obj/item/storage/toolbox/mechanical{ + pixel_x = -2; + pixel_y = -1 + }, +/turf/open/floor/plasteel/shuttle{ + icon_state = "shuttlefloor3" + }, +/area/shuttle/abandoned) +"id" = ( +/obj/machinery/computer/mech_bay_power_console, +/turf/open/floor/plasteel/shuttle{ + icon_state = "shuttlefloor3" + }, +/area/shuttle/abandoned) +"jA" = ( +/obj/structure/table, +/obj/item/kitchen/rollingpin, +/obj/item/kitchen/knife, +/obj/effect/decal/cleanable/dirt, +/obj/item/paper/crumpled{ + info = "WHO THE FUCK ORDERED SO MUCH SALT?

-K"; + pixel_x = 4; + pixel_y = 6 + }, +/obj/item/reagent_containers/food/condiment/saltshaker{ + pixel_x = -10; + pixel_y = 12 + }, +/obj/item/reagent_containers/food/condiment/saltshaker{ + pixel_x = -5; + pixel_y = 12 + }, +/obj/item/reagent_containers/food/condiment/saltshaker{ + pixel_x = -10; + pixel_y = 4 + }, +/obj/item/reagent_containers/food/condiment/saltshaker{ + pixel_x = -10; + pixel_y = 4 + }, +/obj/item/reagent_containers/food/condiment/saltshaker{ + pixel_x = -10; + pixel_y = 4 + }, +/turf/open/floor/plasteel/shuttle{ + icon_state = "shuttlefloor3" + }, +/area/shuttle/abandoned) +"kL" = ( +/obj/effect/decal/cleanable/dirt, +/obj/machinery/suit_storage_unit/mining/eva, +/turf/open/floor/plasteel/shuttle{ + icon_state = "shuttlefloor3" + }, +/area/shuttle/abandoned) +"ll" = ( +/obj/effect/decal/cleanable/dirt, +/obj/item/clothing/gloves/color/black, +/obj/structure/table, +/obj/item/clothing/gloves/color/black, +/obj/item/clothing/glasses/meson, +/turf/open/floor/plasteel/shuttle{ + icon_state = "shuttlefloor3" + }, +/area/shuttle/abandoned) +"lo" = ( +/obj/machinery/mech_bay_recharge_port, +/turf/open/floor/plasteel/shuttle{ + icon_state = "shuttlefloor3" + }, +/area/shuttle/abandoned) +"lL" = ( +/obj/effect/decal/cleanable/blood/old, +/turf/open/floor/plasteel/shuttle, +/area/shuttle/abandoned) +"mu" = ( +/obj/effect/decal/cleanable/dirt, +/obj/effect/decal/cleanable/dirt, +/obj/effect/decal/cleanable/vomit, +/turf/open/floor/plasteel/shuttle, +/area/shuttle/abandoned) +"mR" = ( +/obj/structure/table, +/obj/effect/decal/cleanable/dirt, +/obj/item/storage/fancy/egg_box{ + pixel_y = 5 + }, +/obj/item/reagent_containers/food/condiment/saltshaker{ + pixel_x = -3; + pixel_y = 4 + }, +/obj/item/storage/box/monkeycubes{ + pixel_y = 4 + }, +/turf/open/floor/plasteel/shuttle{ + icon_state = "shuttlefloor3" + }, +/area/shuttle/abandoned) +"nL" = ( +/obj/docking_port/mobile{ + callTime = 250; + dheight = 0; + dir = 2; + dwidth = 11; + height = 15; + id = "whiteship"; + launch_status = 0; + movement_force = list("KNOCKDOWN" = 0, "THROW" = 0); + name = "Free Miner Ship"; + port_direction = 8; + preferred_direction = 4; + width = 28 + }, +/obj/machinery/door/airlock/shuttle{ + name = "free miner ship external airlock"; + req_access_txt = "71" + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plasteel/shuttle, +/area/shuttle/abandoned) +"ov" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/table, +/obj/item/paper/crumpled{ + info = "I found this while digging through another derelict, thought we could prank the rest of the crew with it.

-F" + }, +/obj/item/clothing/mask/breath, +/turf/open/floor/plasteel/shuttle{ + icon_state = "shuttlefloor3" + }, +/area/shuttle/abandoned) +"oy" = ( +/obj/effect/decal/cleanable/dirt, +/obj/effect/mob_spawn/human/free_miner/captain, +/turf/open/floor/plasteel/shuttle, +/area/shuttle/abandoned) +"pa" = ( +/obj/machinery/door/airlock/shuttle{ + name = "engineering bay" + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plasteel/shuttle, +/area/shuttle/abandoned) +"pg" = ( +/obj/structure/table, +/obj/item/radio/off{ + pixel_y = 6 + }, +/turf/open/floor/plasteel/shuttle{ + icon_state = "shuttlefloor3" + }, +/area/shuttle/abandoned) +"pP" = ( +/obj/machinery/computer/shuttle/white_ship/miner, +/turf/open/floor/plasteel/shuttle{ + icon_state = "shuttlefloor3" + }, +/area/shuttle/abandoned) +"qu" = ( +/obj/structure/table, +/obj/item/clothing/gloves/color/latex, +/obj/item/clothing/mask/surgical, +/obj/item/clothing/suit/apron/surgical, +/turf/open/floor/plasteel/shuttle{ + icon_state = "shuttlefloor3" + }, +/area/shuttle/abandoned) +"qA" = ( +/obj/structure/table, +/obj/machinery/cell_charger, +/obj/item/defibrillator, +/turf/open/floor/plasteel/shuttle{ + icon_state = "shuttlefloor3" + }, +/area/shuttle/abandoned) +"ry" = ( +/obj/item/reagent_containers/food/condiment/saltshaker{ + pixel_x = -8; + pixel_y = 6 + }, +/obj/structure/table, +/obj/item/reagent_containers/food/condiment/flour, +/obj/item/reagent_containers/food/condiment/flour, +/obj/item/reagent_containers/food/condiment/flour, +/obj/item/reagent_containers/food/condiment/flour, +/obj/item/reagent_containers/food/condiment/milk, +/obj/item/reagent_containers/food/condiment/milk, +/obj/item/reagent_containers/food/condiment/milk, +/obj/item/reagent_containers/food/condiment/soymilk, +/obj/item/reagent_containers/food/condiment/soymilk, +/obj/item/reagent_containers/food/condiment/sugar, +/obj/item/reagent_containers/food/condiment/sugar, +/obj/item/reagent_containers/food/condiment/sugar, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plasteel/shuttle{ + icon_state = "shuttlefloor3" + }, +/area/shuttle/abandoned) +"rT" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/ore_box, +/obj/effect/mob_spawn/human/free_miner/engi, +/turf/open/floor/plasteel/shuttle{ + icon_state = "shuttlefloor3" + }, +/area/shuttle/abandoned) +"ti" = ( +/obj/effect/decal/cleanable/dirt, +/obj/effect/decal/cleanable/oil, +/obj/structure/mecha_wreckage/ripley/loaded, +/turf/open/floor/plasteel/shuttle{ + icon_state = "shuttlefloor3" + }, +/area/shuttle/abandoned) +"ur" = ( +/obj/machinery/door/airlock/shuttle{ + name = "recovery shuttle external airlock"; + req_access_txt = "71" + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plasteel/shuttle, +/area/shuttle/abandoned) +"uB" = ( +/obj/machinery/door/airlock/shuttle{ + name = "free miner ship interior airlock" + }, +/obj/effect/decal/cleanable/dirt, +/obj/effect/decal/cleanable/dirt, +/obj/structure/fans/tiny, +/turf/open/floor/plasteel/shuttle, +/area/shuttle/abandoned) +"wj" = ( +/obj/structure/chair/office/light, +/turf/open/floor/plasteel/shuttle{ + icon_state = "shuttlefloor3" + }, +/area/shuttle/abandoned) +"zy" = ( +/obj/effect/decal/cleanable/cobweb, +/turf/open/floor/plasteel/shuttle, +/area/shuttle/abandoned) +"zE" = ( +/obj/structure/bed, +/obj/effect/mob_spawn/human/free_miner{ + dir = 8 + }, +/turf/open/floor/plasteel/shuttle{ + icon_state = "shuttlefloor3" + }, +/area/shuttle/abandoned) +"Bi" = ( +/obj/structure/table/optable, +/obj/item/surgical_drapes, +/obj/item/storage/firstaid/regular, +/turf/open/floor/plasteel/shuttle{ + icon_state = "shuttlefloor3" + }, +/area/shuttle/abandoned) +"Ct" = ( +/obj/effect/decal/cleanable/dirt, +/turf/closed/wall/mineral/titanium, +/area/shuttle/abandoned) +"Di" = ( +/obj/effect/decal/cleanable/xenoblood, +/turf/open/floor/plasteel/shuttle, +/area/shuttle/abandoned) +"DS" = ( +/obj/effect/decal/cleanable/dirt, +/obj/item/reagent_containers/spray/cleaner, +/obj/structure/table, +/turf/open/floor/plasteel/shuttle{ + icon_state = "shuttlefloor3" + }, +/area/shuttle/abandoned) +"Fj" = ( +/obj/machinery/portable_atmospherics/canister/air, +/turf/open/floor/plasteel/shuttle{ + icon_state = "shuttlefloor3" + }, +/area/shuttle/abandoned) +"Ft" = ( +/obj/structure/rack{ + dir = 8; + layer = 2.9; + pixel_y = 2 + }, +/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/glasses/welding, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plasteel/shuttle{ + icon_state = "shuttlefloor3" + }, +/area/shuttle/abandoned) +"Gy" = ( +/obj/structure/table, +/obj/item/storage/pill_bottle/dice{ + pixel_y = 3 + }, +/turf/open/floor/plasteel/shuttle{ + icon_state = "shuttlefloor3" + }, +/area/shuttle/abandoned) +"HW" = ( +/obj/structure/chair/office/light{ + dir = 4 + }, +/turf/open/floor/plasteel/shuttle{ + icon_state = "shuttlefloor3" + }, +/area/shuttle/abandoned) +"JR" = ( +/turf/open/floor/plasteel/shuttle, +/area/shuttle/abandoned) +"LC" = ( +/obj/item/storage/toolbox/emergency{ + pixel_x = -3; + pixel_y = 3 + }, +/obj/item/storage/toolbox/emergency, +/obj/effect/decal/cleanable/dirt, +/obj/structure/table, +/turf/open/floor/plasteel/shuttle{ + icon_state = "shuttlefloor3" + }, +/area/shuttle/abandoned) +"Nt" = ( +/obj/structure/sink{ + dir = 4; + icon_state = "sink"; + pixel_x = 11; + pixel_y = 0 + }, +/obj/effect/decal/cleanable/xenoblood/xgibs/limb, +/turf/open/floor/plasteel/shuttle, +/area/shuttle/abandoned) +"Oj" = ( +/obj/structure/table, +/obj/item/stack/sheet/metal{ + amount = 15 + }, +/obj/item/stock_parts/cell/high{ + charge = 100; + maxcharge = 15000; + pixel_y = 2 + }, +/obj/effect/decal/cleanable/cobweb, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plasteel/shuttle{ + icon_state = "shuttlefloor3" + }, +/area/shuttle/abandoned) +"PB" = ( +/obj/structure/extinguisher_cabinet, +/turf/closed/wall/mineral/titanium, +/area/shuttle/abandoned) +"QH" = ( +/obj/structure/table, +/obj/item/storage/belt/utility, +/obj/item/storage/bag/ore, +/obj/item/storage/bag/ore, +/obj/item/storage/bag/ore, +/obj/item/storage/bag/ore, +/obj/item/radio/off, +/obj/item/radio/off, +/obj/item/paper/crumpled{ + info = "Note to self - do not forget to turn internals on before leaving the airlock.

-M"; + pixel_x = 4; + pixel_y = 6 + }, +/obj/item/mining_scanner, +/obj/item/mining_scanner, +/obj/item/mining_scanner, +/obj/item/clothing/glasses/meson, +/obj/item/clothing/glasses/meson, +/turf/open/floor/plasteel/shuttle{ + icon_state = "shuttlefloor3" + }, +/area/shuttle/abandoned) +"TL" = ( +/obj/effect/decal/cleanable/dirt, +/obj/machinery/mineral/equipment_vendor/free_miner, +/turf/open/floor/plasteel/shuttle{ + icon_state = "shuttlefloor3" + }, +/area/shuttle/abandoned) +"Ua" = ( +/obj/effect/decal/cleanable/oil, +/turf/open/floor/plasteel/shuttle, +/area/shuttle/abandoned) +"UW" = ( +/obj/structure/table, +/obj/item/folder/blue, +/obj/item/gps{ + gpstag = "NTREC1"; + pixel_x = -1; + pixel_y = 2 + }, +/obj/item/paper/crumpled{ + info = "Damn corporates. Finally managed to scrap together enough parts for an ore redemption machine, so we can actually start cashing in on the ore we mine. Still have to put it together in the cargo bay. The catch is, the only place to sell anything around here is a Nanotrasen outpost - some screaming metal deathtrap called Space Station 13. If we want to get anything that is not in the vendor, we will have to go there.

-C"; + pixel_x = 4; + pixel_y = 6 + }, +/turf/open/floor/plasteel/shuttle{ + icon_state = "shuttlefloor3" + }, +/area/shuttle/abandoned) +"VU" = ( +/obj/structure/table, +/obj/item/stack/sheet/glass{ + amount = 25; + pixel_x = -2; + pixel_y = 2 + }, +/obj/item/stack/rods{ + amount = 50 + }, +/obj/effect/decal/cleanable/dirt, +/obj/item/wrench, +/turf/open/floor/plasteel/shuttle{ + icon_state = "shuttlefloor3" + }, +/area/shuttle/abandoned) +"WI" = ( +/obj/structure/table, +/obj/item/reagent_containers/glass/bottle/epinephrine{ + pixel_x = 6; + pixel_y = 0 + }, +/obj/item/reagent_containers/glass/bottle/charcoal{ + pixel_x = -3 + }, +/obj/item/reagent_containers/syringe, +/obj/item/stock_parts/cell/high{ + pixel_x = -10; + pixel_y = 5 + }, +/obj/item/paper/crumpled{ + inertia_dir = 0; + info = "Finally got a cell charger for the defib. next time someone dies because they forgot to turn on their oxygen, we won't have to wire the defib to the ships engines.

-D"; + pixel_x = 4; + pixel_y = 6 + }, +/turf/open/floor/plasteel/shuttle{ + icon_state = "shuttlefloor3" + }, +/area/shuttle/abandoned) +"Xh" = ( +/obj/structure/table, +/obj/item/reagent_containers/glass/beaker{ + pixel_x = 5 + }, +/obj/item/reagent_containers/food/condiment/enzyme{ + layer = 5 + }, +/obj/item/reagent_containers/dropper, +/obj/effect/decal/cleanable/dirt, +/obj/item/reagent_containers/food/condiment/saltshaker{ + pixel_x = 12; + pixel_y = 0 + }, +/turf/open/floor/plasteel/shuttle{ + icon_state = "shuttlefloor3" + }, +/area/shuttle/abandoned) +"Xq" = ( +/obj/item/mecha_parts/chassis/ripley, +/turf/open/floor/plasteel/shuttle{ + icon_state = "shuttlefloor3" + }, +/area/shuttle/abandoned) +"XU" = ( +/obj/structure/dresser, +/turf/open/floor/plasteel/shuttle{ + icon_state = "shuttlefloor3" + }, +/area/shuttle/abandoned) +"XZ" = ( +/obj/machinery/sleeper{ + dir = 4; + }, +/turf/open/floor/plasteel/shuttle{ + icon_state = "shuttlefloor3" + }, +/area/shuttle/abandoned) +"Zb" = ( +/turf/open/floor/plasteel/shuttle{ + icon_state = "shuttlefloor3" + }, +/area/shuttle/abandoned) +"Zp" = ( +/obj/effect/decal/cleanable/dirt, +/obj/effect/decal/cleanable/ash, +/obj/effect/decal/cleanable/blood/gibs/old, +/turf/open/floor/plasteel/shuttle, +/area/shuttle/abandoned) +"ZB" = ( +/obj/structure/chair/comfy/black{ + dir = 4 + }, +/turf/open/floor/plasteel/shuttle{ + icon_state = "shuttlefloor3" + }, +/area/shuttle/abandoned) + +(1,1,1) = {" +aa +aa +aa +aa +aa +ck +bk +ah +bk +ck +aa +aa +aa +aa +aa +"} +(2,1,1) = {" +aa +ak +aC +aC +aC +ae +bv +ax +aB +ae +aC +aC +aC +cG +aa +"} +(3,1,1) = {" +ck +bk +aD +aD +bk +bk +bk +bC +bk +bk +bk +aD +aD +bk +ck +"} +(4,1,1) = {" +bk +bk +bk +bk +bk +bm +bw +ax +bT +bZ +bk +bk +bk +bk +bk +"} +(5,1,1) = {" +bk +an +bk +cZ +bk +ay +aL +aL +aL +aE +bk +cl +aK +cH +bk +"} +(6,1,1) = {" +ae +aj +aG +at +bd +aL +bx +bD +bx +aL +ce +cm +ax +cH +ae +"} +(7,1,1) = {" +bk +bk +bk +bk +bk +aL +by +bE +bU +aL +cf +ax +aL +cI +ae +"} +(8,1,1) = {" +ae +Gy +JR +aL +bf +JR +by +fh +bU +aL +bk +cn +cw +cH +bk +"} +(9,1,1) = {" +bk +XU +aq +zE +bg +JR +by +bG +bU +aF +bk +bk +cx +bk +bk +"} +(10,1,1) = {" +bk +bk +bk +bk +bk +az +bz +bH +bx +aL +cg +aL +cy +cJ +bk +"} +(11,1,1) = {" +bk +Oj +QH +VU +bk +zy +aL +ax +aL +aL +bk +aI +mu +mR +ae +"} +(12,1,1) = {" +ae +kL +Ua +Ft +bk +bk +bk +bI +bk +bk +bk +cp +cz +Xh +ae +"} +(13,1,1) = {" +ae +kL +JR +JR +aM +JR +JR +JR +JR +JR +bk +cq +jA +ry +bk +"} +(14,1,1) = {" +bk +au +ar +TL +PB +JR +bx +DS +Zb +JR +bk +bk +bk +bk +bk +"} +(15,1,1) = {" +bk +bk +Ct +bk +bk +az +bx +ov +bx +aE +bk +hs +aP +lo +bk +"} +(16,1,1) = {" +nL +aw +aL +ax +uB +JR +JR +gv +JR +JR +pa +aL +ax +Xq +ae +"} +(17,1,1) = {" +ur +ax +as +aL +uB +aL +JR +bx +aL +JR +bk +rT +ti +id +bk +"} +(18,1,1) = {" +bk +bk +bk +bk +bk +JR +aL +bx +JR +JR +bk +bk +bk +bk +bk +"} +(19,1,1) = {" +bk +aL +af +JR +bk +az +Zb +ll +Zb +aE +bk +XZ +aO +gP +bk +"} +(20,1,1) = {" +bk +ao +ag +av +bk +JR +Zb +LC +bz +JR +ci +JR +JR +qA +bk +"} +(21,1,1) = {" +ae +ac +aL +aL +ap +aL +JR +ax +aL +JR +cj +JR +Zp +WI +ae +"} +(22,1,1) = {" +ae +ad +aL +al +bk +bk +bk +bP +bk +bk +bk +aJ +lL +qu +ae +"} +(23,1,1) = {" +ab +JR +ai +am +bk +eT +HW +JR +wj +Fj +bk +Bi +Nt +cT +bk +"} +(24,1,1) = {" +ck +bk +ae +bk +bk +aA +oy +JR +Di +aH +bk +bk +ae +bk +ck +"} +(25,1,1) = {" +aa +aa +aa +aa +ae +fw +JR +ZB +JR +ea +ae +aa +aa +aa +aa +"} +(26,1,1) = {" +aa +aa +aa +aa +ae +ho +UW +pP +aN +pg +ae +aa +aa +aa +aa +"} +(27,1,1) = {" +aa +aa +aa +aa +ck +ae +ae +ae +ae +ae +ck +aa +aa +aa +aa +"} diff --git a/code/__DEFINES/~yogs_defines/access.dm b/code/__DEFINES/~yogs_defines/access.dm index a99727364fa7..9392ffbc5239 100644 --- a/code/__DEFINES/~yogs_defines/access.dm +++ b/code/__DEFINES/~yogs_defines/access.dm @@ -1,2 +1,4 @@ #define ACCESS_PARAMEDIC 69 //Paramedic Office -#define ACCESS_TCOM_ADMIN 70 \ No newline at end of file +#define ACCESS_TCOM_ADMIN 70 +#define ACCESS_FREEMINER 71 +#define ACCESS_FREEMINER_CAPTAIN 72 diff --git a/code/game/mecha/mecha_wreckage.dm b/code/game/mecha/mecha_wreckage.dm index 645c13292b47..20dd49e9274d 100644 --- a/code/game/mecha/mecha_wreckage.dm +++ b/code/game/mecha/mecha_wreckage.dm @@ -1,3 +1,4 @@ +// yogs - This file is mirrored to yogstation/game/mecha/mecha_wreckage.dm /////////////////////////////////// //////// Mecha wreckage //////// /////////////////////////////////// diff --git a/code/modules/mapping/ruins.dm b/code/modules/mapping/ruins.dm index 416e2bc0c978..035f0a62e3a8 100644 --- a/code/modules/mapping/ruins.dm +++ b/code/modules/mapping/ruins.dm @@ -24,7 +24,7 @@ qdel(monster) for(var/obj/structure/flora/ash/plant in T) qdel(plant) - + load(central_turf,centered = TRUE) loaded++ @@ -51,6 +51,7 @@ var/list/forced_ruins = list() //These go first on the z level associated (same random one by default) var/list/ruins_availible = list() //we can try these in the current pass + var/list/ruins_placed = list() // yogs var/forced_z //If set we won't pick z level and use this one instead. //Set up the starting ruin list @@ -94,13 +95,14 @@ //TODO : handle forced ruins with multiple variants forced_ruins -= current_pick forced = FALSE - + if(failed_to_place) for(var/datum/map_template/ruin/R in ruins_availible) if(R.id == current_pick.id) ruins_availible -= R log_world("Failed to place [current_pick.name] ruin.") else + ruins_placed[current_pick.type] = TRUE // yogs budget -= current_pick.cost if(!current_pick.allow_duplicates) for(var/datum/map_template/ruin/R in ruins_availible) @@ -113,6 +115,11 @@ ruins_availible -= possible_exclusion if(current_pick.always_spawn_with) for(var/v in current_pick.always_spawn_with) + // yogs start + var/datum/map_template/ruin/RT = v + if(!initial(RT.allow_duplicates) && ruins_placed[v]) + continue + // yogs end for(var/ruin_name in SSmapping.ruins_templates) //Because we might want to add space templates as linked of lava templates. var/datum/map_template/ruin/linked = SSmapping.ruins_templates[ruin_name] //why are these assoc, very annoying. if(istype(linked,v)) @@ -131,5 +138,5 @@ for(var/datum/map_template/ruin/R in ruins_availible) if(R.cost > budget) ruins_availible -= R - + log_world("Ruin loader finished with [budget] left to spend.") diff --git a/yogstation.dme b/yogstation.dme index 38c544481640..c411ab9f9759 100644 --- a/yogstation.dme +++ b/yogstation.dme @@ -654,7 +654,6 @@ #include "code\game\mecha\mecha_defense.dm" #include "code\game\mecha\mecha_parts.dm" #include "code\game\mecha\mecha_topic.dm" -#include "code\game\mecha\mecha_wreckage.dm" #include "code\game\mecha\combat\combat.dm" #include "code\game\mecha\combat\durand.dm" #include "code\game\mecha\combat\gygax.dm" @@ -2627,8 +2626,10 @@ #include "yogstation\code\__HELPERS\unsorted.dm" #include "yogstation\code\controllers\subsystem\input.dm" #include "yogstation\code\datums\mind.dm" +#include "yogstation\code\datums\shuttles.dm" #include "yogstation\code\datums\world_topic.dm" #include "yogstation\code\datums\components\uplink.dm" +#include "yogstation\code\datums\ruins\free_miners.dm" #include "yogstation\code\game\world.dm" #include "yogstation\code\game\area\Space_Station_13_areas.dm" #include "yogstation\code\game\gamemodes\traitor\double_agents.dm" @@ -2639,10 +2640,12 @@ #include "yogstation\code\game\machinery\computer\Operating.dm" #include "yogstation\code\game\machinery\telecomms\computers\logbrowser.dm" #include "yogstation\code\game\machinery\telecomms\computers\telemonitor.dm" +#include "yogstation\code\game\mecha\mecha_wreckage.dm" #include "yogstation\code\game\objects\effects\landmarks.dm" #include "yogstation\code\game\objects\items\cards_ids.dm" #include "yogstation\code\game\objects\items\crayons.dm" #include "yogstation\code\game\objects\items\sharpener.dm" +#include "yogstation\code\game\objects\items\circuitboards\computer_circuitboards.dm" #include "yogstation\code\game\objects\items\devices\powersink.dm" #include "yogstation\code\game\objects\items\devices\PDA\cart.dm" #include "yogstation\code\game\objects\items\devices\PDA\PDA.dm" diff --git a/yogstation/code/datums/ruins/free_miners.dm b/yogstation/code/datums/ruins/free_miners.dm new file mode 100644 index 000000000000..61357466ad52 --- /dev/null +++ b/yogstation/code/datums/ruins/free_miners.dm @@ -0,0 +1,187 @@ +/datum/map_template/ruin/space/freeminer_asteroid + id = "freeminer_asteroid" + suffix = "freeminer_asteroid.dmm" + name = "Free Miner Asteroid" + description = "Some space miners still cling to the old way of getting that \ + sweet, sweet plasma - painstakingly digging it out of free-floating asteroids\ + instead of flying down to the hellscape of lavaland." + allow_duplicates = FALSE + always_spawn_with = list(/datum/map_template/ruin/space/whiteshipdock = PLACE_SPACE_RUIN) + +/datum/map_template/ruin/space/freeminer_asteroid/load(turf/T, centered = FALSE) + . = ..() + if(.) + SSmapping.config.shuttles["whiteship"] = "whiteship_miner" + + +/obj/machinery/computer/shuttle/white_ship/miner + name = "Free Miner Ship Console" + desc = "Used to control the Free Miner Ship." + circuit = /obj/item/circuitboard/computer/white_ship/miner + shuttleId = "whiteship" + possible_destinations = "whiteship_away;whiteship_home;whiteship_z4;whiteship_mining0;whiteship_mining1;whiteship_mining2;whiteship_custom" + req_access = list(ACCESS_FREEMINER_CAPTAIN) + +/obj/machinery/computer/camera_advanced/shuttle_docker/whiteship/miner + name = "Free Miner Navigation Computer" + desc = "Used to designate a precise transit location for the Free Miner Ship." + jumpto_ports = list("whiteship_away" = 1, "whiteship_home" = 1, "whiteship_mining0" = 1, "whiteship_mining1" = 1, "whiteship_mining2" = 1) + x_offset = -4 + y_offset = -7 + +/obj/machinery/computer/camera_advanced/shuttle_docker/whiteship/miner/Initialize(mapload) + . = ..() + for(var/V in SSshuttle.stationary) + var/obj/docking_port/stationary/S = V + if(jumpto_ports[S.id]) + z_lock |= S.z + + +/obj/effect/mob_spawn/human/free_miner + name = "Free Miner" + id_job = "Free Miner" + roundstart = FALSE + death = FALSE + icon = 'icons/obj/machines/sleeper.dmi' + icon_state = "sleeper" + flavour_text = "You are a free miner, making a living mining the asteroids that were left behind when Nanotrasen moved from asteroid mining to lavaland. Try to make a profit and show those corporates who the real miners are!" + assignedrole = "Free Miner" + outfit = /datum/outfit/freeminer + +/datum/outfit/freeminer + name = "Free Miner" + uniform = /obj/item/clothing/under/rank/miner + shoes = /obj/item/clothing/shoes/workboots/mining + gloves = /obj/item/clothing/gloves/color/black + back = /obj/item/storage/backpack/industrial + l_pocket = /obj/item/mining_voucher + r_pocket = /obj/item/storage/bag/ore + belt = /obj/item/pickaxe + id = /obj/item/card/id/freeminer + backpack_contents = list(/obj/item/radio) + + +/obj/effect/mob_spawn/human/free_miner/engi + name = "Free Miner Engineer" + id_job = "Free Miner Engineer" + flavour_text = "You are a free miner, making a living mining the asteroids that were left behind when Nanotrasen moved from asteroid mining to lavaland. Try to make a profit and show those corporates who the real miners are!" + l_pocket = null + r_pocket = null + gloves = /obj/item/clothing/gloves/color/yellow + belt = /obj/item/storage/belt/utility/full + assignedrole = "Free Miner Engineer" + outfit = /datum/outfit/freeminer/engi + +/datum/outfit/freeminer/engi + l_pocket = null + r_pocket = null + gloves = /obj/item/clothing/gloves/color/yellow + belt = /obj/item/storage/belt/utility/full + + +/obj/effect/mob_spawn/human/free_miner/captain + name = "Free Miner Captain" + id_job = "Free Miner Captain" + flavour_text = "You are a free miner, making a living mining the asteroids that were left behind when Nanotrasen moved from asteroid mining to lavaland. Try to make a profit and show those corporates who the real miners are! Try not to lose your ID, as it is the only way to move your ship." + assignedrole = "Free Miner Captain" + outfit = /datum/outfit/freeminer/captain + +/datum/outfit/freeminer/captain + uniform = /obj/item/clothing/under/rank/vice + back = /obj/item/storage/backpack + l_pocket = /obj/item/melee/classic_baton/telescopic + r_pocket = null + belt = null + id = /obj/item/card/id/freeminer/captain + + +/obj/item/card/id/freeminer + name = "Free Miner ID" + access = list(ACCESS_MINERAL_STOREROOM, ACCESS_FREEMINER) + +/obj/item/card/id/freeminer/captain + name = "Free Miner Ship Captain ID" + access = list(ACCESS_MINERAL_STOREROOM, ACCESS_FREEMINER, ACCESS_FREEMINER_CAPTAIN) + +/****************Free Miner Vendor**************************/ + +/obj/machinery/mineral/equipment_vendor/free_miner + name = "free miner ship equipment vendor" + desc = "a vendor sold by nanotrasen to profit off small mining contractors." + prize_list = list( + new /datum/data/mining_equipment("Kinetic Accelerator", /obj/item/gun/energy/kinetic_accelerator, 750), + new /datum/data/mining_equipment("Mining Hardsuit", /obj/item/clothing/suit/space/hardsuit/mining, 2000), + new /datum/data/mining_equipment("Mecha Plasma Generator", /obj/item/mecha_parts/mecha_equipment/generator, 1500), + new /datum/data/mining_equipment("Diamond Mecha Drill", /obj/item/mecha_parts/mecha_equipment/drill/diamonddrill, 2000), + new /datum/data/mining_equipment("Mecha Plasma Cutter", /obj/item/mecha_parts/mecha_equipment/weapon/energy/plasma, 3000), + new /datum/data/mining_equipment("Stimpack", /obj/item/reagent_containers/hypospray/medipen/stimpack, 50), + new /datum/data/mining_equipment("Stimpack Bundle", /obj/item/storage/box/medipens/utility, 200), + new /datum/data/mining_equipment("Advanced Scanner", /obj/item/t_scanner/adv_mining_scanner, 800), + new /datum/data/mining_equipment("Hivelord Stabilizer", /obj/item/hivelordstabilizer, 400), + new /datum/data/mining_equipment("Shelter Capsule", /obj/item/survivalcapsule, 400), + new /datum/data/mining_equipment("GAR Meson Scanners", /obj/item/clothing/glasses/meson/gar, 500), + new /datum/data/mining_equipment("Survival Medipen", /obj/item/reagent_containers/hypospray/medipen/survival, 500), + new /datum/data/mining_equipment("Brute First-Aid Kit", /obj/item/storage/firstaid/brute, 600), + new /datum/data/mining_equipment("Fire First-Aid Kit", /obj/item/storage/firstaid/fire, 600), + new /datum/data/mining_equipment("Toxin First-Aid Kit", /obj/item/storage/firstaid/toxin, 600), + new /datum/data/mining_equipment("Resonator", /obj/item/resonator, 800), + new /datum/data/mining_equipment("Lazarus Injector", /obj/item/lazarus_injector, 800), + new /datum/data/mining_equipment("Silver Pickaxe", /obj/item/pickaxe/silver, 750), + new /datum/data/mining_equipment("Jetpack Upgrade", /obj/item/tank/jetpack/suit, 2000), + new /datum/data/mining_equipment("Space Cash", /obj/item/stack/spacecash/c1000, 2000), + new /datum/data/mining_equipment("Diamond Pickaxe", /obj/item/pickaxe/diamond, 1500), + new /datum/data/mining_equipment("Super Resonator", /obj/item/resonator/upgraded, 2000), + new /datum/data/mining_equipment("Plasma Cutter" , /obj/item/gun/energy/plasmacutter, 2500), + new /datum/data/mining_equipment("Point Transfer Card", /obj/item/card/mining_point_card, 500), + new /datum/data/mining_equipment("Minebot", /mob/living/simple_animal/hostile/mining_drone, 800), + new /datum/data/mining_equipment("Minebot Melee Upgrade", /obj/item/mine_bot_upgrade, 400), + new /datum/data/mining_equipment("Minebot Armor Upgrade", /obj/item/mine_bot_upgrade/health, 400), + new /datum/data/mining_equipment("Minebot Cooldown Upgrade", /obj/item/borg/upgrade/modkit/cooldown/minebot, 600), + new /datum/data/mining_equipment("Minebot AI Upgrade", /obj/item/slimepotion/slime/sentience/mining, 1000), + new /datum/data/mining_equipment("KA Minebot Passthrough", /obj/item/borg/upgrade/modkit/minebot_passthrough, 100), + new /datum/data/mining_equipment("KA White Tracer Rounds", /obj/item/borg/upgrade/modkit/tracer, 100), + new /datum/data/mining_equipment("KA Adjustable Tracer Rounds", /obj/item/borg/upgrade/modkit/tracer/adjustable, 150), + new /datum/data/mining_equipment("KA Super Chassis", /obj/item/borg/upgrade/modkit/chassis_mod, 250), + new /datum/data/mining_equipment("KA Hyper Chassis", /obj/item/borg/upgrade/modkit/chassis_mod/orange, 300), + new /datum/data/mining_equipment("KA Range Increase", /obj/item/borg/upgrade/modkit/range, 1000), + new /datum/data/mining_equipment("KA Damage Increase", /obj/item/borg/upgrade/modkit/damage, 1000), + new /datum/data/mining_equipment("KA Cooldown Decrease", /obj/item/borg/upgrade/modkit/cooldown, 1000), + new /datum/data/mining_equipment("KA AoE Damage", /obj/item/borg/upgrade/modkit/aoe/mobs, 2000) + ) + +/obj/machinery/mineral/equipment_vendor/free_miner/New() + ..() + var/obj/item/circuitboard/machine/B = new /obj/item/circuitboard/machine/mining_equipment_vendor/free_miner(null) + B.apply_default_parts(src) + +/obj/machinery/mineral/equipment_vendor/free_miner/RedeemVoucher(obj/item/mining_voucher/voucher, mob/redeemer) + var/list/items = list("Kinetic Accelerator", "Resonator Kit", "Minebot Kit", "Crusher Kit", "Advanced Scanner") + + var/selection = input(redeemer, "Pick your equipment", "Mining Voucher Redemption") as null|anything in items + if(!selection || !Adjacent(redeemer) || QDELETED(voucher) || voucher.loc != redeemer) + return + var/drop_location = drop_location() + switch(selection) + if("Kinetic Accelerator") + new /obj/item/gun/energy/kinetic_accelerator(drop_location) + if("Resonator Kit") + new /obj/item/extinguisher/mini(drop_location) + new /obj/item/resonator(drop_location) + if("Minebot Kit") + new /mob/living/simple_animal/hostile/mining_drone(drop_location) + new /obj/item/weldingtool/hugetank(drop_location) + new /obj/item/clothing/head/welding(drop_location) + new /obj/item/borg/upgrade/modkit/minebot_passthrough(drop_location) + if("Crusher Kit") + new /obj/item/extinguisher/mini(drop_location) + new /obj/item/twohanded/required/kinetic_crusher(drop_location) + if("Advanced Scanner") + new /obj/item/t_scanner/adv_mining_scanner(drop_location) + + SSblackbox.record_feedback("tally", "mining_voucher_redeemed", 1, selection) + qdel(voucher) + +/obj/item/circuitboard/machine/mining_equipment_vendor/free_miner + name = "circuit board (Free Miner Ship Equipment Vendor)" + build_path = /obj/machinery/mineral/equipment_vendor/free_miner + diff --git a/yogstation/code/datums/shuttles.dm b/yogstation/code/datums/shuttles.dm new file mode 100644 index 000000000000..604757b9c91e --- /dev/null +++ b/yogstation/code/datums/shuttles.dm @@ -0,0 +1,3 @@ +/datum/map_template/shuttle/whiteship/miner + suffix = "miner" + name = "Free Miner Ship" diff --git a/yogstation/code/game/mecha/mecha_wreckage.dm b/yogstation/code/game/mecha/mecha_wreckage.dm new file mode 100644 index 000000000000..5def80256d15 --- /dev/null +++ b/yogstation/code/game/mecha/mecha_wreckage.dm @@ -0,0 +1,265 @@ +/////////////////////////////////// +//////// Mecha wreckage //////// +/////////////////////////////////// + + +/obj/structure/mecha_wreckage + name = "exosuit wreckage" + desc = "Remains of some unfortunate mecha. Completely irreparable, but perhaps something can be salvaged." + icon = 'icons/mecha/mecha.dmi' + density = TRUE + anchored = FALSE + opacity = 0 + var/list/welder_salvage = list(/obj/item/stack/sheet/plasteel, /obj/item/stack/sheet/metal, /obj/item/stack/rods) + var/list/wirecutters_salvage = list(/obj/item/stack/cable_coil) + var/list/crowbar_salvage = list() + var/mob/living/silicon/ai/AI //AIs to be salvaged + +/obj/structure/mecha_wreckage/Initialize(mapload, mob/living/silicon/ai/AI_pilot) + . = ..() + if(!AI_pilot) //Type-checking for this is already done in mecha/Destroy() + return + + AI = AI_pilot + AI.apply_damage(150, BURN) //Give the AI a bit of damage from the "shock" of being suddenly shut down + AI.death() //The damage is not enough to kill the AI, but to be 'corrupted files' in need of repair. + AI.forceMove(src) //Put the dead AI inside the wreckage for recovery + add_overlay(mutable_appearance('icons/obj/projectiles.dmi', "green_laser")) //Overlay for the recovery beacon + AI.controlled_mech = null + AI.remote_control = null + +/obj/structure/mecha_wreckage/examine(mob/user) + ..() + if(AI) + to_chat(user, "The AI recovery beacon is active.") + +/obj/structure/mecha_wreckage/attackby(obj/item/I, mob/user, params) + if(istype(I, /obj/item/weldingtool)) + if(!welder_salvage || !welder_salvage.len) + to_chat(user, "You don't see anything that can be cut with [I]!") + return + + if(!I.use_tool(src, user, 0, volume=50)) + return + + var/type = prob(70) ? pick(welder_salvage) : null + if(type) + var/N = new type(get_turf(user)) + user.visible_message("[user] cuts [N] from [src].", "You cut [N] from [src].") + if(istype(N, /obj/item/mecha_parts/part)) + welder_salvage -= type + else + to_chat(user, "You fail to salvage anything valuable from [src]!") + return + + else if(istype(I, /obj/item/wirecutters)) + if(!wirecutters_salvage || !wirecutters_salvage.len) + to_chat(user, "You don't see anything that can be cut with [I]!") + return + else + var/type = prob(70) ? pick(wirecutters_salvage) : null + if(type) + var/N = new type(get_turf(user)) + user.visible_message("[user] cuts [N] from [src].", "You cut [N] from [src].") + wirecutters_salvage -= type + else + to_chat(user, "You fail to salvage anything valuable from [src]!") + + else if(istype(I, /obj/item/crowbar)) + if(!crowbar_salvage || !crowbar_salvage.len) + to_chat(user, "You don't see anything that can be pried with [I]!") + return + else + var/type = pick(crowbar_salvage) + crowbar_salvage -= type + var/obj/S = new type() + if(S) + S.forceMove(user.drop_location()) + user.visible_message("[user] pries [S] from [src].", "You pry [S] from [src].") + + +/obj/structure/mecha_wreckage/transfer_ai(interaction, mob/user, null, obj/item/aicard/card) + if(!..()) + return + + //Proc called on the wreck by the AI card. + if(interaction == AI_TRANS_TO_CARD) //AIs can only be transferred in one direction, from the wreck to the card. + if(!AI) //No AI in the wreck + to_chat(user, "No AI backups found.") + return + cut_overlays() //Remove the recovery beacon overlay + AI.forceMove(card) //Move the dead AI to the card. + card.AI = AI + if(AI.client) //AI player is still in the dead AI and is connected + to_chat(AI, "The remains of your file system have been recovered on a mobile storage device.") + else //Give the AI a heads-up that it is probably going to get fixed. + AI.notify_ghost_cloning("You have been recovered from the wreckage!", source = card) + to_chat(user, "Backup files recovered: [AI.name] ([rand(1000,9999)].exe) salvaged from [name] and stored within local memory.") + + else + return ..() + + +/obj/structure/mecha_wreckage/gygax + name = "\improper Gygax wreckage" + icon_state = "gygax-broken" + +/obj/structure/mecha_wreckage/gygax/Initialize() + . = ..() + var/list/parts = list(/obj/item/mecha_parts/part/gygax_torso, + /obj/item/mecha_parts/part/gygax_head, + /obj/item/mecha_parts/part/gygax_left_arm, + /obj/item/mecha_parts/part/gygax_right_arm, + /obj/item/mecha_parts/part/gygax_left_leg, + /obj/item/mecha_parts/part/gygax_right_leg) + for(var/i = 0; i < 2; i++) + if(parts.len && prob(40)) + var/part = pick(parts) + welder_salvage += part + parts -= part + + + +/obj/structure/mecha_wreckage/gygax/dark + name = "\improper Dark Gygax wreckage" + icon_state = "darkgygax-broken" + +/obj/structure/mecha_wreckage/marauder + name = "\improper Marauder wreckage" + icon_state = "marauder-broken" + +/obj/structure/mecha_wreckage/mauler + name = "\improper Mauler wreckage" + icon_state = "mauler-broken" + desc = "The syndicate won't be very happy about this..." + +/obj/structure/mecha_wreckage/seraph + name = "\improper Seraph wreckage" + icon_state = "seraph-broken" + +/obj/structure/mecha_wreckage/reticence + name = "\improper Reticence wreckage" + icon_state = "reticence-broken" + color = "#87878715" + desc = "..." + +/obj/structure/mecha_wreckage/ripley + name = "\improper Ripley wreckage" + icon_state = "ripley-broken" + +/obj/structure/mecha_wreckage/ripley/Initialize() + . = ..() + var/list/parts = list(/obj/item/mecha_parts/part/ripley_torso, + /obj/item/mecha_parts/part/ripley_left_arm, + /obj/item/mecha_parts/part/ripley_right_arm, + /obj/item/mecha_parts/part/ripley_left_leg, + /obj/item/mecha_parts/part/ripley_right_leg) + for(var/i = 0; i < 2; i++) + if(parts.len && prob(40)) + var/part = pick(parts) + welder_salvage += part + parts -= part + +/obj/structure/mecha_wreckage/ripley/loaded + name = "intact Ripley wreckage" + +/obj/structure/mecha_wreckage/ripley/loaded/Initialize() + . = ..() + welder_salvage = list(/obj/item/mecha_parts/part/ripley_torso, + /obj/item/mecha_parts/part/ripley_left_arm, + /obj/item/mecha_parts/part/ripley_right_arm, + /obj/item/mecha_parts/part/ripley_left_leg, + /obj/item/mecha_parts/part/ripley_right_leg) + crowbar_salvage = list(/obj/item/circuitboard/mecha/ripley/peripherals, + /obj/item/circuitboard/mecha/ripley/main) + + +/obj/structure/mecha_wreckage/ripley/firefighter + name = "\improper Firefighter wreckage" + icon_state = "firefighter-broken" + +/obj/structure/mecha_wreckage/ripley/firefighter/Initialize() + . = ..() + var/list/parts = list(/obj/item/mecha_parts/part/ripley_torso, + /obj/item/mecha_parts/part/ripley_left_arm, + /obj/item/mecha_parts/part/ripley_right_arm, + /obj/item/mecha_parts/part/ripley_left_leg, + /obj/item/mecha_parts/part/ripley_right_leg, + /obj/item/clothing/suit/fire) + for(var/i = 0; i < 2; i++) + if(parts.len && prob(40)) + var/part = pick(parts) + welder_salvage += part + parts -= part + + +/obj/structure/mecha_wreckage/ripley/deathripley + name = "\improper Death-Ripley wreckage" + icon_state = "deathripley-broken" + + +/obj/structure/mecha_wreckage/honker + name = "\improper H.O.N.K wreckage" + icon_state = "honker-broken" + desc = "All is right in the universe." + +/obj/structure/mecha_wreckage/honker/Initialize() + . = ..() + var/list/parts = list( + /obj/item/mecha_parts/chassis/honker, + /obj/item/mecha_parts/part/honker_torso, + /obj/item/mecha_parts/part/honker_head, + /obj/item/mecha_parts/part/honker_left_arm, + /obj/item/mecha_parts/part/honker_right_arm, + /obj/item/mecha_parts/part/honker_left_leg, + /obj/item/mecha_parts/part/honker_right_leg) + for(var/i = 0; i < 2; i++) + if(parts.len && prob(40)) + var/part = pick(parts) + welder_salvage += part + parts -= part + + +/obj/structure/mecha_wreckage/durand + name = "\improper Durand wreckage" + icon_state = "durand-broken" + +/obj/structure/mecha_wreckage/durand/Initialize() + . = ..() + var/list/parts = list( + /obj/item/mecha_parts/part/durand_torso, + /obj/item/mecha_parts/part/durand_head, + /obj/item/mecha_parts/part/durand_left_arm, + /obj/item/mecha_parts/part/durand_right_arm, + /obj/item/mecha_parts/part/durand_left_leg, + /obj/item/mecha_parts/part/durand_right_leg) + for(var/i = 0; i < 2; i++) + if(parts.len && prob(40)) + var/part = pick(parts) + welder_salvage += part + parts -= part + + +/obj/structure/mecha_wreckage/phazon + name = "\improper Phazon wreckage" + icon_state = "phazon-broken" + + +/obj/structure/mecha_wreckage/odysseus + name = "\improper Odysseus wreckage" + icon_state = "odysseus-broken" + +/obj/structure/mecha_wreckage/odysseus/Initialize() + . = ..() + var/list/parts = list( + /obj/item/mecha_parts/part/odysseus_torso, + /obj/item/mecha_parts/part/odysseus_head, + /obj/item/mecha_parts/part/odysseus_left_arm, + /obj/item/mecha_parts/part/odysseus_right_arm, + /obj/item/mecha_parts/part/odysseus_left_leg, + /obj/item/mecha_parts/part/odysseus_right_leg) + for(var/i = 0; i < 2; i++) + if(parts.len && prob(40)) + var/part = pick(parts) + welder_salvage += part + parts -= part diff --git a/yogstation/code/game/objects/items/circuitboards/computer_circuitboards.dm b/yogstation/code/game/objects/items/circuitboards/computer_circuitboards.dm new file mode 100644 index 000000000000..9d56b7144fa3 --- /dev/null +++ b/yogstation/code/game/objects/items/circuitboards/computer_circuitboards.dm @@ -0,0 +1,3 @@ +/obj/item/circuitboard/computer/white_ship/miner + name = "circuit board (Free Miner Ship)" + build_path = /obj/machinery/computer/shuttle/white_ship/miner