diff --git a/_maps/shuttles/emergency_airless.dmm b/_maps/shuttles/emergency_airless.dmm index 17c492af9d5..480f27bd8a9 100644 --- a/_maps/shuttles/emergency_airless.dmm +++ b/_maps/shuttles/emergency_airless.dmm @@ -1,381 +1,36 @@ -//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE -"a" = ( -/turf/open/space, -/area/space) -"b" = ( -/turf/open/floor/plating/airless, -/area/shuttle/escape) -"c" = ( -/turf/closed/wall, -/area/shuttle/escape) -"d" = ( -/obj/structure/fireaxecabinet, -/turf/closed/wall, -/area/shuttle/escape) -"e" = ( -/obj/structure/closet/malf, -/turf/open/floor/plating/airless, -/area/shuttle/escape) -"f" = ( -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/structure/window/reinforced{ - dir = 1 - }, -/obj/structure/grille, -/turf/open/floor/plating/airless, -/area/shuttle/escape) -"g" = ( -/obj/structure/window/reinforced, -/obj/structure/window/reinforced{ - dir = 1 - }, -/obj/structure/grille, -/turf/open/floor/plating/airless, -/area/shuttle/escape) -"h" = ( -/obj/structure/window/reinforced{ - dir = 4; - pixel_x = 0 - }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/structure/grille, -/turf/open/floor/plating/airless, -/area/shuttle/escape) -"i" = ( -/obj/machinery/computer/emergency_shuttle, -/turf/open/floor/plating/airless, -/area/shuttle/escape) -"j" = ( -/obj/structure/window/reinforced, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/structure/grille, -/turf/open/floor/plating/airless, -/area/shuttle/escape) -"k" = ( -/obj/structure/window/reinforced{ - dir = 1 - }, -/obj/structure/window/reinforced, -/obj/structure/grille, -/turf/open/floor/plating/airless, -/area/shuttle/escape) -"l" = ( -/turf/open/floor/plating, -/area/shuttle/escape) -"m" = ( -/obj/structure/chair{ - dir = 8 - }, -/obj/structure/window/reinforced{ - dir = 4; - pixel_x = 0 - }, -/turf/open/floor/plating/airless, -/area/shuttle/escape) -"n" = ( -/obj/structure/chair{ - dir = 4 - }, -/turf/open/floor/plating/airless, -/area/shuttle/escape) -"o" = ( -/obj/docking_port/mobile/emergency{ - name = "Shuttle Under Construction"; - timid = 1 - }, -/turf/open/floor/plating/airless, -/area/shuttle/escape) -"p" = ( -/obj/structure/rack, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 4; - name = "4maintenance loot spawner" - }, -/turf/open/floor/plating/airless, -/area/shuttle/escape) -"q" = ( -/obj/structure/window/reinforced{ - dir = 1 - }, -/obj/structure/shuttle/engine/heater, -/turf/open/floor/plating/airless, -/area/shuttle/escape) -"r" = ( -/obj/structure/shuttle/engine/propulsion, -/turf/open/floor/plating/airless, -/area/shuttle/escape) -"s" = ( -/obj/machinery/status_display, -/turf/closed/wall, -/area/shuttle/escape) +"a" = (/turf/open/space,/area/space) +"b" = (/turf/open/floor/plating/airless,/area/shuttle/escape) +"c" = (/turf/closed/wall,/area/shuttle/escape) +"d" = (/obj/structure/closet/malf,/turf/open/floor/plating/airless,/area/shuttle/escape) +"e" = (/obj/machinery/status_display,/turf/closed/wall,/area/shuttle/escape) +"f" = (/obj/effect/shuttle_build,/turf/open/floor/plating/airless,/area/shuttle/escape) +"g" = (/turf/open/floor/plating,/area/shuttle/escape) +"h" = (/obj/docking_port/mobile/emergency{name = "Shuttle Under Construction"; timid = 1},/turf/open/floor/plating/airless,/area/shuttle/escape) +"i" = (/obj/structure/rack,/obj/effect/spawner/lootdrop/maintenance{lootcount = 4; name = "4maintenance loot spawner"},/turf/open/floor/plating/airless,/area/shuttle/escape) +"j" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/shuttle/engine/heater,/turf/open/floor/plating/airless,/area/shuttle/escape) +"k" = (/obj/structure/shuttle/engine/propulsion,/turf/open/floor/plating/airless,/area/shuttle/escape) (1,1,1) = {" -a -a -a -a -a -a -b -l -b -o -b -b -b -b -a -a -a -a -a -a -a -a -"} -(2,1,1) = {" -a -b -c -s -c -b -b -b -b -b -b -b -b -b -b -b -b -c -c -c -a -a -"} -(3,1,1) = {" -b -b -e -e -e -b -b -m -m -m -m -m -b -b -b -b -b -b -b -b -q -r -"} -(4,1,1) = {" -c -b -b -b -b -b -b -n -n -n -n -n -b -b -b -b -b -b -b -b -q -r -"} -(5,1,1) = {" -c -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -q -r -"} -(6,1,1) = {" -c -b -b -b -b -b -b -m -m -m -m -m -b -b -b -b -b -b -b -b -q -r -"} -(7,1,1) = {" -d -b -b -b -b -b -b -n -n -n -n -n -b -b -b -b -b -b -b -b -q -r -"} -(8,1,1) = {" -c -b -f -h -j -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -q -r -"} -(9,1,1) = {" -c -b -g -i -k -b -b -m -m -m -m -m -b -b -b -p -p -p -b -b -q -r -"} -(10,1,1) = {" -a -b -c -c -c -b -b -b -b -b -b -b -b -b -b -c -s -c -b -c -a -a -"} -(11,1,1) = {" -a -a -a -a -a -a -c -c -c -c -c -b -c -c -a -a -a -a -a -a -a -a +aabbbbbbbaa +abbbbbbbbba +acdbbbbbbba +aedbbbfbbba +abdbbbbbbba +abbbbbbbbba +bbbbbbbbbbc +gbbbbbbbbbc +bbbbbbbbbbc +hbbbbbbbbbc +bbbbbbbbbbc +bbbbbbbbbbb +bbbbbbbbbbc +bbbbbbbbbbc +abbbbbbbbba +abbbbbbbica +abbbbbbbiea +acbbbbbbica +acbbbbbbbba +acbbbbbbbca +aajjjjjjjaa +aakkkkkkkaa "} diff --git a/code/datums/shuttles.dm b/code/datums/shuttles.dm index dc933806350..73c87d3d77b 100644 --- a/code/datums/shuttles.dm +++ b/code/datums/shuttles.dm @@ -35,11 +35,10 @@ /datum/map_template/shuttle/emergency/airless suffix = "airless" - name = "(Shuttle Under Construction)" - description = "The documentation hasn't been finished yet for this \ - shuttle.\n\ - In case of emergency: Break glass." + name = "Build your own shuttle kit" + description = "Save money by building your own shuttle! The chassis will dock upon purchase, but launch will have to be authorized as usual via shuttle call. Interior and atmosphere not included." admin_notes = "No brig, no medical facilities, no air." + credit_cost = -7500 /datum/map_template/shuttle/emergency/asteroid suffix = "asteroid" diff --git a/code/modules/admin/fun_balloon.dm b/code/modules/admin/fun_balloon.dm index 03ea20be051..daf1eeecc7e 100644 --- a/code/modules/admin/fun_balloon.dm +++ b/code/modules/admin/fun_balloon.dm @@ -138,3 +138,16 @@ else mover << "You don't have enough money to enter the main shuttle. You'll have to fly coach." return 0 + +//Shuttle Build + +/obj/effect/shuttle_build + name = "shuttle_build" + desc = "Some assembly required" + icon = 'icons/obj/weapons.dmi' + icon_state = "syndballoon" + anchored = TRUE + +/obj/effect/shuttle_build/New() + SSshuttle.emergency.dock(SSshuttle.getDock("emergency_home")) + qdel(src) \ No newline at end of file diff --git a/code/modules/shuttle/shuttle.dm b/code/modules/shuttle/shuttle.dm index ea714f2e8e6..8eac00c9b7f 100644 --- a/code/modules/shuttle/shuttle.dm +++ b/code/modules/shuttle/shuttle.dm @@ -422,6 +422,9 @@ //this is the main proc. It instantly moves our mobile port to stationary port S1 //it handles all the generic behaviour, such as sanity checks, closing doors on the shuttle, stunning mobs, etc /obj/docking_port/mobile/proc/dock(obj/docking_port/stationary/S1, force=FALSE) + if(S1.get_docked() == src) + remove_ripples() + return // Crashing this ship with NO SURVIVORS if(!force) if(!check_dock(S1))